@bigbinary/neeto-molecules 5.3.11 → 5.3.13
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/FloatingActionMenu.js +120 -91
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +119 -90
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/Builder.js +17 -13
- package/dist/cjs/v2/Builder.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +141 -77
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/Builder.js +17 -13
- package/dist/v2/Builder.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +141 -77
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/package.json +1 -1
- package/src/translations/ar.json +3 -1
- package/src/translations/bg.json +3 -1
- package/src/translations/ca.json +3 -1
- package/src/translations/cs.json +3 -1
- package/src/translations/da.json +3 -1
- package/src/translations/de.json +3 -1
- package/src/translations/en.json +3 -1
- package/src/translations/es-MX.json +3 -1
- package/src/translations/es.json +3 -1
- package/src/translations/et.json +3 -1
- package/src/translations/fi.json +3 -1
- package/src/translations/fil.json +3 -1
- package/src/translations/fr.json +3 -1
- package/src/translations/he.json +3 -1
- package/src/translations/hi.json +3 -1
- package/src/translations/hr.json +3 -1
- package/src/translations/hu.json +3 -1
- package/src/translations/id.json +3 -1
- package/src/translations/it.json +3 -1
- package/src/translations/ja.json +3 -1
- package/src/translations/ko.json +3 -1
- package/src/translations/nl.json +3 -1
- package/src/translations/pl.json +3 -1
- package/src/translations/pt-BR.json +3 -1
- package/src/translations/pt.json +3 -1
- package/src/translations/ro.json +3 -1
- package/src/translations/ru.json +3 -1
- package/src/translations/sk.json +3 -1
- package/src/translations/sl.json +3 -1
- package/src/translations/sv.json +3 -1
- package/src/translations/th.json +3 -1
- package/src/translations/tr.json +3 -1
- package/src/translations/uk.json +3 -1
- package/src/translations/vi.json +3 -1
- package/src/translations/zh-CN.json +3 -1
- package/src/translations/zh-TW.json +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Builder.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/arrow-down.mjs","../../../node_modules/lucide-react/dist/esm/icons/zap.mjs","../../../src/v2/components/Builder/constants.js","../../../src/v2/components/Builder/ElementsPanel/ElementsList/NoResults.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/Element.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/ElementContainer.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/Section.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/SectionsContainer.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/TitleBar.jsx","../../../src/v2/components/Builder/Body.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/index.jsx","../../../src/v2/components/Builder/ElementsPanel/SelectedElementsList/SelectedElement.jsx","../../../src/v2/components/Builder/ElementsPanel/SelectedElementsList/TitleBar.jsx","../../../src/v2/components/Builder/ElementsPanel/SelectedElementsList/index.jsx","../../../src/v2/components/Builder/ElementsPanel/index.jsx","../../../src/v2/components/Builder/PropertiesPanel/EmptyProperty.jsx","../../../src/v2/components/Builder/PropertiesPanel/Skeleton.jsx","../../../src/v2/components/Builder/PropertiesPanel/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }],\n [\"path\", { d: \"m19 12-7 7-7-7\", key: \"1idqje\" }]\n];\nconst ArrowDown = createLucideIcon(\"arrow-down\", __iconNode);\n\nexport { __iconNode, ArrowDown as default };\n//# sourceMappingURL=arrow-down.mjs.map\n","/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z\",\n key: \"1xq2db\"\n }\n ]\n];\nconst Zap = createLucideIcon(\"zap\", __iconNode);\n\nexport { __iconNode, Zap as default };\n//# sourceMappingURL=zap.mjs.map\n","export const PANEL_TYPES = { SUMMARY: \"summary\", ELEMENTS: \"elements\" };\n\nexport const SELECTED_ELEMENTS_LIST_DROPPABLE_ID =\n \"droppable-selected-element-container\";\n\nexport const ELEMENTS_LIST_DROPPABLE_ID = \"droppable-element-container\";\n\nexport const PREVIEW_CONTAINER_DROPPABLE_ID =\n \"droppable-form-preview-container\";\n\nexport const DROPPABLE_TYPES = {\n ELEMENT: \"element\",\n SELECTED_ELEMENT: \"selected_element\",\n};\n","import { memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst NoResults = withT(({ t }) => (\n <Typography\n className=\"flex h-full items-center justify-center text-base\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.builderSidebar.noElements\")}\n </Typography>\n));\n\nexport default memo(NoResults);\n","import { Tooltip, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { GripVertical } from \"lucide-react\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils/general\";\n\nconst Element = ({\n label,\n description,\n tooltip,\n icon: Icon,\n isCreatable = true,\n onClick,\n isDragDisabled = false,\n disabledElementTooltip,\n isPlaceholder,\n isDraggingOver,\n isAddingNewElement,\n}) => {\n const handleClick = event => {\n if (!isCreatable || isAddingNewElement) {\n event.preventDefault();\n\n return;\n }\n\n onClick(event);\n };\n\n const tooltipContent = isCreatable\n ? tooltip\n : disabledElementTooltip?.(label);\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={isDraggingOver || !tooltipContent}\n position=\"top\"\n >\n <div\n data-testid={`add-${joinHyphenCase(label)}-element`}\n className={classnames(\n \"border-border bg-background hover:bg-muted relative mb-2 flex items-center gap-2 rounded-lg border p-3 transition-all duration-300 ease-in-out\",\n {\n \"bg-muted cursor-not-allowed\": !isCreatable,\n \"cursor-pointer\": isCreatable,\n \"opacity-50\": isPlaceholder,\n \"h-10\": !description,\n }\n )}\n onClick={handleClick}\n >\n {!isDragDisabled && (\n <span\n className=\"absolute end-full top-1/2 me-0.5 flex-shrink-0 -translate-y-1/2 cursor-grab\"\n data-testid=\"drag-handle\"\n >\n <GripVertical\n className=\"text-muted-foreground hover:text-foreground transition-all duration-300 ease-in-out\"\n size={16}\n />\n </span>\n )}\n <div className=\"flex flex-grow items-center gap-2\">\n {Icon && (\n <Icon\n className=\"text-muted-foreground size-5\"\n data-testid=\"form-icon\"\n />\n )}\n <div className=\"flex min-w-0 flex-col\">\n <Typography className=\"leading-4\" variant=\"body2\">\n {label}\n </Typography>\n {description && (\n <Typography\n className=\"mt-0.5\"\n color=\"muted\"\n data-testid=\"element-description\"\n variant=\"body3\"\n >\n {description}\n </Typography>\n )}\n </div>\n </div>\n </div>\n </Tooltip>\n );\n};\n\nexport default Element;\n","import { Draggable } from \"@hello-pangea/dnd\";\nimport { noop } from \"neetocist\";\n\nimport Element from \"./Element\";\n\nconst ElementContainer = ({\n index,\n isDragDisabled,\n element,\n disabledElementTooltip,\n isCreatable,\n onSelect,\n isDraggingOver,\n isAddingNewElement,\n setVisiblePanel,\n}) => {\n const isCreatableElement =\n typeof isCreatable === \"function\" ? isCreatable(element.value) : true;\n\n if (isDragDisabled) {\n return (\n <Element\n {...{\n ...element,\n disabledElementTooltip,\n isAddingNewElement,\n isDragDisabled,\n setVisiblePanel,\n }}\n isCreatable={isCreatableElement}\n onClick={() => onSelect(element)}\n />\n );\n }\n\n return (\n <Draggable\n {...{ index }}\n draggableId={element.value}\n key={element.label}\n isDragDisabled={\n isDragDisabled || !isCreatableElement || isAddingNewElement\n }\n >\n {(provided, snapshot) => (\n <>\n <div\n ref={provided.innerRef}\n {...provided.draggableProps}\n {...provided.dragHandleProps}\n style={{\n ...provided.draggableProps.style,\n ...(!snapshot.isDragging && { transform: \"none\" }),\n }}\n >\n <Element\n {...{\n ...element,\n disabledElementTooltip,\n isAddingNewElement,\n isDragDisabled,\n isDraggingOver,\n setVisiblePanel,\n }}\n isCreatable={isCreatableElement}\n onClick={() => onSelect(element)}\n />\n </div>\n {snapshot.isDragging && (\n <Element\n disabledElementTooltip={null}\n {...{ ...element, isAddingNewElement, setVisiblePanel }}\n isCreatable={false}\n onClick={noop}\n />\n )}\n </>\n )}\n </Draggable>\n );\n};\n\nexport default ElementContainer;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { isEmpty } from \"ramda\";\n\nimport ElementContainer from \"./ElementContainer\";\n\nconst Section = ({\n title,\n elements,\n onSelect,\n isCreatable,\n disabledElementTooltip,\n isDragElementsDisabled: isDragDisabled,\n isDraggingOver,\n isAddingNewElement,\n setVisiblePanel,\n}) => {\n if (isEmpty(elements)) {\n return null;\n }\n\n return (\n <>\n {title && (\n <Typography\n className=\"mt-5 mb-2\"\n color=\"muted\"\n variant=\"body3\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n )}\n {elements.map(element => (\n <ElementContainer\n {...{\n disabledElementTooltip,\n element,\n isAddingNewElement,\n isCreatable,\n isDragDisabled,\n isDraggingOver,\n onSelect,\n setVisiblePanel,\n }}\n index={element.elementIndex}\n key={element.label}\n />\n ))}\n </>\n );\n};\n\nexport default Section;\n","import { Droppable } from \"@hello-pangea/dnd\";\nimport { isEmpty } from \"ramda\";\n\nimport NoResults from \"./NoResults\";\nimport Section from \"./Section\";\n\nimport { DROPPABLE_TYPES, ELEMENTS_LIST_DROPPABLE_ID } from \"../../constants\";\n\nconst SectionsContainer = ({\n isDragElementsDisabled,\n filteredSections,\n isAddingNewElement,\n onSelect,\n setVisiblePanel,\n}) => {\n if (isEmpty(filteredSections)) {\n return <NoResults />;\n }\n\n if (isDragElementsDisabled) {\n return (\n <>\n {filteredSections.map(section => (\n <Section\n {...{\n isAddingNewElement,\n isDragElementsDisabled,\n onSelect,\n setVisiblePanel,\n ...section,\n }}\n key={section.key}\n />\n ))}\n </>\n );\n }\n\n return (\n <Droppable\n droppableId={ELEMENTS_LIST_DROPPABLE_ID}\n type={DROPPABLE_TYPES.ELEMENT}\n >\n {(provided, snapshot) => (\n <div ref={provided.innerRef}>\n {filteredSections.map(section => (\n <Section\n {...{\n isAddingNewElement,\n isDragElementsDisabled,\n onSelect,\n setVisiblePanel,\n ...section,\n }}\n isDraggingOver={snapshot.isDraggingOver}\n key={section.key}\n />\n ))}\n </div>\n )}\n </Droppable>\n );\n};\n\nexport default SectionsContainer;\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { X } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport { PANEL_TYPES } from \"../../constants\";\n\nconst TitleBar = withT(({ t, setVisiblePanel }) => (\n <div\n className=\"flex items-center justify-between p-6 pb-1\"\n data-testid=\"elements-panel-title\"\n >\n <Typography\n className=\"leading-normal\"\n data-testid=\"elements-list-title\"\n variant=\"h5\"\n >\n {t(\"neetoMolecules.builderSidebar.addNewElement\")}\n </Typography>\n <Button\n data-testid=\"cancel-button\"\n icon={X}\n size=\"icon\"\n variant=\"ghost\"\n onClick={() => setVisiblePanel(PANEL_TYPES.SUMMARY)}\n />\n </div>\n));\n\nexport default TitleBar;\n","import classnames from \"classnames\";\n\nconst Body = ({ size, ...props }) => (\n <div\n {...props}\n className={classnames(\n \"min-h-0 w-full grow overflow-y-auto px-6 pt-0 pb-2\",\n size === \"small\"\n ? \"h-[calc(100%_-_4.375rem_-_2.5rem)]\"\n : \"h-[calc(100%_-_4.375rem)]\"\n )}\n />\n);\n\nexport default Body;\n","import { useMemo, useState } from \"react\";\n\nimport { Input, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Search } from \"lucide-react\";\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport { withEventTargetValue } from \"neetocommons/v2/utils/general\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SectionsContainer from \"./SectionsContainer\";\nimport TitleBar from \"./TitleBar\";\n\nimport Body from \"../../Body\";\n\nconst ElementList = ({\n setVisiblePanel,\n elementSections = [],\n onSelect,\n isDragElementsDisabled,\n isAddingNewElement,\n}) => {\n const { t } = useTranslation();\n const [searchString, setSearchString] = useState(\"\");\n\n const filteredSections = useMemo(() => {\n let elementIndex = 0;\n const query = searchString.toLowerCase();\n\n const matchesSearch = element => {\n if (!query) return true;\n\n const label = element.label?.toLowerCase() ?? \"\";\n const description = element.description?.toLowerCase() ?? \"\";\n const aliases = (element.aliases ?? []).map(alias => alias.toLowerCase());\n\n return (\n label.includes(query) ||\n description.includes(query) ||\n aliases.some(alias => alias.includes(query))\n );\n };\n\n return elementSections\n .map(section => ({\n ...section,\n elements: section.elements\n .filter(matchesSearch)\n .map(element => assoc(\"elementIndex\", elementIndex++, element)),\n }))\n .filter(section =>\n isPresent(searchString) ? isNotEmpty(section.elements) : true\n );\n }, [searchString, elementSections]);\n\n return (\n <>\n <TitleBar {...{ setVisiblePanel }} />\n <div className=\"mb-3 px-6\">\n <Typography className=\"mb-3\" color=\"muted\" variant=\"body3\">\n {t(\"neetoMolecules.builderSidebar.addNewElementDescription\")}\n </Typography>\n <Input\n autoFocus\n data-testid=\"elements-panel-search-field\"\n placeholder={t(\"neetoMolecules.builderSidebar.searchElements\")}\n prefix={<Search />}\n type=\"search\"\n value={searchString}\n onChange={withEventTargetValue(setSearchString)}\n />\n </div>\n <Body data-testid=\"elements-container\" size=\"small\">\n <SectionsContainer\n {...{\n filteredSections,\n isAddingNewElement,\n isDragElementsDisabled,\n onSelect,\n setVisiblePanel,\n }}\n />\n </Body>\n </>\n );\n};\n\nexport default ElementList;\n","import { memo, useEffect, useRef } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { GripVertical } from \"lucide-react\";\nimport { noop, findById, isNotEmpty, hyphenate, isPresent } from \"neetocist\";\nimport { mergeRight } from \"ramda\";\n\nimport MoreDropdown from \"../../../MoreDropdown\";\n\nconst SelectedElement = ({\n element,\n isActive,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n handleSelectElement,\n isSelectable = true,\n errors = [],\n actions = [],\n isDraggable = false,\n ...props\n}) => {\n const Icon = element.icon;\n const rootElementRef = useRef();\n\n const onClick = () => handleSelectElement(element);\n\n const shouldShowDropdown = isNotEmpty(actions);\n\n const menuItems =\n typeof actions === \"function\"\n ? actions(element)\n : actions.map(action =>\n mergeRight(action, {\n onClick: () => {\n action.onClick(element);\n },\n })\n );\n\n useEffect(() => {\n const rootElement = rootElementRef.current;\n\n if (\n !rootElement ||\n !isActive ||\n typeof rootElement?.scrollIntoView !== \"function\"\n ) {\n return;\n }\n rootElement.scrollIntoView({ behavior: \"smooth\", block: \"nearest\" });\n }, [isActive, rootElementRef]);\n\n const error = findById(element.id, errors);\n\n return (\n <div\n data-testid={props[\"data-testid\"]}\n ref={rootElementRef}\n className={classnames(\n \"border-border bg-background hover:bg-muted relative mb-2 flex h-10 cursor-pointer items-center gap-2 rounded-lg border py-3 ps-3 pe-1 transition-all duration-300 ease-in-out\",\n {\n \"border-primary! [outline:0.5px_solid_var(--primary)]\": isActive,\n },\n { \"bg-destructive/10 hover:bg-destructive/10\": error }\n )}\n onClick={isSelectable ? onClick : noop}\n >\n {isDraggable && (\n <span\n className=\"absolute end-full top-1/2 me-0.5 flex-shrink-0 -translate-y-1/2 cursor-grab\"\n data-testid=\"drag-handle\"\n >\n <GripVertical\n className=\"text-muted-foreground hover:text-foreground transition-all duration-300 ease-in-out\"\n size={16}\n />\n </span>\n )}\n <div\n className=\"flex flex-grow items-center gap-2 overflow-hidden\"\n data-testid=\"new-element-field\"\n >\n {Icon && (\n <div className=\"flex-shrink-0\">\n <Icon className=\"text-muted-foreground size-5\" />\n </div>\n )}\n <Typography\n className=\"truncate leading-snug\"\n data-testid={`${hyphenate(element.label, \"new-element\")}-label`}\n variant=\"body2\"\n >\n {element.label}\n </Typography>\n </div>\n {shouldShowDropdown && (\n <MoreDropdown\n {...{ menuItems }}\n dropdownProps={{ className: \"w-max\" }}\n isDisabled={element.isPending || isSelectedElementActionsDisabled}\n dropdownButtonProps={{\n onClick: e => e.stopPropagation(),\n className: \"min-h-0 flex-shrink-0\",\n \"data-testid\": `${hyphenate(element.label)}-more-dropdown`,\n loading: element.isPending,\n ...(isPresent(selectedElementActionsTooltipProps) && {\n tooltipProps: selectedElementActionsTooltipProps,\n }),\n }}\n />\n )}\n </div>\n );\n};\n\nexport default memo(SelectedElement);\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Plus, Zap } from \"lucide-react\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PANEL_TYPES } from \"../../constants\";\n\nconst TitleBar = ({\n setVisiblePanel,\n isLoading,\n showElementsFillButton,\n isAddingAllElements,\n addAllElements,\n isAddingNewElement,\n addNewElement,\n addNewElementLabel,\n}) => {\n const { t } = useTranslation();\n\n const handleAddNewElementClick = () => {\n if (typeof addNewElement === \"function\") addNewElement();\n else setVisiblePanel(PANEL_TYPES.ELEMENTS);\n };\n\n return (\n <div\n className=\"flex items-center justify-between p-6 pb-1\"\n data-testid=\"selected-elements-title\"\n >\n <Typography\n className=\"leading-normal\"\n data-testid=\"elements-title\"\n variant=\"h5\"\n >\n {t(\"neetoMolecules.builderSidebar.element\", PLURAL)}\n </Typography>\n <div className=\"flex items-center justify-between gap-x-2\">\n <Button\n data-testid=\"add-element-button\"\n disabled={isLoading}\n icon={Plus}\n iconPosition=\"left\"\n loading={isAddingNewElement}\n size=\"sm\"\n variant=\"link\"\n label={\n addNewElementLabel ||\n t(\"neetoMolecules.builderSidebar.addNewElement\")\n }\n onClick={handleAddNewElementClick}\n />\n {showElementsFillButton && (\n <Button\n data-testid=\"add-all-elements-button\"\n disabled={isAddingAllElements}\n icon={Zap}\n loading={isAddingAllElements}\n size=\"icon-sm\"\n variant=\"secondary\"\n tooltipProps={{\n content: t(\"neetoMolecules.builderSidebar.addAllElements\"),\n }}\n onClick={addAllElements}\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default TitleBar;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { Draggable, Droppable } from \"@hello-pangea/dnd\";\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils/general\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SelectedElement from \"./SelectedElement\";\nimport TitleBar from \"./TitleBar\";\n\nimport Body from \"../../Body\";\nimport {\n DROPPABLE_TYPES,\n SELECTED_ELEMENTS_LIST_DROPPABLE_ID,\n} from \"../../constants\";\n\nconst SelectedElementsList = ({\n handleSelectElement,\n isReorderDisabled,\n isElementVisible,\n selectedElementId,\n selectedElements,\n setVisiblePanel,\n fixedLastElement,\n fixedFirstElement,\n anchoredElementIds,\n selectedElementActions,\n addAllElements,\n isAddingAllElements,\n showElementsFillButton,\n isAddingNewElement,\n addNewElement,\n addNewElementLabel,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n renderElementsCount,\n}) => {\n const renderSelectedElement = (element, index = 0) => (\n <SelectedElement\n {...{\n element,\n handleSelectElement,\n index,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n }}\n isSelectable\n actions={element.actions}\n isActive={selectedElementId === element.id}\n key={element.id || index}\n data-testid={`welcome-element${\n Array.isArray(fixedFirstElement) ? `-${index + 1}` : \"\"\n }`}\n />\n );\n\n const { t } = useTranslation();\n\n const checkIsVisible = element => isElementVisible?.(element) ?? true;\n const visibleCount =\n typeof renderElementsCount === \"function\"\n ? (selectedElements ?? []).filter(checkIsVisible).length\n : 0;\n\n return (\n <>\n <TitleBar\n {...{\n addAllElements,\n addNewElement,\n addNewElementLabel,\n isAddingAllElements,\n isAddingNewElement,\n setVisiblePanel,\n showElementsFillButton,\n }}\n />\n <Body data-testid=\"selected-elements-container\">\n <Typography className=\"mb-3\" color=\"muted\" variant=\"body3\">\n {t(\"neetoMolecules.builderSidebar.elementsReorderDescription\")}\n </Typography>\n {typeof renderElementsCount === \"function\" &&\n renderElementsCount(visibleCount)}\n {Array.isArray(fixedFirstElement)\n ? isNotEmpty(fixedFirstElement) &&\n fixedFirstElement.map(renderSelectedElement)\n : isPresent(fixedFirstElement) &&\n renderSelectedElement(fixedFirstElement)}\n <Droppable\n droppableId={SELECTED_ELEMENTS_LIST_DROPPABLE_ID}\n type={DROPPABLE_TYPES.SELECTED_ELEMENT}\n >\n {({ innerRef, droppableProps, placeholder }) => (\n <div\n ref={innerRef}\n {...droppableProps}\n data-testid=\"selected-elements-droppable-container\"\n >\n {selectedElements\n ?.filter(checkIsVisible)\n .map((element, index) => {\n const isAnchoredElement = anchoredElementIds.includes(\n element.id\n );\n\n const isDragDisabled = isReorderDisabled || isAnchoredElement;\n\n const key =\n element.id ?? `element-${joinHyphenCase(element.label)}`;\n\n return (\n <Draggable\n {...{ index, isDragDisabled }}\n draggableId={element.id ?? `element-${index}`}\n key={key}\n >\n {({ innerRef, draggableProps, dragHandleProps }) => (\n <div\n ref={innerRef}\n {...draggableProps}\n {...dragHandleProps}\n >\n <SelectedElement\n {...{\n element,\n handleSelectElement,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n }}\n isSelectable\n actions={selectedElementActions}\n isActive={selectedElementId === element.id}\n isDraggable={!isDragDisabled}\n key={element.id ?? index}\n />\n </div>\n )}\n </Draggable>\n );\n })}\n {placeholder}\n </div>\n )}\n </Droppable>\n {isPresent(fixedLastElement) && (\n <SelectedElement\n {...{\n handleSelectElement,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n }}\n isSelectable\n actions={fixedLastElement.actions}\n data-testid=\"submit-button-element\"\n element={fixedLastElement}\n isActive={selectedElementId === fixedLastElement.id}\n />\n )}\n </Body>\n </>\n );\n};\n\nexport default SelectedElementsList;\n","import { useEffect, useState } from \"react\";\n\nimport { Button } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { PanelLeftClose } from \"lucide-react\";\nimport { noop } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\n\nimport ElementList from \"./ElementsList\";\nimport SelectedElementsList from \"./SelectedElementsList\";\n\nimport { PANEL_TYPES } from \"../constants\";\n\nconst ElementsPanel = ({\n elementSections,\n selectedElements = [],\n handleAddElement,\n isElementVisible,\n fixedFirstElement,\n fixedLastElement,\n anchoredElementIds = [],\n isReorderDisabled = true,\n isDragElementsDisabled = true,\n handleSelectElement,\n selectedElementId,\n selectedElementActions,\n addAllElements = noop,\n isAddingAllElements = false,\n showElementsFillButton = false,\n isAddingNewElement = false,\n addNewElement,\n addNewElementLabel,\n isSelectedElementActionsDisabled = false,\n selectedElementActionsTooltipProps = {},\n renderElementsCount,\n}) => {\n const [visiblePanel, setVisiblePanel] = useState(PANEL_TYPES.SUMMARY);\n const { isSize } = useBreakpoints();\n const isLargerScreen = !isSize(\"mobile\");\n\n const [isElementsPanelCollapsed, setIsElementsPanelCollapsed] =\n useState(!isLargerScreen);\n\n useEffect(() => {\n setIsElementsPanelCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n return (\n <>\n {!isElementsPanelCollapsed && (\n <div\n className=\"fixed inset-0 z-[101] hidden bg-black/40 max-[767px]:block\"\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n )}\n <div\n className={classnames(\n // z-[101] only where the panel is a fixed slide-in over a backdrop\n // (mobile). At larger widths it's an in-flow column; keeping z-[101]\n // there creates a stacking context that traps portaled overlays\n // (dropdowns/popovers, which sit at z-50) behind the panel.\n \"relative h-full transition-all duration-150 motion-reduce:transition-none max-[767px]:fixed max-[767px]:start-0 max-[767px]:top-0 max-[767px]:z-[101] max-[767px]:transition-none max-[576px]:h-full\",\n // The width utilities live on the open branch so a collapsed panel is\n // truly zero-width at every breakpoint. Keeping the mobile\n // full-width utilities (max-[576px]:w-full) unconditional would let\n // them override w-0 inside their media query, leaving the collapsed\n // panel as a full-screen fixed overlay on mobile.\n isElementsPanelCollapsed\n ? \"w-0 max-w-0 min-w-0\"\n : \"w-[360px] min-w-[360px] max-[576px]:w-full max-[576px]:max-w-full max-[576px]:min-w-0 min-[768px]:max-[1279px]:w-[288px] min-[768px]:max-[1279px]:min-w-[288px]\"\n )}\n >\n <div className=\"h-full w-full overflow-hidden\">\n <div\n className={classnames(\n \"border-border flex h-full w-[360px] min-w-[360px] flex-col border-e max-[576px]:w-full max-[576px]:min-w-0 max-[576px]:pt-6 min-[768px]:max-[1279px]:w-[288px] min-[768px]:max-[1279px]:min-w-[288px]\",\n visiblePanel === PANEL_TYPES.SUMMARY\n ? \"bg-background\"\n : \"bg-muted/40\"\n )}\n onClick={event => event.stopPropagation()}\n >\n {visiblePanel === PANEL_TYPES.SUMMARY ? (\n <SelectedElementsList\n {...{\n addAllElements,\n addNewElement,\n addNewElementLabel,\n anchoredElementIds,\n fixedFirstElement,\n fixedLastElement,\n handleSelectElement,\n isAddingAllElements,\n isAddingNewElement,\n isElementVisible,\n isReorderDisabled,\n isSelectedElementActionsDisabled,\n renderElementsCount,\n selectedElementActions,\n selectedElementActionsTooltipProps,\n selectedElementId,\n selectedElements,\n setVisiblePanel,\n showElementsFillButton,\n }}\n />\n ) : (\n <ElementList\n {...{\n elementSections,\n isAddingNewElement,\n isDragElementsDisabled,\n setVisiblePanel,\n }}\n onSelect={handleAddElement}\n />\n )}\n </div>\n </div>\n <Button\n icon={PanelLeftClose}\n size=\"icon\"\n variant=\"secondary\"\n className={classnames(\n \"absolute start-[calc(100%_+_8px)] top-2 shrink-0 transition-[color] duration-300 motion-reduce:transition-none max-[576px]:start-auto max-[576px]:end-6 min-[1024px]:pointer-events-none min-[1024px]:opacity-0\",\n isElementsPanelCollapsed\n ? \"-scale-x-100 max-[767px]:top-[109px] max-[576px]:start-2 max-[576px]:end-auto rtl:scale-x-100\"\n : \"rtl:-scale-x-100\"\n )}\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nElementsPanel.propTypes = {\n /**\n * List of supported elements to be rendered in the ElementsList panel.\n */\n elementSections: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n elements: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n icon: PropTypes.elementType,\n /**\n * Optional inline description rendered below the element label.\n * Also considered by the elements-panel search filter.\n */\n description: PropTypes.string,\n /**\n * Optional hover tooltip shown on the element row when it is\n * creatable. Use this when the helper text should not affect\n * card height (descriptions render as a subtitle and can vary\n * row heights across element types).\n */\n tooltip: PropTypes.string,\n /**\n * Optional search aliases. The elements-panel search filter\n * matches these in addition to the label and description, so\n * legacy terms (e.g. \"paragraph\" for an element now called\n * \"Instructions\") continue to surface the correct element.\n */\n aliases: PropTypes.arrayOf(PropTypes.string),\n })\n ),\n key: PropTypes.string,\n isCreatable: PropTypes.func,\n disabledElementTooltip: PropTypes.func,\n })\n ),\n /**\n * List of selected elements.\n */\n selectedElements: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n kind: PropTypes.string,\n position: PropTypes.number,\n isPending: PropTypes.bool,\n label: PropTypes.string,\n icon: PropTypes.elementType,\n })\n ),\n /**\n * Callback that will be triggered when an element is clicked from the elements list.\n */\n handleAddElement: PropTypes.func,\n /**\n * Function that will be used to check whether the element is visible.\n * The callback will be triggered with element info at the time of render.\n */\n isElementVisible: PropTypes.func,\n /**\n * The record that's to be rendered as first record.\n * This won't be draggable.\n */\n fixedFirstElement: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n kind: PropTypes.string,\n position: PropTypes.number,\n label: PropTypes.string,\n icon: PropTypes.node,\n actions: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n key: PropTypes.string,\n onClick: PropTypes.func,\n isVisible: PropTypes.bool,\n })\n ),\n PropTypes.func,\n ]),\n })\n ),\n PropTypes.shape({\n id: PropTypes.string,\n kind: PropTypes.string,\n position: PropTypes.number,\n label: PropTypes.string,\n icon: PropTypes.node,\n actions: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n key: PropTypes.string,\n onClick: PropTypes.func,\n isVisible: PropTypes.bool,\n })\n ),\n PropTypes.func,\n ]),\n }),\n ]),\n /**\n * The record that's to be rendered as the last record.\n * This won't be draggable.\n */\n fixedLastElement: PropTypes.shape({\n id: PropTypes.string,\n kind: PropTypes.string,\n position: PropTypes.number,\n label: PropTypes.string,\n icon: PropTypes.node,\n }),\n /**\n * List of ids of elements that cannot be dragged.\n * Some specific elements can be dragged and dropped over them.\n */\n anchoredElementIds: PropTypes.arrayOf(PropTypes.string),\n /**\n * Boolean to mention that the drag and order selected elements feature should be disabled.\n */\n isReorderDisabled: PropTypes.bool,\n /**\n * Boolean to mention that the drag and drop elements to the preview container is enabled.\n */\n isDragElementsDisabled: PropTypes.bool,\n /**\n * The callback that will be triggered when an element is clicked from the elements list.\n */\n handleSelectElement: PropTypes.func,\n /**\n * Id of the current selected element.\n */\n selectedElementId: PropTypes.string,\n /**\n * Actions to be rendered on the selected elements.\n */\n selectedElementActions: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n key: PropTypes.string,\n onClick: PropTypes.func,\n isVisible: PropTypes.bool,\n })\n ),\n PropTypes.func,\n ]),\n\n /**\n * Function that will be called when clicked on the add all elements button.\n */\n addAllElements: PropTypes.func,\n /**\n * Boolean to notate whether all elements are being added.\n */\n isAddingAllElements: PropTypes.bool,\n /**\n * Boolean to control the visibility of add all elements button.\n */\n showElementsFillButton: PropTypes.bool,\n /**\n * Boolean to notate whether an element is being added.\n */\n isAddingNewElement: PropTypes.bool,\n /**\n * Prop to customize the label of the \"Add new element\" button.\n */\n addNewElementLabel: PropTypes.string,\n /**\n * Function that will be called when clicking on add new element button. If not provided, will default to showing the elements panel.\n */\n addNewElement: PropTypes.func,\n /**\n * Boolean to disable the selected element actions.\n */\n isSelectedElementActionsDisabled: PropTypes.bool,\n /**\n * Props to be passed to the tooltip component for selected element actions.\n */\n selectedElementActionsTooltipProps: PropTypes.object,\n /**\n * Render prop called with the visible elements count. When provided, its return value is rendered\n * below the reorder description (e.g. (count) => <Typography>{t('key', { count })}</Typography>).\n */\n renderElementsCount: PropTypes.func,\n};\n\nexport default ElementsPanel;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst EmptyProperty = withT(({ t }) => (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"bg-muted text-muted-foreground flex w-full flex-col items-center justify-center gap-y-2 rounded-lg px-16 py-8\">\n <Typography\n className=\"text-center leading-normal\"\n data-testid=\"build-page-text-label\"\n variant=\"body2\"\n >\n {t(\"neetoMolecules.builderSidebar.noQuestionProperties\")}\n </Typography>\n </div>\n <div className=\"bg-muted h-40 w-full rounded-lg\" />\n <div className=\"bg-muted h-72 w-full rounded-lg\" />\n </div>\n));\n\nexport default EmptyProperty;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { ArrowDown } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst Skeleton = withT(({ t }) => (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"bg-muted h-12 w-full rounded-lg\" />\n <div className=\"bg-muted text-muted-foreground flex w-full flex-col items-center justify-center gap-y-2 rounded-lg px-16 py-8\">\n <Typography\n className=\"text-center leading-normal\"\n data-testid=\"build-page-text-label\"\n variant=\"body2\"\n >\n {t(\"neetoMolecules.builderSidebar.emptyQuestionProperties\")}\n </Typography>\n <ArrowDown />\n </div>\n <div className=\"bg-muted h-40 w-full rounded-lg\" />\n <div className=\"bg-muted h-72 w-full rounded-lg\" />\n </div>\n));\n\nexport default Skeleton;\n","import { useEffect, useState } from \"react\";\n\nimport { Button } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { X } from \"lucide-react\";\nimport useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\n\nimport EmptyProperty from \"./EmptyProperty\";\nimport Skeleton from \"./Skeleton\";\n\nconst PropertiesPanel = ({ id, children, onClose }) => {\n const { isSize } = useBreakpoints(window => ({\n largeDesktop: window.innerWidth >= 1280,\n }));\n const isLargerScreen = isSize(\"largeDesktop\");\n const [isPropertiesPanelCollapsed, setIsPropertiesPanelCollapsed] =\n useState(!isLargerScreen);\n\n useEffect(() => {\n setIsPropertiesPanelCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n useEffect(() => {\n if (!id) return;\n setIsPropertiesPanelCollapsed(false);\n }, [id]);\n\n const handleCollapsePanel = () => {\n setIsPropertiesPanelCollapsed(!isPropertiesPanelCollapsed);\n onClose?.(id);\n };\n\n return (\n <>\n {!isPropertiesPanelCollapsed && (\n <div\n className=\"fixed inset-0 z-[101] hidden bg-black/40 max-[1279px]:block\"\n onClick={handleCollapsePanel}\n />\n )}\n <div\n className={classnames(\n // z-[101] only where the panel is a fixed slide-in over a backdrop\n // (below 1280px). As an in-flow column it must not create a stacking\n // context, or portaled overlays (dropdowns/popovers at z-50) render\n // behind the panel.\n \"border-border relative h-full border-s transition-all duration-150 motion-reduce:transition-none max-[1279px]:fixed max-[1279px]:end-0 max-[1279px]:top-0 max-[1279px]:z-[101] max-[1279px]:transition-none max-[576px]:h-full\",\n // The width utilities live on the open branch so a collapsed panel is\n // truly zero-width at every breakpoint. Keeping the mobile\n // full-width utilities (max-[576px]:w-full) unconditional would let\n // them override w-0 inside their media query, leaving the collapsed\n // panel as a full-screen fixed overlay on mobile.\n isPropertiesPanelCollapsed\n ? \"w-0 max-w-0 min-w-0\"\n : \"w-[420px] min-w-[420px] max-[576px]:w-full max-[576px]:max-w-full max-[576px]:min-w-0\"\n )}\n >\n <div\n className=\"bg-background flex h-full w-full min-w-0 flex-col overflow-y-auto p-6 max-[1279px]:pt-12\"\n data-testid=\"properties-panel\"\n >\n {children ?? <Skeleton />}\n </div>\n {!isPropertiesPanelCollapsed && (\n <Button\n className=\"pointer-events-none absolute end-2 top-2 opacity-0 max-[1279px]:pointer-events-auto max-[1279px]:opacity-100\"\n icon={X}\n size=\"icon\"\n variant=\"secondary\"\n onClick={handleCollapsePanel}\n />\n )}\n </div>\n </>\n );\n};\n\nPropertiesPanel.EmptyProperty = EmptyProperty;\n\nexport default PropertiesPanel;\n"],"names":["__iconNode","createLucideIcon","PANEL_TYPES","SUMMARY","ELEMENTS","SELECTED_ELEMENTS_LIST_DROPPABLE_ID","ELEMENTS_LIST_DROPPABLE_ID","PREVIEW_CONTAINER_DROPPABLE_ID","DROPPABLE_TYPES","ELEMENT","SELECTED_ELEMENT","NoResults","withT","_ref","t","_jsx","Typography","className","weight","children","memo","Element","label","description","tooltip","Icon","icon","_ref$isCreatable","isCreatable","onClick","_ref$isDragDisabled","isDragDisabled","disabledElementTooltip","isPlaceholder","isDraggingOver","isAddingNewElement","handleClick","event","preventDefault","tooltipContent","Tooltip","content","disabled","position","_jsxs","concat","joinHyphenCase","classnames","GripVertical","size","variant","color","ElementContainer","index","element","onSelect","setVisiblePanel","isCreatableElement","value","_objectSpread","_createElement","Draggable","draggableId","key","provided","snapshot","_Fragment","ref","innerRef","draggableProps","dragHandleProps","style","isDragging","transform","noop","Section","title","elements","isDragElementsDisabled","isEmpty","map","elementIndex","SectionsContainer","filteredSections","section","Droppable","droppableId","type","TitleBar","Button","X","Body","props","_objectWithoutProperties","_excluded","ElementList","_ref$elementSections","elementSections","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","searchString","setSearchString","useMemo","query","toLowerCase","matchesSearch","_element$label$toLowe","_element$label","_element$description$","_element$description","_element$aliases","aliases","alias","includes","some","filter","assoc","isPresent","isNotEmpty","Input","autoFocus","placeholder","prefix","Search","onChange","withEventTargetValue","SelectedElement","isActive","isSelectedElementActionsDisabled","selectedElementActionsTooltipProps","handleSelectElement","_ref$isSelectable","isSelectable","_ref$errors","errors","_ref$actions","actions","_ref$isDraggable","isDraggable","rootElementRef","useRef","shouldShowDropdown","menuItems","action","mergeRight","useEffect","rootElement","current","scrollIntoView","behavior","block","error","findById","id","hyphenate","MoreDropdown","dropdownProps","isDisabled","isPending","dropdownButtonProps","e","stopPropagation","loading","tooltipProps","isLoading","showElementsFillButton","isAddingAllElements","addAllElements","addNewElement","addNewElementLabel","handleAddNewElementClick","PLURAL","Plus","iconPosition","Zap","SelectedElementsList","isReorderDisabled","isElementVisible","selectedElementId","selectedElements","fixedLastElement","fixedFirstElement","anchoredElementIds","selectedElementActions","renderElementsCount","renderSelectedElement","arguments","length","undefined","Array","isArray","checkIsVisible","_isElementVisible","visibleCount","_ref2","droppableProps","_element$id","_element$id2","isAnchoredElement","_ref3","_element$id3","ElementsPanel","_ref$selectedElements","handleAddElement","_ref$anchoredElementI","_ref$isReorderDisable","_ref$isDragElementsDi","_ref$addAllElements","_ref$isAddingAllEleme","_ref$showElementsFill","_ref$isAddingNewEleme","_ref$isSelectedElemen","_ref$selectedElementA","visiblePanel","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","_useState3","_useState4","isElementsPanelCollapsed","setIsElementsPanelCollapsed","PanelLeftClose","EmptyProperty","Skeleton","ArrowDown","PropertiesPanel","onClose","window","largeDesktop","innerWidth","isPropertiesPanelCollapsed","setIsPropertiesPanelCollapsed","handleCollapsePanel"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"Builder.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/arrow-down.mjs","../../../node_modules/lucide-react/dist/esm/icons/zap.mjs","../../../src/v2/components/Builder/constants.js","../../../src/v2/components/Builder/ElementsPanel/ElementsList/NoResults.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/Element.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/ElementContainer.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/Section.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/SectionsContainer.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/TitleBar.jsx","../../../src/v2/components/Builder/Body.jsx","../../../src/v2/components/Builder/ElementsPanel/ElementsList/index.jsx","../../../src/v2/components/Builder/ElementsPanel/SelectedElementsList/SelectedElement.jsx","../../../src/v2/components/Builder/ElementsPanel/SelectedElementsList/TitleBar.jsx","../../../src/v2/components/Builder/ElementsPanel/SelectedElementsList/index.jsx","../../../src/v2/components/Builder/ElementsPanel/index.jsx","../../../src/v2/components/Builder/PropertiesPanel/EmptyProperty.jsx","../../../src/v2/components/Builder/PropertiesPanel/Skeleton.jsx","../../../src/v2/components/Builder/PropertiesPanel/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }],\n [\"path\", { d: \"m19 12-7 7-7-7\", key: \"1idqje\" }]\n];\nconst ArrowDown = createLucideIcon(\"arrow-down\", __iconNode);\n\nexport { __iconNode, ArrowDown as default };\n//# sourceMappingURL=arrow-down.mjs.map\n","/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z\",\n key: \"1xq2db\"\n }\n ]\n];\nconst Zap = createLucideIcon(\"zap\", __iconNode);\n\nexport { __iconNode, Zap as default };\n//# sourceMappingURL=zap.mjs.map\n","export const PANEL_TYPES = { SUMMARY: \"summary\", ELEMENTS: \"elements\" };\n\nexport const SELECTED_ELEMENTS_LIST_DROPPABLE_ID =\n \"droppable-selected-element-container\";\n\nexport const ELEMENTS_LIST_DROPPABLE_ID = \"droppable-element-container\";\n\nexport const PREVIEW_CONTAINER_DROPPABLE_ID =\n \"droppable-form-preview-container\";\n\nexport const DROPPABLE_TYPES = {\n ELEMENT: \"element\",\n SELECTED_ELEMENT: \"selected_element\",\n};\n","import { memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst NoResults = withT(({ t }) => (\n <Typography\n className=\"flex h-full items-center justify-center text-base\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.builderSidebar.noElements\")}\n </Typography>\n));\n\nexport default memo(NoResults);\n","import { Tooltip, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { GripVertical } from \"lucide-react\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils/general\";\n\nconst Element = ({\n label,\n description,\n tooltip,\n icon: Icon,\n isCreatable = true,\n onClick,\n isDragDisabled = false,\n disabledElementTooltip,\n isPlaceholder,\n isDraggingOver,\n isAddingNewElement,\n}) => {\n const handleClick = event => {\n if (!isCreatable || isAddingNewElement) {\n event.preventDefault();\n\n return;\n }\n\n onClick(event);\n };\n\n const tooltipContent = isCreatable\n ? tooltip\n : disabledElementTooltip?.(label);\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={isDraggingOver || !tooltipContent}\n position=\"top\"\n >\n <div\n data-testid={`add-${joinHyphenCase(label)}-element`}\n className={classnames(\n \"border-border bg-background hover:bg-muted relative mb-2 flex items-center gap-2 rounded-lg border p-3 transition-all duration-300 ease-in-out\",\n {\n \"bg-muted cursor-not-allowed\": !isCreatable,\n \"cursor-pointer\": isCreatable,\n \"opacity-50\": isPlaceholder,\n \"h-10\": !description,\n }\n )}\n onClick={handleClick}\n >\n {!isDragDisabled && (\n <span\n className=\"absolute end-full top-1/2 me-0.5 flex-shrink-0 -translate-y-1/2 cursor-grab\"\n data-testid=\"drag-handle\"\n >\n <GripVertical\n className=\"text-muted-foreground hover:text-foreground transition-all duration-300 ease-in-out\"\n size={16}\n />\n </span>\n )}\n <div className=\"flex flex-grow items-center gap-2\">\n {Icon && (\n <Icon\n className=\"text-muted-foreground size-5\"\n data-testid=\"form-icon\"\n />\n )}\n <div className=\"flex min-w-0 flex-col\">\n <Typography className=\"leading-4\" variant=\"body2\">\n {label}\n </Typography>\n {description && (\n <Typography\n className=\"mt-0.5\"\n color=\"muted\"\n data-testid=\"element-description\"\n variant=\"body3\"\n >\n {description}\n </Typography>\n )}\n </div>\n </div>\n </div>\n </Tooltip>\n );\n};\n\nexport default Element;\n","import { Draggable } from \"@hello-pangea/dnd\";\nimport { noop } from \"neetocist\";\n\nimport Element from \"./Element\";\n\nconst ElementContainer = ({\n index,\n isDragDisabled,\n element,\n disabledElementTooltip,\n isCreatable,\n onSelect,\n isDraggingOver,\n isAddingNewElement,\n setVisiblePanel,\n}) => {\n const isCreatableElement =\n typeof isCreatable === \"function\" ? isCreatable(element.value) : true;\n\n if (isDragDisabled) {\n return (\n <Element\n {...{\n ...element,\n disabledElementTooltip,\n isAddingNewElement,\n isDragDisabled,\n setVisiblePanel,\n }}\n isCreatable={isCreatableElement}\n onClick={() => onSelect(element)}\n />\n );\n }\n\n return (\n <Draggable\n {...{ index }}\n draggableId={element.value}\n key={element.label}\n isDragDisabled={\n isDragDisabled || !isCreatableElement || isAddingNewElement\n }\n >\n {(provided, snapshot) => (\n <>\n <div\n ref={provided.innerRef}\n {...provided.draggableProps}\n {...provided.dragHandleProps}\n style={{\n ...provided.draggableProps.style,\n ...(!snapshot.isDragging && { transform: \"none\" }),\n }}\n >\n <Element\n {...{\n ...element,\n disabledElementTooltip,\n isAddingNewElement,\n isDragDisabled,\n isDraggingOver,\n setVisiblePanel,\n }}\n isCreatable={isCreatableElement}\n onClick={() => onSelect(element)}\n />\n </div>\n {snapshot.isDragging && (\n <Element\n disabledElementTooltip={null}\n {...{ ...element, isAddingNewElement, setVisiblePanel }}\n isCreatable={false}\n onClick={noop}\n />\n )}\n </>\n )}\n </Draggable>\n );\n};\n\nexport default ElementContainer;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { isEmpty } from \"ramda\";\n\nimport ElementContainer from \"./ElementContainer\";\n\nconst Section = ({\n title,\n elements,\n onSelect,\n isCreatable,\n disabledElementTooltip,\n isDragElementsDisabled: isDragDisabled,\n isDraggingOver,\n isAddingNewElement,\n setVisiblePanel,\n}) => {\n if (isEmpty(elements)) {\n return null;\n }\n\n return (\n <>\n {title && (\n <Typography\n className=\"mt-5 mb-2\"\n color=\"muted\"\n variant=\"body3\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n )}\n {elements.map(element => (\n <ElementContainer\n {...{\n disabledElementTooltip,\n element,\n isAddingNewElement,\n isCreatable,\n isDragDisabled,\n isDraggingOver,\n onSelect,\n setVisiblePanel,\n }}\n index={element.elementIndex}\n key={element.label}\n />\n ))}\n </>\n );\n};\n\nexport default Section;\n","import { Droppable } from \"@hello-pangea/dnd\";\nimport { isEmpty } from \"ramda\";\n\nimport NoResults from \"./NoResults\";\nimport Section from \"./Section\";\n\nimport { DROPPABLE_TYPES, ELEMENTS_LIST_DROPPABLE_ID } from \"../../constants\";\n\nconst SectionsContainer = ({\n isDragElementsDisabled,\n filteredSections,\n isAddingNewElement,\n onSelect,\n setVisiblePanel,\n}) => {\n if (isEmpty(filteredSections)) {\n return <NoResults />;\n }\n\n if (isDragElementsDisabled) {\n return (\n <>\n {filteredSections.map(section => (\n <Section\n {...{\n isAddingNewElement,\n isDragElementsDisabled,\n onSelect,\n setVisiblePanel,\n ...section,\n }}\n key={section.key}\n />\n ))}\n </>\n );\n }\n\n return (\n <Droppable\n droppableId={ELEMENTS_LIST_DROPPABLE_ID}\n type={DROPPABLE_TYPES.ELEMENT}\n >\n {(provided, snapshot) => (\n <div ref={provided.innerRef}>\n {filteredSections.map(section => (\n <Section\n {...{\n isAddingNewElement,\n isDragElementsDisabled,\n onSelect,\n setVisiblePanel,\n ...section,\n }}\n isDraggingOver={snapshot.isDraggingOver}\n key={section.key}\n />\n ))}\n </div>\n )}\n </Droppable>\n );\n};\n\nexport default SectionsContainer;\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { X } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport { PANEL_TYPES } from \"../../constants\";\n\nconst TitleBar = withT(({ t, setVisiblePanel }) => (\n <div\n className=\"flex items-center justify-between p-6 pb-1\"\n data-testid=\"elements-panel-title\"\n >\n <Typography\n className=\"leading-normal\"\n data-testid=\"elements-list-title\"\n variant=\"h5\"\n >\n {t(\"neetoMolecules.builderSidebar.addNewElement\")}\n </Typography>\n <Button\n data-testid=\"cancel-button\"\n icon={X}\n size=\"icon\"\n variant=\"ghost\"\n onClick={() => setVisiblePanel(PANEL_TYPES.SUMMARY)}\n />\n </div>\n));\n\nexport default TitleBar;\n","import classnames from \"classnames\";\n\nconst Body = ({ size, ...props }) => (\n <div\n {...props}\n className={classnames(\n \"min-h-0 w-full grow overflow-y-auto px-6 pt-0 pb-2\",\n size === \"small\"\n ? \"h-[calc(100%_-_4.375rem_-_2.5rem)]\"\n : \"h-[calc(100%_-_4.375rem)]\"\n )}\n />\n);\n\nexport default Body;\n","import { useMemo, useState } from \"react\";\n\nimport { Input, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Search } from \"lucide-react\";\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport { withEventTargetValue } from \"neetocommons/v2/utils/general\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SectionsContainer from \"./SectionsContainer\";\nimport TitleBar from \"./TitleBar\";\n\nimport Body from \"../../Body\";\n\nconst ElementList = ({\n setVisiblePanel,\n elementSections = [],\n onSelect,\n isDragElementsDisabled,\n isAddingNewElement,\n}) => {\n const { t } = useTranslation();\n const [searchString, setSearchString] = useState(\"\");\n\n const filteredSections = useMemo(() => {\n let elementIndex = 0;\n const query = searchString.toLowerCase();\n\n const matchesSearch = element => {\n if (!query) return true;\n\n const label = element.label?.toLowerCase() ?? \"\";\n const description = element.description?.toLowerCase() ?? \"\";\n const aliases = (element.aliases ?? []).map(alias => alias.toLowerCase());\n\n return (\n label.includes(query) ||\n description.includes(query) ||\n aliases.some(alias => alias.includes(query))\n );\n };\n\n return elementSections\n .map(section => ({\n ...section,\n elements: section.elements\n .filter(matchesSearch)\n .map(element => assoc(\"elementIndex\", elementIndex++, element)),\n }))\n .filter(section =>\n isPresent(searchString) ? isNotEmpty(section.elements) : true\n );\n }, [searchString, elementSections]);\n\n return (\n <>\n <TitleBar {...{ setVisiblePanel }} />\n <div className=\"mb-3 px-6\">\n <Typography className=\"mb-3\" color=\"muted\" variant=\"body3\">\n {t(\"neetoMolecules.builderSidebar.addNewElementDescription\")}\n </Typography>\n <Input\n autoFocus\n data-testid=\"elements-panel-search-field\"\n placeholder={t(\"neetoMolecules.builderSidebar.searchElements\")}\n prefix={<Search />}\n type=\"search\"\n value={searchString}\n onChange={withEventTargetValue(setSearchString)}\n />\n </div>\n <Body data-testid=\"elements-container\" size=\"small\">\n <SectionsContainer\n {...{\n filteredSections,\n isAddingNewElement,\n isDragElementsDisabled,\n onSelect,\n setVisiblePanel,\n }}\n />\n </Body>\n </>\n );\n};\n\nexport default ElementList;\n","import { memo, useEffect, useRef } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { GripVertical } from \"lucide-react\";\nimport { noop, findById, isNotEmpty, hyphenate, isPresent } from \"neetocist\";\nimport { mergeRight } from \"ramda\";\n\nimport MoreDropdown from \"../../../MoreDropdown\";\n\nconst SelectedElement = ({\n element,\n isActive,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n handleSelectElement,\n isSelectable = true,\n errors = [],\n actions = [],\n isDraggable = false,\n ...props\n}) => {\n const Icon = element.icon;\n const rootElementRef = useRef();\n\n const onClick = () => handleSelectElement(element);\n\n const shouldShowDropdown = isNotEmpty(actions);\n\n const menuItems =\n typeof actions === \"function\"\n ? actions(element)\n : actions.map(action =>\n mergeRight(action, {\n onClick: () => {\n action.onClick(element);\n },\n })\n );\n\n useEffect(() => {\n const rootElement = rootElementRef.current;\n\n if (\n !rootElement ||\n !isActive ||\n typeof rootElement?.scrollIntoView !== \"function\"\n ) {\n return;\n }\n rootElement.scrollIntoView({ behavior: \"smooth\", block: \"nearest\" });\n }, [isActive, rootElementRef]);\n\n const error = findById(element.id, errors);\n\n return (\n <div\n data-testid={props[\"data-testid\"]}\n ref={rootElementRef}\n className={classnames(\n \"border-border bg-background hover:bg-muted relative mb-2 flex h-10 cursor-pointer items-center gap-2 rounded-lg border py-3 ps-3 pe-1 transition-all duration-300 ease-in-out\",\n {\n \"border-primary! [outline:0.5px_solid_var(--primary)]\": isActive,\n },\n { \"bg-destructive/10 hover:bg-destructive/10\": error }\n )}\n onClick={isSelectable ? onClick : noop}\n >\n {isDraggable && (\n <span\n className=\"absolute end-full top-1/2 me-0.5 flex-shrink-0 -translate-y-1/2 cursor-grab\"\n data-testid=\"drag-handle\"\n >\n <GripVertical\n className=\"text-muted-foreground hover:text-foreground transition-all duration-300 ease-in-out\"\n size={16}\n />\n </span>\n )}\n <div\n className=\"flex flex-grow items-center gap-2 overflow-hidden\"\n data-testid=\"new-element-field\"\n >\n {Icon && (\n <div className=\"flex-shrink-0\">\n <Icon className=\"text-muted-foreground size-5\" />\n </div>\n )}\n <Typography\n className=\"truncate leading-snug\"\n data-testid={`${hyphenate(element.label, \"new-element\")}-label`}\n variant=\"body2\"\n >\n {element.label}\n </Typography>\n </div>\n {shouldShowDropdown && (\n <MoreDropdown\n {...{ menuItems }}\n dropdownProps={{ className: \"w-max\" }}\n isDisabled={element.isPending || isSelectedElementActionsDisabled}\n dropdownButtonProps={{\n onClick: e => e.stopPropagation(),\n className: \"min-h-0 flex-shrink-0\",\n \"data-testid\": `${hyphenate(element.label)}-more-dropdown`,\n loading: element.isPending,\n ...(isPresent(selectedElementActionsTooltipProps) && {\n tooltipProps: selectedElementActionsTooltipProps,\n }),\n }}\n />\n )}\n </div>\n );\n};\n\nexport default memo(SelectedElement);\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Plus, Zap } from \"lucide-react\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PANEL_TYPES } from \"../../constants\";\n\nconst TitleBar = ({\n setVisiblePanel,\n isLoading,\n showElementsFillButton,\n isAddingAllElements,\n addAllElements,\n isAddingNewElement,\n addNewElement,\n addNewElementLabel,\n}) => {\n const { t } = useTranslation();\n\n const handleAddNewElementClick = () => {\n if (typeof addNewElement === \"function\") addNewElement();\n else setVisiblePanel(PANEL_TYPES.ELEMENTS);\n };\n\n return (\n <div\n className=\"flex items-center justify-between p-6 pb-1\"\n data-testid=\"selected-elements-title\"\n >\n <Typography\n className=\"leading-normal\"\n data-testid=\"elements-title\"\n variant=\"h5\"\n >\n {t(\"neetoMolecules.builderSidebar.element\", PLURAL)}\n </Typography>\n <div className=\"flex items-center justify-between gap-x-2\">\n <Button\n data-testid=\"add-element-button\"\n disabled={isLoading}\n icon={Plus}\n iconPosition=\"left\"\n loading={isAddingNewElement}\n size=\"sm\"\n variant=\"link\"\n label={\n addNewElementLabel ||\n t(\"neetoMolecules.builderSidebar.addNewElement\")\n }\n onClick={handleAddNewElementClick}\n />\n {showElementsFillButton && (\n <Button\n data-testid=\"add-all-elements-button\"\n disabled={isAddingAllElements}\n icon={Zap}\n loading={isAddingAllElements}\n size=\"icon-sm\"\n variant=\"secondary\"\n tooltipProps={{\n content: t(\"neetoMolecules.builderSidebar.addAllElements\"),\n }}\n onClick={addAllElements}\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default TitleBar;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { Draggable, Droppable } from \"@hello-pangea/dnd\";\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils/general\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SelectedElement from \"./SelectedElement\";\nimport TitleBar from \"./TitleBar\";\n\nimport Body from \"../../Body\";\nimport {\n DROPPABLE_TYPES,\n SELECTED_ELEMENTS_LIST_DROPPABLE_ID,\n} from \"../../constants\";\n\nconst SelectedElementsList = ({\n handleSelectElement,\n isReorderDisabled,\n isElementVisible,\n selectedElementId,\n selectedElements,\n setVisiblePanel,\n fixedLastElement,\n fixedFirstElement,\n anchoredElementIds,\n selectedElementActions,\n addAllElements,\n isAddingAllElements,\n showElementsFillButton,\n isAddingNewElement,\n addNewElement,\n addNewElementLabel,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n renderElementsCount,\n}) => {\n const renderSelectedElement = (element, index = 0) => (\n <SelectedElement\n {...{\n element,\n handleSelectElement,\n index,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n }}\n isSelectable\n actions={element.actions}\n isActive={selectedElementId === element.id}\n key={element.id || index}\n data-testid={`welcome-element${\n Array.isArray(fixedFirstElement) ? `-${index + 1}` : \"\"\n }`}\n />\n );\n\n const { t } = useTranslation();\n\n const checkIsVisible = element => isElementVisible?.(element) ?? true;\n const visibleCount =\n typeof renderElementsCount === \"function\"\n ? (selectedElements ?? []).filter(checkIsVisible).length\n : 0;\n\n return (\n <>\n <TitleBar\n {...{\n addAllElements,\n addNewElement,\n addNewElementLabel,\n isAddingAllElements,\n isAddingNewElement,\n setVisiblePanel,\n showElementsFillButton,\n }}\n />\n <Body data-testid=\"selected-elements-container\">\n <Typography className=\"mb-3\" color=\"muted\" variant=\"body3\">\n {t(\"neetoMolecules.builderSidebar.elementsReorderDescription\")}\n </Typography>\n {typeof renderElementsCount === \"function\" &&\n renderElementsCount(visibleCount)}\n {Array.isArray(fixedFirstElement)\n ? isNotEmpty(fixedFirstElement) &&\n fixedFirstElement.map(renderSelectedElement)\n : isPresent(fixedFirstElement) &&\n renderSelectedElement(fixedFirstElement)}\n <Droppable\n droppableId={SELECTED_ELEMENTS_LIST_DROPPABLE_ID}\n type={DROPPABLE_TYPES.SELECTED_ELEMENT}\n >\n {({ innerRef, droppableProps, placeholder }) => (\n <div\n ref={innerRef}\n {...droppableProps}\n data-testid=\"selected-elements-droppable-container\"\n >\n {selectedElements\n ?.filter(checkIsVisible)\n .map((element, index) => {\n const isAnchoredElement = anchoredElementIds.includes(\n element.id\n );\n\n const isDragDisabled = isReorderDisabled || isAnchoredElement;\n\n const key =\n element.id ?? `element-${joinHyphenCase(element.label)}`;\n\n return (\n <Draggable\n {...{ index, isDragDisabled }}\n draggableId={element.id ?? `element-${index}`}\n key={key}\n >\n {({ innerRef, draggableProps, dragHandleProps }) => (\n <div\n ref={innerRef}\n {...draggableProps}\n {...dragHandleProps}\n >\n <SelectedElement\n {...{\n element,\n handleSelectElement,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n }}\n isSelectable\n actions={selectedElementActions}\n isActive={selectedElementId === element.id}\n isDraggable={!isDragDisabled}\n key={element.id ?? index}\n />\n </div>\n )}\n </Draggable>\n );\n })}\n {placeholder}\n </div>\n )}\n </Droppable>\n {isPresent(fixedLastElement) && (\n <SelectedElement\n {...{\n handleSelectElement,\n isSelectedElementActionsDisabled,\n selectedElementActionsTooltipProps,\n }}\n isSelectable\n actions={fixedLastElement.actions}\n data-testid=\"submit-button-element\"\n element={fixedLastElement}\n isActive={selectedElementId === fixedLastElement.id}\n />\n )}\n </Body>\n </>\n );\n};\n\nexport default SelectedElementsList;\n","import { useEffect, useState } from \"react\";\n\nimport { Button } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { PanelLeftClose } from \"lucide-react\";\nimport { noop } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\n\nimport ElementList from \"./ElementsList\";\nimport SelectedElementsList from \"./SelectedElementsList\";\n\nimport { PANEL_TYPES } from \"../constants\";\n\nconst ElementsPanel = ({\n elementSections,\n selectedElements = [],\n handleAddElement,\n isElementVisible,\n fixedFirstElement,\n fixedLastElement,\n anchoredElementIds = [],\n isReorderDisabled = true,\n isDragElementsDisabled = true,\n handleSelectElement,\n selectedElementId,\n selectedElementActions,\n addAllElements = noop,\n isAddingAllElements = false,\n showElementsFillButton = false,\n isAddingNewElement = false,\n addNewElement,\n addNewElementLabel,\n isSelectedElementActionsDisabled = false,\n selectedElementActionsTooltipProps = {},\n renderElementsCount,\n}) => {\n const [visiblePanel, setVisiblePanel] = useState(PANEL_TYPES.SUMMARY);\n const { isSize } = useBreakpoints();\n const isLargerScreen = !isSize(\"mobile\");\n\n const [isElementsPanelCollapsed, setIsElementsPanelCollapsed] =\n useState(!isLargerScreen);\n\n useEffect(() => {\n setIsElementsPanelCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n return (\n <>\n {!isElementsPanelCollapsed && (\n <div\n className=\"fixed inset-0 z-50 hidden bg-black/40 max-[767px]:block\"\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n )}\n <div\n className={classnames(\n // On mobile the panel is a fixed slide-in over a backdrop; at larger\n // widths it's an in-flow column with no stacking context. Pin the\n // mobile overlay to z-50 (the shared overlay tier), NOT above it:\n // Radix portals (dropdowns/popovers) also render at z-50 and are\n // appended later in the DOM, so they must win. A higher value (even\n // z-[51]) makes the panel swallow every dropdown anchored inside it.\n \"relative h-full transition-all duration-150 motion-reduce:transition-none max-[767px]:fixed max-[767px]:start-0 max-[767px]:top-0 max-[767px]:z-50 max-[767px]:transition-none max-[576px]:h-full\",\n // The width utilities live on the open branch so a collapsed panel is\n // truly zero-width at every breakpoint. Keeping the mobile\n // full-width utilities (max-[576px]:w-full) unconditional would let\n // them override w-0 inside their media query, leaving the collapsed\n // panel as a full-screen fixed overlay on mobile.\n isElementsPanelCollapsed\n ? \"w-0 max-w-0 min-w-0\"\n : \"w-[360px] min-w-[360px] max-[576px]:w-full max-[576px]:max-w-full max-[576px]:min-w-0 min-[768px]:max-[1279px]:w-[288px] min-[768px]:max-[1279px]:min-w-[288px]\"\n )}\n >\n <div className=\"h-full w-full overflow-hidden\">\n <div\n className=\"border-border bg-background flex h-full w-[360px] min-w-[360px] flex-col border-e max-[576px]:w-full max-[576px]:min-w-0 max-[576px]:pt-6 min-[768px]:max-[1279px]:w-[288px] min-[768px]:max-[1279px]:min-w-[288px]\"\n onClick={event => event.stopPropagation()}\n >\n {visiblePanel === PANEL_TYPES.SUMMARY ? (\n <SelectedElementsList\n {...{\n addAllElements,\n addNewElement,\n addNewElementLabel,\n anchoredElementIds,\n fixedFirstElement,\n fixedLastElement,\n handleSelectElement,\n isAddingAllElements,\n isAddingNewElement,\n isElementVisible,\n isReorderDisabled,\n isSelectedElementActionsDisabled,\n renderElementsCount,\n selectedElementActions,\n selectedElementActionsTooltipProps,\n selectedElementId,\n selectedElements,\n setVisiblePanel,\n showElementsFillButton,\n }}\n />\n ) : (\n <ElementList\n {...{\n elementSections,\n isAddingNewElement,\n isDragElementsDisabled,\n setVisiblePanel,\n }}\n onSelect={handleAddElement}\n />\n )}\n </div>\n </div>\n <Button\n icon={PanelLeftClose}\n size=\"icon\"\n variant=\"secondary\"\n className={classnames(\n \"absolute start-[calc(100%_+_8px)] top-2 shrink-0 transition-[color] duration-300 motion-reduce:transition-none max-[576px]:start-auto max-[576px]:end-6 min-[1024px]:pointer-events-none min-[1024px]:opacity-0\",\n isElementsPanelCollapsed\n ? \"-scale-x-100 max-[767px]:top-[109px] max-[576px]:start-2 max-[576px]:end-auto rtl:scale-x-100\"\n : \"rtl:-scale-x-100\"\n )}\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nElementsPanel.propTypes = {\n /**\n * List of supported elements to be rendered in the ElementsList panel.\n */\n elementSections: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string,\n elements: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n icon: PropTypes.elementType,\n /**\n * Optional inline description rendered below the element label.\n * Also considered by the elements-panel search filter.\n */\n description: PropTypes.string,\n /**\n * Optional hover tooltip shown on the element row when it is\n * creatable. Use this when the helper text should not affect\n * card height (descriptions render as a subtitle and can vary\n * row heights across element types).\n */\n tooltip: PropTypes.string,\n /**\n * Optional search aliases. The elements-panel search filter\n * matches these in addition to the label and description, so\n * legacy terms (e.g. \"paragraph\" for an element now called\n * \"Instructions\") continue to surface the correct element.\n */\n aliases: PropTypes.arrayOf(PropTypes.string),\n })\n ),\n key: PropTypes.string,\n isCreatable: PropTypes.func,\n disabledElementTooltip: PropTypes.func,\n })\n ),\n /**\n * List of selected elements.\n */\n selectedElements: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n kind: PropTypes.string,\n position: PropTypes.number,\n isPending: PropTypes.bool,\n label: PropTypes.string,\n icon: PropTypes.elementType,\n })\n ),\n /**\n * Callback that will be triggered when an element is clicked from the elements list.\n */\n handleAddElement: PropTypes.func,\n /**\n * Function that will be used to check whether the element is visible.\n * The callback will be triggered with element info at the time of render.\n */\n isElementVisible: PropTypes.func,\n /**\n * The record that's to be rendered as first record.\n * This won't be draggable.\n */\n fixedFirstElement: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n kind: PropTypes.string,\n position: PropTypes.number,\n label: PropTypes.string,\n icon: PropTypes.node,\n actions: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n key: PropTypes.string,\n onClick: PropTypes.func,\n isVisible: PropTypes.bool,\n })\n ),\n PropTypes.func,\n ]),\n })\n ),\n PropTypes.shape({\n id: PropTypes.string,\n kind: PropTypes.string,\n position: PropTypes.number,\n label: PropTypes.string,\n icon: PropTypes.node,\n actions: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n key: PropTypes.string,\n onClick: PropTypes.func,\n isVisible: PropTypes.bool,\n })\n ),\n PropTypes.func,\n ]),\n }),\n ]),\n /**\n * The record that's to be rendered as the last record.\n * This won't be draggable.\n */\n fixedLastElement: PropTypes.shape({\n id: PropTypes.string,\n kind: PropTypes.string,\n position: PropTypes.number,\n label: PropTypes.string,\n icon: PropTypes.node,\n }),\n /**\n * List of ids of elements that cannot be dragged.\n * Some specific elements can be dragged and dropped over them.\n */\n anchoredElementIds: PropTypes.arrayOf(PropTypes.string),\n /**\n * Boolean to mention that the drag and order selected elements feature should be disabled.\n */\n isReorderDisabled: PropTypes.bool,\n /**\n * Boolean to mention that the drag and drop elements to the preview container is enabled.\n */\n isDragElementsDisabled: PropTypes.bool,\n /**\n * The callback that will be triggered when an element is clicked from the elements list.\n */\n handleSelectElement: PropTypes.func,\n /**\n * Id of the current selected element.\n */\n selectedElementId: PropTypes.string,\n /**\n * Actions to be rendered on the selected elements.\n */\n selectedElementActions: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n key: PropTypes.string,\n onClick: PropTypes.func,\n isVisible: PropTypes.bool,\n })\n ),\n PropTypes.func,\n ]),\n\n /**\n * Function that will be called when clicked on the add all elements button.\n */\n addAllElements: PropTypes.func,\n /**\n * Boolean to notate whether all elements are being added.\n */\n isAddingAllElements: PropTypes.bool,\n /**\n * Boolean to control the visibility of add all elements button.\n */\n showElementsFillButton: PropTypes.bool,\n /**\n * Boolean to notate whether an element is being added.\n */\n isAddingNewElement: PropTypes.bool,\n /**\n * Prop to customize the label of the \"Add new element\" button.\n */\n addNewElementLabel: PropTypes.string,\n /**\n * Function that will be called when clicking on add new element button. If not provided, will default to showing the elements panel.\n */\n addNewElement: PropTypes.func,\n /**\n * Boolean to disable the selected element actions.\n */\n isSelectedElementActionsDisabled: PropTypes.bool,\n /**\n * Props to be passed to the tooltip component for selected element actions.\n */\n selectedElementActionsTooltipProps: PropTypes.object,\n /**\n * Render prop called with the visible elements count. When provided, its return value is rendered\n * below the reorder description (e.g. (count) => <Typography>{t('key', { count })}</Typography>).\n */\n renderElementsCount: PropTypes.func,\n};\n\nexport default ElementsPanel;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst EmptyProperty = withT(({ t }) => (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"bg-muted text-muted-foreground flex w-full flex-col items-center justify-center gap-y-2 rounded-lg px-16 py-8\">\n <Typography\n className=\"text-center leading-normal\"\n data-testid=\"build-page-text-label\"\n variant=\"body2\"\n >\n {t(\"neetoMolecules.builderSidebar.noQuestionProperties\")}\n </Typography>\n </div>\n <div className=\"bg-muted h-40 w-full rounded-lg\" />\n <div className=\"bg-muted h-72 w-full rounded-lg\" />\n </div>\n));\n\nexport default EmptyProperty;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { ArrowDown } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst Skeleton = withT(({ t }) => (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"bg-muted h-12 w-full rounded-lg\" />\n <div className=\"bg-muted text-muted-foreground flex w-full flex-col items-center justify-center gap-y-2 rounded-lg px-16 py-8\">\n <Typography\n className=\"text-center leading-normal\"\n data-testid=\"build-page-text-label\"\n variant=\"body2\"\n >\n {t(\"neetoMolecules.builderSidebar.emptyQuestionProperties\")}\n </Typography>\n <ArrowDown />\n </div>\n <div className=\"bg-muted h-40 w-full rounded-lg\" />\n <div className=\"bg-muted h-72 w-full rounded-lg\" />\n </div>\n));\n\nexport default Skeleton;\n","import { useEffect, useState } from \"react\";\n\nimport { Button } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { X } from \"lucide-react\";\nimport useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\n\nimport EmptyProperty from \"./EmptyProperty\";\nimport Skeleton from \"./Skeleton\";\n\nconst PropertiesPanel = ({ id, children, onClose }) => {\n const { isSize } = useBreakpoints(window => ({\n largeDesktop: window.innerWidth >= 1280,\n }));\n const isLargerScreen = isSize(\"largeDesktop\");\n const [isPropertiesPanelCollapsed, setIsPropertiesPanelCollapsed] =\n useState(!isLargerScreen);\n\n useEffect(() => {\n setIsPropertiesPanelCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n useEffect(() => {\n if (!id) return;\n setIsPropertiesPanelCollapsed(false);\n }, [id]);\n\n const handleCollapsePanel = () => {\n setIsPropertiesPanelCollapsed(!isPropertiesPanelCollapsed);\n onClose?.(id);\n };\n\n return (\n <>\n {!isPropertiesPanelCollapsed && (\n <div\n className=\"fixed inset-0 z-50 hidden bg-black/40 max-[1279px]:block\"\n onClick={handleCollapsePanel}\n />\n )}\n <div\n className={classnames(\n // Below 1280px the panel is a fixed slide-in over a backdrop; above\n // it it's an in-flow column with no stacking context. Pin the mobile\n // overlay to z-50 (the shared overlay tier), NOT above it: Radix\n // portals (dropdowns/popovers) also render at z-50 and are appended\n // later in the DOM, so they must win. A higher value (even z-[51])\n // makes the panel swallow every dropdown anchored inside it.\n \"border-border relative h-full border-s transition-all duration-150 motion-reduce:transition-none max-[1279px]:fixed max-[1279px]:end-0 max-[1279px]:top-0 max-[1279px]:z-50 max-[1279px]:transition-none max-[576px]:h-full\",\n // The width utilities live on the open branch so a collapsed panel is\n // truly zero-width at every breakpoint. Keeping the mobile\n // full-width utilities (max-[576px]:w-full) unconditional would let\n // them override w-0 inside their media query, leaving the collapsed\n // panel as a full-screen fixed overlay on mobile.\n isPropertiesPanelCollapsed\n ? \"w-0 max-w-0 min-w-0\"\n : \"w-[420px] min-w-[420px] max-[576px]:w-full max-[576px]:max-w-full max-[576px]:min-w-0\"\n )}\n >\n <div\n className=\"bg-background flex h-full w-full min-w-0 flex-col overflow-y-auto p-6 max-[1279px]:pt-12\"\n data-testid=\"properties-panel\"\n >\n {children ?? <Skeleton />}\n </div>\n {!isPropertiesPanelCollapsed && (\n <Button\n className=\"pointer-events-none absolute end-2 top-2 opacity-0 max-[1279px]:pointer-events-auto max-[1279px]:opacity-100\"\n icon={X}\n size=\"icon\"\n variant=\"secondary\"\n onClick={handleCollapsePanel}\n />\n )}\n </div>\n </>\n );\n};\n\nPropertiesPanel.EmptyProperty = EmptyProperty;\n\nexport default PropertiesPanel;\n"],"names":["__iconNode","createLucideIcon","PANEL_TYPES","SUMMARY","ELEMENTS","SELECTED_ELEMENTS_LIST_DROPPABLE_ID","ELEMENTS_LIST_DROPPABLE_ID","PREVIEW_CONTAINER_DROPPABLE_ID","DROPPABLE_TYPES","ELEMENT","SELECTED_ELEMENT","NoResults","withT","_ref","t","_jsx","Typography","className","weight","children","memo","Element","label","description","tooltip","Icon","icon","_ref$isCreatable","isCreatable","onClick","_ref$isDragDisabled","isDragDisabled","disabledElementTooltip","isPlaceholder","isDraggingOver","isAddingNewElement","handleClick","event","preventDefault","tooltipContent","Tooltip","content","disabled","position","_jsxs","concat","joinHyphenCase","classnames","GripVertical","size","variant","color","ElementContainer","index","element","onSelect","setVisiblePanel","isCreatableElement","value","_objectSpread","_createElement","Draggable","draggableId","key","provided","snapshot","_Fragment","ref","innerRef","draggableProps","dragHandleProps","style","isDragging","transform","noop","Section","title","elements","isDragElementsDisabled","isEmpty","map","elementIndex","SectionsContainer","filteredSections","section","Droppable","droppableId","type","TitleBar","Button","X","Body","props","_objectWithoutProperties","_excluded","ElementList","_ref$elementSections","elementSections","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","searchString","setSearchString","useMemo","query","toLowerCase","matchesSearch","_element$label$toLowe","_element$label","_element$description$","_element$description","_element$aliases","aliases","alias","includes","some","filter","assoc","isPresent","isNotEmpty","Input","autoFocus","placeholder","prefix","Search","onChange","withEventTargetValue","SelectedElement","isActive","isSelectedElementActionsDisabled","selectedElementActionsTooltipProps","handleSelectElement","_ref$isSelectable","isSelectable","_ref$errors","errors","_ref$actions","actions","_ref$isDraggable","isDraggable","rootElementRef","useRef","shouldShowDropdown","menuItems","action","mergeRight","useEffect","rootElement","current","scrollIntoView","behavior","block","error","findById","id","hyphenate","MoreDropdown","dropdownProps","isDisabled","isPending","dropdownButtonProps","e","stopPropagation","loading","tooltipProps","isLoading","showElementsFillButton","isAddingAllElements","addAllElements","addNewElement","addNewElementLabel","handleAddNewElementClick","PLURAL","Plus","iconPosition","Zap","SelectedElementsList","isReorderDisabled","isElementVisible","selectedElementId","selectedElements","fixedLastElement","fixedFirstElement","anchoredElementIds","selectedElementActions","renderElementsCount","renderSelectedElement","arguments","length","undefined","Array","isArray","checkIsVisible","_isElementVisible","visibleCount","_ref2","droppableProps","_element$id","_element$id2","isAnchoredElement","_ref3","_element$id3","ElementsPanel","_ref$selectedElements","handleAddElement","_ref$anchoredElementI","_ref$isReorderDisable","_ref$isDragElementsDi","_ref$addAllElements","_ref$isAddingAllEleme","_ref$showElementsFill","_ref$isAddingNewEleme","_ref$isSelectedElemen","_ref$selectedElementA","visiblePanel","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","_useState3","_useState4","isElementsPanelCollapsed","setIsElementsPanelCollapsed","PanelLeftClose","EmptyProperty","Skeleton","ArrowDown","PropertiesPanel","onClose","window","largeDesktop","innerWidth","isPropertiesPanelCollapsed","setIsPropertiesPanelCollapsed","handleCollapsePanel"],"mappings":"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","x_google_ignoreList":[0,1]}
|