@bigbinary/neeto-molecules 5.5.6 → 5.5.8-beta1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/ErrorPage.js +32 -2
  2. package/dist/ErrorPage.js.map +1 -1
  3. package/dist/ShareViaLink.js +2 -0
  4. package/dist/ShareViaLink.js.map +1 -1
  5. package/dist/cjs/ErrorPage.js +32 -2
  6. package/dist/cjs/ErrorPage.js.map +1 -1
  7. package/dist/cjs/ShareViaLink.js +2 -0
  8. package/dist/cjs/ShareViaLink.js.map +1 -1
  9. package/dist/cjs/clock-J9ePvpcf.js +20 -0
  10. package/dist/cjs/clock-J9ePvpcf.js.map +1 -0
  11. package/dist/cjs/refresh-cw-Bc6cA1K7.js +22 -0
  12. package/dist/cjs/refresh-cw-Bc6cA1K7.js.map +1 -0
  13. package/dist/cjs/v2/ErrorPage.js +36 -3
  14. package/dist/cjs/v2/ErrorPage.js.map +1 -1
  15. package/dist/cjs/v2/FinderModal.js +28 -11
  16. package/dist/cjs/v2/FinderModal.js.map +1 -1
  17. package/dist/cjs/v2/NavigationHeader.js +1 -0
  18. package/dist/cjs/v2/NavigationHeader.js.map +1 -1
  19. package/dist/cjs/v2/PublishBlock.js +3 -16
  20. package/dist/cjs/v2/PublishBlock.js.map +1 -1
  21. package/dist/cjs/v2/ShareViaLink.js +2 -0
  22. package/dist/cjs/v2/ShareViaLink.js.map +1 -1
  23. package/dist/cjs/v2/VersionHistory.js +3 -18
  24. package/dist/cjs/v2/VersionHistory.js.map +1 -1
  25. package/dist/clock-DClOV5p0.js +18 -0
  26. package/dist/clock-DClOV5p0.js.map +1 -0
  27. package/dist/refresh-cw-BC-yYIvc.js +20 -0
  28. package/dist/refresh-cw-BC-yYIvc.js.map +1 -0
  29. package/dist/v2/ErrorPage.js +36 -3
  30. package/dist/v2/ErrorPage.js.map +1 -1
  31. package/dist/v2/FinderModal.js +29 -12
  32. package/dist/v2/FinderModal.js.map +1 -1
  33. package/dist/v2/NavigationHeader.js +1 -0
  34. package/dist/v2/NavigationHeader.js.map +1 -1
  35. package/dist/v2/PublishBlock.js +2 -15
  36. package/dist/v2/PublishBlock.js.map +1 -1
  37. package/dist/v2/ShareViaLink.js +2 -0
  38. package/dist/v2/ShareViaLink.js.map +1 -1
  39. package/dist/v2/VersionHistory.js +2 -17
  40. package/dist/v2/VersionHistory.js.map +1 -1
  41. package/package.json +2 -2
  42. package/src/translations/en.json +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorPage.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/lock.mjs","../../../src/v2/components/ErrorPage/constants.js","../../../src/v2/components/ErrorPage/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"11\", x: \"3\", y: \"11\", rx: \"2\", ry: \"2\", key: \"1w4ew1\" }],\n [\"path\", { d: \"M7 11V7a5 5 0 0 1 10 0v4\", key: \"fwvmzm\" }]\n];\nconst Lock = createLucideIcon(\"lock\", __iconNode);\n\nexport { __iconNode, Lock as default };\n//# sourceMappingURL=lock.mjs.map\n","import { Lock, Search, TriangleAlert } from \"lucide-react\";\n\nexport const ERRORS = {\n 404: {\n Icon: Search,\n errorKey: \"neetoMolecules.errorPage.cantBeFound\",\n titleKey: \"neetoMolecules.errorPage.title.cantBeFound\",\n descriptionKey: \"neetoMolecules.errorPage.description.cantBeFound\",\n primaryAction: \"home\",\n usesChat: true,\n },\n 403: {\n Icon: Lock,\n errorKey: \"neetoMolecules.errorPage.unauthorized\",\n titleKey: \"neetoMolecules.errorPage.title.unauthorized\",\n descriptionKey: \"neetoMolecules.errorPage.description.unauthorized\",\n primaryAction: \"back\",\n usesChat: false,\n },\n 500: {\n Icon: TriangleAlert,\n errorKey: \"neetoMolecules.errorPage.internalServerError\",\n titleKey: \"neetoMolecules.errorPage.title.internalServerError\",\n descriptionKey: \"neetoMolecules.errorPage.description.internalServerError\",\n primaryAction: \"home\",\n usesChat: true,\n },\n};\n","import { useEffect } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport DOMPurify from \"dompurify\";\nimport { ChevronLeft, House } from \"lucide-react\";\nimport { useErrorDisplayStore } from \"neetocommons/v2/react-utils/useDisplayErrorPage\";\nimport PropTypes from \"prop-types\";\nimport { Helmet } from \"react-helmet\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { ERRORS } from \"./constants\";\n\nconst sanitize = DOMPurify.sanitize;\n\nconst ErrorPage = ({\n homeUrl = \"/\",\n status,\n backToHomeButtonProps,\n children,\n showNeetoChatWidget = true,\n description,\n title,\n hideBackToHomeButton = false,\n}) => {\n const { t } = useTranslation();\n const { statusCode: storeStatusCode, showErrorPage } =\n useErrorDisplayStore.pick();\n\n status = status || storeStatusCode;\n const { Icon, errorKey, titleKey, descriptionKey, primaryAction, usesChat } =\n ERRORS[status] || ERRORS[404];\n\n useEffect(() => {\n const pageLoader = document.getElementById(\"neeto-page-loader\");\n if (pageLoader) pageLoader.remove();\n\n const onBackButtonPress = () => {\n if (!showErrorPage) return;\n useErrorDisplayStore.setState({ showErrorPage: false });\n };\n\n window.addEventListener(\"popstate\", onBackButtonPress);\n\n return () => {\n window.removeEventListener(\"popstate\", onBackButtonPress);\n };\n }, []);\n\n const openChatWidget = () => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n };\n\n // Falls back to homeUrl when the user landed on the error page directly\n // (deep link / fresh tab) and has no in-app history to go back to.\n const handleGoBack = () => {\n if (window.history.length > 1) {\n window.history.back();\n } else {\n window.location.href = homeUrl;\n }\n };\n\n const showDefaultDescription = !usesChat || showNeetoChatWidget;\n\n return (\n <div\n className=\"@container/error-page flex min-h-dvh w-full flex-col items-center justify-center\"\n data-testid=\"error-page-container\"\n >\n <div className=\"flex w-[768px] max-w-full flex-col items-center gap-8 p-4 text-center @[768px]/error-page:flex-row @[768px]/error-page:items-center @[768px]/error-page:gap-12 @[768px]/error-page:p-6 @[768px]/error-page:text-start\">\n <div\n className=\"bg-muted text-muted-foreground flex size-24 shrink-0 items-center justify-center rounded-full border\"\n data-testid=\"error-image\"\n >\n <Icon className=\"size-10\" strokeWidth={1.5} />\n </div>\n <div className=\"flex flex-col justify-center md:min-w-0 md:flex-grow\">\n <Helmet>\n <title>{t(titleKey)}</title>\n </Helmet>\n {!!status && (\n <Typography\n className=\"text-muted-foreground mb-2 tracking-[0.08em] uppercase\"\n data-testid=\"status-code\"\n variant=\"body3\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.errorPage.statusCodeLabel\", { status })}\n </Typography>\n )}\n <Typography\n className=\"mb-3\"\n data-testid=\"title\"\n variant=\"h3\"\n weight=\"semibold\"\n >\n {title || <Trans i18nKey={errorKey} />}\n </Typography>\n {description ? (\n <Typography\n className=\"mb-6\"\n dangerouslySetInnerHTML={{ __html: sanitize(description) }}\n data-testid=\"description\"\n variant=\"body1\"\n />\n ) : (\n showDefaultDescription && (\n <Typography\n className=\"mb-6\"\n data-testid=\"description\"\n variant=\"body1\"\n >\n <Trans\n i18nKey={descriptionKey}\n components={{\n contactLink: (\n <Button\n className=\"h-auto p-0 text-base\"\n variant=\"link\"\n onClick={openChatWidget}\n />\n ),\n }}\n />\n </Typography>\n )\n )}\n <div className=\"flex flex-wrap items-center justify-center gap-3 @[768px]/error-page:justify-start [&_a]:no-underline\">\n {primaryAction === \"back\" ? (\n <Button asChild size=\"lg\" variant=\"default\">\n <button type=\"button\" onClick={handleGoBack}>\n <ChevronLeft className=\"size-4 rtl:scale-x-[-1]\" />\n {t(\"neetoMolecules.errorPage.goBack\")}\n </button>\n </Button>\n ) : (\n !hideBackToHomeButton && (\n <Button\n asChild\n size=\"lg\"\n variant=\"default\"\n {...backToHomeButtonProps}\n >\n <a href={homeUrl}>\n <House className=\"size-4\" />\n {t(\"neetoMolecules.errorPage.backToHome\")}\n </a>\n </Button>\n )\n )}\n {children}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nErrorPage.propTypes = {\n /**\n * The URL to which the user will be taken to when user clicks on back to home button.\n */\n homeUrl: PropTypes.string,\n /**\n * The status code of the error.\n */\n status: PropTypes.oneOf([403, 404, 500]),\n /**\n * Decides whether 'contact us' link should be displayed or not.\n */\n showNeetoChatWidget: PropTypes.bool,\n /**\n * Description about the error.\n */\n description: PropTypes.string,\n /**\n * Decides whether 'back to home' button should be displayed or not.\n */\n hideBackToHomeButton: PropTypes.bool,\n /**\n * The title of the error page.\n */\n title: PropTypes.string,\n};\n\nexport default ErrorPage;\n"],"names":["createLucideIcon","ERRORS","Icon","Search","errorKey","titleKey","descriptionKey","primaryAction","usesChat","Lock","TriangleAlert","sanitize","DOMPurify","ErrorPage","_ref","_ref$homeUrl","homeUrl","status","backToHomeButtonProps","children","_ref$showNeetoChatWid","showNeetoChatWidget","description","title","_ref$hideBackToHomeBu","hideBackToHomeButton","_useTranslation","useTranslation","t","_useErrorDisplayStore","useErrorDisplayStore","useShallow","store","statusCode","showErrorPage","storeStatusCode","_ref2","useEffect","pageLoader","document","getElementById","remove","onBackButtonPress","setState","window","addEventListener","removeEventListener","openChatWidget","_window$NeetoChat","_window$NeetoChat2","NeetoChat","contextualHelp","maximizeWidget","openWidget","handleGoBack","history","length","back","location","href","showDefaultDescription","_jsx","className","_jsxs","strokeWidth","Helmet","Typography","variant","weight","Trans","i18nKey","dangerouslySetInnerHTML","__html","components","contactLink","Button","onClick","asChild","size","type","ChevronLeft","_objectSpread","House"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"ErrorPage.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/lock.mjs","../../../src/v2/components/ErrorPage/constants.js","../../../src/v2/components/ErrorPage/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"11\", x: \"3\", y: \"11\", rx: \"2\", ry: \"2\", key: \"1w4ew1\" }],\n [\"path\", { d: \"M7 11V7a5 5 0 0 1 10 0v4\", key: \"fwvmzm\" }]\n];\nconst Lock = createLucideIcon(\"lock\", __iconNode);\n\nexport { __iconNode, Lock as default };\n//# sourceMappingURL=lock.mjs.map\n","import { Clock, Lock, Search, TriangleAlert } from \"lucide-react\";\n\nexport const SUPPORT_EMAIL = \"support@neeto.com\";\n\nexport const ERRORS = {\n 404: {\n Icon: Search,\n errorKey: \"neetoMolecules.errorPage.cantBeFound\",\n titleKey: \"neetoMolecules.errorPage.title.cantBeFound\",\n descriptionKey: \"neetoMolecules.errorPage.description.cantBeFound\",\n primaryAction: \"home\",\n usesChat: true,\n },\n 403: {\n Icon: Lock,\n errorKey: \"neetoMolecules.errorPage.unauthorized\",\n titleKey: \"neetoMolecules.errorPage.title.unauthorized\",\n descriptionKey: \"neetoMolecules.errorPage.description.unauthorized\",\n primaryAction: \"back\",\n usesChat: false,\n },\n 429: {\n Icon: Clock,\n errorKey: \"neetoMolecules.errorPage.tooManyRequests\",\n titleKey: \"neetoMolecules.errorPage.title.tooManyRequests\",\n descriptionKey: \"neetoMolecules.errorPage.description.tooManyRequests\",\n primaryAction: \"retry\",\n usesChat: false,\n },\n 500: {\n Icon: TriangleAlert,\n errorKey: \"neetoMolecules.errorPage.internalServerError\",\n titleKey: \"neetoMolecules.errorPage.title.internalServerError\",\n descriptionKey: \"neetoMolecules.errorPage.description.internalServerError\",\n primaryAction: \"home\",\n usesChat: true,\n },\n};\n","import { useEffect } from \"react\";\n\nimport DOMPurify from \"dompurify\";\nimport { ChevronLeft, House, RefreshCw } from \"lucide-react\";\nimport { Button, Typography } from \"neetoatoms\";\nimport { useErrorDisplayStore } from \"neetocommons/v2/react-utils/useDisplayErrorPage\";\nimport PropTypes from \"prop-types\";\nimport { Helmet } from \"react-helmet\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { ERRORS, SUPPORT_EMAIL } from \"./constants\";\n\nconst sanitize = DOMPurify.sanitize;\n\nconst ErrorPage = ({\n homeUrl = \"/\",\n status,\n backToHomeButtonProps,\n children,\n showNeetoChatWidget = true,\n description,\n title,\n hideBackToHomeButton = false,\n}) => {\n const { t } = useTranslation();\n const { statusCode: storeStatusCode, showErrorPage } =\n useErrorDisplayStore.pick();\n\n status = status || storeStatusCode;\n const { Icon, errorKey, titleKey, descriptionKey, primaryAction, usesChat } =\n ERRORS[status] || ERRORS[404];\n\n useEffect(() => {\n const pageLoader = document.getElementById(\"neeto-page-loader\");\n if (pageLoader) pageLoader.remove();\n\n const onBackButtonPress = () => {\n if (!showErrorPage) return;\n useErrorDisplayStore.setState({ showErrorPage: false });\n };\n\n window.addEventListener(\"popstate\", onBackButtonPress);\n\n return () => {\n window.removeEventListener(\"popstate\", onBackButtonPress);\n };\n }, []);\n\n const openChatWidget = () => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n };\n\n // Falls back to homeUrl when the user landed on the error page directly\n // (deep link / fresh tab) and has no in-app history to go back to.\n const handleGoBack = () => {\n if (window.history.length > 1) {\n window.history.back();\n } else {\n window.location.href = homeUrl;\n }\n };\n\n const reloadPage = () => window.location.reload();\n\n const showDefaultDescription = !usesChat || showNeetoChatWidget;\n\n return (\n <div\n className=\"@container/error-page flex min-h-dvh w-full flex-col items-center justify-center\"\n data-testid=\"error-page-container\"\n >\n <div className=\"flex w-[768px] max-w-full flex-col items-center gap-8 p-4 text-center @[768px]/error-page:flex-row @[768px]/error-page:items-center @[768px]/error-page:gap-12 @[768px]/error-page:p-6 @[768px]/error-page:text-start\">\n <div\n className=\"bg-muted text-muted-foreground flex size-24 shrink-0 items-center justify-center rounded-full border\"\n data-testid=\"error-image\"\n >\n <Icon className=\"size-10\" strokeWidth={1.5} />\n </div>\n <div className=\"flex flex-col justify-center md:min-w-0 md:flex-grow\">\n <Helmet>\n <title>{t(titleKey)}</title>\n </Helmet>\n {!!status && (\n <Typography\n className=\"text-muted-foreground mb-2 tracking-[0.08em] uppercase\"\n data-testid=\"status-code\"\n variant=\"body3\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.errorPage.statusCodeLabel\", { status })}\n </Typography>\n )}\n <Typography\n className=\"mb-3\"\n data-testid=\"title\"\n variant=\"h3\"\n weight=\"semibold\"\n >\n {title || <Trans i18nKey={errorKey} />}\n </Typography>\n {description ? (\n <Typography\n className=\"mb-6\"\n dangerouslySetInnerHTML={{ __html: sanitize(description) }}\n data-testid=\"description\"\n variant=\"body1\"\n />\n ) : (\n showDefaultDescription && (\n <Typography\n className=\"mb-6\"\n data-testid=\"description\"\n variant=\"body1\"\n >\n <Trans\n i18nKey={descriptionKey}\n values={{ supportEmail: SUPPORT_EMAIL }}\n components={{\n contactLink: (\n <Button\n className=\"h-auto p-0 text-base\"\n variant=\"link\"\n onClick={openChatWidget}\n />\n ),\n emailLink: (\n <Button\n className=\"h-auto p-0 text-base\"\n href={`mailto:${SUPPORT_EMAIL}`}\n variant=\"link\"\n />\n ),\n }}\n />\n </Typography>\n )\n )}\n <div className=\"flex flex-wrap items-center justify-center gap-3 @[768px]/error-page:justify-start [&_a]:no-underline\">\n {primaryAction === \"retry\" && (\n <Button asChild size=\"lg\" variant=\"default\">\n <button type=\"button\" onClick={reloadPage}>\n <RefreshCw className=\"size-4\" />\n {t(\"neetoMolecules.errorPage.tryAgain\")}\n </button>\n </Button>\n )}\n {primaryAction === \"back\" && (\n <Button asChild size=\"lg\" variant=\"default\">\n <button type=\"button\" onClick={handleGoBack}>\n <ChevronLeft className=\"size-4 rtl:scale-x-[-1]\" />\n {t(\"neetoMolecules.errorPage.goBack\")}\n </button>\n </Button>\n )}\n {primaryAction === \"home\" && !hideBackToHomeButton && (\n <Button\n asChild\n size=\"lg\"\n variant=\"default\"\n {...backToHomeButtonProps}\n >\n <a href={homeUrl}>\n <House className=\"size-4\" />\n {t(\"neetoMolecules.errorPage.backToHome\")}\n </a>\n </Button>\n )}\n {children}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nErrorPage.propTypes = {\n /**\n * The URL to which the user will be taken to when user clicks on back to home button.\n */\n homeUrl: PropTypes.string,\n /**\n * The status code of the error.\n */\n status: PropTypes.oneOf([403, 404, 429, 500]),\n /**\n * Decides whether 'contact us' link should be displayed or not.\n */\n showNeetoChatWidget: PropTypes.bool,\n /**\n * Description about the error.\n */\n description: PropTypes.string,\n /**\n * Decides whether 'back to home' button should be displayed or not.\n */\n hideBackToHomeButton: PropTypes.bool,\n /**\n * The title of the error page.\n */\n title: PropTypes.string,\n};\n\nexport default ErrorPage;\n"],"names":["createLucideIcon","SUPPORT_EMAIL","ERRORS","Icon","Search","errorKey","titleKey","descriptionKey","primaryAction","usesChat","Lock","Clock","TriangleAlert","sanitize","DOMPurify","ErrorPage","_ref","_ref$homeUrl","homeUrl","status","backToHomeButtonProps","children","_ref$showNeetoChatWid","showNeetoChatWidget","description","title","_ref$hideBackToHomeBu","hideBackToHomeButton","_useTranslation","useTranslation","t","_useErrorDisplayStore","useErrorDisplayStore","useShallow","store","statusCode","showErrorPage","storeStatusCode","_ref2","useEffect","pageLoader","document","getElementById","remove","onBackButtonPress","setState","window","addEventListener","removeEventListener","openChatWidget","_window$NeetoChat","_window$NeetoChat2","NeetoChat","contextualHelp","maximizeWidget","openWidget","handleGoBack","history","length","back","location","href","reloadPage","reload","showDefaultDescription","_jsx","className","_jsxs","strokeWidth","Helmet","Typography","variant","weight","Trans","i18nKey","dangerouslySetInnerHTML","__html","values","supportEmail","components","contactLink","Button","onClick","emailLink","concat","asChild","size","type","RefreshCw","ChevronLeft","_objectSpread","House"],"mappings":"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","x_google_ignoreList":[0]}
@@ -104,7 +104,8 @@ var HighlightedSnippet = function HighlightedSnippet(_ref) {
104
104
  });
105
105
  };
106
106
 
107
- var _excluded = ["enableAdvancedSearch", "data", "getTypeLabel", "isFetching", "isOpen", "setIsOpen", "searchTerm", "setSearchTerm", "onSearchChange", "debounceWait", "tagStyle", "tagSize", "onClose", "onGoToAdvanced", "onLoadMore", "hasMore", "isFetchingMore"];
107
+ var _excluded = ["enableAdvancedSearch", "data", "getTypeLabel", "getTitleBadges", "isFetching", "isOpen", "setIsOpen", "searchTerm", "setSearchTerm", "onSearchChange", "debounceWait", "tagStyle", "tagSize", "onClose", "onGoToAdvanced", "onLoadMore", "hasMore", "isFetchingMore"],
108
+ _excluded2 = ["key"];
108
109
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
109
110
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
110
111
  var toRelativePath = function toRelativePath(url) {
@@ -138,6 +139,8 @@ var FinderModal = function FinderModal(_ref2) {
138
139
  data = _ref2$data === void 0 ? [] : _ref2$data,
139
140
  _ref2$getTypeLabel = _ref2.getTypeLabel,
140
141
  getTypeLabel = _ref2$getTypeLabel === void 0 ? neetoCist.humanize : _ref2$getTypeLabel,
142
+ _ref2$getTitleBadges = _ref2.getTitleBadges,
143
+ getTitleBadges = _ref2$getTitleBadges === void 0 ? neetoCist.noop : _ref2$getTitleBadges,
141
144
  isFetching = _ref2.isFetching,
142
145
  isOpen = _ref2.isOpen,
143
146
  _ref2$setIsOpen = _ref2.setIsOpen,
@@ -237,6 +240,7 @@ var FinderModal = function FinderModal(_ref2) {
237
240
  var _item$id, _item$id2;
238
241
  var relativePath = toRelativePath(item.url);
239
242
  var description = htmlToText(item.description);
243
+ var titleBadges = getTitleBadges(item) || [];
240
244
  return /*#__PURE__*/jsxRuntime.jsx(primitives.CommandItem, {
241
245
  className: "!p-0",
242
246
  value: "".concat(item.type, "-").concat((_item$id2 = item.id) !== null && _item$id2 !== void 0 ? _item$id2 : index),
@@ -253,12 +257,25 @@ var FinderModal = function FinderModal(_ref2) {
253
257
  onClick: handleAnchorClick,
254
258
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
255
259
  className: "flex min-w-0 flex-1 flex-col gap-1.5",
256
- children: [/*#__PURE__*/jsxRuntime.jsx("span", {
257
- className: "text-foreground line-clamp-1 text-sm font-medium",
258
- children: /*#__PURE__*/jsxRuntime.jsx(HighlightedSnippet, {
259
- maxLength: 80,
260
- snippet: item.title || ""
261
- })
260
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
261
+ className: "flex min-w-0 items-center gap-2",
262
+ children: [/*#__PURE__*/jsxRuntime.jsx("span", {
263
+ className: "text-foreground truncate text-sm font-medium",
264
+ children: /*#__PURE__*/jsxRuntime.jsx(HighlightedSnippet, {
265
+ maxLength: 80,
266
+ snippet: item.title || ""
267
+ })
268
+ }), neetoCist.isNotEmpty(titleBadges) && /*#__PURE__*/jsxRuntime.jsx("div", {
269
+ className: "flex shrink-0 items-center gap-1.5",
270
+ "data-testid": "neeto-molecules-finder-modal-title-badges",
271
+ children: titleBadges.map(function (_ref5, badgeIndex) {
272
+ var key = _ref5.key,
273
+ badgeProps = _objectWithoutProperties(_ref5, _excluded2);
274
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Badge, _objectSpread({
275
+ size: "sm"
276
+ }, badgeProps), key !== null && key !== void 0 ? key : badgeIndex);
277
+ })
278
+ })]
262
279
  }), description && /*#__PURE__*/jsxRuntime.jsx("span", {
263
280
  className: "text-muted-foreground line-clamp-1 text-xs",
264
281
  children: /*#__PURE__*/jsxRuntime.jsx(HighlightedSnippet, {
@@ -317,10 +334,10 @@ var FinderModal = function FinderModal(_ref2) {
317
334
  description: internalSearchTerm ? t("neetoMolecules.finderModal.noDataDesc") : t("neetoMolecules.finderModal.startTypingDesc"),
318
335
  title: internalSearchTerm ? t("neetoMolecules.finderModal.noDataTitle") : t("neetoMolecules.finderModal.startTypingTitle")
319
336
  })
320
- }), Array.isArray(data) ? renderItems(data) : Object.entries(data).map(function (_ref5) {
321
- var _ref6 = _slicedToArray(_ref5, 2),
322
- group = _ref6[0],
323
- items = _ref6[1];
337
+ }), Array.isArray(data) ? renderItems(data) : Object.entries(data).map(function (_ref6) {
338
+ var _ref7 = _slicedToArray(_ref6, 2),
339
+ group = _ref7[0],
340
+ items = _ref7[1];
324
341
  if (!items.length) return null;
325
342
  return /*#__PURE__*/jsxRuntime.jsx(primitives.CommandGroup, {
326
343
  heading: group,
@@ -1 +1 @@
1
- {"version":3,"file":"FinderModal.js","sources":["../../../src/v2/components/FinderModal/Footer.jsx","../../../src/v2/components/FinderModal/utils.jsx","../../../src/v2/components/FinderModal/index.jsx"],"sourcesContent":["import { ChevronDown, ChevronUp } from \"lucide-react\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ModalFooter = ({ enableAdvancedSearch }) => {\n const { t } = useTranslation();\n\n const shortcuts = [\n {\n label: t(\"neetoMolecules.finderModal.advancedSearch\"),\n keys: [\"Cmd/Ctrl\", \"Return\"],\n isVisible: enableAdvancedSearch,\n },\n {\n label: t(\"neetoMolecules.common.actions.open\"),\n keys: [\"Return\"],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.move\"),\n keys: [\n <ChevronUp className=\"text-muted-foreground\" key=\"up\" size={12} />,\n <ChevronDown className=\"text-muted-foreground\" key=\"down\" size={12} />,\n ],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.close\"),\n keys: [\"Esc\"],\n isVisible: true,\n },\n ];\n\n return (\n <div className=\"border-border bg-muted/40 nm-finder-modal__footer border-t px-4 py-2.5\">\n <div className=\"text-muted-foreground flex flex-wrap items-center gap-x-3 gap-y-1.5 text-xs\">\n {shortcuts.filter(prop(\"isVisible\")).map(({ label, keys }, index) => (\n <div className=\"flex items-center gap-1\" key={index}>\n {keys.map((key, keyIndex) => (\n <kbd\n className=\"border-border bg-background text-foreground inline-flex h-4 min-w-4 items-center justify-center rounded border px-1 font-sans text-[10px] leading-none\"\n key={keyIndex}\n >\n {key}\n </kbd>\n ))}\n <span>{label}</span>\n </div>\n ))}\n </div>\n </div>\n );\n};\n\nexport default ModalFooter;\n","import { Fragment } from \"react\";\n\nconst htmlToText = html => {\n if (!html) return null;\n\n const tmp = document.createElement(\"div\");\n tmp.innerHTML = html;\n\n return tmp.textContent || tmp.innerText || \"\";\n};\n\nconst trimAroundMatch = (text, maxLength) => {\n const start = text.indexOf(\"[[[\");\n\n if (start === -1) {\n return text.length > maxLength ? `${text.slice(0, maxLength)}…` : text;\n }\n\n const from = Math.max(0, start - 24);\n const to = Math.min(text.length, from + maxLength);\n\n return [\n from > 0 && \"… \",\n text.slice(from, to).trim(),\n to < text.length && \" …\",\n ]\n .filter(Boolean)\n .join(\"\");\n};\n\nconst HighlightedSnippet = ({ snippet, maxLength = 100 }) => {\n if (!snippet) return null;\n\n const text = trimAroundMatch(htmlToText(snippet) ?? \"\", maxLength);\n\n return (\n <span>\n {text.split(/\\[\\[\\[(.*?)\\]\\]\\]/).map((part, index) =>\n index % 2 === 1 ? (\n <mark\n className=\"rounded-sm bg-yellow-200 px-0.5 text-yellow-900\"\n key={index}\n >\n {part}\n </mark>\n ) : (\n <Fragment key={index}>{part}</Fragment>\n )\n )}\n </span>\n );\n};\n\nexport { htmlToText, HighlightedSnippet };\n","import { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport { Badge, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport { Search } from \"lucide-react\";\nimport { humanize, noop } from \"neetocist\";\nimport useDebounce from \"neetocommons/v2/react-utils/useDebounce\";\nimport useHotkeys from \"neetohotkeys\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport ModalFooter from \"./Footer\";\nimport { HighlightedSnippet, htmlToText } from \"./utils\";\n\nconst toRelativePath = url => {\n const { pathname, search } = new URL(url);\n\n return `${pathname}${search}`;\n};\n\nconst navigateToItem = ({ history, onClose, relativePath }) => {\n onClose?.();\n const currentPath = `${history.location.pathname}${history.location.search}`;\n if (currentPath !== relativePath) {\n history.push(relativePath);\n }\n};\n\nconst handleAnchorClick = event => {\n const isModified =\n event.metaKey || event.ctrlKey || event.shiftKey || event.button !== 0;\n if (isModified) {\n event.stopPropagation();\n\n return;\n }\n event.preventDefault();\n};\n\nconst FinderModal = ({\n enableAdvancedSearch = true,\n data = [],\n getTypeLabel = humanize,\n isFetching,\n isOpen,\n setIsOpen = noop,\n searchTerm = \"\",\n setSearchTerm,\n onSearchChange,\n debounceWait = 300,\n tagStyle = \"primary\",\n tagSize = \"small\",\n onClose,\n onGoToAdvanced = noop,\n onLoadMore,\n hasMore = false,\n isFetchingMore = false,\n ...props\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const [sentinelEl, setSentinelEl] = useState(null);\n const onLoadMoreRef = useRef(onLoadMore || noop);\n\n const [internalSearchTerm, setInternalSearchTerm] = useState(searchTerm);\n\n useEffect(() => {\n if (searchTerm !== internalSearchTerm) {\n setInternalSearchTerm(searchTerm);\n }\n }, [searchTerm]);\n\n const debouncedSearchTerm = useDebounce(internalSearchTerm, debounceWait);\n\n useEffect(() => {\n onSearchChange?.(debouncedSearchTerm);\n }, [debouncedSearchTerm, onSearchChange]);\n\n const handleSearchChange = value => {\n setInternalSearchTerm(value);\n setSearchTerm?.(value);\n };\n\n const handleOpenChange = open => {\n if (!open) onClose?.();\n };\n\n useHotkeys([\"ctrl+enter\", \"mod+enter\"], onGoToAdvanced, {\n mode: \"global\",\n enabled: isOpen && enableAdvancedSearch,\n });\n\n useHotkeys(\"mod+k\", () => setIsOpen(true), { mode: \"global\" });\n useHotkeys(\"esc\", () => setIsOpen(false), {\n mode: \"global\",\n enabled: isOpen,\n });\n\n useEffect(() => {\n onLoadMoreRef.current = onLoadMore || noop;\n }, [onLoadMore]);\n\n const isPaginationEnabled = Boolean(onLoadMore);\n\n useEffect(() => {\n if (!sentinelEl || !isPaginationEnabled || !hasMore || isFetchingMore) {\n return undefined;\n }\n\n const root = sentinelEl.closest(\".nm-finder-modal__body\");\n const observer = new IntersectionObserver(\n ([entry]) => {\n if (entry.isIntersecting) onLoadMoreRef.current();\n },\n { root, rootMargin: \"120px\" }\n );\n observer.observe(sentinelEl);\n\n return () => observer.disconnect();\n }, [sentinelEl, isPaginationEnabled, hasMore, isFetchingMore]);\n\n const isDataEmpty = useMemo(() => {\n if (Array.isArray(data)) return data.length === 0;\n\n return Object.values(data).every(items => items.length === 0);\n }, [data]);\n\n const renderItems = items =>\n items.map((item, index) => {\n const relativePath = toRelativePath(item.url);\n const description = htmlToText(item.description);\n\n return (\n <CommandItem\n className=\"!p-0\"\n key={`${item.type}-${item.id ?? index}`}\n value={`${item.type}-${item.id ?? index}`}\n onSelect={() => navigateToItem({ history, onClose, relativePath })}\n >\n <a\n className=\"flex min-w-0 flex-1 items-center justify-between gap-3 px-3 py-2.5 no-underline outline-none\"\n href={relativePath}\n onClick={handleAnchorClick}\n >\n <div className=\"flex min-w-0 flex-1 flex-col gap-1.5\">\n <span className=\"text-foreground line-clamp-1 text-sm font-medium\">\n <HighlightedSnippet maxLength={80} snippet={item.title || \"\"} />\n </span>\n {description && (\n <span className=\"text-muted-foreground line-clamp-1 text-xs\">\n <HighlightedSnippet\n maxLength={80}\n snippet={item.description}\n />\n </span>\n )}\n </div>\n {item.type && (\n <div className=\"shrink-0\">\n <Badge\n color={tagStyle}\n label={getTypeLabel(item.type)}\n size={tagSize}\n />\n </div>\n )}\n </a>\n </CommandItem>\n );\n });\n\n return (\n <CommandDialog\n {...props}\n className=\"nm-finder-modal !top-1/4 !max-w-[calc(100%-2rem)] sm:!max-w-xl\"\n open={isOpen}\n title={t(\"neetoMolecules.common.actions.search\")}\n onOpenChange={handleOpenChange}\n >\n <Command className=\"!p-0\" shouldFilter={false}>\n <div className=\"border-border flex items-center gap-2 border-b px-3 py-2 [&_[data-slot=command-input-wrapper]]:!p-0\">\n <div className=\"min-w-0 flex-1\">\n <CommandInput\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n value={internalSearchTerm}\n onValueChange={handleSearchChange}\n />\n </div>\n {isFetching && <Spinner size=\"small\" />}\n {enableAdvancedSearch && (\n <button\n className=\"border-border bg-background text-muted-foreground hover:bg-muted hover:text-foreground flex h-8 shrink-0 items-center gap-2 rounded-md border px-2 text-xs whitespace-nowrap transition-colors\"\n type=\"button\"\n onClick={onGoToAdvanced}\n >\n <span>{t(\"neetoMolecules.finderModal.advancedSearch\")}</span>\n <kbd className=\"border-border bg-muted inline-flex h-4 items-center rounded border px-1 font-sans text-[10px] leading-none\">\n ⌘⏎\n </kbd>\n </button>\n )}\n </div>\n <CommandList className=\"nm-finder-modal__body max-h-[min(24rem,55vh)] min-h-[min(12rem,40vh)] p-2\">\n {isDataEmpty && !isFetching && (\n <CommandEmpty className=\"!py-8\">\n <Empty\n icon={Search}\n description={\n internalSearchTerm\n ? t(\"neetoMolecules.finderModal.noDataDesc\")\n : t(\"neetoMolecules.finderModal.startTypingDesc\")\n }\n title={\n internalSearchTerm\n ? t(\"neetoMolecules.finderModal.noDataTitle\")\n : t(\"neetoMolecules.finderModal.startTypingTitle\")\n }\n />\n </CommandEmpty>\n )}\n {Array.isArray(data)\n ? renderItems(data)\n : Object.entries(data).map(([group, items]) => {\n if (!items.length) return null;\n\n return (\n <CommandGroup heading={group} key={group}>\n {renderItems(items)}\n </CommandGroup>\n );\n })}\n {onLoadMore && hasMore && (\n <div\n aria-hidden=\"true\"\n className=\"h-px w-full\"\n data-testid=\"neeto-molecules-finder-modal-sentinel\"\n ref={setSentinelEl}\n />\n )}\n {isFetchingMore && (\n <div\n className=\"flex items-center justify-center py-3\"\n data-testid=\"neeto-molecules-finder-modal-loading-more\"\n >\n <Spinner size=\"small\" />\n </div>\n )}\n </CommandList>\n <ModalFooter {...{ enableAdvancedSearch }} />\n </Command>\n </CommandDialog>\n );\n};\n\nFinderModal.propTypes = {\n enableAdvancedSearch: PropTypes.bool,\n data: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n getTypeLabel: PropTypes.func,\n isFetching: PropTypes.bool,\n isOpen: PropTypes.bool,\n searchTerm: PropTypes.string,\n setSearchTerm: PropTypes.func,\n onSearchChange: PropTypes.func,\n debounceWait: PropTypes.number,\n tagStyle: PropTypes.string,\n tagSize: PropTypes.string,\n onClose: PropTypes.func,\n onGoToAdvanced: PropTypes.func,\n onLoadMore: PropTypes.func,\n hasMore: PropTypes.bool,\n isFetchingMore: PropTypes.bool,\n};\n\nexport { HighlightedSnippet };\n\nexport default FinderModal;\n"],"names":["ModalFooter","_ref","enableAdvancedSearch","_useTranslation","useTranslation","t","shortcuts","label","keys","isVisible","_jsx","ChevronUp","className","size","ChevronDown","children","filter","prop","map","_ref2","index","_jsxs","key","keyIndex","htmlToText","html","tmp","document","createElement","innerHTML","textContent","innerText","trimAroundMatch","text","maxLength","start","indexOf","length","concat","slice","from","Math","max","to","min","trim","Boolean","join","HighlightedSnippet","_htmlToText","snippet","_ref$maxLength","split","part","Fragment","toRelativePath","url","_URL","URL","pathname","search","navigateToItem","history","onClose","relativePath","currentPath","location","push","handleAnchorClick","event","isModified","metaKey","ctrlKey","shiftKey","button","stopPropagation","preventDefault","FinderModal","_ref2$enableAdvancedS","_ref2$data","data","_ref2$getTypeLabel","getTypeLabel","humanize","isFetching","isOpen","_ref2$setIsOpen","setIsOpen","noop","_ref2$searchTerm","searchTerm","setSearchTerm","onSearchChange","_ref2$debounceWait","debounceWait","_ref2$tagStyle","tagStyle","_ref2$tagSize","tagSize","_ref2$onGoToAdvanced","onGoToAdvanced","onLoadMore","_ref2$hasMore","hasMore","_ref2$isFetchingMore","isFetchingMore","props","_objectWithoutProperties","_excluded","useHistory","_useState","useState","_useState2","_slicedToArray","sentinelEl","setSentinelEl","onLoadMoreRef","useRef","_useState3","_useState4","internalSearchTerm","setInternalSearchTerm","useEffect","debouncedSearchTerm","useDebounce","handleSearchChange","value","handleOpenChange","open","useHotkeys","mode","enabled","current","isPaginationEnabled","undefined","root","closest","observer","IntersectionObserver","_ref3","_ref4","entry","isIntersecting","rootMargin","observe","disconnect","isDataEmpty","useMemo","Array","isArray","Object","values","every","items","renderItems","item","_item$id","_item$id2","description","CommandItem","type","id","onSelect","href","onClick","title","Badge","color","CommandDialog","_objectSpread","onOpenChange","Command","shouldFilter","CommandInput","placeholder","onValueChange","Spinner","CommandList","CommandEmpty","Empty","icon","Search","entries","_ref5","_ref6","group","CommandGroup","heading","ref"],"mappings":"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"}
1
+ {"version":3,"file":"FinderModal.js","sources":["../../../src/v2/components/FinderModal/Footer.jsx","../../../src/v2/components/FinderModal/utils.jsx","../../../src/v2/components/FinderModal/index.jsx"],"sourcesContent":["import { ChevronDown, ChevronUp } from \"lucide-react\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ModalFooter = ({ enableAdvancedSearch }) => {\n const { t } = useTranslation();\n\n const shortcuts = [\n {\n label: t(\"neetoMolecules.finderModal.advancedSearch\"),\n keys: [\"Cmd/Ctrl\", \"Return\"],\n isVisible: enableAdvancedSearch,\n },\n {\n label: t(\"neetoMolecules.common.actions.open\"),\n keys: [\"Return\"],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.move\"),\n keys: [\n <ChevronUp className=\"text-muted-foreground\" key=\"up\" size={12} />,\n <ChevronDown className=\"text-muted-foreground\" key=\"down\" size={12} />,\n ],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.close\"),\n keys: [\"Esc\"],\n isVisible: true,\n },\n ];\n\n return (\n <div className=\"border-border bg-muted/40 nm-finder-modal__footer border-t px-4 py-2.5\">\n <div className=\"text-muted-foreground flex flex-wrap items-center gap-x-3 gap-y-1.5 text-xs\">\n {shortcuts.filter(prop(\"isVisible\")).map(({ label, keys }, index) => (\n <div className=\"flex items-center gap-1\" key={index}>\n {keys.map((key, keyIndex) => (\n <kbd\n className=\"border-border bg-background text-foreground inline-flex h-4 min-w-4 items-center justify-center rounded border px-1 font-sans text-[10px] leading-none\"\n key={keyIndex}\n >\n {key}\n </kbd>\n ))}\n <span>{label}</span>\n </div>\n ))}\n </div>\n </div>\n );\n};\n\nexport default ModalFooter;\n","import { Fragment } from \"react\";\n\nconst htmlToText = html => {\n if (!html) return null;\n\n const tmp = document.createElement(\"div\");\n tmp.innerHTML = html;\n\n return tmp.textContent || tmp.innerText || \"\";\n};\n\nconst trimAroundMatch = (text, maxLength) => {\n const start = text.indexOf(\"[[[\");\n\n if (start === -1) {\n return text.length > maxLength ? `${text.slice(0, maxLength)}…` : text;\n }\n\n const from = Math.max(0, start - 24);\n const to = Math.min(text.length, from + maxLength);\n\n return [\n from > 0 && \"… \",\n text.slice(from, to).trim(),\n to < text.length && \" …\",\n ]\n .filter(Boolean)\n .join(\"\");\n};\n\nconst HighlightedSnippet = ({ snippet, maxLength = 100 }) => {\n if (!snippet) return null;\n\n const text = trimAroundMatch(htmlToText(snippet) ?? \"\", maxLength);\n\n return (\n <span>\n {text.split(/\\[\\[\\[(.*?)\\]\\]\\]/).map((part, index) =>\n index % 2 === 1 ? (\n <mark\n className=\"rounded-sm bg-yellow-200 px-0.5 text-yellow-900\"\n key={index}\n >\n {part}\n </mark>\n ) : (\n <Fragment key={index}>{part}</Fragment>\n )\n )}\n </span>\n );\n};\n\nexport { htmlToText, HighlightedSnippet };\n","import { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport { Search } from \"lucide-react\";\nimport { Badge, Empty, Spinner } from \"neetoatoms\";\nimport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"neetoatoms/primitives\";\nimport { humanize, isNotEmpty, noop } from \"neetocist\";\nimport useDebounce from \"neetocommons/v2/react-utils/useDebounce\";\nimport useHotkeys from \"neetohotkeys\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport ModalFooter from \"./Footer\";\nimport { HighlightedSnippet, htmlToText } from \"./utils\";\n\nconst toRelativePath = url => {\n const { pathname, search } = new URL(url);\n\n return `${pathname}${search}`;\n};\n\nconst navigateToItem = ({ history, onClose, relativePath }) => {\n onClose?.();\n const currentPath = `${history.location.pathname}${history.location.search}`;\n if (currentPath !== relativePath) {\n history.push(relativePath);\n }\n};\n\nconst handleAnchorClick = event => {\n const isModified =\n event.metaKey || event.ctrlKey || event.shiftKey || event.button !== 0;\n if (isModified) {\n event.stopPropagation();\n\n return;\n }\n event.preventDefault();\n};\n\nconst FinderModal = ({\n enableAdvancedSearch = true,\n data = [],\n getTypeLabel = humanize,\n getTitleBadges = noop,\n isFetching,\n isOpen,\n setIsOpen = noop,\n searchTerm = \"\",\n setSearchTerm,\n onSearchChange,\n debounceWait = 300,\n tagStyle = \"primary\",\n tagSize = \"small\",\n onClose,\n onGoToAdvanced = noop,\n onLoadMore,\n hasMore = false,\n isFetchingMore = false,\n ...props\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const [sentinelEl, setSentinelEl] = useState(null);\n const onLoadMoreRef = useRef(onLoadMore || noop);\n\n const [internalSearchTerm, setInternalSearchTerm] = useState(searchTerm);\n\n useEffect(() => {\n if (searchTerm !== internalSearchTerm) {\n setInternalSearchTerm(searchTerm);\n }\n }, [searchTerm]);\n\n const debouncedSearchTerm = useDebounce(internalSearchTerm, debounceWait);\n\n useEffect(() => {\n onSearchChange?.(debouncedSearchTerm);\n }, [debouncedSearchTerm, onSearchChange]);\n\n const handleSearchChange = value => {\n setInternalSearchTerm(value);\n setSearchTerm?.(value);\n };\n\n const handleOpenChange = open => {\n if (!open) onClose?.();\n };\n\n useHotkeys([\"ctrl+enter\", \"mod+enter\"], onGoToAdvanced, {\n mode: \"global\",\n enabled: isOpen && enableAdvancedSearch,\n });\n\n useHotkeys(\"mod+k\", () => setIsOpen(true), { mode: \"global\" });\n useHotkeys(\"esc\", () => setIsOpen(false), {\n mode: \"global\",\n enabled: isOpen,\n });\n\n useEffect(() => {\n onLoadMoreRef.current = onLoadMore || noop;\n }, [onLoadMore]);\n\n const isPaginationEnabled = Boolean(onLoadMore);\n\n useEffect(() => {\n if (!sentinelEl || !isPaginationEnabled || !hasMore || isFetchingMore) {\n return undefined;\n }\n\n const root = sentinelEl.closest(\".nm-finder-modal__body\");\n const observer = new IntersectionObserver(\n ([entry]) => {\n if (entry.isIntersecting) onLoadMoreRef.current();\n },\n { root, rootMargin: \"120px\" }\n );\n observer.observe(sentinelEl);\n\n return () => observer.disconnect();\n }, [sentinelEl, isPaginationEnabled, hasMore, isFetchingMore]);\n\n const isDataEmpty = useMemo(() => {\n if (Array.isArray(data)) return data.length === 0;\n\n return Object.values(data).every(items => items.length === 0);\n }, [data]);\n\n const renderItems = items =>\n items.map((item, index) => {\n const relativePath = toRelativePath(item.url);\n const description = htmlToText(item.description);\n const titleBadges = getTitleBadges(item) || [];\n\n return (\n <CommandItem\n className=\"!p-0\"\n key={`${item.type}-${item.id ?? index}`}\n value={`${item.type}-${item.id ?? index}`}\n onSelect={() => navigateToItem({ history, onClose, relativePath })}\n >\n <a\n className=\"flex min-w-0 flex-1 items-center justify-between gap-3 px-3 py-2.5 no-underline outline-none\"\n href={relativePath}\n onClick={handleAnchorClick}\n >\n <div className=\"flex min-w-0 flex-1 flex-col gap-1.5\">\n <div className=\"flex min-w-0 items-center gap-2\">\n <span className=\"text-foreground truncate text-sm font-medium\">\n <HighlightedSnippet\n maxLength={80}\n snippet={item.title || \"\"}\n />\n </span>\n {isNotEmpty(titleBadges) && (\n <div\n className=\"flex shrink-0 items-center gap-1.5\"\n data-testid=\"neeto-molecules-finder-modal-title-badges\"\n >\n {titleBadges.map(({ key, ...badgeProps }, badgeIndex) => (\n <Badge\n key={key ?? badgeIndex}\n size=\"sm\"\n {...badgeProps}\n />\n ))}\n </div>\n )}\n </div>\n {description && (\n <span className=\"text-muted-foreground line-clamp-1 text-xs\">\n <HighlightedSnippet\n maxLength={80}\n snippet={item.description}\n />\n </span>\n )}\n </div>\n {item.type && (\n <div className=\"shrink-0\">\n <Badge\n color={tagStyle}\n label={getTypeLabel(item.type)}\n size={tagSize}\n />\n </div>\n )}\n </a>\n </CommandItem>\n );\n });\n\n return (\n <CommandDialog\n {...props}\n className=\"nm-finder-modal !top-1/4 !max-w-[calc(100%-2rem)] sm:!max-w-xl\"\n open={isOpen}\n title={t(\"neetoMolecules.common.actions.search\")}\n onOpenChange={handleOpenChange}\n >\n <Command className=\"!p-0\" shouldFilter={false}>\n <div className=\"border-border flex items-center gap-2 border-b px-3 py-2 [&_[data-slot=command-input-wrapper]]:!p-0\">\n <div className=\"min-w-0 flex-1\">\n <CommandInput\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n value={internalSearchTerm}\n onValueChange={handleSearchChange}\n />\n </div>\n {isFetching && <Spinner size=\"small\" />}\n {enableAdvancedSearch && (\n <button\n className=\"border-border bg-background text-muted-foreground hover:bg-muted hover:text-foreground flex h-8 shrink-0 items-center gap-2 rounded-md border px-2 text-xs whitespace-nowrap transition-colors\"\n type=\"button\"\n onClick={onGoToAdvanced}\n >\n <span>{t(\"neetoMolecules.finderModal.advancedSearch\")}</span>\n <kbd className=\"border-border bg-muted inline-flex h-4 items-center rounded border px-1 font-sans text-[10px] leading-none\">\n ⌘⏎\n </kbd>\n </button>\n )}\n </div>\n <CommandList className=\"nm-finder-modal__body max-h-[min(24rem,55vh)] min-h-[min(12rem,40vh)] p-2\">\n {isDataEmpty && !isFetching && (\n <CommandEmpty className=\"!py-8\">\n <Empty\n icon={Search}\n description={\n internalSearchTerm\n ? t(\"neetoMolecules.finderModal.noDataDesc\")\n : t(\"neetoMolecules.finderModal.startTypingDesc\")\n }\n title={\n internalSearchTerm\n ? t(\"neetoMolecules.finderModal.noDataTitle\")\n : t(\"neetoMolecules.finderModal.startTypingTitle\")\n }\n />\n </CommandEmpty>\n )}\n {Array.isArray(data)\n ? renderItems(data)\n : Object.entries(data).map(([group, items]) => {\n if (!items.length) return null;\n\n return (\n <CommandGroup heading={group} key={group}>\n {renderItems(items)}\n </CommandGroup>\n );\n })}\n {onLoadMore && hasMore && (\n <div\n aria-hidden=\"true\"\n className=\"h-px w-full\"\n data-testid=\"neeto-molecules-finder-modal-sentinel\"\n ref={setSentinelEl}\n />\n )}\n {isFetchingMore && (\n <div\n className=\"flex items-center justify-center py-3\"\n data-testid=\"neeto-molecules-finder-modal-loading-more\"\n >\n <Spinner size=\"small\" />\n </div>\n )}\n </CommandList>\n <ModalFooter {...{ enableAdvancedSearch }} />\n </Command>\n </CommandDialog>\n );\n};\n\nFinderModal.propTypes = {\n enableAdvancedSearch: PropTypes.bool,\n data: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n getTypeLabel: PropTypes.func,\n getTitleBadges: PropTypes.func,\n isFetching: PropTypes.bool,\n isOpen: PropTypes.bool,\n searchTerm: PropTypes.string,\n setSearchTerm: PropTypes.func,\n onSearchChange: PropTypes.func,\n debounceWait: PropTypes.number,\n tagStyle: PropTypes.string,\n tagSize: PropTypes.string,\n onClose: PropTypes.func,\n onGoToAdvanced: PropTypes.func,\n onLoadMore: PropTypes.func,\n hasMore: PropTypes.bool,\n isFetchingMore: PropTypes.bool,\n};\n\nexport { HighlightedSnippet };\n\nexport default FinderModal;\n"],"names":["ModalFooter","_ref","enableAdvancedSearch","_useTranslation","useTranslation","t","shortcuts","label","keys","isVisible","_jsx","ChevronUp","className","size","ChevronDown","children","filter","prop","map","_ref2","index","_jsxs","key","keyIndex","htmlToText","html","tmp","document","createElement","innerHTML","textContent","innerText","trimAroundMatch","text","maxLength","start","indexOf","length","concat","slice","from","Math","max","to","min","trim","Boolean","join","HighlightedSnippet","_htmlToText","snippet","_ref$maxLength","split","part","Fragment","toRelativePath","url","_URL","URL","pathname","search","navigateToItem","history","onClose","relativePath","currentPath","location","push","handleAnchorClick","event","isModified","metaKey","ctrlKey","shiftKey","button","stopPropagation","preventDefault","FinderModal","_ref2$enableAdvancedS","_ref2$data","data","_ref2$getTypeLabel","getTypeLabel","humanize","_ref2$getTitleBadges","getTitleBadges","noop","isFetching","isOpen","_ref2$setIsOpen","setIsOpen","_ref2$searchTerm","searchTerm","setSearchTerm","onSearchChange","_ref2$debounceWait","debounceWait","_ref2$tagStyle","tagStyle","_ref2$tagSize","tagSize","_ref2$onGoToAdvanced","onGoToAdvanced","onLoadMore","_ref2$hasMore","hasMore","_ref2$isFetchingMore","isFetchingMore","props","_objectWithoutProperties","_excluded","useHistory","_useState","useState","_useState2","_slicedToArray","sentinelEl","setSentinelEl","onLoadMoreRef","useRef","_useState3","_useState4","internalSearchTerm","setInternalSearchTerm","useEffect","debouncedSearchTerm","useDebounce","handleSearchChange","value","handleOpenChange","open","useHotkeys","mode","enabled","current","isPaginationEnabled","undefined","root","closest","observer","IntersectionObserver","_ref3","_ref4","entry","isIntersecting","rootMargin","observe","disconnect","isDataEmpty","useMemo","Array","isArray","Object","values","every","items","renderItems","item","_item$id","_item$id2","description","titleBadges","CommandItem","type","id","onSelect","href","onClick","title","isNotEmpty","_ref5","badgeIndex","badgeProps","_excluded2","Badge","_objectSpread","color","CommandDialog","onOpenChange","Command","shouldFilter","CommandInput","placeholder","onValueChange","Spinner","CommandList","CommandEmpty","Empty","icon","Search","entries","_ref6","_ref7","group","CommandGroup","heading","ref"],"mappings":"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"}
@@ -32,6 +32,7 @@ require('../ellipsis-DDma6joP.js');
32
32
  require('@bigbinary/neeto-commons-frontend/v2/utils');
33
33
  require('@bigbinary/neeto-team-members-frontend/v2/Profile');
34
34
  require('@bigbinary/neeto-commons-frontend/v2/initializers');
35
+ require('../clock-J9ePvpcf.js');
35
36
  require('../trash-2-Dic3f2Hq.js');
36
37
  require('../external-link-CYxRAiwW.js');
37
38
 
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationHeader.js","sources":["../../../src/v2/components/NavigationHeader/constants.jsx","../../../src/v2/components/NavigationHeader/LeftBlock.jsx","../../../src/v2/components/NavigationHeader/OverflowLinks.jsx","../../../src/v2/components/NavigationHeader/utils.js","../../../src/v2/components/NavigationHeader/Navigation.jsx","../../../src/v2/components/NavigationHeader/RightBlock.jsx","../../../src/v2/components/NavigationHeader/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Home } from \"lucide-react\";\n\nexport const DEFAULT_HOME_BUTTON_PROPS = {\n tooltip: {\n content: t(\"neetoMolecules.navigationHeader.home\"),\n position: \"bottom\",\n },\n homeUrl: \"/\",\n icon: <Home className=\"size-5\" />,\n};\n","import { Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { mergeDeepRight } from \"ramda\";\nimport { Link } from \"react-router-dom\";\n\nimport { DEFAULT_HOME_BUTTON_PROPS } from \"./constants\";\n\nimport Rename from \"../Rename\";\n\nconst LeftBlock = ({\n homeButtonProps: customHomeButtonProps,\n homeUrl,\n renameProps,\n children,\n}) => {\n const homeButtonProps = mergeDeepRight(\n DEFAULT_HOME_BUTTON_PROPS,\n customHomeButtonProps\n );\n\n return (\n <div\n className=\"flex items-center gap-0.5 md:gap-1\"\n data-testid=\"navigation-header-left-block\"\n >\n <Tooltip\n content={homeButtonProps.tooltip.content}\n position={homeButtonProps.tooltip.position}\n >\n <Link data-testid=\"home-button\" to={homeUrl}>\n <div className=\"hover:bg-muted rounded p-1\">\n {homeButtonProps.icon}\n </div>\n </Link>\n </Tooltip>\n {isPresent(renameProps) && (\n <Rename\n dropdownItems={renameProps.dropdownItems}\n value={renameProps.value}\n {...renameProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nLeftBlock.propTypes = {\n homeButtonProps: PropTypes.shape({\n tooltip: PropTypes.shape({\n content: PropTypes.string,\n position: PropTypes.string,\n }),\n icon: PropTypes.node,\n }),\n homeUrl: PropTypes.string.isRequired,\n renameProps: PropTypes.object,\n children: PropTypes.node,\n};\n\nexport default LeftBlock;\n","import {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport classNames from \"classnames\";\nimport { existsBy, isNotEmpty } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { Link, useLocation } from \"react-router-dom\";\n\nconst OverflowLinks = ({ overflowLinks }) => {\n const { pathname } = useLocation();\n const { t } = useTranslation();\n\n const isMoreButtonActive = existsBy({ to: pathname }, overflowLinks);\n\n if (!isNotEmpty(overflowLinks)) {\n return null;\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger\n className={classNames(\n \"nm-navigation-header__link nm-navigation-header__link--more text-foreground/60 hover:text-foreground inline-flex h-[calc(100%-1px)] items-center justify-center gap-1.5 rounded-md border border-transparent bg-transparent px-3 py-1.5 text-[15px] font-medium capitalize transition-all\",\n {\n \"bg-background text-foreground shadow-sm\": isMoreButtonActive,\n }\n )}\n >\n {t(\"neetoMolecules.navigationHeader.more\")}\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n {overflowLinks.map(({ key, to, label, disabled, ...rest }) => {\n const isActive = to === pathname;\n\n return (\n <DropdownMenuItem\n {...{ disabled }}\n asChild\n data-active={isActive || undefined}\n data-testid={`${joinHyphenCase(key)}-more-tab`}\n key={key}\n className={classNames({\n \"bg-accent text-accent-foreground\": isActive,\n })}\n >\n <Link\n {...{ to }}\n className=\"block w-full\"\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n {label}\n </Link>\n </DropdownMenuItem>\n );\n })}\n </DropdownMenuContent>\n </DropdownMenu>\n );\n};\n\nOverflowLinks.propTypes = {\n overflowLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n disabled: PropTypes.bool,\n })\n ),\n};\n\nexport default OverflowLinks;\n","export const isAbsoluteUrl = url => /^https?:\\/\\//.test(url);\n\nexport const getActiveLinkValue = (links, pathname) => {\n const matches = links.filter(\n ({ to }) => pathname === to || pathname.startsWith(`${to}/`)\n );\n\n if (matches.length === 0) return undefined;\n\n return matches.reduce((longest, link) =>\n link.to.length > longest.to.length ? link : longest\n ).to;\n};\n","import { Tabs, TabsList, TabsTrigger } from \"@bigbinary/neeto-atoms/primitives\";\nimport classNames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { Link, useLocation } from \"react-router-dom\";\n\nimport OverflowLinks from \"./OverflowLinks\";\nimport { getActiveLinkValue } from \"./utils\";\n\nimport MoreDropdown from \"../MoreDropdown\";\n\nconst NavigationLinks = ({ headerLinks, maxVisibleLinks = 5 }) => {\n const { pathname } = useLocation();\n const visibleLinks = headerLinks.slice(0, maxVisibleLinks);\n const overflowLinks = headerLinks.slice(maxVisibleLinks);\n const activeValue = getActiveLinkValue(visibleLinks, pathname);\n\n return (\n <div\n className=\"flex w-full items-center justify-between gap-2 md:justify-center md:gap-3\"\n data-testid=\"navigation-header-navigation-links\"\n >\n <Tabs value={activeValue ?? \"\"}>\n <TabsList className=\"group-data-horizontal/tabs:h-10\">\n {visibleLinks.map(\n ({\n className = \"\",\n key,\n to,\n label,\n disabled,\n labelProps,\n moreOptions,\n ...rest\n }) => (\n <TabsTrigger\n {...{ disabled }}\n asChild\n data-testid={`${joinHyphenCase(key)}-tab`}\n key={key}\n value={to}\n className={classNames(\n \"nm-navigation-header__link px-3 py-1.5 text-[15px] capitalize no-underline\",\n className,\n {\n \"disabled pointer-events-none cursor-not-allowed opacity-50\":\n disabled,\n }\n )}\n >\n <Link\n {...{ to }}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n <span {...(labelProps || {})}>{label}</span>\n {moreOptions && <MoreDropdown {...moreOptions} />}\n </Link>\n </TabsTrigger>\n )\n )}\n <OverflowLinks {...{ overflowLinks }} />\n </TabsList>\n </Tabs>\n </div>\n );\n};\n\nNavigationLinks.propTypes = {\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n className: PropTypes.string,\n labelProps: PropTypes.object,\n moreOptions: PropTypes.object,\n })\n ),\n maxVisibleLinks: PropTypes.number,\n};\n\nexport default NavigationLinks;\n","import classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isAbsoluteUrl } from \"./utils\";\n\nimport PublishBlock from \"../PublishBlock\";\n\nconst RightBlock = ({\n isDraftBlockHidden,\n previewDraftUrl,\n isResetDraftButtonVisible,\n onResetClick,\n isResetting,\n isPublishDisabled,\n isPublishing,\n handlePublish,\n isPublishPreviewDisabled,\n previewPublishedUrl,\n isPublishButtonVisible,\n isResetAlertOpen,\n setIsResetAlertOpen,\n handleReset,\n publishAlertTitle,\n publishAlertDescription,\n publishButtonProps = {},\n}) => {\n const { t } = useTranslation();\n\n const renderDraftButtons = ({ ViewDraftButton, ResetDraftButton }) =>\n !isDraftBlockHidden && (\n <>\n <ViewDraftButton\n {...(isAbsoluteUrl(previewDraftUrl)\n ? { href: previewDraftUrl }\n : { to: previewDraftUrl })}\n />\n {isResetDraftButtonVisible && (\n <ResetDraftButton\n loading={isResetting}\n onClick={() => onResetClick()}\n />\n )}\n </>\n );\n\n const renderPublishButtons = ({ PublishButton, PublishPreviewButton }) => (\n <>\n {isPublishButtonVisible && (\n <PublishButton\n disabled={isPublishDisabled}\n loading={isPublishing}\n onClick={() => handlePublish()}\n {...publishButtonProps}\n />\n )}\n <PublishPreviewButton\n {...(isAbsoluteUrl(previewPublishedUrl)\n ? { href: previewPublishedUrl }\n : { to: previewPublishedUrl })}\n disabled={isPublishPreviewDisabled}\n className={classNames({\n \"nm-publish-preview-button--standalone\": !isPublishButtonVisible,\n })}\n />\n </>\n );\n\n return (\n <>\n <PublishBlock {...{ renderDraftButtons, renderPublishButtons }} />\n <PublishBlock.Alert\n isOpen={isResetAlertOpen}\n isSubmitting={isResetting}\n message={\n publishAlertDescription ||\n t(\"neetoMolecules.navigationHeader.resetDescription\")\n }\n title={\n publishAlertTitle || t(\"neetoMolecules.navigationHeader.resetTitle\")\n }\n onClose={() => setIsResetAlertOpen(false)}\n onSubmit={handleReset}\n />\n </>\n );\n};\n\nRightBlock.propTypes = {\n isDraftBlockHidden: PropTypes.bool,\n previewDraftUrl: PropTypes.string,\n isResetDraftButtonVisible: PropTypes.bool,\n onResetClick: PropTypes.func,\n isResetting: PropTypes.bool,\n isPublishDisabled: PropTypes.bool,\n isPublishing: PropTypes.bool,\n handlePublish: PropTypes.func,\n isPublishPreviewDisabled: PropTypes.bool,\n previewPublishedUrl: PropTypes.string,\n isPublishButtonVisible: PropTypes.bool,\n isResetAlertOpen: PropTypes.bool,\n setIsResetAlertOpen: PropTypes.func,\n handleReset: PropTypes.func,\n publishAlertDescription: PropTypes.string,\n publishAlertTitle: PropTypes.string,\n publishButtonProps: PropTypes.object,\n};\n\nexport default RightBlock;\n","import { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport { filter, length } from \"ramda\";\n\nimport LeftBlock from \"./LeftBlock\";\nimport NavigationLinks from \"./Navigation\";\nimport RightBlock from \"./RightBlock\";\n\nconst NavigationHeader = ({\n leftActionBlock,\n navigationLinks,\n rightActionBlock,\n}) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const numberOfChildren = length(\n filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock])\n );\n\n const gridStyle = {\n gridTemplateColumns: isMobile\n ? `repeat(${\n navigationLinks ? numberOfChildren - 1 : numberOfChildren\n }, auto)`\n : `repeat(${numberOfChildren}, 1fr)`,\n };\n\n return (\n <div className=\"w-full\">\n <div\n className=\"nm-navigation-header border-border bg-card flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6\"\n data-testid=\"navigation-header\"\n >\n <div className=\"grid w-full gap-4\" style={gridStyle}>\n {leftActionBlock}\n {!isMobile && navigationLinks}\n {rightActionBlock}\n </div>\n </div>\n {isMobile && (\n <div className=\"nm-navigation-header border-border bg-card flex flex-shrink-0 items-center overflow-x-auto border-b px-4 py-2 lg:px-6\">\n {navigationLinks}\n </div>\n )}\n </div>\n );\n};\n\nNavigationHeader.LeftActionBlock = LeftBlock;\nNavigationHeader.NavigationLinks = NavigationLinks;\nNavigationHeader.RightActionBlock = RightBlock;\n\nNavigationHeader.propTypes = {\n leftActionBlock: PropTypes.node,\n navigationLinks: PropTypes.node,\n rightActionBlock: PropTypes.node,\n};\n\nexport default NavigationHeader;\n"],"names":["DEFAULT_HOME_BUTTON_PROPS","tooltip","content","t","position","homeUrl","icon","_jsx","Home","className","LeftBlock","_ref","customHomeButtonProps","homeButtonProps","renameProps","children","mergeDeepRight","_jsxs","Tooltip","Link","to","isPresent","Rename","_objectSpread","dropdownItems","value","OverflowLinks","overflowLinks","_useLocation","useLocation","pathname","_useTranslation","useTranslation","isMoreButtonActive","existsBy","isNotEmpty","DropdownMenu","DropdownMenuTrigger","classNames","DropdownMenuContent","align","map","_ref2","key","label","disabled","rest","_objectWithoutProperties","_excluded","isActive","_createElement","DropdownMenuItem","asChild","undefined","concat","joinHyphenCase","onClick","e","preventDefault","isAbsoluteUrl","url","test","getActiveLinkValue","links","matches","filter","startsWith","length","reduce","longest","link","NavigationLinks","headerLinks","_ref$maxVisibleLinks","maxVisibleLinks","visibleLinks","slice","activeValue","Tabs","TabsList","_ref2$className","labelProps","moreOptions","TabsTrigger","MoreDropdown","RightBlock","isDraftBlockHidden","previewDraftUrl","isResetDraftButtonVisible","onResetClick","isResetting","isPublishDisabled","isPublishing","handlePublish","isPublishPreviewDisabled","previewPublishedUrl","isPublishButtonVisible","isResetAlertOpen","setIsResetAlertOpen","handleReset","publishAlertTitle","publishAlertDescription","_ref$publishButtonPro","publishButtonProps","renderDraftButtons","ViewDraftButton","ResetDraftButton","_Fragment","href","loading","renderPublishButtons","_ref3","PublishButton","PublishPreviewButton","PublishBlock","Alert","isOpen","isSubmitting","message","title","onClose","onSubmit","NavigationHeader","leftActionBlock","navigationLinks","rightActionBlock","_useBreakpoints","useBreakpoints","isSize","isMobile","numberOfChildren","gridStyle","gridTemplateColumns","style","LeftActionBlock","RightActionBlock"],"mappings":"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"}
1
+ {"version":3,"file":"NavigationHeader.js","sources":["../../../src/v2/components/NavigationHeader/constants.jsx","../../../src/v2/components/NavigationHeader/LeftBlock.jsx","../../../src/v2/components/NavigationHeader/OverflowLinks.jsx","../../../src/v2/components/NavigationHeader/utils.js","../../../src/v2/components/NavigationHeader/Navigation.jsx","../../../src/v2/components/NavigationHeader/RightBlock.jsx","../../../src/v2/components/NavigationHeader/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Home } from \"lucide-react\";\n\nexport const DEFAULT_HOME_BUTTON_PROPS = {\n tooltip: {\n content: t(\"neetoMolecules.navigationHeader.home\"),\n position: \"bottom\",\n },\n homeUrl: \"/\",\n icon: <Home className=\"size-5\" />,\n};\n","import { Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { mergeDeepRight } from \"ramda\";\nimport { Link } from \"react-router-dom\";\n\nimport { DEFAULT_HOME_BUTTON_PROPS } from \"./constants\";\n\nimport Rename from \"../Rename\";\n\nconst LeftBlock = ({\n homeButtonProps: customHomeButtonProps,\n homeUrl,\n renameProps,\n children,\n}) => {\n const homeButtonProps = mergeDeepRight(\n DEFAULT_HOME_BUTTON_PROPS,\n customHomeButtonProps\n );\n\n return (\n <div\n className=\"flex items-center gap-0.5 md:gap-1\"\n data-testid=\"navigation-header-left-block\"\n >\n <Tooltip\n content={homeButtonProps.tooltip.content}\n position={homeButtonProps.tooltip.position}\n >\n <Link data-testid=\"home-button\" to={homeUrl}>\n <div className=\"hover:bg-muted rounded p-1\">\n {homeButtonProps.icon}\n </div>\n </Link>\n </Tooltip>\n {isPresent(renameProps) && (\n <Rename\n dropdownItems={renameProps.dropdownItems}\n value={renameProps.value}\n {...renameProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nLeftBlock.propTypes = {\n homeButtonProps: PropTypes.shape({\n tooltip: PropTypes.shape({\n content: PropTypes.string,\n position: PropTypes.string,\n }),\n icon: PropTypes.node,\n }),\n homeUrl: PropTypes.string.isRequired,\n renameProps: PropTypes.object,\n children: PropTypes.node,\n};\n\nexport default LeftBlock;\n","import {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport classNames from \"classnames\";\nimport { existsBy, isNotEmpty } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { Link, useLocation } from \"react-router-dom\";\n\nconst OverflowLinks = ({ overflowLinks }) => {\n const { pathname } = useLocation();\n const { t } = useTranslation();\n\n const isMoreButtonActive = existsBy({ to: pathname }, overflowLinks);\n\n if (!isNotEmpty(overflowLinks)) {\n return null;\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger\n className={classNames(\n \"nm-navigation-header__link nm-navigation-header__link--more text-foreground/60 hover:text-foreground inline-flex h-[calc(100%-1px)] items-center justify-center gap-1.5 rounded-md border border-transparent bg-transparent px-3 py-1.5 text-[15px] font-medium capitalize transition-all\",\n {\n \"bg-background text-foreground shadow-sm\": isMoreButtonActive,\n }\n )}\n >\n {t(\"neetoMolecules.navigationHeader.more\")}\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n {overflowLinks.map(({ key, to, label, disabled, ...rest }) => {\n const isActive = to === pathname;\n\n return (\n <DropdownMenuItem\n {...{ disabled }}\n asChild\n data-active={isActive || undefined}\n data-testid={`${joinHyphenCase(key)}-more-tab`}\n key={key}\n className={classNames({\n \"bg-accent text-accent-foreground\": isActive,\n })}\n >\n <Link\n {...{ to }}\n className=\"block w-full\"\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n {label}\n </Link>\n </DropdownMenuItem>\n );\n })}\n </DropdownMenuContent>\n </DropdownMenu>\n );\n};\n\nOverflowLinks.propTypes = {\n overflowLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n disabled: PropTypes.bool,\n })\n ),\n};\n\nexport default OverflowLinks;\n","export const isAbsoluteUrl = url => /^https?:\\/\\//.test(url);\n\nexport const getActiveLinkValue = (links, pathname) => {\n const matches = links.filter(\n ({ to }) => pathname === to || pathname.startsWith(`${to}/`)\n );\n\n if (matches.length === 0) return undefined;\n\n return matches.reduce((longest, link) =>\n link.to.length > longest.to.length ? link : longest\n ).to;\n};\n","import { Tabs, TabsList, TabsTrigger } from \"@bigbinary/neeto-atoms/primitives\";\nimport classNames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { Link, useLocation } from \"react-router-dom\";\n\nimport OverflowLinks from \"./OverflowLinks\";\nimport { getActiveLinkValue } from \"./utils\";\n\nimport MoreDropdown from \"../MoreDropdown\";\n\nconst NavigationLinks = ({ headerLinks, maxVisibleLinks = 5 }) => {\n const { pathname } = useLocation();\n const visibleLinks = headerLinks.slice(0, maxVisibleLinks);\n const overflowLinks = headerLinks.slice(maxVisibleLinks);\n const activeValue = getActiveLinkValue(visibleLinks, pathname);\n\n return (\n <div\n className=\"flex w-full items-center justify-between gap-2 md:justify-center md:gap-3\"\n data-testid=\"navigation-header-navigation-links\"\n >\n <Tabs value={activeValue ?? \"\"}>\n <TabsList className=\"group-data-horizontal/tabs:h-10\">\n {visibleLinks.map(\n ({\n className = \"\",\n key,\n to,\n label,\n disabled,\n labelProps,\n moreOptions,\n ...rest\n }) => (\n <TabsTrigger\n {...{ disabled }}\n asChild\n data-testid={`${joinHyphenCase(key)}-tab`}\n key={key}\n value={to}\n className={classNames(\n \"nm-navigation-header__link px-3 py-1.5 text-[15px] capitalize no-underline\",\n className,\n {\n \"disabled pointer-events-none cursor-not-allowed opacity-50\":\n disabled,\n }\n )}\n >\n <Link\n {...{ to }}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n <span {...(labelProps || {})}>{label}</span>\n {moreOptions && <MoreDropdown {...moreOptions} />}\n </Link>\n </TabsTrigger>\n )\n )}\n <OverflowLinks {...{ overflowLinks }} />\n </TabsList>\n </Tabs>\n </div>\n );\n};\n\nNavigationLinks.propTypes = {\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n className: PropTypes.string,\n labelProps: PropTypes.object,\n moreOptions: PropTypes.object,\n })\n ),\n maxVisibleLinks: PropTypes.number,\n};\n\nexport default NavigationLinks;\n","import classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isAbsoluteUrl } from \"./utils\";\n\nimport PublishBlock from \"../PublishBlock\";\n\nconst RightBlock = ({\n isDraftBlockHidden,\n previewDraftUrl,\n isResetDraftButtonVisible,\n onResetClick,\n isResetting,\n isPublishDisabled,\n isPublishing,\n handlePublish,\n isPublishPreviewDisabled,\n previewPublishedUrl,\n isPublishButtonVisible,\n isResetAlertOpen,\n setIsResetAlertOpen,\n handleReset,\n publishAlertTitle,\n publishAlertDescription,\n publishButtonProps = {},\n}) => {\n const { t } = useTranslation();\n\n const renderDraftButtons = ({ ViewDraftButton, ResetDraftButton }) =>\n !isDraftBlockHidden && (\n <>\n <ViewDraftButton\n {...(isAbsoluteUrl(previewDraftUrl)\n ? { href: previewDraftUrl }\n : { to: previewDraftUrl })}\n />\n {isResetDraftButtonVisible && (\n <ResetDraftButton\n loading={isResetting}\n onClick={() => onResetClick()}\n />\n )}\n </>\n );\n\n const renderPublishButtons = ({ PublishButton, PublishPreviewButton }) => (\n <>\n {isPublishButtonVisible && (\n <PublishButton\n disabled={isPublishDisabled}\n loading={isPublishing}\n onClick={() => handlePublish()}\n {...publishButtonProps}\n />\n )}\n <PublishPreviewButton\n {...(isAbsoluteUrl(previewPublishedUrl)\n ? { href: previewPublishedUrl }\n : { to: previewPublishedUrl })}\n disabled={isPublishPreviewDisabled}\n className={classNames({\n \"nm-publish-preview-button--standalone\": !isPublishButtonVisible,\n })}\n />\n </>\n );\n\n return (\n <>\n <PublishBlock {...{ renderDraftButtons, renderPublishButtons }} />\n <PublishBlock.Alert\n isOpen={isResetAlertOpen}\n isSubmitting={isResetting}\n message={\n publishAlertDescription ||\n t(\"neetoMolecules.navigationHeader.resetDescription\")\n }\n title={\n publishAlertTitle || t(\"neetoMolecules.navigationHeader.resetTitle\")\n }\n onClose={() => setIsResetAlertOpen(false)}\n onSubmit={handleReset}\n />\n </>\n );\n};\n\nRightBlock.propTypes = {\n isDraftBlockHidden: PropTypes.bool,\n previewDraftUrl: PropTypes.string,\n isResetDraftButtonVisible: PropTypes.bool,\n onResetClick: PropTypes.func,\n isResetting: PropTypes.bool,\n isPublishDisabled: PropTypes.bool,\n isPublishing: PropTypes.bool,\n handlePublish: PropTypes.func,\n isPublishPreviewDisabled: PropTypes.bool,\n previewPublishedUrl: PropTypes.string,\n isPublishButtonVisible: PropTypes.bool,\n isResetAlertOpen: PropTypes.bool,\n setIsResetAlertOpen: PropTypes.func,\n handleReset: PropTypes.func,\n publishAlertDescription: PropTypes.string,\n publishAlertTitle: PropTypes.string,\n publishButtonProps: PropTypes.object,\n};\n\nexport default RightBlock;\n","import { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport { filter, length } from \"ramda\";\n\nimport LeftBlock from \"./LeftBlock\";\nimport NavigationLinks from \"./Navigation\";\nimport RightBlock from \"./RightBlock\";\n\nconst NavigationHeader = ({\n leftActionBlock,\n navigationLinks,\n rightActionBlock,\n}) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const numberOfChildren = length(\n filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock])\n );\n\n const gridStyle = {\n gridTemplateColumns: isMobile\n ? `repeat(${\n navigationLinks ? numberOfChildren - 1 : numberOfChildren\n }, auto)`\n : `repeat(${numberOfChildren}, 1fr)`,\n };\n\n return (\n <div className=\"w-full\">\n <div\n className=\"nm-navigation-header border-border bg-card flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6\"\n data-testid=\"navigation-header\"\n >\n <div className=\"grid w-full gap-4\" style={gridStyle}>\n {leftActionBlock}\n {!isMobile && navigationLinks}\n {rightActionBlock}\n </div>\n </div>\n {isMobile && (\n <div className=\"nm-navigation-header border-border bg-card flex flex-shrink-0 items-center overflow-x-auto border-b px-4 py-2 lg:px-6\">\n {navigationLinks}\n </div>\n )}\n </div>\n );\n};\n\nNavigationHeader.LeftActionBlock = LeftBlock;\nNavigationHeader.NavigationLinks = NavigationLinks;\nNavigationHeader.RightActionBlock = RightBlock;\n\nNavigationHeader.propTypes = {\n leftActionBlock: PropTypes.node,\n navigationLinks: PropTypes.node,\n rightActionBlock: PropTypes.node,\n};\n\nexport default NavigationHeader;\n"],"names":["DEFAULT_HOME_BUTTON_PROPS","tooltip","content","t","position","homeUrl","icon","_jsx","Home","className","LeftBlock","_ref","customHomeButtonProps","homeButtonProps","renameProps","children","mergeDeepRight","_jsxs","Tooltip","Link","to","isPresent","Rename","_objectSpread","dropdownItems","value","OverflowLinks","overflowLinks","_useLocation","useLocation","pathname","_useTranslation","useTranslation","isMoreButtonActive","existsBy","isNotEmpty","DropdownMenu","DropdownMenuTrigger","classNames","DropdownMenuContent","align","map","_ref2","key","label","disabled","rest","_objectWithoutProperties","_excluded","isActive","_createElement","DropdownMenuItem","asChild","undefined","concat","joinHyphenCase","onClick","e","preventDefault","isAbsoluteUrl","url","test","getActiveLinkValue","links","matches","filter","startsWith","length","reduce","longest","link","NavigationLinks","headerLinks","_ref$maxVisibleLinks","maxVisibleLinks","visibleLinks","slice","activeValue","Tabs","TabsList","_ref2$className","labelProps","moreOptions","TabsTrigger","MoreDropdown","RightBlock","isDraftBlockHidden","previewDraftUrl","isResetDraftButtonVisible","onResetClick","isResetting","isPublishDisabled","isPublishing","handlePublish","isPublishPreviewDisabled","previewPublishedUrl","isPublishButtonVisible","isResetAlertOpen","setIsResetAlertOpen","handleReset","publishAlertTitle","publishAlertDescription","_ref$publishButtonPro","publishButtonProps","renderDraftButtons","ViewDraftButton","ResetDraftButton","_Fragment","href","loading","renderPublishButtons","_ref3","PublishButton","PublishPreviewButton","PublishBlock","Alert","isOpen","isSubmitting","message","title","onClose","onSubmit","NavigationHeader","leftActionBlock","navigationLinks","rightActionBlock","_useBreakpoints","useBreakpoints","isSize","isMobile","numberOfChildren","gridStyle","gridTemplateColumns","style","LeftActionBlock","RightActionBlock"],"mappings":"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"}
@@ -13,23 +13,10 @@ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
13
13
  var React = require('react');
14
14
  var Profile = require('@bigbinary/neeto-team-members-frontend/v2/Profile');
15
15
  var initializers = require('@bigbinary/neeto-commons-frontend/v2/initializers');
16
- var createLucideIcon = require('../createLucideIcon-BbuuRL2u.js');
16
+ var clock = require('../clock-J9ePvpcf.js');
17
17
  var trash2 = require('../trash-2-Dic3f2Hq.js');
18
18
  var externalLink = require('../external-link-CYxRAiwW.js');
19
-
20
- /**
21
- * @license lucide-react v1.24.0 - ISC
22
- *
23
- * This source code is licensed under the ISC license.
24
- * See the LICENSE file in the root directory of this source tree.
25
- */
26
-
27
-
28
- const __iconNode = [
29
- ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
30
- ["path", { d: "M12 6v6l4 2", key: "mmk7yg" }]
31
- ];
32
- const Clock = createLucideIcon.createLucideIcon("clock", __iconNode);
19
+ require('../createLucideIcon-BbuuRL2u.js');
33
20
 
34
21
  var _excluded$1 = ["t"];
35
22
  function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -357,7 +344,7 @@ var PublishBlock = function PublishBlock(_ref5) {
357
344
  date: utils.dateFormat.dateTime(datetime)
358
345
  }),
359
346
  children: /*#__PURE__*/jsxRuntime.jsx("div", {
360
- children: /*#__PURE__*/jsxRuntime.jsx(Clock, {
347
+ children: /*#__PURE__*/jsxRuntime.jsx(clock.Clock, {
361
348
  className: "size-4"
362
349
  })
363
350
  })