@bigbinary/neeto-molecules 4.2.0 → 4.3.1

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 (166) hide show
  1. package/dist/{Columns-DpeV3Jzz.js → Columns-gR00LMKF.js} +2 -2
  2. package/dist/Columns-gR00LMKF.js.map +1 -0
  3. package/dist/{ConfigureView-B0UvLoJe.js → ConfigureView-CG1M2-3b.js} +4 -15
  4. package/dist/ConfigureView-CG1M2-3b.js.map +1 -0
  5. package/dist/check-DvxzqR83.js +15 -0
  6. package/dist/check-DvxzqR83.js.map +1 -0
  7. package/dist/chevron-down-BMerqYpK.js +15 -0
  8. package/dist/chevron-down-BMerqYpK.js.map +1 -0
  9. package/dist/chevron-left-BTVCxPw8.js +15 -0
  10. package/dist/chevron-left-BTVCxPw8.js.map +1 -0
  11. package/dist/cjs/{Columns-C2ke8N58.js → Columns-Brpr2a_M.js} +2 -2
  12. package/dist/cjs/Columns-Brpr2a_M.js.map +1 -0
  13. package/dist/cjs/{ConfigureView-Coy1ViRc.js → ConfigureView-BVRHqVpb.js} +5 -16
  14. package/dist/cjs/ConfigureView-BVRHqVpb.js.map +1 -0
  15. package/dist/cjs/check-VgZf0qTr.js +17 -0
  16. package/dist/cjs/check-VgZf0qTr.js.map +1 -0
  17. package/dist/cjs/chevron-down-DwiliwN1.js +17 -0
  18. package/dist/cjs/chevron-down-DwiliwN1.js.map +1 -0
  19. package/dist/cjs/chevron-left-DWN80ILn.js +17 -0
  20. package/dist/cjs/chevron-left-DWN80ILn.js.map +1 -0
  21. package/dist/cjs/{useKeyboardShortcutsPaneState-BG_xVteC.js → useKeyboardShortcutsPaneState-DZUnpw9v.js} +2 -2
  22. package/dist/cjs/useKeyboardShortcutsPaneState-DZUnpw9v.js.map +1 -0
  23. package/dist/cjs/v2/AuditLogs.js +8 -8
  24. package/dist/cjs/v2/AuditLogs.js.map +1 -1
  25. package/dist/cjs/v2/BoardView.js +427 -0
  26. package/dist/cjs/v2/BoardView.js.map +1 -0
  27. package/dist/cjs/v2/Breadcrumbs.js +2 -2
  28. package/dist/cjs/v2/Breadcrumbs.js.map +1 -1
  29. package/dist/cjs/v2/CalendarView.js +429 -0
  30. package/dist/cjs/v2/CalendarView.js.map +1 -0
  31. package/dist/cjs/v2/Columns.js +2 -2
  32. package/dist/cjs/v2/ConfigurePageSidebar.js +4 -3
  33. package/dist/cjs/v2/ConfigurePageSidebar.js.map +1 -1
  34. package/dist/cjs/v2/CopyToClipboardButton.js +3 -13
  35. package/dist/cjs/v2/CopyToClipboardButton.js.map +1 -1
  36. package/dist/cjs/v2/DateFormat.js +42 -0
  37. package/dist/cjs/v2/DateFormat.js.map +1 -0
  38. package/dist/cjs/v2/DocumentEditor.js +329 -0
  39. package/dist/cjs/v2/DocumentEditor.js.map +1 -0
  40. package/dist/cjs/v2/EmojiPicker.js +125 -0
  41. package/dist/cjs/v2/EmojiPicker.js.map +1 -0
  42. package/dist/cjs/v2/Engagements.js +283 -0
  43. package/dist/cjs/v2/Engagements.js.map +1 -0
  44. package/dist/cjs/v2/ErrorPage.js +1 -1
  45. package/dist/cjs/v2/ErrorPage.js.map +1 -1
  46. package/dist/cjs/v2/FileUpload.js +644 -0
  47. package/dist/cjs/v2/FileUpload.js.map +1 -0
  48. package/dist/cjs/v2/FinderModal.js +253 -0
  49. package/dist/cjs/v2/FinderModal.js.map +1 -0
  50. package/dist/cjs/v2/FloatingActionMenu.js +11 -9
  51. package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
  52. package/dist/cjs/v2/Header.js +6 -6
  53. package/dist/cjs/v2/InlineInput.js +293 -0
  54. package/dist/cjs/v2/InlineInput.js.map +1 -0
  55. package/dist/cjs/v2/KeyboardShortcuts.js +3 -3
  56. package/dist/cjs/v2/KeyboardShortcuts.js.map +1 -1
  57. package/dist/cjs/v2/LoginPage.js +1 -1
  58. package/dist/cjs/v2/LoginPage.js.map +1 -1
  59. package/dist/cjs/v2/MenuBar.js +2 -2
  60. package/dist/cjs/v2/MenuBar.js.map +1 -1
  61. package/dist/cjs/v2/MoreDropdown.js +1 -1
  62. package/dist/cjs/v2/MoreDropdown.js.map +1 -1
  63. package/dist/cjs/v2/NavigationHeader.js +328 -0
  64. package/dist/cjs/v2/NavigationHeader.js.map +1 -0
  65. package/dist/cjs/v2/PublishBlock.js +414 -0
  66. package/dist/cjs/v2/PublishBlock.js.map +1 -0
  67. package/dist/cjs/v2/Rename.js +350 -0
  68. package/dist/cjs/v2/Rename.js.map +1 -0
  69. package/dist/cjs/v2/Scrollable.js +37 -0
  70. package/dist/cjs/v2/Scrollable.js.map +1 -0
  71. package/dist/cjs/v2/Search.js +5 -5
  72. package/dist/cjs/v2/Search.js.map +1 -1
  73. package/dist/cjs/v2/Settings.js +6 -6
  74. package/dist/cjs/v2/Settings.js.map +1 -1
  75. package/dist/cjs/v2/Sidebar.js +8 -7
  76. package/dist/cjs/v2/Sidebar.js.map +1 -1
  77. package/dist/cjs/v2/StickyRibbonsContainer.js +4 -4
  78. package/dist/cjs/v2/StickyRibbonsContainer.js.map +1 -1
  79. package/dist/cjs/v2/SubHeader.js +3 -3
  80. package/dist/cjs/v2/SubHeader.js.map +1 -1
  81. package/dist/cjs/v2/TimeFormat.js +15 -0
  82. package/dist/cjs/v2/TimeFormat.js.map +1 -0
  83. package/dist/{useKeyboardShortcutsPaneState-dNIbb_PI.js → useKeyboardShortcutsPaneState-BlyFMEtW.js} +2 -2
  84. package/dist/useKeyboardShortcutsPaneState-BlyFMEtW.js.map +1 -0
  85. package/dist/v2/AuditLogs.js +8 -8
  86. package/dist/v2/AuditLogs.js.map +1 -1
  87. package/dist/v2/BoardView.js +425 -0
  88. package/dist/v2/BoardView.js.map +1 -0
  89. package/dist/v2/Breadcrumbs.js +2 -2
  90. package/dist/v2/Breadcrumbs.js.map +1 -1
  91. package/dist/v2/CalendarView.js +427 -0
  92. package/dist/v2/CalendarView.js.map +1 -0
  93. package/dist/v2/Columns.js +2 -2
  94. package/dist/v2/ConfigurePageSidebar.js +4 -3
  95. package/dist/v2/ConfigurePageSidebar.js.map +1 -1
  96. package/dist/v2/CopyToClipboardButton.js +2 -12
  97. package/dist/v2/CopyToClipboardButton.js.map +1 -1
  98. package/dist/v2/DateFormat.js +40 -0
  99. package/dist/v2/DateFormat.js.map +1 -0
  100. package/dist/v2/DocumentEditor.js +327 -0
  101. package/dist/v2/DocumentEditor.js.map +1 -0
  102. package/dist/v2/EmojiPicker.js +123 -0
  103. package/dist/v2/EmojiPicker.js.map +1 -0
  104. package/dist/v2/Engagements.js +281 -0
  105. package/dist/v2/Engagements.js.map +1 -0
  106. package/dist/v2/ErrorPage.js +1 -1
  107. package/dist/v2/ErrorPage.js.map +1 -1
  108. package/dist/v2/FileUpload.js +641 -0
  109. package/dist/v2/FileUpload.js.map +1 -0
  110. package/dist/v2/FinderModal.js +251 -0
  111. package/dist/v2/FinderModal.js.map +1 -0
  112. package/dist/v2/FloatingActionMenu.js +11 -9
  113. package/dist/v2/FloatingActionMenu.js.map +1 -1
  114. package/dist/v2/Header.js +6 -6
  115. package/dist/v2/InlineInput.js +290 -0
  116. package/dist/v2/InlineInput.js.map +1 -0
  117. package/dist/v2/KeyboardShortcuts.js +3 -3
  118. package/dist/v2/KeyboardShortcuts.js.map +1 -1
  119. package/dist/v2/LoginPage.js +1 -1
  120. package/dist/v2/LoginPage.js.map +1 -1
  121. package/dist/v2/MenuBar.js +2 -2
  122. package/dist/v2/MenuBar.js.map +1 -1
  123. package/dist/v2/MoreDropdown.js +1 -1
  124. package/dist/v2/MoreDropdown.js.map +1 -1
  125. package/dist/v2/NavigationHeader.js +326 -0
  126. package/dist/v2/NavigationHeader.js.map +1 -0
  127. package/dist/v2/PublishBlock.js +412 -0
  128. package/dist/v2/PublishBlock.js.map +1 -0
  129. package/dist/v2/Rename.js +348 -0
  130. package/dist/v2/Rename.js.map +1 -0
  131. package/dist/v2/Scrollable.js +35 -0
  132. package/dist/v2/Scrollable.js.map +1 -0
  133. package/dist/v2/Search.js +5 -5
  134. package/dist/v2/Search.js.map +1 -1
  135. package/dist/v2/Settings.js +6 -6
  136. package/dist/v2/Settings.js.map +1 -1
  137. package/dist/v2/Sidebar.js +8 -7
  138. package/dist/v2/Sidebar.js.map +1 -1
  139. package/dist/v2/StickyRibbonsContainer.js +4 -4
  140. package/dist/v2/StickyRibbonsContainer.js.map +1 -1
  141. package/dist/v2/SubHeader.js +3 -3
  142. package/dist/v2/SubHeader.js.map +1 -1
  143. package/dist/v2/TimeFormat.js +13 -0
  144. package/dist/v2/TimeFormat.js.map +1 -0
  145. package/package.json +5 -5
  146. package/src/translations/en.json +4 -2
  147. package/types/v2/BoardView.d.ts +27 -0
  148. package/types/v2/CalendarView.d.ts +40 -0
  149. package/types/v2/DateFormat.d.ts +19 -0
  150. package/types/v2/DocumentEditor.d.ts +20 -0
  151. package/types/v2/EmojiPicker.d.ts +14 -0
  152. package/types/v2/Engagements.d.ts +50 -0
  153. package/types/v2/FileUpload.d.ts +30 -0
  154. package/types/v2/FinderModal.d.ts +24 -0
  155. package/types/v2/InlineInput.d.ts +28 -0
  156. package/types/v2/NavigationHeader.d.ts +80 -0
  157. package/types/v2/PublishBlock.d.ts +39 -0
  158. package/types/v2/Rename.d.ts +33 -0
  159. package/types/v2/Scrollable.d.ts +15 -0
  160. package/types/v2/TimeFormat.d.ts +17 -0
  161. package/dist/Columns-DpeV3Jzz.js.map +0 -1
  162. package/dist/ConfigureView-B0UvLoJe.js.map +0 -1
  163. package/dist/cjs/Columns-C2ke8N58.js.map +0 -1
  164. package/dist/cjs/ConfigureView-Coy1ViRc.js.map +0 -1
  165. package/dist/cjs/useKeyboardShortcutsPaneState-BG_xVteC.js.map +0 -1
  166. package/dist/useKeyboardShortcutsPaneState-dNIbb_PI.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavigationHeader.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/house.js","../../../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":["/**\n * @license lucide-react v1.7.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.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8\", key: \"5wwlr5\" }],\n [\n \"path\",\n {\n d: \"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\",\n key: \"r6nss1\"\n }\n ]\n];\nconst House = createLucideIcon(\"house\", __iconNode);\n\nexport { __iconNode, House as default };\n//# sourceMappingURL=house.js.map\n","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":["createLucideIcon","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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG;AACnB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,4CAA4C,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC9E,EAAE;AACF,IAAI,MAAM;AACV,IAAI;AACJ,MAAM,CAAC,EAAE,uGAAuG;AAChH,MAAM,GAAG,EAAE;AACX;AACA;AACA,CAAC;AACD,MAAM,KAAK,GAAGA,iCAAgB,CAAC,OAAO,EAAE,UAAU,CAAC;;AChB5C,IAAMC,yBAAyB,GAAG;AACvCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,OAAO,EAAEC,SAAC,CAAC,sCAAsC,CAAC;AAClDC,IAAAA,QAAQ,EAAE;GACX;AACDC,EAAAA,OAAO,EAAE,GAAG;EACZC,IAAI,eAAEC,cAAA,CAACC,KAAI,EAAA;AAACC,IAAAA,SAAS,EAAC;GAAU;AAClC,CAAC;;;;ACAD,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAAC,IAAA,EAKT;AAAA,EAAA,IAJaC,qBAAqB,GAAAD,IAAA,CAAtCE,eAAe;IACfR,OAAO,GAAAM,IAAA,CAAPN,OAAO;IACPS,WAAW,GAAAH,IAAA,CAAXG,WAAW;IACXC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;AAER,EAAA,IAAMF,eAAe,GAAGG,oBAAc,CACpChB,yBAAyB,EACzBY,qBACF,CAAC;AAED,EAAA,oBACEK,eAAA,CAAA,KAAA,EAAA;AACER,IAAAA,SAAS,EAAC,oCAAoC;AAC9C,IAAA,aAAA,EAAY,8BAA8B;IAAAM,QAAA,EAAA,cAE1CR,cAAA,CAACW,kBAAO,EAAA;AACNhB,MAAAA,OAAO,EAAEW,eAAe,CAACZ,OAAO,CAACC,OAAQ;AACzCE,MAAAA,QAAQ,EAAES,eAAe,CAACZ,OAAO,CAACG,QAAS;MAAAW,QAAA,eAE3CR,cAAA,CAACY,mBAAI,EAAA;AAAC,QAAA,aAAA,EAAY,aAAa;AAACC,QAAAA,EAAE,EAAEf,OAAQ;AAAAU,QAAAA,QAAA,eAC1CR,cAAA,CAAA,KAAA,EAAA;AAAKE,UAAAA,SAAS,EAAC,4BAA4B;UAAAM,QAAA,EACxCF,eAAe,CAACP;SACd;OACD;KACC,CAAC,EACTe,mBAAS,CAACP,WAAW,CAAC,iBACrBP,cAAA,CAACe,SAAM,EAAAC,eAAA,CAAA;MACLC,aAAa,EAAEV,WAAW,CAACU,aAAc;MACzCC,KAAK,EAAEX,WAAW,CAACW;AAAM,KAAA,EACrBX,WAAW,CAChB,CACF,EACAC,QAAQ;AAAA,GACN,CAAC;AAEV,CAAC;;;;;ACjCD,IAAMW,aAAa,GAAG,SAAhBA,aAAaA,CAAAf,IAAA,EAA0B;AAAA,EAAA,IAApBgB,aAAa,GAAAhB,IAAA,CAAbgB,aAAa;AACpC,EAAA,IAAAC,YAAA,GAAqBC,0BAAW,EAAE;IAA1BC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;AAChB,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtB7B,CAAC,GAAA4B,eAAA,CAAD5B,CAAC;EAET,IAAM8B,kBAAkB,GAAGC,kBAAQ,CAAC;AAAEd,IAAAA,EAAE,EAAEU;GAAU,EAAEH,aAAa,CAAC;AAEpE,EAAA,IAAI,CAACQ,oBAAU,CAACR,aAAa,CAAC,EAAE;AAC9B,IAAA,OAAO,IAAI;AACb,EAAA;EAEA,oBACEV,eAAA,CAACmB,uBAAY,EAAA;IAAArB,QAAA,EAAA,cACXR,cAAA,CAAC8B,8BAAmB,EAAA;AAClB5B,MAAAA,SAAS,EAAE6B,UAAU,CACnB,2RAA2R,EAC3R;AACE,QAAA,yCAAyC,EAAEL;AAC7C,OACF,CAAE;MAAAlB,QAAA,EAEDZ,CAAC,CAAC,sCAAsC;AAAC,KACvB,CAAC,eACtBI,cAAA,CAACgC,8BAAmB,EAAA;AAACC,MAAAA,KAAK,EAAC,KAAK;AAAAzB,MAAAA,QAAA,EAC7BY,aAAa,CAACc,GAAG,CAAC,UAAAC,KAAA,EAA2C;AAAA,QAAA,IAAxCC,GAAG,GAAAD,KAAA,CAAHC,GAAG;UAAEvB,EAAE,GAAAsB,KAAA,CAAFtB,EAAE;UAAEwB,KAAK,GAAAF,KAAA,CAALE,KAAK;UAAEC,QAAQ,GAAAH,KAAA,CAARG,QAAQ;AAAKC,UAAAA,IAAI,GAAAC,wBAAA,CAAAL,KAAA,EAAAM,WAAA,CAAA;AACrD,QAAA,IAAMC,QAAQ,GAAG7B,EAAE,KAAKU,QAAQ;QAEhC,oBACEoB,mBAAA,CAACC,2BAAgB,EAAA;AACTN,UAAAA,QAAQ,EAARA,QAAQ;UACdO,OAAO,EAAA,IAAA;UACP,aAAA,EAAaH,QAAQ,IAAII,SAAU;AACnC,UAAA,aAAA,EAAA,EAAA,CAAAC,MAAA,CAAgBC,sBAAc,CAACZ,GAAG,CAAC,EAAA,WAAA,CAAY;AAC/CA,UAAAA,GAAG,EAAEA,GAAI;UACTlC,SAAS,EAAE6B,UAAU,CAAC;AACpB,YAAA,kCAAkC,EAAEW;WACrC;AAAE,SAAA,eAEH1C,cAAA,CAACY,mBAAI,EAAAI,eAAA,CAAAA,eAAA,CAAA;AACGH,UAAAA,EAAE,EAAFA,EAAE;AACRX,UAAAA,SAAS,EAAC,cAAc;AACxB+C,UAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEC,CAAC,EAAA;AAAA,YAAA,OAAIZ,QAAQ,IAAIY,CAAC,CAACC,cAAc,EAAE;AAAA,UAAA;AAAC,SAAA,EACzCZ,IAAI,CAAA,EAAA,EAAA,EAAA;AAAA/B,UAAAA,QAAA,EAEP6B;AAAK,SAAA,CACF,CACU,CAAC;MAEvB,CAAC;AAAC,KACiB,CAAC;AAAA,GACV,CAAC;AAEnB,CAAC;;AChEM,IAAMe,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,GAAG,EAAA;AAAA,EAAA,OAAI,cAAc,CAACC,IAAI,CAACD,GAAG,CAAC;AAAA,CAAA;AAErD,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,KAAK,EAAEjC,QAAQ,EAAK;AACrD,EAAA,IAAMkC,OAAO,GAAGD,KAAK,CAACE,MAAM,CAC1B,UAAAtD,IAAA,EAAA;AAAA,IAAA,IAAGS,EAAE,GAAAT,IAAA,CAAFS,EAAE;AAAA,IAAA,OAAOU,QAAQ,KAAKV,EAAE,IAAIU,QAAQ,CAACoC,UAAU,CAAA,EAAA,CAAAZ,MAAA,CAAIlC,EAAE,EAAA,GAAA,CAAG,CAAC;AAAA,EAAA,CAC9D,CAAC;AAED,EAAA,IAAI4C,OAAO,CAACG,MAAM,KAAK,CAAC,EAAE,OAAOd,SAAS;AAE1C,EAAA,OAAOW,OAAO,CAACI,MAAM,CAAC,UAACC,OAAO,EAAEC,IAAI,EAAA;AAAA,IAAA,OAClCA,IAAI,CAAClD,EAAE,CAAC+C,MAAM,GAAGE,OAAO,CAACjD,EAAE,CAAC+C,MAAM,GAAGG,IAAI,GAAGD,OAAO;EAAA,CACrD,CAAC,CAACjD,EAAE;AACN,CAAC;;;;;ACDD,IAAMmD,eAAe,GAAG,SAAlBA,eAAeA,CAAA5D,IAAA,EAA6C;AAAA,EAAA,IAAvC6D,WAAW,GAAA7D,IAAA,CAAX6D,WAAW;IAAAC,oBAAA,GAAA9D,IAAA,CAAE+D,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,CAAC,GAAAA,oBAAA;AACzD,EAAA,IAAA7C,YAAA,GAAqBC,0BAAW,EAAE;IAA1BC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;EAChB,IAAM6C,YAAY,GAAGH,WAAW,CAACI,KAAK,CAAC,CAAC,EAAEF,eAAe,CAAC;AAC1D,EAAA,IAAM/C,aAAa,GAAG6C,WAAW,CAACI,KAAK,CAACF,eAAe,CAAC;AACxD,EAAA,IAAMG,WAAW,GAAGf,kBAAkB,CAACa,YAAY,EAAE7C,QAAQ,CAAC;AAE9D,EAAA,oBACEvB,cAAA,CAAA,KAAA,EAAA;AACEE,IAAAA,SAAS,EAAC,2EAA2E;AACrF,IAAA,aAAA,EAAY,oCAAoC;IAAAM,QAAA,eAEhDR,cAAA,CAACuE,eAAI,EAAA;AAACrD,MAAAA,KAAK,EAAEoD,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAXA,WAAW,GAAI,EAAG;MAAA9D,QAAA,eAC7BE,eAAA,CAAC8D,mBAAQ,EAAA;AAACtE,QAAAA,SAAS,EAAC,iCAAiC;AAAAM,QAAAA,QAAA,GAClD4D,YAAY,CAAClC,GAAG,CACf,UAAAC,KAAA,EAAA;AAAA,UAAA,IAAAsC,eAAA,GAAAtC,KAAA,CACEjC,SAAS;AAATA,YAAAA,SAAS,GAAAuE,eAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,eAAA;YACdrC,GAAG,GAAAD,KAAA,CAAHC,GAAG;YACHvB,EAAE,GAAAsB,KAAA,CAAFtB,EAAE;YACFwB,KAAK,GAAAF,KAAA,CAALE,KAAK;YACLC,QAAQ,GAAAH,KAAA,CAARG,QAAQ;YACRoC,UAAU,GAAAvC,KAAA,CAAVuC,UAAU;YACVC,WAAW,GAAAxC,KAAA,CAAXwC,WAAW;AACRpC,YAAAA,IAAI,GAAAC,wBAAA,CAAAL,KAAA,EAAAM,SAAA,CAAA;UAAA,oBAEPE,mBAAA,CAACiC,sBAAW,EAAA;AACJtC,YAAAA,QAAQ,EAARA,QAAQ;YACdO,OAAO,EAAA,IAAA;AACP,YAAA,aAAA,EAAA,EAAA,CAAAE,MAAA,CAAgBC,sBAAc,CAACZ,GAAG,CAAC,EAAA,MAAA,CAAO;AAC1CA,YAAAA,GAAG,EAAEA,GAAI;AACTlB,YAAAA,KAAK,EAAEL,EAAG;AACVX,YAAAA,SAAS,EAAE6B,UAAU,CACnB,4EAA4E,EAC5E7B,SAAS,EACT;AACE,cAAA,4DAA4D,EAC1DoC;aAEN;AAAE,WAAA,eAEF5B,eAAA,CAACE,mBAAI,EAAAI,eAAA,CAAAA,eAAA,CAAA;AACGH,YAAAA,EAAE,EAAFA,EAAE;AACRoC,YAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEC,CAAC,EAAA;AAAA,cAAA,OAAIZ,QAAQ,IAAIY,CAAC,CAACC,cAAc,EAAE;AAAA,YAAA;AAAC,WAAA,EACzCZ,IAAI,CAAA,EAAA,EAAA,EAAA;YAAA/B,QAAA,EAAA,cAERR,cAAA,CAAA,MAAA,EAAAgB,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAW0D,UAAU,IAAI,EAAE,CAAA,EAAA,EAAA,EAAA;AAAAlE,cAAAA,QAAA,EAAI6B;AAAK,aAAA,CAAO,CAAC,EAC3CsC,WAAW,iBAAI3E,cAAA,CAAC6E,eAAY,EAAA7D,eAAA,CAAA,EAAA,EAAK2D,WAAW,CAAG,CAAC;AAAA,WAAA,CAC7C,CACK,CAAC;AAAA,QAAA,CAElB,CAAC,eACD3E,cAAA,CAACmB,aAAa,EAAA;AAAOC,UAAAA,aAAa,EAAbA;AAAa,SAAK,CAAC;OAChC;KACN;AAAC,GACJ,CAAC;AAEV,CAAC;;;;AC1DD,IAAM0D,UAAU,GAAG,SAAbA,UAAUA,CAAA1E,IAAA,EAkBV;AAAA,EAAA,IAjBJ2E,kBAAkB,GAAA3E,IAAA,CAAlB2E,kBAAkB;IAClBC,eAAe,GAAA5E,IAAA,CAAf4E,eAAe;IACfC,yBAAyB,GAAA7E,IAAA,CAAzB6E,yBAAyB;IACzBC,YAAY,GAAA9E,IAAA,CAAZ8E,YAAY;IACZC,WAAW,GAAA/E,IAAA,CAAX+E,WAAW;IACXC,iBAAiB,GAAAhF,IAAA,CAAjBgF,iBAAiB;IACjBC,YAAY,GAAAjF,IAAA,CAAZiF,YAAY;IACZC,aAAa,GAAAlF,IAAA,CAAbkF,aAAa;IACbC,wBAAwB,GAAAnF,IAAA,CAAxBmF,wBAAwB;IACxBC,mBAAmB,GAAApF,IAAA,CAAnBoF,mBAAmB;IACnBC,sBAAsB,GAAArF,IAAA,CAAtBqF,sBAAsB;IACtBC,gBAAgB,GAAAtF,IAAA,CAAhBsF,gBAAgB;IAChBC,mBAAmB,GAAAvF,IAAA,CAAnBuF,mBAAmB;IACnBC,WAAW,GAAAxF,IAAA,CAAXwF,WAAW;IACXC,iBAAiB,GAAAzF,IAAA,CAAjByF,iBAAiB;IACjBC,uBAAuB,GAAA1F,IAAA,CAAvB0F,uBAAuB;IAAAC,qBAAA,GAAA3F,IAAA,CACvB4F,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAEvB,EAAA,IAAAvE,eAAA,GAAcC,2BAAc,EAAE;IAAtB7B,CAAC,GAAA4B,eAAA,CAAD5B,CAAC;AAET,EAAA,IAAMqG,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAA9D,KAAA,EAAA;AAAA,IAAA,IAAM+D,eAAe,GAAA/D,KAAA,CAAf+D,eAAe;MAAEC,gBAAgB,GAAAhE,KAAA,CAAhBgE,gBAAgB;AAAA,IAAA,OAC7D,CAACpB,kBAAkB,iBACjBrE,eAAA,CAAA0F,mBAAA,EAAA;MAAA5F,QAAA,EAAA,cACER,cAAA,CAACkG,eAAe,EAAAlF,aAAA,CAAA,EAAA,EACToC,aAAa,CAAC4B,eAAe,CAAC,GAC/B;AAAEqB,QAAAA,IAAI,EAAErB;AAAgB,OAAC,GACzB;AAAEnE,QAAAA,EAAE,EAAEmE;AAAgB,OAAC,CAC5B,CAAC,EACDC,yBAAyB,iBACxBjF,cAAA,CAACmG,gBAAgB,EAAA;AACfG,QAAAA,OAAO,EAAEnB,WAAY;QACrBlC,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQiC,YAAY,EAAE;AAAA,QAAA;AAAC,OAC/B,CACF;AAAA,KACD,CACH;AAAA,EAAA,CAAA;AAEH,EAAA,IAAMqB,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,KAAA,EAAA;AAAA,IAAA,IAAMC,aAAa,GAAAD,KAAA,CAAbC,aAAa;MAAEC,oBAAoB,GAAAF,KAAA,CAApBE,oBAAoB;IAAA,oBACjEhG,eAAA,CAAA0F,mBAAA,EAAA;AAAA5F,MAAAA,QAAA,GACGiF,sBAAsB,iBACrBzF,cAAA,CAACyG,aAAa,EAAAzF,aAAA,CAAA;AACZsB,QAAAA,QAAQ,EAAE8C,iBAAkB;AAC5BkB,QAAAA,OAAO,EAAEjB,YAAa;QACtBpC,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQqC,aAAa,EAAE;AAAA,QAAA;AAAC,OAAA,EAC3BU,kBAAkB,CACvB,CACF,eACDhG,cAAA,CAAC0G,oBAAoB,EAAA1F,aAAA,CAAAA,aAAA,CAAA,EAAA,EACdoC,aAAa,CAACoC,mBAAmB,CAAC,GACnC;AAAEa,QAAAA,IAAI,EAAEb;AAAoB,OAAC,GAC7B;AAAE3E,QAAAA,EAAE,EAAE2E;OAAqB,CAAA,EAAA,EAAA,EAAA;AAC/BlD,QAAAA,QAAQ,EAAEiD,wBAAyB;QACnCrF,SAAS,EAAE6B,UAAU,CAAC;AACpB,UAAA,uCAAuC,EAAE,CAAC0D;SAC3C;AAAE,OAAA,CACJ,CAAC;AAAA,KACF,CAAC;EAAA,CACJ;EAED,oBACE/E,eAAA,CAAA0F,mBAAA,EAAA;IAAA5F,QAAA,EAAA,cACER,cAAA,CAAC2G,eAAY,EAAA;AAAOV,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAAEM,MAAAA,oBAAoB,EAApBA;AAAoB,KAAK,CAAC,eAClEvG,cAAA,CAAC2G,eAAY,CAACC,KAAK,EAAA;AACjBC,MAAAA,MAAM,EAAEnB,gBAAiB;AACzBoB,MAAAA,YAAY,EAAE3B,WAAY;AAC1B4B,MAAAA,OAAO,EACLjB,uBAAuB,IACvBlG,CAAC,CAAC,kDAAkD,CACrD;AACDoH,MAAAA,KAAK,EACHnB,iBAAiB,IAAIjG,CAAC,CAAC,4CAA4C,CACpE;MACDqH,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQtB,mBAAmB,CAAC,KAAK,CAAC;MAAA,CAAC;AAC1CuB,MAAAA,QAAQ,EAAEtB;AAAY,KACvB,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;AC7ED,IAAMuB,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA/G,IAAA,EAIhB;AAAA,EAAA,IAHJgH,eAAe,GAAAhH,IAAA,CAAfgH,eAAe;IACfC,eAAe,GAAAjH,IAAA,CAAfiH,eAAe;IACfC,gBAAgB,GAAAlH,IAAA,CAAhBkH,gBAAgB;AAEhB,EAAA,IAAAC,eAAA,GAAmBC,cAAc,EAAE;IAA3BC,MAAM,GAAAF,eAAA,CAANE,MAAM;AACd,EAAA,IAAMC,QAAQ,GAAGD,MAAM,CAAC,QAAQ,CAAC;AAEjC,EAAA,IAAME,gBAAgB,GAAG/D,YAAM,CAC7BF,YAAM,CAAC5C,mBAAS,EAAE,CAACsG,eAAe,EAAEC,eAAe,EAAEC,gBAAgB,CAAC,CACxE,CAAC;AAED,EAAA,IAAMM,SAAS,GAAG;AAChBC,IAAAA,mBAAmB,EAAEH,QAAQ,GAAA,SAAA,CAAA3E,MAAA,CAEvBsE,eAAe,GAAGM,gBAAgB,GAAG,CAAC,GAAGA,gBAAgB,EAAA,SAAA,CAAA,GAAA,SAAA,CAAA5E,MAAA,CAEjD4E,gBAAgB,EAAA,QAAA;GAC/B;AAED,EAAA,oBACEjH,eAAA,CAAA,KAAA,EAAA;AAAKR,IAAAA,SAAS,EAAC,QAAQ;AAAAM,IAAAA,QAAA,gBACrBR,cAAA,CAAA,KAAA,EAAA;AACEE,MAAAA,SAAS,EAAC,2IAA2I;AACrJ,MAAA,aAAA,EAAY,mBAAmB;AAAAM,MAAAA,QAAA,eAE/BE,eAAA,CAAA,KAAA,EAAA;AAAKR,QAAAA,SAAS,EAAC,mBAAmB;AAAC4H,QAAAA,KAAK,EAAEF,SAAU;QAAApH,QAAA,EAAA,CACjD4G,eAAe,EACf,CAACM,QAAQ,IAAIL,eAAe,EAC5BC,gBAAgB;OACd;AAAC,KACH,CAAC,EACLI,QAAQ,iBACP1H,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,uHAAuH;AAAAM,MAAAA,QAAA,EACnI6G;AAAe,KACb,CACN;AAAA,GACE,CAAC;AAEV;AAEAF,gBAAgB,CAACY,eAAe,GAAG5H,SAAS;AAC5CgH,gBAAgB,CAACnD,eAAe,GAAGA,eAAe;AAClDmD,gBAAgB,CAACa,gBAAgB,GAAGlD,UAAU;;;;","x_google_ignoreList":[0]}
@@ -0,0 +1,414 @@
1
+ 'use strict';
2
+
3
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
5
+ var neetoAtoms = require('@bigbinary/neeto-atoms');
6
+ var classnames = require('classnames');
7
+ var neetoCist = require('@bigbinary/neeto-cist');
8
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/v2/react-utils');
9
+ var utils = require('@bigbinary/neeto-commons-frontend/v2/utils');
10
+ var reactI18next = require('react-i18next');
11
+ var jsxRuntime = require('react/jsx-runtime');
12
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
13
+ var React = require('react');
14
+ var Profile = require('@bigbinary/neeto-team-members-frontend/Profile');
15
+ var initializers = require('@bigbinary/neeto-commons-frontend/v2/initializers');
16
+ var createLucideIcon = require('../createLucideIcon-DBDhE7kE.js');
17
+
18
+ /**
19
+ * @license lucide-react v1.7.0 - ISC
20
+ *
21
+ * This source code is licensed under the ISC license.
22
+ * See the LICENSE file in the root directory of this source tree.
23
+ */
24
+
25
+
26
+ const __iconNode$2 = [
27
+ ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
28
+ ["path", { d: "M12 6v6l4 2", key: "mmk7yg" }]
29
+ ];
30
+ const Clock = createLucideIcon.createLucideIcon("clock", __iconNode$2);
31
+
32
+ /**
33
+ * @license lucide-react v1.7.0 - ISC
34
+ *
35
+ * This source code is licensed under the ISC license.
36
+ * See the LICENSE file in the root directory of this source tree.
37
+ */
38
+
39
+
40
+ const __iconNode$1 = [
41
+ ["path", { d: "M15 3h6v6", key: "1q9fwt" }],
42
+ ["path", { d: "M10 14 21 3", key: "gplh6r" }],
43
+ ["path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6", key: "a6xqqp" }]
44
+ ];
45
+ const ExternalLink = createLucideIcon.createLucideIcon("external-link", __iconNode$1);
46
+
47
+ /**
48
+ * @license lucide-react v1.7.0 - ISC
49
+ *
50
+ * This source code is licensed under the ISC license.
51
+ * See the LICENSE file in the root directory of this source tree.
52
+ */
53
+
54
+
55
+ const __iconNode = [
56
+ ["path", { d: "M10 11v6", key: "nco0om" }],
57
+ ["path", { d: "M14 11v6", key: "outv1u" }],
58
+ ["path", { d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6", key: "miytrc" }],
59
+ ["path", { d: "M3 6h18", key: "d0wm0j" }],
60
+ ["path", { d: "M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2", key: "e791ji" }]
61
+ ];
62
+ const Trash2 = createLucideIcon.createLucideIcon("trash-2", __iconNode);
63
+
64
+ var _excluded$1 = ["t"];
65
+ 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; }
66
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
67
+ var AlertBlock = reactUtils.withT(function (_ref) {
68
+ var t = _ref.t,
69
+ props = _objectWithoutProperties(_ref, _excluded$1);
70
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Alert, _objectSpread$2({
71
+ "data-testid": "reset-alert",
72
+ submitButtonLabel: t("neetoMolecules.common.actions.reset")
73
+ }, props));
74
+ });
75
+
76
+ var _globalProps$user;
77
+ var TIME_FORMAT = "h A";
78
+ var DATE_FORMAT = ((_globalProps$user = initializers.globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.dateFormat) || "DD/MM/YYYY";
79
+
80
+ var disabledDate = function disabledDate(current) {
81
+ return current && current < utils.dayjs().startOf("day");
82
+ };
83
+ var disabledTime = function disabledTime(selectedDate) {
84
+ var current = utils.dayjs(selectedDate).startOf("day");
85
+ var today = utils.dayjs().startOf("day");
86
+ if (current.isBefore(today)) {
87
+ return {
88
+ disabledHours: function disabledHours() {
89
+ return neetoCist.dynamicArray(24, function (i) {
90
+ return i;
91
+ });
92
+ }
93
+ };
94
+ }
95
+ if (current.isSame(today)) {
96
+ var currentTime = utils.dayjs();
97
+ return {
98
+ disabledHours: function disabledHours() {
99
+ return neetoCist.dynamicArray(currentTime.hour() + 1, function (i) {
100
+ return i;
101
+ });
102
+ }
103
+ };
104
+ }
105
+ return {};
106
+ };
107
+
108
+ var Form = function Form(_ref) {
109
+ var _globalProps$user$tim, _globalProps$user;
110
+ var datetimeValue = _ref.datetimeValue,
111
+ setDatetimeValue = _ref.setDatetimeValue,
112
+ onClose = _ref.onClose;
113
+ var _useTranslation = reactI18next.useTranslation(),
114
+ t = _useTranslation.t;
115
+ var _Profile$usePaneState = Profile.usePaneState(),
116
+ _Profile$usePaneState2 = _slicedToArray(_Profile$usePaneState, 2);
117
+ _Profile$usePaneState2[0];
118
+ var setIsProfilePaneOpen = _Profile$usePaneState2[1];
119
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
120
+ className: "flex flex-col gap-y-1",
121
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DatePicker, {
122
+ disabledDate: disabledDate,
123
+ required: true,
124
+ showTime: true,
125
+ allowClear: false,
126
+ "data-testid": "publish-later-datepicker-input-field",
127
+ dateFormat: DATE_FORMAT,
128
+ label: t("neetoMolecules.publishBlock.dateTime"),
129
+ timeFormat: TIME_FORMAT,
130
+ value: datetimeValue,
131
+ timePickerProps: {
132
+ "data-testid": "publish-later-timepicker-input-field",
133
+ clearIcon: false,
134
+ disabledTime: disabledTime
135
+ },
136
+ onChange: function onChange(date) {
137
+ setDatetimeValue(date.startOf("hour"));
138
+ }
139
+ }), /*#__PURE__*/jsxRuntime.jsx("span", {
140
+ className: "text-muted-foreground text-xs",
141
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
142
+ i18nKey: "neetoMolecules.publishBlock.timezoneDescription",
143
+ values: {
144
+ timezone: (_globalProps$user$tim = (_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.timeZone) !== null && _globalProps$user$tim !== void 0 ? _globalProps$user$tim : utils.dayjs.tz.guess()
145
+ },
146
+ components: {
147
+ button: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
148
+ size: "sm",
149
+ variant: "link",
150
+ onClick: function onClick() {
151
+ onClose();
152
+ setIsProfilePaneOpen(true);
153
+ }
154
+ })
155
+ }
156
+ })
157
+ })]
158
+ });
159
+ };
160
+
161
+ var PublishPreview = function PublishPreview(_ref) {
162
+ var coverImageUrl = _ref.coverImageUrl,
163
+ title = _ref.title,
164
+ publicUrl = _ref.publicUrl;
165
+ var _useTranslation = reactI18next.useTranslation(),
166
+ t = _useTranslation.t;
167
+ if (!title) return null;
168
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
169
+ className: "flex flex-col",
170
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Label, {
171
+ className: "mb-2",
172
+ children: t("neetoMolecules.publishBlock.preview")
173
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
174
+ className: "bg-muted w-full rounded p-4",
175
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
176
+ className: "flex flex-col items-start gap-3",
177
+ children: [coverImageUrl && /*#__PURE__*/jsxRuntime.jsx("div", {
178
+ className: "w-full flex-shrink-0",
179
+ children: /*#__PURE__*/jsxRuntime.jsx("img", {
180
+ alt: title,
181
+ className: "h-52 w-full rounded object-cover",
182
+ src: coverImageUrl
183
+ })
184
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
185
+ className: "flex w-full min-w-0 flex-col items-start gap-1",
186
+ children: [/*#__PURE__*/jsxRuntime.jsx("h4", {
187
+ className: "text-lg font-medium break-words",
188
+ children: title
189
+ }), publicUrl && /*#__PURE__*/jsxRuntime.jsx("a", {
190
+ className: "text-primary break-all",
191
+ href: publicUrl,
192
+ rel: "noopener noreferrer",
193
+ target: "_blank",
194
+ children: publicUrl
195
+ })]
196
+ })]
197
+ })
198
+ })]
199
+ });
200
+ };
201
+
202
+ function ownKeys$1(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; }
203
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
204
+ var PublishSettings = reactUtils.withT(function (_ref) {
205
+ var t = _ref.t,
206
+ isOpen = _ref.isOpen,
207
+ onClose = _ref.onClose,
208
+ _ref$isSubmitting = _ref.isSubmitting,
209
+ isSubmitting = _ref$isSubmitting === void 0 ? false : _ref$isSubmitting,
210
+ _ref$onPublish = _ref.onPublish,
211
+ onPublish = _ref$onPublish === void 0 ? neetoCist.noop : _ref$onPublish,
212
+ datetimeValue = _ref.datetimeValue,
213
+ setDatetimeValue = _ref.setDatetimeValue,
214
+ previewProps = _ref.previewProps;
215
+ return /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Sheet, {
216
+ isOpen: isOpen,
217
+ onClose: onClose,
218
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Header, {
219
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Title, {
220
+ className: "text-2xl leading-normal font-semibold",
221
+ "data-testid": "publish-pane-heading",
222
+ children: t("neetoMolecules.publishBlock.publishLater")
223
+ })
224
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Body, {
225
+ hasFooter: true,
226
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
227
+ className: "flex w-full flex-col gap-y-6 pb-6",
228
+ children: [/*#__PURE__*/jsxRuntime.jsx(Form, {
229
+ datetimeValue: datetimeValue,
230
+ onClose: onClose,
231
+ setDatetimeValue: setDatetimeValue
232
+ }), previewProps && /*#__PURE__*/jsxRuntime.jsx(PublishPreview, _objectSpread$1({}, previewProps))]
233
+ })
234
+ }), /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Sheet.Footer, {
235
+ className: "flex items-center gap-x-2",
236
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
237
+ "data-testid": "publish-submit-button",
238
+ disabled: isSubmitting,
239
+ loading: isSubmitting,
240
+ onClick: function onClick() {
241
+ return onPublish({
242
+ datetimeValue: datetimeValue
243
+ });
244
+ },
245
+ children: t("neetoMolecules.publishBlock.publishLater")
246
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
247
+ "data-testid": "publish-cancel-button",
248
+ variant: "ghost",
249
+ onClick: onClose,
250
+ children: t("neetoMolecules.common.actions.cancel")
251
+ })]
252
+ })]
253
+ });
254
+ });
255
+
256
+ var PublishSchedulePane = function PublishSchedulePane(_ref) {
257
+ var onPublish = _ref.onPublish,
258
+ onClose = _ref.onClose,
259
+ isSubmitting = _ref.isSubmitting,
260
+ datetime = _ref.datetime,
261
+ isOpen = _ref.isOpen,
262
+ previewProps = _ref.previewProps;
263
+ var _useState = React.useState(datetime),
264
+ _useState2 = _slicedToArray(_useState, 2),
265
+ datetimeValue = _useState2[0],
266
+ setDatetimeValue = _useState2[1];
267
+ React.useEffect(function () {
268
+ setDatetimeValue(datetime);
269
+ }, [datetime]);
270
+ return /*#__PURE__*/jsxRuntime.jsx(PublishSettings, {
271
+ datetimeValue: datetimeValue,
272
+ isOpen: isOpen,
273
+ isSubmitting: isSubmitting,
274
+ onClose: onClose,
275
+ onPublish: onPublish,
276
+ previewProps: previewProps,
277
+ setDatetimeValue: setDatetimeValue
278
+ });
279
+ };
280
+
281
+ var _excluded = ["t"],
282
+ _excluded2 = ["t"],
283
+ _excluded3 = ["tooltipProps", "showTooltipWhenDisabled", "disabled"],
284
+ _excluded4 = ["t"];
285
+ 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; }
286
+ 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; }
287
+ var ViewDraftButton = reactUtils.withT(function (_ref) {
288
+ var t = _ref.t,
289
+ props = _objectWithoutProperties(_ref, _excluded);
290
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Tooltip, {
291
+ content: t("neetoMolecules.publishBlock.viewDraftVersion"),
292
+ position: "top",
293
+ children: /*#__PURE__*/jsxRuntime.jsx("span", {
294
+ className: "inline-flex",
295
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, _objectSpread({
296
+ "data-testid": "view-draft-button",
297
+ icon: ExternalLink,
298
+ target: "_blank",
299
+ variant: "secondary"
300
+ }, props))
301
+ })
302
+ });
303
+ });
304
+ var ResetDraftButton = reactUtils.withT(function (_ref2) {
305
+ var t = _ref2.t,
306
+ props = _objectWithoutProperties(_ref2, _excluded2);
307
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Tooltip, {
308
+ content: t("neetoMolecules.publishBlock.deleteDraftVersion"),
309
+ position: "top",
310
+ children: /*#__PURE__*/jsxRuntime.jsx("span", {
311
+ className: "inline-flex",
312
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, _objectSpread({
313
+ "data-testid": "draft-button",
314
+ icon: Trash2,
315
+ variant: "secondary"
316
+ }, props))
317
+ })
318
+ });
319
+ });
320
+ var PublishButton = function PublishButton(_ref3) {
321
+ var tooltipProps = _ref3.tooltipProps,
322
+ _ref3$showTooltipWhen = _ref3.showTooltipWhenDisabled,
323
+ showTooltipWhenDisabled = _ref3$showTooltipWhen === void 0 ? false : _ref3$showTooltipWhen,
324
+ _ref3$disabled = _ref3.disabled,
325
+ disabled = _ref3$disabled === void 0 ? false : _ref3$disabled,
326
+ props = _objectWithoutProperties(_ref3, _excluded3);
327
+ var _useTranslation = reactI18next.useTranslation(),
328
+ t = _useTranslation.t;
329
+ var isTooltipDisabled = !tooltipProps || !showTooltipWhenDisabled && disabled;
330
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Tooltip, {
331
+ content: tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.content,
332
+ disabled: isTooltipDisabled,
333
+ position: tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.position,
334
+ children: /*#__PURE__*/jsxRuntime.jsx("div", {
335
+ className: "inline-flex",
336
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, _objectSpread(_objectSpread({
337
+ disabled: disabled,
338
+ "data-testid": "publish-button"
339
+ }, props), {}, {
340
+ children: t("neetoMolecules.common.actions.publish")
341
+ }))
342
+ })
343
+ });
344
+ };
345
+ var PublishPreviewButton = reactUtils.withT(function (_ref4) {
346
+ var t = _ref4.t,
347
+ props = _objectWithoutProperties(_ref4, _excluded4);
348
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Tooltip, {
349
+ content: t("neetoMolecules.publishBlock.viewPublishedVersion"),
350
+ position: "top",
351
+ children: /*#__PURE__*/jsxRuntime.jsx("span", {
352
+ className: "inline-flex",
353
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, _objectSpread({
354
+ "data-testid": "publish-preview-button",
355
+ icon: ExternalLink,
356
+ target: "_blank",
357
+ className: classnames({
358
+ "pointer-events-none": props.disabled
359
+ }, props.className)
360
+ }, props))
361
+ })
362
+ });
363
+ });
364
+ var PublishBlock = function PublishBlock(_ref5) {
365
+ var renderDraftButtons = _ref5.renderDraftButtons,
366
+ renderPublishButtons = _ref5.renderPublishButtons,
367
+ datetime = _ref5.datetime;
368
+ var _useTranslation2 = reactI18next.useTranslation(),
369
+ t = _useTranslation2.t;
370
+ var draftBlockButtons = renderDraftButtons({
371
+ ViewDraftButton: ViewDraftButton,
372
+ ResetDraftButton: ResetDraftButton
373
+ });
374
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
375
+ className: "neeto-molecules-publish-block flex items-center justify-end gap-3",
376
+ "data-testid": "neeto-molecules-publish-block",
377
+ children: [neetoCist.isPresent(datetime) && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Tooltip, {
378
+ position: "bottom",
379
+ content: t("neetoMolecules.publishBlock.tooltip.publishLater", {
380
+ date: utils.dateFormat.dateTime(datetime)
381
+ }),
382
+ children: /*#__PURE__*/jsxRuntime.jsx("div", {
383
+ children: /*#__PURE__*/jsxRuntime.jsx(Clock, {
384
+ className: "size-4"
385
+ })
386
+ })
387
+ }), draftBlockButtons && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
388
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
389
+ className: "flex items-center gap-2",
390
+ children: [/*#__PURE__*/jsxRuntime.jsx("span", {
391
+ className: "text-muted-foreground text-sm leading-normal",
392
+ "data-testid": "publish-block-draft-label",
393
+ children: t("neetoMolecules.common.actions.draft")
394
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
395
+ className: "flex items-center gap-1",
396
+ children: draftBlockButtons
397
+ })]
398
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
399
+ className: "bg-border h-6 w-px"
400
+ })]
401
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
402
+ className: "neeto-molecules-publish-block__action-btn inline-flex flex-row items-center justify-center gap-px",
403
+ children: renderPublishButtons({
404
+ PublishButton: PublishButton,
405
+ PublishPreviewButton: PublishPreviewButton
406
+ })
407
+ })]
408
+ });
409
+ };
410
+ PublishBlock.Alert = AlertBlock;
411
+ PublishBlock.SchedulePane = PublishSchedulePane;
412
+
413
+ module.exports = PublishBlock;
414
+ //# sourceMappingURL=PublishBlock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublishBlock.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/clock.js","../../../node_modules/lucide-react/dist/esm/icons/external-link.js","../../../node_modules/lucide-react/dist/esm/icons/trash-2.js","../../../src/v2/components/PublishBlock/AlertBlock.jsx","../../../src/v2/components/PublishBlock/PublishSettings/constants.js","../../../src/v2/components/PublishBlock/PublishSettings/utils.js","../../../src/v2/components/PublishBlock/PublishSettings/Form.jsx","../../../src/v2/components/PublishBlock/PublishSettings/PublishPreview.jsx","../../../src/v2/components/PublishBlock/PublishSettings/index.jsx","../../../src/v2/components/PublishBlock/PublishSchedulePane.jsx","../../../src/v2/components/PublishBlock/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.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.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"path\", { d: \"M12 6v6l4 2\", key: \"mmk7yg\" }]\n];\nconst Clock = createLucideIcon(\"clock\", __iconNode);\n\nexport { __iconNode, Clock as default };\n//# sourceMappingURL=clock.js.map\n","/**\n * @license lucide-react v1.7.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.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M15 3h6v6\", key: \"1q9fwt\" }],\n [\"path\", { d: \"M10 14 21 3\", key: \"gplh6r\" }],\n [\"path\", { d: \"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\", key: \"a6xqqp\" }]\n];\nconst ExternalLink = createLucideIcon(\"external-link\", __iconNode);\n\nexport { __iconNode, ExternalLink as default };\n//# sourceMappingURL=external-link.js.map\n","/**\n * @license lucide-react v1.7.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.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 11v6\", key: \"nco0om\" }],\n [\"path\", { d: \"M14 11v6\", key: \"outv1u\" }],\n [\"path\", { d: \"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6\", key: \"miytrc\" }],\n [\"path\", { d: \"M3 6h18\", key: \"d0wm0j\" }],\n [\"path\", { d: \"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\", key: \"e791ji\" }]\n];\nconst Trash2 = createLucideIcon(\"trash-2\", __iconNode);\n\nexport { __iconNode, Trash2 as default };\n//# sourceMappingURL=trash-2.js.map\n","import { Alert } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst AlertBlock = withT(({ t, ...props }) => (\n <Alert\n data-testid=\"reset-alert\"\n submitButtonLabel={t(\"neetoMolecules.common.actions.reset\")}\n {...props}\n />\n));\n\nexport default AlertBlock;\n","import { globalProps } from \"neetocommons/v2/initializers\";\n\nexport const TIME_FORMAT = \"h A\";\n\nexport const DATE_FORMAT = globalProps.user?.dateFormat || \"DD/MM/YYYY\";\n","import { dynamicArray } from \"neetocist\";\nimport { dayjs } from \"neetocommons/v2/utils\";\n\nexport const disabledDate = current =>\n current && current < dayjs().startOf(\"day\");\n\nexport const disabledTime = selectedDate => {\n const current = dayjs(selectedDate).startOf(\"day\");\n const today = dayjs().startOf(\"day\");\n\n if (current.isBefore(today)) {\n return { disabledHours: () => dynamicArray(24, i => i) };\n }\n\n if (current.isSame(today)) {\n const currentTime = dayjs();\n\n return {\n disabledHours: () => dynamicArray(currentTime.hour() + 1, i => i),\n };\n }\n\n return {};\n};\n\nexport const getDefaultDate = () => {\n let currDate = dayjs();\n currDate = currDate.hour(currDate.hour() + 1);\n\n if (currDate.minute() > 30) {\n currDate = currDate.hour(currDate.hour() + 1);\n }\n\n return currDate;\n};\n","import { Button, DatePicker } from \"@bigbinary/neeto-atoms\";\nimport { dayjs } from \"neetocommons/v2/utils\";\nimport { Profile } from \"neetoteam\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT, TIME_FORMAT } from \"./constants\";\nimport { disabledDate, disabledTime } from \"./utils\";\n\nconst Form = ({ datetimeValue, setDatetimeValue, onClose }) => {\n const { t } = useTranslation();\n const [_, setIsProfilePaneOpen] = Profile.usePaneState();\n\n return (\n <div className=\"flex flex-col gap-y-1\">\n <DatePicker\n {...{ disabledDate }}\n required\n showTime\n allowClear={false}\n data-testid=\"publish-later-datepicker-input-field\"\n dateFormat={DATE_FORMAT}\n label={t(\"neetoMolecules.publishBlock.dateTime\")}\n timeFormat={TIME_FORMAT}\n value={datetimeValue}\n timePickerProps={{\n \"data-testid\": \"publish-later-timepicker-input-field\",\n clearIcon: false,\n disabledTime,\n }}\n onChange={date => {\n setDatetimeValue(date.startOf(\"hour\"));\n }}\n />\n <span className=\"text-muted-foreground text-xs\">\n <Trans\n i18nKey=\"neetoMolecules.publishBlock.timezoneDescription\"\n values={{ timezone: globalProps.user?.timeZone ?? dayjs.tz.guess() }}\n components={{\n button: (\n <Button\n size=\"sm\"\n variant=\"link\"\n onClick={() => {\n onClose();\n setIsProfilePaneOpen(true);\n }}\n />\n ),\n }}\n />\n </span>\n </div>\n );\n};\n\nexport default Form;\n","import { Label } from \"@bigbinary/neeto-atoms\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PublishPreview = ({ coverImageUrl, title, publicUrl }) => {\n const { t } = useTranslation();\n\n if (!title) return null;\n\n return (\n <div className=\"flex flex-col\">\n <Label className=\"mb-2\">{t(\"neetoMolecules.publishBlock.preview\")}</Label>\n <div className=\"bg-muted w-full rounded p-4\">\n <div className=\"flex flex-col items-start gap-3\">\n {coverImageUrl && (\n <div className=\"w-full flex-shrink-0\">\n <img\n alt={title}\n className=\"h-52 w-full rounded object-cover\"\n src={coverImageUrl}\n />\n </div>\n )}\n <div className=\"flex w-full min-w-0 flex-col items-start gap-1\">\n <h4 className=\"text-lg font-medium break-words\">{title}</h4>\n {publicUrl && (\n <a\n className=\"text-primary break-all\"\n href={publicUrl}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {publicUrl}\n </a>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default PublishPreview;\n","import { Button, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport Form from \"./Form\";\nimport PublishPreview from \"./PublishPreview\";\n\nconst PublishSettings = withT(\n ({\n t,\n isOpen,\n onClose,\n isSubmitting = false,\n onPublish = noop,\n datetimeValue,\n setDatetimeValue,\n previewProps,\n }) => (\n <Sheet {...{ isOpen, onClose }}>\n <Sheet.Header>\n <Sheet.Title\n className=\"text-2xl leading-normal font-semibold\"\n data-testid=\"publish-pane-heading\"\n >\n {t(\"neetoMolecules.publishBlock.publishLater\")}\n </Sheet.Title>\n </Sheet.Header>\n <Sheet.Body hasFooter>\n <div className=\"flex w-full flex-col gap-y-6 pb-6\">\n <Form {...{ datetimeValue, onClose, setDatetimeValue }} />\n {previewProps && <PublishPreview {...previewProps} />}\n </div>\n </Sheet.Body>\n <Sheet.Footer className=\"flex items-center gap-x-2\">\n <Button\n data-testid=\"publish-submit-button\"\n disabled={isSubmitting}\n loading={isSubmitting}\n onClick={() => onPublish({ datetimeValue })}\n >\n {t(\"neetoMolecules.publishBlock.publishLater\")}\n </Button>\n <Button\n data-testid=\"publish-cancel-button\"\n variant=\"ghost\"\n onClick={onClose}\n >\n {t(\"neetoMolecules.common.actions.cancel\")}\n </Button>\n </Sheet.Footer>\n </Sheet>\n )\n);\n\nexport default PublishSettings;\n","import { useEffect, useState } from \"react\";\n\nimport PropTypes from \"prop-types\";\n\nimport PublishSettings from \"./PublishSettings\";\n\nconst PublishSchedulePane = ({\n onPublish,\n onClose,\n isSubmitting,\n datetime,\n isOpen,\n previewProps,\n}) => {\n const [datetimeValue, setDatetimeValue] = useState(datetime);\n\n useEffect(() => {\n setDatetimeValue(datetime);\n }, [datetime]);\n\n return (\n <PublishSettings\n {...{\n datetimeValue,\n isOpen,\n isSubmitting,\n onClose,\n onPublish,\n previewProps,\n setDatetimeValue,\n }}\n />\n );\n};\n\nPublishSchedulePane.propTypes = {\n onPublish: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n isSubmitting: PropTypes.bool,\n datetime: PropTypes.string,\n isOpen: PropTypes.bool,\n previewProps: PropTypes.shape({\n coverImageUrl: PropTypes.string,\n title: PropTypes.string,\n publicUrl: PropTypes.string,\n }),\n};\n\nexport default PublishSchedulePane;\n","import { Button, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Clock, ExternalLink, Trash2 } from \"lucide-react\";\nimport { isPresent } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport { dateFormat } from \"neetocommons/v2/utils\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AlertBlock from \"./AlertBlock\";\nimport PublishSchedulePane from \"./PublishSchedulePane\";\n\nconst ViewDraftButton = withT(({ t, ...props }) => (\n <Tooltip\n content={t(\"neetoMolecules.publishBlock.viewDraftVersion\")}\n position=\"top\"\n >\n <span className=\"inline-flex\">\n <Button\n data-testid=\"view-draft-button\"\n icon={ExternalLink}\n target=\"_blank\"\n variant=\"secondary\"\n {...props}\n />\n </span>\n </Tooltip>\n));\n\nconst ResetDraftButton = withT(({ t, ...props }) => (\n <Tooltip\n content={t(\"neetoMolecules.publishBlock.deleteDraftVersion\")}\n position=\"top\"\n >\n <span className=\"inline-flex\">\n <Button\n data-testid=\"draft-button\"\n icon={Trash2}\n variant=\"secondary\"\n {...props}\n />\n </span>\n </Tooltip>\n));\n\nconst PublishButton = ({\n tooltipProps,\n showTooltipWhenDisabled = false,\n disabled = false,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const isTooltipDisabled =\n !tooltipProps || (!showTooltipWhenDisabled && disabled);\n\n return (\n <Tooltip\n content={tooltipProps?.content}\n disabled={isTooltipDisabled}\n position={tooltipProps?.position}\n >\n <div className=\"inline-flex\">\n <Button {...{ disabled }} data-testid=\"publish-button\" {...props}>\n {t(\"neetoMolecules.common.actions.publish\")}\n </Button>\n </div>\n </Tooltip>\n );\n};\n\nconst PublishPreviewButton = withT(({ t, ...props }) => (\n <Tooltip\n content={t(\"neetoMolecules.publishBlock.viewPublishedVersion\")}\n position=\"top\"\n >\n <span className=\"inline-flex\">\n <Button\n data-testid=\"publish-preview-button\"\n icon={ExternalLink}\n target=\"_blank\"\n className={classnames(\n { \"pointer-events-none\": props.disabled },\n props.className\n )}\n {...props}\n />\n </span>\n </Tooltip>\n));\n\nconst PublishBlock = ({\n renderDraftButtons,\n renderPublishButtons,\n datetime,\n}) => {\n const { t } = useTranslation();\n\n const draftBlockButtons = renderDraftButtons({\n ViewDraftButton,\n ResetDraftButton,\n });\n\n return (\n <div\n className=\"neeto-molecules-publish-block flex items-center justify-end gap-3\"\n data-testid=\"neeto-molecules-publish-block\"\n >\n {isPresent(datetime) && (\n <Tooltip\n position=\"bottom\"\n content={t(\"neetoMolecules.publishBlock.tooltip.publishLater\", {\n date: dateFormat.dateTime(datetime),\n })}\n >\n <div>\n <Clock className=\"size-4\" />\n </div>\n </Tooltip>\n )}\n {draftBlockButtons && (\n <>\n <div className=\"flex items-center gap-2\">\n <span\n className=\"text-muted-foreground text-sm leading-normal\"\n data-testid=\"publish-block-draft-label\"\n >\n {t(\"neetoMolecules.common.actions.draft\")}\n </span>\n <div className=\"flex items-center gap-1\">{draftBlockButtons}</div>\n </div>\n <div className=\"bg-border h-6 w-px\" />\n </>\n )}\n <div className=\"neeto-molecules-publish-block__action-btn inline-flex flex-row items-center justify-center gap-px\">\n {renderPublishButtons({ PublishButton, PublishPreviewButton })}\n </div>\n </div>\n );\n};\n\nPublishBlock.Alert = AlertBlock;\nPublishBlock.SchedulePane = PublishSchedulePane;\n\nPublishBlock.propTypes = {\n renderDraftButtons: PropTypes.func,\n renderPublishButtons: PropTypes.func,\n datetime: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n};\n\nexport default PublishBlock;\n"],"names":["__iconNode","createLucideIcon","AlertBlock","withT","_ref","t","props","_objectWithoutProperties","_excluded","_jsx","Alert","_objectSpread","submitButtonLabel","TIME_FORMAT","DATE_FORMAT","_globalProps$user","globalProps","user","dateFormat","disabledDate","current","dayjs","startOf","disabledTime","selectedDate","today","isBefore","disabledHours","dynamicArray","i","isSame","currentTime","hour","Form","_globalProps$user$tim","datetimeValue","setDatetimeValue","onClose","_useTranslation","useTranslation","_Profile$usePaneState","Profile","usePaneState","_Profile$usePaneState2","_slicedToArray","_","setIsProfilePaneOpen","_jsxs","className","children","DatePicker","required","showTime","allowClear","label","timeFormat","value","timePickerProps","clearIcon","onChange","date","Trans","i18nKey","values","timezone","timeZone","tz","guess","components","button","Button","size","variant","onClick","PublishPreview","coverImageUrl","title","publicUrl","Label","alt","src","href","rel","target","PublishSettings","isOpen","_ref$isSubmitting","isSubmitting","_ref$onPublish","onPublish","noop","previewProps","Sheet","Header","Title","Body","hasFooter","Footer","disabled","loading","PublishSchedulePane","datetime","_useState","useState","_useState2","useEffect","ViewDraftButton","Tooltip","content","position","icon","ExternalLink","ResetDraftButton","_ref2","_excluded2","Trash2","PublishButton","_ref3","tooltipProps","_ref3$showTooltipWhen","showTooltipWhenDisabled","_ref3$disabled","_excluded3","isTooltipDisabled","PublishPreviewButton","_ref4","_excluded4","classnames","PublishBlock","_ref5","renderDraftButtons","renderPublishButtons","_useTranslation2","draftBlockButtons","isPresent","dateTime","Clock","_Fragment","SchedulePane"],"mappings":"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","x_google_ignoreList":[0,1,2]}