@bigbinary/neeto-molecules 5.6.0 → 5.7.1-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.
- package/dist/DocumentEditor.js +1 -1
- package/dist/EmailForm.js +3 -3
- package/dist/EmailPreview.js +1 -1
- package/dist/ErrorPage.js +32 -2
- package/dist/ErrorPage.js.map +1 -1
- package/dist/FloatingActionMenu.js +1 -1
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/Onboarding.js +31 -27
- package/dist/Onboarding.js.map +1 -1
- package/dist/OptionFields.js +1 -1
- package/dist/ShareViaEmail.js +3 -3
- package/dist/ShareViaLink.js +2 -0
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/cjs/DocumentEditor.js +1 -1
- package/dist/cjs/EmailForm.js +3 -3
- package/dist/cjs/EmailPreview.js +1 -1
- package/dist/cjs/ErrorPage.js +32 -2
- package/dist/cjs/ErrorPage.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +1 -1
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/Onboarding.js +31 -27
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/OptionFields.js +1 -1
- package/dist/cjs/ShareViaEmail.js +3 -3
- package/dist/cjs/ShareViaLink.js +2 -0
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/clock-J9ePvpcf.js +20 -0
- package/dist/cjs/clock-J9ePvpcf.js.map +1 -0
- package/dist/cjs/{phone-number-BydWe8Mf.js → phone-number-B0oHeM_N.js} +34 -5
- package/dist/cjs/phone-number-B0oHeM_N.js.map +1 -0
- package/dist/cjs/refresh-cw-Bc6cA1K7.js +22 -0
- package/dist/cjs/refresh-cw-Bc6cA1K7.js.map +1 -0
- package/dist/cjs/v2/DocumentEditor.js +1 -1
- package/dist/cjs/v2/EmailForm.js +3 -3
- package/dist/cjs/v2/EmailPreview.js +1 -1
- package/dist/cjs/v2/ErrorPage.js +36 -3
- package/dist/cjs/v2/ErrorPage.js.map +1 -1
- package/dist/cjs/v2/FinderModal.js +34 -14
- package/dist/cjs/v2/FinderModal.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/NavigationHeader.js +1 -0
- package/dist/cjs/v2/NavigationHeader.js.map +1 -1
- package/dist/cjs/v2/Onboarding.js +31 -26
- package/dist/cjs/v2/Onboarding.js.map +1 -1
- package/dist/cjs/v2/OptionFields.js +1 -1
- package/dist/cjs/v2/PhoneNumber.js +2 -2
- package/dist/cjs/v2/PublishBlock.js +3 -16
- package/dist/cjs/v2/PublishBlock.js.map +1 -1
- package/dist/cjs/v2/SessionEnvironment.js +2 -2
- package/dist/cjs/v2/ShareViaEmail.js +3 -3
- package/dist/cjs/v2/ShareViaLink.js +2 -0
- package/dist/cjs/v2/ShareViaLink.js.map +1 -1
- package/dist/cjs/v2/VersionHistory.js +3 -18
- package/dist/cjs/v2/VersionHistory.js.map +1 -1
- package/dist/clock-DClOV5p0.js +18 -0
- package/dist/clock-DClOV5p0.js.map +1 -0
- package/dist/{phone-number-n0BLV3g6.js → phone-number-DUpPHzWW.js} +34 -5
- package/dist/phone-number-DUpPHzWW.js.map +1 -0
- package/dist/refresh-cw-BC-yYIvc.js +20 -0
- package/dist/refresh-cw-BC-yYIvc.js.map +1 -0
- package/dist/v2/DocumentEditor.js +1 -1
- package/dist/v2/EmailForm.js +3 -3
- package/dist/v2/EmailPreview.js +1 -1
- package/dist/v2/ErrorPage.js +36 -3
- package/dist/v2/ErrorPage.js.map +1 -1
- package/dist/v2/FinderModal.js +35 -15
- package/dist/v2/FinderModal.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +1 -1
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/NavigationHeader.js +1 -0
- package/dist/v2/NavigationHeader.js.map +1 -1
- package/dist/v2/Onboarding.js +31 -26
- package/dist/v2/Onboarding.js.map +1 -1
- package/dist/v2/OptionFields.js +1 -1
- package/dist/v2/PhoneNumber.js +3 -3
- package/dist/v2/PublishBlock.js +2 -15
- package/dist/v2/PublishBlock.js.map +1 -1
- package/dist/v2/SessionEnvironment.js +2 -2
- package/dist/v2/ShareViaEmail.js +3 -3
- package/dist/v2/ShareViaLink.js +2 -0
- package/dist/v2/ShareViaLink.js.map +1 -1
- package/dist/v2/VersionHistory.js +2 -17
- package/dist/v2/VersionHistory.js.map +1 -1
- package/package.json +10 -10
- package/src/translations/ar.json +21 -10
- package/src/translations/bg.json +22 -11
- package/src/translations/ca.json +22 -11
- package/src/translations/cs.json +21 -10
- package/src/translations/da.json +22 -11
- package/src/translations/de.json +22 -11
- package/src/translations/en.json +8 -4
- package/src/translations/es-MX.json +22 -11
- package/src/translations/es.json +22 -11
- package/src/translations/et.json +22 -11
- package/src/translations/fi.json +22 -11
- package/src/translations/fil.json +22 -11
- package/src/translations/fr.json +22 -11
- package/src/translations/he.json +22 -11
- package/src/translations/hi.json +21 -10
- package/src/translations/hr.json +21 -10
- package/src/translations/hu.json +22 -11
- package/src/translations/id.json +22 -11
- package/src/translations/it.json +22 -11
- package/src/translations/ja.json +22 -11
- package/src/translations/ko.json +22 -11
- package/src/translations/lv.json +22 -11
- package/src/translations/nl.json +22 -11
- package/src/translations/pl.json +22 -11
- package/src/translations/pt-BR.json +22 -11
- package/src/translations/pt.json +22 -11
- package/src/translations/ro.json +22 -11
- package/src/translations/ru.json +21 -10
- package/src/translations/sk.json +21 -10
- package/src/translations/sl.json +22 -11
- package/src/translations/sv.json +22 -11
- package/src/translations/th.json +21 -10
- package/src/translations/tr.json +22 -11
- package/src/translations/uk.json +22 -11
- package/src/translations/vi.json +22 -11
- package/src/translations/zh-CN.json +21 -10
- package/src/translations/zh-TW.json +22 -11
- package/types/DocumentEditor.d.ts +1 -1
- package/types/PhoneNumber.d.ts +1 -0
- package/types/v2/DocumentEditor.d.ts +4 -1
- package/types/v2/FinderModal.d.ts +3 -0
- package/dist/cjs/phone-number-BydWe8Mf.js.map +0 -1
- package/dist/phone-number-n0BLV3g6.js.map +0 -1
|
@@ -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 placeholder,\n startTypingTitle,\n startTypingDescription,\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 value={internalSearchTerm}\n placeholder={\n placeholder ?? t(\"neetoMolecules.common.actions.search\")\n }\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 : (startTypingDescription ??\n t(\"neetoMolecules.finderModal.startTypingDesc\"))\n }\n title={\n internalSearchTerm\n ? t(\"neetoMolecules.finderModal.noDataTitle\")\n : (startTypingTitle ??\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 placeholder: PropTypes.string,\n startTypingTitle: PropTypes.string,\n startTypingDescription: PropTypes.string,\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","placeholder","startTypingTitle","startTypingDescription","_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","onValueChange","Spinner","CommandList","CommandEmpty","Empty","icon","Search","entries","_ref6","_ref7","group","CommandGroup","heading","ref"],"mappings":"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"}
|
|
@@ -607,7 +607,7 @@ var HelpItems = withT(function (_ref) {
|
|
|
607
607
|
children: t("neetoMolecules.sidebar.helpLinks.liveChat")
|
|
608
608
|
}), /*#__PURE__*/jsx(MenuItem, {
|
|
609
609
|
"data-testid": "help-link-community-button",
|
|
610
|
-
href: "https://
|
|
610
|
+
href: "https://neeto.com/community",
|
|
611
611
|
prefix: /*#__PURE__*/jsx(Users, {
|
|
612
612
|
size: 18
|
|
613
613
|
}),
|