{"ast":null,"code":"import _Object$keys from \"@babel/runtime-corejs2/core-js/object/keys\";\nimport _JSXStyle from \"styled-jsx/style\";\nimport * as React from \"react\";\nimport Link from \"next/link\";\nimport { groupBy } from \"lodash\";\nimport { Entry, Listing, Icon, Name, LastSaved } from \"@nteract/directory-listing\";\nimport { theme } from \"../../theme\";\n\nvar GroupedDirectoryListings = function GroupedDirectoryListings(props) {\n  var contents = props.contents.filter(function (row) {\n    return !row.name.startsWith(\".\");\n  });\n\n  if (contents.length <= 25) {\n    return /*#__PURE__*/React.createElement(DirectoryListing, {\n      contents: contents,\n      basepath: props.basepath\n    });\n  }\n\n  var groups = groupBy(contents, function (item) {\n    return item.name[0].toUpperCase();\n  }); // Filter out dotfiles\n\n  delete groups[\".\"];\n\n  if (_Object$keys(groups).length <= 1) {\n    return /*#__PURE__*/React.createElement(DirectoryListing, {\n      contents: contents,\n      basepath: props.basepath\n    });\n  }\n\n  var groupNames = _Object$keys(groups).sort();\n\n  var listings = groupNames.map(function (key) {\n    return /*#__PURE__*/React.createElement(\"div\", {\n      key: key,\n      className: \"jsx-98138671\"\n    }, /*#__PURE__*/React.createElement(\"div\", {\n      id: \"group-\".concat(key),\n      className: \"jsx-98138671\" + \" \" + \"letterHeader\"\n    }, key), /*#__PURE__*/React.createElement(DirectoryListing, {\n      contents: groups[key],\n      basepath: props.basepath\n    }), /*#__PURE__*/React.createElement(_JSXStyle, {\n      id: \"98138671\"\n    }, [\".letterHeader.jsx-98138671{padding-top:1em;padding-bottom:0.5em;padding-left:6px;}\"]));\n  });\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n    className: _JSXStyle.dynamic([[\"2760902976\", [theme.link]]]) + \" \" + \"letters\"\n  }, groupNames.map(function (x) {\n    return /*#__PURE__*/React.createElement(\"a\", {\n      href: \"#group-\".concat(x),\n      key: x,\n      className: _JSXStyle.dynamic([[\"2760902976\", [theme.link]]])\n    }, x.toUpperCase());\n  })), listings, /*#__PURE__*/React.createElement(_JSXStyle, {\n    id: \"2760902976\",\n    dynamic: [theme.link]\n  }, [\"a.__jsx-style-dynamic-selector{-webkit-text-decoration:none;text-decoration:none;padding-right:1em;color:\".concat(theme.link, \";}\"), \".letters.__jsx-style-dynamic-selector{padding-bottom:1em;padding-left:6px;}\"]));\n};\n\nvar DirectoryListing = function DirectoryListing(props) {\n  var base = props.basepath || \"/\"; // filter out dotfiles\n\n  var contents = props.contents.filter(function (entry) {\n    return !entry.name.startsWith(\".\");\n  });\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Listing, null, contents.map(function (entry, index) {\n    var link = /*#__PURE__*/React.createElement(Link, {\n      href: {\n        pathname: \"/view\",\n        query: {\n          viewPath: entry.path\n        }\n      },\n      as: base + \"/\" + entry.path\n    }, /*#__PURE__*/React.createElement(\"a\", null, entry.name));\n    return /*#__PURE__*/React.createElement(Entry, {\n      key: index\n    }, /*#__PURE__*/React.createElement(Icon, {\n      fileType: entry.type\n    }), /*#__PURE__*/React.createElement(Name, null, link), /*#__PURE__*/React.createElement(LastSaved, {\n      lastModified: entry.last_modified\n    }));\n  })));\n};\n\nexport default GroupedDirectoryListings; // export default DirectoryListing;","map":null,"metadata":{},"sourceType":"module"}