@bigbinary/neeto-molecules 4.1.18 → 4.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/Builder.js +1 -1
  2. package/dist/CalendarView.js +1 -1
  3. package/dist/{Columns-D51hN86M.js → Columns-6JwGF3TU.js} +2 -2
  4. package/dist/{Columns-D51hN86M.js.map → Columns-6JwGF3TU.js.map} +1 -1
  5. package/dist/Columns.js +1 -1
  6. package/dist/FloatingActionMenu.js +1 -1
  7. package/dist/FloatingActionMenu.js.map +1 -1
  8. package/dist/IpRestriction.js +47 -47
  9. package/dist/IpRestriction.js.map +1 -1
  10. package/dist/KeyboardShortcuts.js +1 -1
  11. package/dist/KeyboardShortcuts.js.map +1 -1
  12. package/dist/Onboarding.js +1 -236
  13. package/dist/Onboarding.js.map +1 -1
  14. package/dist/OptionFields.js +10 -5
  15. package/dist/OptionFields.js.map +1 -1
  16. package/dist/PhoneNumber.js +4 -4
  17. package/dist/PhoneNumber.js.map +1 -1
  18. package/dist/SendToFields.js +1 -1
  19. package/dist/SessionEnvironment.js +1 -1
  20. package/dist/Sidebar.js +1 -1
  21. package/dist/SubHeader.js +1 -1
  22. package/dist/Taxonomy.js +1 -1
  23. package/dist/cjs/BrowserSupport.js +14 -14
  24. package/dist/cjs/BrowserSupport.js.map +1 -1
  25. package/dist/cjs/Builder.js +8 -8
  26. package/dist/cjs/Builder.js.map +1 -1
  27. package/dist/cjs/Engagements.js +3 -3
  28. package/dist/cjs/Engagements.js.map +1 -1
  29. package/dist/cjs/FloatingActionMenu.js +4 -4
  30. package/dist/cjs/FloatingActionMenu.js.map +1 -1
  31. package/dist/cjs/IconPicker.js +3 -3
  32. package/dist/cjs/IconPicker.js.map +1 -1
  33. package/dist/cjs/Insights.js +24 -24
  34. package/dist/cjs/Insights.js.map +1 -1
  35. package/dist/cjs/IpRestriction.js +52 -52
  36. package/dist/cjs/IpRestriction.js.map +1 -1
  37. package/dist/cjs/KeyboardShortcuts.js +8 -8
  38. package/dist/cjs/KeyboardShortcuts.js.map +1 -1
  39. package/dist/cjs/MadeWith.js +3 -3
  40. package/dist/cjs/MadeWith.js.map +1 -1
  41. package/dist/cjs/NeetoWidget.js +6 -6
  42. package/dist/cjs/NeetoWidget.js.map +1 -1
  43. package/dist/cjs/Onboarding.js +1 -236
  44. package/dist/cjs/Onboarding.js.map +1 -1
  45. package/dist/cjs/OptionFields.js +10 -5
  46. package/dist/cjs/OptionFields.js.map +1 -1
  47. package/dist/cjs/PhoneNumber.js +3 -3
  48. package/dist/cjs/PhoneNumber.js.map +1 -1
  49. package/dist/cjs/Schedule.js +6 -6
  50. package/dist/cjs/Schedule.js.map +1 -1
  51. package/dist/cjs/SendToFields.js +4 -4
  52. package/dist/cjs/SendToFields.js.map +1 -1
  53. package/dist/cjs/SessionEnvironment.js +8 -8
  54. package/dist/cjs/SessionEnvironment.js.map +1 -1
  55. package/dist/cjs/Settings.js +6 -6
  56. package/dist/cjs/Settings.js.map +1 -1
  57. package/dist/cjs/Sidebar.js +3 -3
  58. package/dist/cjs/Sidebar.js.map +1 -1
  59. package/dist/cjs/StatusDropdown.js +7 -7
  60. package/dist/cjs/StatusDropdown.js.map +1 -1
  61. package/dist/cjs/{phone-number-CKeWRcTL.js → phone-number-ycxkC0mm.js} +10 -10
  62. package/dist/cjs/{phone-number-CKeWRcTL.js.map → phone-number-ycxkC0mm.js.map} +1 -1
  63. package/dist/{phone-number-HpVGHffA.js → phone-number--BBsxLSh.js} +2 -2
  64. package/dist/{phone-number-HpVGHffA.js.map → phone-number--BBsxLSh.js.map} +1 -1
  65. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"Builder.js","sources":["../../src/components/Builder/constants.js","../../src/components/Builder/Body.jsx","../../src/components/Builder/ElementsPanel/ElementsList/NoResults.jsx","../../src/components/Builder/ElementsPanel/ElementsList/Element.jsx","../../src/components/Builder/ElementsPanel/ElementsList/ElementContainer.jsx","../../src/components/Builder/ElementsPanel/ElementsList/Section.jsx","../../src/components/Builder/ElementsPanel/ElementsList/SectionsContainer.jsx","../../src/components/Builder/ElementsPanel/ElementsList/TitleBar.jsx","../../src/components/Builder/ElementsPanel/ElementsList/index.jsx","../../src/components/Builder/ElementsPanel/SelectedElementsList/SelectedElement.jsx","../../src/components/Builder/ElementsPanel/SelectedElementsList/TitleBar.jsx","../../src/components/Builder/ElementsPanel/SelectedElementsList/index.jsx","../../src/components/Builder/ElementsPanel/index.jsx","../../src/components/Builder/PropertiesPanel/EmptyProperty.jsx","../../src/components/Builder/PropertiesPanel/Skeleton.jsx","../../src/components/Builder/PropertiesPanel/index.jsx"],"sourcesContent":["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 classnames from \"classnames\";\n\nimport \"./styles.scss\";\n\nconst Body = ({ size, ...props }) => (\n <div\n {...props}\n className={classnames(\n \"neeto-molecules-builder-questions-list-panel__scroll\",\n {\n \"neeto-molecules-builder-questions-list-panel__scroll--small\":\n size === \"small\",\n }\n )}\n />\n);\n\nexport default Body;\n","import { memo } from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport { Typography } from \"neetoui\";\n\nconst NoResults = withT(({ t }) => (\n <Typography\n className=\"neeto-ui-text-gray-800 text-md flex h-full items-center justify-center\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.builderSidebar.noElements\")}\n </Typography>\n));\n\nexport default memo(NoResults);\n","import classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Drag } from \"neetoicons\";\nimport { Tooltip, Typography } from \"neetoui\";\n\nconst Element = ({\n label,\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 return (\n <Tooltip\n content={disabledElementTooltip?.(label)}\n disabled={!disabledElementTooltip || isCreatable || isDraggingOver}\n position=\"top\"\n touch={[\"hold\", 500]}\n >\n <div\n data-testid={`add-${joinHyphenCase(label)}-element`}\n className={classnames(\n \"neeto-ui-border-gray-400 neeto-ui-bg-white hover:neeto-ui-bg-gray-200 neeto-ui-rounded-lg relative mb-2 flex h-10 items-center gap-2 border p-3 transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-bg-gray-300 cursor-not-allowed\": !isCreatable,\n \"cursor-pointer\": isCreatable,\n \"opacity-50\": isPlaceholder,\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 <Drag size={16} />\n </span>\n )}\n <div className=\"flex flex-grow items-center gap-2\">\n {Icon && <Icon data-testid=\"form-icon\" />}\n <Typography className=\"leading-4\" style=\"body2\">\n {label}\n </Typography>\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 = isCreatable(element.value);\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 \"neetoui\";\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 && <Typography className=\"mb-3 mt-1\">{title}</Typography>}\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 { withT } from \"neetocommons/react-utils\";\nimport { Close } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\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 data-testid=\"elements-list-title\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.builderSidebar.addNewElement\")}\n </Typography>\n <Button\n data-testid=\"cancel-button\"\n icon={Close}\n size=\"medium\"\n style=\"text\"\n onClick={() => setVisiblePanel(PANEL_TYPES.SUMMARY)}\n />\n </div>\n));\n\nexport default TitleBar;\n","import { useMemo, useState } from \"react\";\n\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Search } from \"neetoicons\";\nimport { Input, Typography } from \"neetoui\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Body from \"components/Builder/Body\";\n\nimport SectionsContainer from \"./SectionsContainer\";\nimport TitleBar from \"./TitleBar\";\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\n return elementSections\n .map(section => ({\n ...section,\n elements: section.elements\n .filter(element =>\n element.label.toLowerCase().includes(searchString.toLowerCase())\n )\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-1 px-6\">\n <Typography className=\"mb-3\" style=\"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 classnames from \"classnames\";\nimport { noop, findById, isNotEmpty, hyphenate, isPresent } from \"neetocist\";\nimport { Reorder } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { mergeRight } from \"ramda\";\n\nimport MoreDropdown from \"components/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 \"neeto-ui-border-gray-400 neeto-ui-bg-white hover:neeto-ui-bg-gray-200 neeto-ui-rounded-lg relative mb-2 flex h-10 cursor-pointer items-center gap-2 border py-3 pe-3 ps-4 transition-all duration-300 ease-in-out\",\n { \"neeto-molecules-builder-element--active\": isActive },\n { \"hover:neeto-ui-bg-error-100 neeto-ui-bg-error-100\": 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 <Reorder size={16} />\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 />\n </div>\n )}\n <Typography\n className=\"truncate leading-snug\"\n data-testid={`${hyphenate(element.label, \"new-element\")}-label`}\n style=\"body2\"\n >\n {element.label}\n </Typography>\n </div>\n {shouldShowDropdown && (\n <MoreDropdown\n {...{ menuItems }}\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 { PLURAL } from \"neetocommons/constants\";\nimport { Flash, Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\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 data-testid=\"elements-title\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\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=\"small\"\n style=\"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={Flash}\n loading={isAddingAllElements}\n size=\"small\"\n style=\"secondary\"\n tooltipProps={{\n content: t(\"neetoMolecules.builderSidebar.addAllElements\"),\n touch: [\"hold\", 500],\n }}\n onClick={addAllElements}\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default TitleBar;\n","import { Draggable, Droppable } from \"@hello-pangea/dnd\";\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Body from \"components/Builder/Body\";\n\nimport SelectedElement from \"./SelectedElement\";\nimport TitleBar from \"./TitleBar\";\n\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}) => {\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 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\" style=\"body3\">\n {t(\"neetoMolecules.builderSidebar.elementsReorderDescription\")}\n </Typography>\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?.map((element, index) => {\n const isVisible = isElementVisible?.(element) ?? true;\n\n if (!isVisible) return null;\n\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 classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport { Collapse } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport ElementList from \"./ElementsList\";\nimport SelectedElementsList from \"./SelectedElementsList\";\n\nimport { PANEL_TYPES } from \"../constants\";\nimport \"../styles.scss\";\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}) => {\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=\"neeto-molecules-builder-panel__backdrop\"\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n )}\n <div\n className={classnames(\n \"neeto-molecules-builder-elements-list-panel__wrapper\",\n {\n \"neeto-molecules-builder-elements-list-panel__wrapper--collapsed\":\n isElementsPanelCollapsed,\n }\n )}\n >\n <div className=\"neeto-molecules-builder-elements-list-panel__container\">\n <div\n className={classnames(\n \"neeto-molecules-builder-elements-list-panel\",\n {\n \"neeto-ui-bg-white\": visiblePanel === PANEL_TYPES.SUMMARY,\n \"neeto-ui-bg-gray-50\": visiblePanel !== PANEL_TYPES.SUMMARY,\n }\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 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 className=\"neeto-molecules-builder-elements-list-panel__toggler\"\n icon={Collapse}\n style=\"secondary\"\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 ),\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\nexport default ElementsPanel;\n","import withT from \"neetocommons/react-utils/withT\";\nimport { Typography } from \"neetoui\";\n\nconst EmptyProperty = withT(({ t }) => (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-lg flex w-full flex-col items-center justify-center gap-y-2 px-16 py-8\">\n <Typography\n className=\"text-center\"\n data-testid=\"build-page-text-label\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.builderSidebar.noQuestionProperties\")}\n </Typography>\n </div>\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-40 w-full\" />\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-72 w-full\" />\n </div>\n));\n\nexport default EmptyProperty;\n","import withT from \"neetocommons/react-utils/withT\";\nimport { DownArrow } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nconst Skeleton = withT(({ t }) => (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-12 w-full\" />\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-lg flex w-full flex-col items-center justify-center gap-y-2 px-16 py-8\">\n <Typography\n className=\"text-center\"\n data-testid=\"build-page-text-label\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.builderSidebar.emptyQuestionProperties\")}\n </Typography>\n <DownArrow />\n </div>\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-40 w-full\" />\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-72 w-full\" />\n </div>\n));\n\nexport default Skeleton;\n","import { useEffect, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport { Close } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nimport EmptyProperty from \"./EmptyProperty\";\nimport Skeleton from \"./Skeleton\";\n\nimport \"../styles.scss\";\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=\"neeto-molecules-builder-panel__backdrop neeto-molecules-builder-panel__backdrop--extended\"\n onClick={handleCollapsePanel}\n />\n )}\n <div\n className={classnames(\n \"neeto-molecules-builder-element-properties-panel__wrapper\",\n {\n \"neeto-molecules-builder-element-properties-panel__wrapper--collapsed\":\n isPropertiesPanelCollapsed,\n }\n )}\n >\n <div\n className=\"neeto-molecules-builder-element-properties-panel neeto-ui-bg-white\"\n data-testid=\"properties-panel\"\n >\n {children ?? <Skeleton />}\n </div>\n {!isPropertiesPanelCollapsed && (\n <Button\n className=\"neeto-molecules-builder-properties-panel__close\"\n icon={Close}\n style=\"secondary\"\n onClick={handleCollapsePanel}\n />\n )}\n </div>\n </>\n );\n};\n\nPropertiesPanel.EmptyProperty = EmptyProperty;\n\nexport default PropertiesPanel;\n"],"names":["PANEL_TYPES","SUMMARY","ELEMENTS","SELECTED_ELEMENTS_LIST_DROPPABLE_ID","ELEMENTS_LIST_DROPPABLE_ID","PREVIEW_CONTAINER_DROPPABLE_ID","DROPPABLE_TYPES","ELEMENT","SELECTED_ELEMENT","Body","_ref","size","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","className","classnames","NoResults","withT","t","Typography","weight","children","memo","Element","label","Icon","icon","_ref$isCreatable","isCreatable","onClick","_ref$isDragDisabled","isDragDisabled","disabledElementTooltip","isPlaceholder","isDraggingOver","isAddingNewElement","handleClick","event","preventDefault","Tooltip","content","disabled","position","touch","_jsxs","concat","joinHyphenCase","Drag","style","ElementContainer","index","element","onSelect","setVisiblePanel","isCreatableElement","value","_createElement","Draggable","draggableId","key","provided","snapshot","_Fragment","ref","innerRef","draggableProps","dragHandleProps","isDragging","transform","noop","Section","title","elements","isDragElementsDisabled","isEmpty","map","elementIndex","SectionsContainer","filteredSections","section","Droppable","droppableId","type","TitleBar","lineHeight","Button","Close","ElementList","_ref$elementSections","elementSections","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","searchString","setSearchString","useMemo","filter","toLowerCase","includes","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","Reorder","hyphenate","MoreDropdown","isDisabled","isPending","dropdownButtonProps","e","stopPropagation","loading","tooltipProps","isLoading","showElementsFillButton","isAddingAllElements","addAllElements","addNewElement","addNewElementLabel","handleAddNewElementClick","PLURAL","Plus","iconPosition","Flash","SelectedElementsList","isReorderDisabled","isElementVisible","selectedElementId","selectedElements","fixedLastElement","fixedFirstElement","anchoredElementIds","selectedElementActions","renderSelectedElement","arguments","length","undefined","Array","isArray","_ref2","droppableProps","_isElementVisible","_element$id","_element$id2","isVisible","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","Collapse","EmptyProperty","Skeleton","DownArrow","PropertiesPanel","onClose","window","largeDesktop","innerWidth","isPropertiesPanelCollapsed","setIsPropertiesPanelCollapsed","handleCollapsePanel"],"mappings":"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"}
1
+ {"version":3,"file":"Builder.js","sources":["../../src/components/Builder/constants.js","../../src/components/Builder/Body.jsx","../../src/components/Builder/ElementsPanel/ElementsList/NoResults.jsx","../../src/components/Builder/ElementsPanel/ElementsList/Element.jsx","../../src/components/Builder/ElementsPanel/ElementsList/ElementContainer.jsx","../../src/components/Builder/ElementsPanel/ElementsList/Section.jsx","../../src/components/Builder/ElementsPanel/ElementsList/SectionsContainer.jsx","../../src/components/Builder/ElementsPanel/ElementsList/TitleBar.jsx","../../src/components/Builder/ElementsPanel/ElementsList/index.jsx","../../src/components/Builder/ElementsPanel/SelectedElementsList/SelectedElement.jsx","../../src/components/Builder/ElementsPanel/SelectedElementsList/TitleBar.jsx","../../src/components/Builder/ElementsPanel/SelectedElementsList/index.jsx","../../src/components/Builder/ElementsPanel/index.jsx","../../src/components/Builder/PropertiesPanel/EmptyProperty.jsx","../../src/components/Builder/PropertiesPanel/Skeleton.jsx","../../src/components/Builder/PropertiesPanel/index.jsx"],"sourcesContent":["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 classnames from \"classnames\";\n\nimport \"./styles.scss\";\n\nconst Body = ({ size, ...props }) => (\n <div\n {...props}\n className={classnames(\n \"neeto-molecules-builder-questions-list-panel__scroll\",\n {\n \"neeto-molecules-builder-questions-list-panel__scroll--small\":\n size === \"small\",\n }\n )}\n />\n);\n\nexport default Body;\n","import { memo } from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport { Typography } from \"neetoui\";\n\nconst NoResults = withT(({ t }) => (\n <Typography\n className=\"neeto-ui-text-gray-800 text-md flex h-full items-center justify-center\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.builderSidebar.noElements\")}\n </Typography>\n));\n\nexport default memo(NoResults);\n","import classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Drag } from \"neetoicons\";\nimport { Tooltip, Typography } from \"neetoui\";\n\nconst Element = ({\n label,\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 return (\n <Tooltip\n content={disabledElementTooltip?.(label)}\n disabled={!disabledElementTooltip || isCreatable || isDraggingOver}\n position=\"top\"\n touch={[\"hold\", 500]}\n >\n <div\n data-testid={`add-${joinHyphenCase(label)}-element`}\n className={classnames(\n \"neeto-ui-border-gray-400 neeto-ui-bg-white hover:neeto-ui-bg-gray-200 neeto-ui-rounded-lg relative mb-2 flex h-10 items-center gap-2 border p-3 transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-bg-gray-300 cursor-not-allowed\": !isCreatable,\n \"cursor-pointer\": isCreatable,\n \"opacity-50\": isPlaceholder,\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 <Drag size={16} />\n </span>\n )}\n <div className=\"flex flex-grow items-center gap-2\">\n {Icon && <Icon data-testid=\"form-icon\" />}\n <Typography className=\"leading-4\" style=\"body2\">\n {label}\n </Typography>\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 = isCreatable(element.value);\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 \"neetoui\";\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 && <Typography className=\"mb-3 mt-1\">{title}</Typography>}\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 { withT } from \"neetocommons/react-utils\";\nimport { Close } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\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 data-testid=\"elements-list-title\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.builderSidebar.addNewElement\")}\n </Typography>\n <Button\n data-testid=\"cancel-button\"\n icon={Close}\n size=\"medium\"\n style=\"text\"\n onClick={() => setVisiblePanel(PANEL_TYPES.SUMMARY)}\n />\n </div>\n));\n\nexport default TitleBar;\n","import { useMemo, useState } from \"react\";\n\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Search } from \"neetoicons\";\nimport { Input, Typography } from \"neetoui\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Body from \"components/Builder/Body\";\n\nimport SectionsContainer from \"./SectionsContainer\";\nimport TitleBar from \"./TitleBar\";\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\n return elementSections\n .map(section => ({\n ...section,\n elements: section.elements\n .filter(element =>\n element.label.toLowerCase().includes(searchString.toLowerCase())\n )\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-1 px-6\">\n <Typography className=\"mb-3\" style=\"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 classnames from \"classnames\";\nimport { noop, findById, isNotEmpty, hyphenate, isPresent } from \"neetocist\";\nimport { Reorder } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { mergeRight } from \"ramda\";\n\nimport MoreDropdown from \"components/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 \"neeto-ui-border-gray-400 neeto-ui-bg-white hover:neeto-ui-bg-gray-200 neeto-ui-rounded-lg relative mb-2 flex h-10 cursor-pointer items-center gap-2 border py-3 pe-3 ps-4 transition-all duration-300 ease-in-out\",\n { \"neeto-molecules-builder-element--active\": isActive },\n { \"hover:neeto-ui-bg-error-100 neeto-ui-bg-error-100\": 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 <Reorder size={16} />\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 />\n </div>\n )}\n <Typography\n className=\"truncate leading-snug\"\n data-testid={`${hyphenate(element.label, \"new-element\")}-label`}\n style=\"body2\"\n >\n {element.label}\n </Typography>\n </div>\n {shouldShowDropdown && (\n <MoreDropdown\n {...{ menuItems }}\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 { PLURAL } from \"neetocommons/constants\";\nimport { Flash, Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\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 data-testid=\"elements-title\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\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=\"small\"\n style=\"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={Flash}\n loading={isAddingAllElements}\n size=\"small\"\n style=\"secondary\"\n tooltipProps={{\n content: t(\"neetoMolecules.builderSidebar.addAllElements\"),\n touch: [\"hold\", 500],\n }}\n onClick={addAllElements}\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default TitleBar;\n","import { Draggable, Droppable } from \"@hello-pangea/dnd\";\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Body from \"components/Builder/Body\";\n\nimport SelectedElement from \"./SelectedElement\";\nimport TitleBar from \"./TitleBar\";\n\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}) => {\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 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\" style=\"body3\">\n {t(\"neetoMolecules.builderSidebar.elementsReorderDescription\")}\n </Typography>\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?.map((element, index) => {\n const isVisible = isElementVisible?.(element) ?? true;\n\n if (!isVisible) return null;\n\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 classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport { Collapse } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport ElementList from \"./ElementsList\";\nimport SelectedElementsList from \"./SelectedElementsList\";\n\nimport { PANEL_TYPES } from \"../constants\";\nimport \"../styles.scss\";\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}) => {\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=\"neeto-molecules-builder-panel__backdrop\"\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n )}\n <div\n className={classnames(\n \"neeto-molecules-builder-elements-list-panel__wrapper\",\n {\n \"neeto-molecules-builder-elements-list-panel__wrapper--collapsed\":\n isElementsPanelCollapsed,\n }\n )}\n >\n <div className=\"neeto-molecules-builder-elements-list-panel__container\">\n <div\n className={classnames(\n \"neeto-molecules-builder-elements-list-panel\",\n {\n \"neeto-ui-bg-white\": visiblePanel === PANEL_TYPES.SUMMARY,\n \"neeto-ui-bg-gray-50\": visiblePanel !== PANEL_TYPES.SUMMARY,\n }\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 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 className=\"neeto-molecules-builder-elements-list-panel__toggler\"\n icon={Collapse}\n style=\"secondary\"\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 ),\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\nexport default ElementsPanel;\n","import withT from \"neetocommons/react-utils/withT\";\nimport { Typography } from \"neetoui\";\n\nconst EmptyProperty = withT(({ t }) => (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-lg flex w-full flex-col items-center justify-center gap-y-2 px-16 py-8\">\n <Typography\n className=\"text-center\"\n data-testid=\"build-page-text-label\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.builderSidebar.noQuestionProperties\")}\n </Typography>\n </div>\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-40 w-full\" />\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-72 w-full\" />\n </div>\n));\n\nexport default EmptyProperty;\n","import withT from \"neetocommons/react-utils/withT\";\nimport { DownArrow } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nconst Skeleton = withT(({ t }) => (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-12 w-full\" />\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-lg flex w-full flex-col items-center justify-center gap-y-2 px-16 py-8\">\n <Typography\n className=\"text-center\"\n data-testid=\"build-page-text-label\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.builderSidebar.emptyQuestionProperties\")}\n </Typography>\n <DownArrow />\n </div>\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-40 w-full\" />\n <div className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-72 w-full\" />\n </div>\n));\n\nexport default Skeleton;\n","import { useEffect, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport { Close } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nimport EmptyProperty from \"./EmptyProperty\";\nimport Skeleton from \"./Skeleton\";\n\nimport \"../styles.scss\";\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=\"neeto-molecules-builder-panel__backdrop neeto-molecules-builder-panel__backdrop--extended\"\n onClick={handleCollapsePanel}\n />\n )}\n <div\n className={classnames(\n \"neeto-molecules-builder-element-properties-panel__wrapper\",\n {\n \"neeto-molecules-builder-element-properties-panel__wrapper--collapsed\":\n isPropertiesPanelCollapsed,\n }\n )}\n >\n <div\n className=\"neeto-molecules-builder-element-properties-panel neeto-ui-bg-white\"\n data-testid=\"properties-panel\"\n >\n {children ?? <Skeleton />}\n </div>\n {!isPropertiesPanelCollapsed && (\n <Button\n className=\"neeto-molecules-builder-properties-panel__close\"\n icon={Close}\n style=\"secondary\"\n onClick={handleCollapsePanel}\n />\n )}\n </div>\n </>\n );\n};\n\nPropertiesPanel.EmptyProperty = EmptyProperty;\n\nexport default PropertiesPanel;\n"],"names":["PANEL_TYPES","SUMMARY","ELEMENTS","SELECTED_ELEMENTS_LIST_DROPPABLE_ID","ELEMENTS_LIST_DROPPABLE_ID","PREVIEW_CONTAINER_DROPPABLE_ID","DROPPABLE_TYPES","ELEMENT","SELECTED_ELEMENT","Body","_ref","size","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","className","classnames","NoResults","withT","t","Typography","weight","children","memo","Element","label","Icon","icon","_ref$isCreatable","isCreatable","onClick","_ref$isDragDisabled","isDragDisabled","disabledElementTooltip","isPlaceholder","isDraggingOver","isAddingNewElement","handleClick","event","preventDefault","Tooltip","content","disabled","position","touch","_jsxs","concat","joinHyphenCase","Drag","style","ElementContainer","index","element","onSelect","setVisiblePanel","isCreatableElement","value","_createElement","Draggable","draggableId","key","provided","snapshot","_Fragment","ref","innerRef","draggableProps","dragHandleProps","isDragging","transform","noop","Section","title","elements","isDragElementsDisabled","isEmpty","map","elementIndex","SectionsContainer","filteredSections","section","Droppable","droppableId","type","TitleBar","lineHeight","Button","Close","ElementList","_ref$elementSections","elementSections","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","searchString","setSearchString","useMemo","filter","toLowerCase","includes","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","Reorder","hyphenate","MoreDropdown","isDisabled","isPending","dropdownButtonProps","e","stopPropagation","loading","tooltipProps","isLoading","showElementsFillButton","isAddingAllElements","addAllElements","addNewElement","addNewElementLabel","handleAddNewElementClick","PLURAL","Plus","iconPosition","Flash","SelectedElementsList","isReorderDisabled","isElementVisible","selectedElementId","selectedElements","fixedLastElement","fixedFirstElement","anchoredElementIds","selectedElementActions","renderSelectedElement","arguments","length","undefined","Array","isArray","_ref2","droppableProps","_isElementVisible","_element$id","_element$id2","isVisible","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","Collapse","EmptyProperty","Skeleton","DownArrow","PropertiesPanel","onClose","window","largeDesktop","innerWidth","isPropertiesPanelCollapsed","setIsPropertiesPanelCollapsed","handleCollapsePanel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,WAAW,GAAG;AAAEC,EAAAA,OAAO,EAAE,SAAS;AAAEC,EAAAA,QAAQ,EAAE;AAAW;AAE/D,IAAMC,mCAAmC,GAC9C;AAEK,IAAMC,0BAA0B,GAAG;AAEnC,IAAMC,8BAA8B,GACzC;AAEK,IAAMC,eAAe,GAAG;AAC7BC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,gBAAgB,EAAE;AACpB;;;;;;;;ACTA,IAAMC,IAAI,GAAG,SAAPA,IAAIA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;AAAKC,IAAAA,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,WAAA,CAAA;AAAA,EAAA,oBAC5BC,cAAA,CAAA,KAAA,EAAAC,eAAA,CAAAA,eAAA,KACMJ,KAAK,CAAA,EAAA,EAAA,EAAA;AACTK,IAAAA,SAAS,EAAEC,UAAU,CACnB,sDAAsD,EACtD;MACE,6DAA6D,EAC3DP,IAAI,KAAK;KAEf;AAAE,GAAA,CACH,CAAC;AAAA,CACH;;ACVD,IAAMQ,WAAS,GAAGC,gBAAK,CAAC,UAAAV,IAAA,EAAA;AAAA,EAAA,IAAGW,CAAC,GAAAX,IAAA,CAADW,CAAC;EAAA,oBAC1BN,cAAA,CAACO,UAAU,EAAA;AACTL,IAAAA,SAAS,EAAC,wEAAwE;AAClFM,IAAAA,MAAM,EAAC,MAAM;IAAAC,QAAA,EAEZH,CAAC,CAAC,0CAA0C;AAAC,GACpC,CAAC;AAAA,CACd,CAAC;AAEF,gBAAA,aAAeI,UAAI,CAACN,WAAS,CAAC;;ACT9B,IAAMO,OAAO,GAAG,SAAVA,OAAOA,CAAAhB,IAAA,EAUP;AAAA,EAAA,IATJiB,KAAK,GAAAjB,IAAA,CAALiB,KAAK;IACCC,IAAI,GAAAlB,IAAA,CAAVmB,IAAI;IAAAC,gBAAA,GAAApB,IAAA,CACJqB,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,gBAAA;IAClBE,OAAO,GAAAtB,IAAA,CAAPsB,OAAO;IAAAC,mBAAA,GAAAvB,IAAA,CACPwB,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,mBAAA;IACtBE,sBAAsB,GAAAzB,IAAA,CAAtByB,sBAAsB;IACtBC,aAAa,GAAA1B,IAAA,CAAb0B,aAAa;IACbC,cAAc,GAAA3B,IAAA,CAAd2B,cAAc;IACdC,kBAAkB,GAAA5B,IAAA,CAAlB4B,kBAAkB;AAElB,EAAA,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAGC,KAAK,EAAI;AAC3B,IAAA,IAAI,CAACT,WAAW,IAAIO,kBAAkB,EAAE;MACtCE,KAAK,CAACC,cAAc,EAAE;AAEtB,MAAA;AACF,IAAA;IAEAT,OAAO,CAACQ,KAAK,CAAC;EAChB,CAAC;EAED,oBACEzB,cAAA,CAAC2B,OAAO,EAAA;IACNC,OAAO,EAAER,sBAAsB,KAAA,IAAA,IAAtBA,sBAAsB,uBAAtBA,sBAAsB,CAAGR,KAAK,CAAE;AACzCiB,IAAAA,QAAQ,EAAE,CAACT,sBAAsB,IAAIJ,WAAW,IAAIM,cAAe;AACnEQ,IAAAA,QAAQ,EAAC,KAAK;AACdC,IAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAE;AAAAtB,IAAAA,QAAA,eAErBuB,eAAA,CAAA,KAAA,EAAA;AACE,MAAA,aAAA,EAAA,MAAA,CAAAC,MAAA,CAAoBC,sBAAc,CAACtB,KAAK,CAAC,EAAA,UAAA,CAAW;AACpDV,MAAAA,SAAS,EAAEC,UAAU,CACnB,yLAAyL,EACzL;QACE,yCAAyC,EAAE,CAACa,WAAW;AACvD,QAAA,gBAAgB,EAAEA,WAAW;AAC7B,QAAA,YAAY,EAAEK;AAChB,OACF,CAAE;AACFJ,MAAAA,OAAO,EAAEO,WAAY;AAAAf,MAAAA,QAAA,EAAA,CAEpB,CAACU,cAAc,iBACdnB,cAAA,CAAA,MAAA,EAAA;AACEE,QAAAA,SAAS,EAAC,6EAA6E;AACvF,QAAA,aAAA,EAAY,aAAa;QAAAO,QAAA,eAEzBT,cAAA,CAACmC,IAAI,EAAA;AAACvC,UAAAA,IAAI,EAAE;SAAK;OACb,CACP,eACDoC,eAAA,CAAA,KAAA,EAAA;AAAK9B,QAAAA,SAAS,EAAC,mCAAmC;AAAAO,QAAAA,QAAA,EAAA,CAC/CI,IAAI,iBAAIb,cAAA,CAACa,IAAI,EAAA;UAAC,aAAA,EAAY;AAAW,SAAE,CAAC,eACzCb,cAAA,CAACO,UAAU,EAAA;AAACL,UAAAA,SAAS,EAAC,WAAW;AAACkC,UAAAA,KAAK,EAAC,OAAO;AAAA3B,UAAAA,QAAA,EAC5CG;AAAK,SACI,CAAC;AAAA,OACV,CAAC;KACH;AAAC,GACC,CAAC;AAEd,CAAC;;;;ACzDD,IAAMyB,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA1C,IAAA,EAUhB;AAAA,EAAA,IATJ2C,KAAK,GAAA3C,IAAA,CAAL2C,KAAK;IACLnB,cAAc,GAAAxB,IAAA,CAAdwB,cAAc;IACdoB,OAAO,GAAA5C,IAAA,CAAP4C,OAAO;IACPnB,sBAAsB,GAAAzB,IAAA,CAAtByB,sBAAsB;IACtBJ,WAAW,GAAArB,IAAA,CAAXqB,WAAW;IACXwB,QAAQ,GAAA7C,IAAA,CAAR6C,QAAQ;IACRlB,cAAc,GAAA3B,IAAA,CAAd2B,cAAc;IACdC,kBAAkB,GAAA5B,IAAA,CAAlB4B,kBAAkB;IAClBkB,eAAe,GAAA9C,IAAA,CAAf8C,eAAe;AAEf,EAAA,IAAMC,kBAAkB,GAAG1B,WAAW,CAACuB,OAAO,CAACI,KAAK,CAAC;AAErD,EAAA,IAAIxB,cAAc,EAAE;AAClB,IAAA,oBACEnB,cAAA,CAACW,OAAO,EAAAV,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EAEDsC,OAAO,CAAA,EAAA,EAAA,EAAA;AACVnB,MAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBG,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBJ,MAAAA,cAAc,EAAdA,cAAc;AACdsB,MAAAA,eAAe,EAAfA;AAAe,KAAA,CAAA,CAAA,EAAA,EAAA,EAAA;AAEjBzB,MAAAA,WAAW,EAAE0B,kBAAmB;MAChCzB,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQuB,QAAQ,CAACD,OAAO,CAAC;AAAA,MAAA;AAAC,KAAA,CAClC,CAAC;AAEN,EAAA;EAEA,oBACEK,mBAAA,CAACC,aAAS,EAAA;AACFP,IAAAA,KAAK,EAALA,KAAK;IACXQ,WAAW,EAAEP,OAAO,CAACI,KAAM;IAC3BI,GAAG,EAAER,OAAO,CAAC3B,KAAM;AACnBO,IAAAA,cAAc,EACZA,cAAc,IAAI,CAACuB,kBAAkB,IAAInB;GAC1C,EAEA,UAACyB,QAAQ,EAAEC,QAAQ,EAAA;IAAA,oBAClBjB,eAAA,CAAAkB,mBAAA,EAAA;AAAAzC,MAAAA,QAAA,gBACET,cAAA,CAAA,KAAA,EAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA;QACEkD,GAAG,EAAEH,QAAQ,CAACI;AAAS,OAAA,EACnBJ,QAAQ,CAACK,cAAc,CAAA,EACvBL,QAAQ,CAACM,eAAe,CAAA,EAAA,EAAA,EAAA;AAC5BlB,QAAAA,KAAK,EAAAnC,eAAA,CAAAA,eAAA,KACA+C,QAAQ,CAACK,cAAc,CAACjB,KAAK,CAAA,EAC5B,CAACa,QAAQ,CAACM,UAAU,IAAI;AAAEC,UAAAA,SAAS,EAAE;AAAO,SAAC,CACjD;AAAA/C,QAAAA,QAAA,eAEFT,cAAA,CAACW,OAAO,EAAAV,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAAA,eAAA,CAAAA,eAAA,KAEDsC,OAAO,CAAA,EAAA,EAAA,EAAA;AACVnB,UAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBG,UAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBJ,UAAAA,cAAc,EAAdA,cAAc;AACdG,UAAAA,cAAc,EAAdA,cAAc;AACdmB,UAAAA,eAAe,EAAfA;AAAe,SAAA,CAAA,CAAA,EAAA,EAAA,EAAA;AAEjBzB,UAAAA,WAAW,EAAE0B,kBAAmB;UAChCzB,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQuB,QAAQ,CAACD,OAAO,CAAC;AAAA,UAAA;SAAC,CAClC;AAAC,OAAA,CACC,CAAC,EACLU,QAAQ,CAACM,UAAU,iBAClBvD,cAAA,CAACW,OAAO,EAAAV,eAAA,CAAAA,eAAA,CAAA;AACNmB,QAAAA,sBAAsB,EAAE;AAAK,OAAA,EAAAnB,eAAA,CAAAA,eAAA,CAAA,EAAA,EACpBsC,OAAO,CAAA,EAAA,EAAA,EAAA;AAAEhB,QAAAA,kBAAkB,EAAlBA,kBAAkB;AAAEkB,QAAAA,eAAe,EAAfA;AAAe,OAAA,CAAA,CAAA,EAAA,EAAA,EAAA;AACrDzB,QAAAA,WAAW,EAAE,KAAM;AACnBC,QAAAA,OAAO,EAAEwC;AAAK,OAAA,CACf,CACF;AAAA,KACD,CAAC;AAAA,EAAA,CAEI,CAAC;AAEhB,CAAC;;AC1ED,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAA/D,IAAA,EAUP;AAAA,EAAA,IATJgE,KAAK,GAAAhE,IAAA,CAALgE,KAAK;IACLC,QAAQ,GAAAjE,IAAA,CAARiE,QAAQ;IACRpB,QAAQ,GAAA7C,IAAA,CAAR6C,QAAQ;IACRxB,WAAW,GAAArB,IAAA,CAAXqB,WAAW;IACXI,sBAAsB,GAAAzB,IAAA,CAAtByB,sBAAsB;IACED,cAAc,GAAAxB,IAAA,CAAtCkE,sBAAsB;IACtBvC,cAAc,GAAA3B,IAAA,CAAd2B,cAAc;IACdC,kBAAkB,GAAA5B,IAAA,CAAlB4B,kBAAkB;IAClBkB,eAAe,GAAA9C,IAAA,CAAf8C,eAAe;AAEf,EAAA,IAAIqB,aAAO,CAACF,QAAQ,CAAC,EAAE;AACrB,IAAA,OAAO,IAAI;AACb,EAAA;EAEA,oBACE5B,eAAA,CAAAkB,mBAAA,EAAA;AAAAzC,IAAAA,QAAA,EAAA,CACGkD,KAAK,iBAAI3D,cAAA,CAACO,UAAU,EAAA;AAACL,MAAAA,SAAS,EAAC,WAAW;AAAAO,MAAAA,QAAA,EAAEkD;AAAK,KAAa,CAAC,EAC/DC,QAAQ,CAACG,GAAG,CAAC,UAAAxB,OAAO,EAAA;MAAA,oBACnBK,mBAAA,CAACP,gBAAgB,EAAA;AAEbjB,QAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBmB,QAAAA,OAAO,EAAPA,OAAO;AACPhB,QAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBP,QAAAA,WAAW,EAAXA,WAAW;AACXG,QAAAA,cAAc,EAAdA,cAAc;AACdG,QAAAA,cAAc,EAAdA,cAAc;AACdkB,QAAAA,QAAQ,EAARA,QAAQ;AACRC,QAAAA,eAAe,EAAfA,eAAe;QAEjBH,KAAK,EAAEC,OAAO,CAACyB,YAAa;QAC5BjB,GAAG,EAAER,OAAO,CAAC3B;AAAM,OACpB,CAAC;AAAA,IAAA,CACH,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;;;ACjCD,IAAMqD,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAtE,IAAA,EAMjB;AAAA,EAAA,IALJkE,sBAAsB,GAAAlE,IAAA,CAAtBkE,sBAAsB;IACtBK,gBAAgB,GAAAvE,IAAA,CAAhBuE,gBAAgB;IAChB3C,kBAAkB,GAAA5B,IAAA,CAAlB4B,kBAAkB;IAClBiB,QAAQ,GAAA7C,IAAA,CAAR6C,QAAQ;IACRC,eAAe,GAAA9C,IAAA,CAAf8C,eAAe;AAEf,EAAA,IAAIqB,aAAO,CAACI,gBAAgB,CAAC,EAAE;AAC7B,IAAA,oBAAOlE,cAAA,CAACI,SAAS,EAAA,EAAE,CAAC;AACtB,EAAA;AAEA,EAAA,IAAIyD,sBAAsB,EAAE;IAC1B,oBACE7D,cAAA,CAAAkD,mBAAA,EAAA;AAAAzC,MAAAA,QAAA,EACGyD,gBAAgB,CAACH,GAAG,CAAC,UAAAI,OAAO,EAAA;QAAA,oBAC3BvB,mBAAA,CAACc,OAAO,EAAAzD,eAAA,CAAAA,eAAA,KAAAA,eAAA,CAAA;AAEJsB,UAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBsC,UAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBrB,UAAAA,QAAQ,EAARA,QAAQ;AACRC,UAAAA,eAAe,EAAfA;AAAe,SAAA,EACZ0B,OAAO,CAAA,CAAA,EAAA,EAAA,EAAA;UAEZpB,GAAG,EAAEoB,OAAO,CAACpB;AAAI,SAAA,CAClB,CAAC;MAAA,CACH;AAAC,KACF,CAAC;AAEP,EAAA;EAEA,oBACE/C,cAAA,CAACoE,aAAS,EAAA;AACRC,IAAAA,WAAW,EAAEhF,0BAA2B;IACxCiF,IAAI,EAAE/E,eAAe,CAACC,OAAQ;AAAAiB,IAAAA,QAAA,EAE7B,SAAAA,QAAAA,CAACuC,QAAQ,EAAEC,QAAQ,EAAA;AAAA,MAAA,oBAClBjD,cAAA,CAAA,KAAA,EAAA;QAAKmD,GAAG,EAAEH,QAAQ,CAACI,QAAS;AAAA3C,QAAAA,QAAA,EACzByD,gBAAgB,CAACH,GAAG,CAAC,UAAAI,OAAO,EAAA;UAAA,oBAC3BvB,mBAAA,CAACc,OAAO,EAAAzD,eAAA,CAAAA,eAAA,KAAAA,eAAA,CAAA;AAEJsB,YAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBsC,YAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBrB,YAAAA,QAAQ,EAARA,QAAQ;AACRC,YAAAA,eAAe,EAAfA;AAAe,WAAA,EACZ0B,OAAO,CAAA,CAAA,EAAA,EAAA,EAAA;YAEZ7C,cAAc,EAAE2B,QAAQ,CAAC3B,cAAe;YACxCyB,GAAG,EAAEoB,OAAO,CAACpB;AAAI,WAAA,CAClB,CAAC;QAAA,CACH;AAAC,OACC,CAAC;AAAA,IAAA;AACP,GACQ,CAAC;AAEhB,CAAC;;ACxDD,IAAMwB,UAAQ,GAAGlE,gBAAK,CAAC,UAAAV,IAAA,EAAA;AAAA,EAAA,IAAGW,CAAC,GAAAX,IAAA,CAADW,CAAC;IAAEmC,eAAe,GAAA9C,IAAA,CAAf8C,eAAe;AAAA,EAAA,oBAC1CT,eAAA,CAAA,KAAA,EAAA;AACE9B,IAAAA,SAAS,EAAC,4CAA4C;AACtD,IAAA,aAAA,EAAY,sBAAsB;IAAAO,QAAA,EAAA,cAElCT,cAAA,CAACO,UAAU,EAAA;AACT,MAAA,aAAA,EAAY,qBAAqB;AACjCiE,MAAAA,UAAU,EAAC,QAAQ;AACnBpC,MAAAA,KAAK,EAAC,IAAI;AACV5B,MAAAA,MAAM,EAAC,UAAU;MAAAC,QAAA,EAEhBH,CAAC,CAAC,6CAA6C;AAAC,KACvC,CAAC,eACbN,cAAA,CAACyE,MAAM,EAAA;AACL,MAAA,aAAA,EAAY,eAAe;AAC3B3D,MAAAA,IAAI,EAAE4D,KAAM;AACZ9E,MAAAA,IAAI,EAAC,QAAQ;AACbwC,MAAAA,KAAK,EAAC,MAAM;MACZnB,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,QAAA,OAAQwB,eAAe,CAACxD,WAAW,CAACC,OAAO,CAAC;AAAA,MAAA;AAAC,KACrD,CAAC;AAAA,GACC,CAAC;AAAA,CACP,CAAC;;;;ACbF,IAAMyF,WAAW,GAAG,SAAdA,WAAWA,CAAAhF,IAAA,EAMX;AAAA,EAAA,IALJ8C,eAAe,GAAA9C,IAAA,CAAf8C,eAAe;IAAAmC,oBAAA,GAAAjF,IAAA,CACfkF,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;IACpBpC,QAAQ,GAAA7C,IAAA,CAAR6C,QAAQ;IACRqB,sBAAsB,GAAAlE,IAAA,CAAtBkE,sBAAsB;IACtBtC,kBAAkB,GAAA5B,IAAA,CAAlB4B,kBAAkB;AAElB,EAAA,IAAAuD,eAAA,GAAcC,2BAAc,EAAE;IAAtBzE,CAAC,GAAAwE,eAAA,CAADxE,CAAC;AACT,EAAA,IAAA0E,SAAA,GAAwCC,cAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA7CI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,eAAe,GAAAH,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAMhB,gBAAgB,GAAGoB,aAAO,CAAC,YAAM;IACrC,IAAItB,YAAY,GAAG,CAAC;AAEpB,IAAA,OAAOa,eAAe,CACnBd,GAAG,CAAC,UAAAI,OAAO,EAAA;AAAA,MAAA,OAAAlE,eAAA,CAAAA,eAAA,CAAA,EAAA,EACPkE,OAAO,CAAA,EAAA,EAAA,EAAA;QACVP,QAAQ,EAAEO,OAAO,CAACP,QAAQ,CACvB2B,MAAM,CAAC,UAAAhD,OAAO,EAAA;AAAA,UAAA,OACbA,OAAO,CAAC3B,KAAK,CAAC4E,WAAW,EAAE,CAACC,QAAQ,CAACL,YAAY,CAACI,WAAW,EAAE,CAAC;AAAA,QAAA,CAClE,CAAC,CACAzB,GAAG,CAAC,UAAAxB,OAAO,EAAA;UAAA,OAAImD,WAAK,CAAC,cAAc,EAAE1B,YAAY,EAAE,EAAEzB,OAAO,CAAC;AAAA,QAAA,CAAA;AAAC,OAAA,CAAA;AAAA,IAAA,CACjE,CAAC,CACFgD,MAAM,CAAC,UAAApB,OAAO,EAAA;AAAA,MAAA,OACbwB,mBAAS,CAACP,YAAY,CAAC,GAAGQ,oBAAU,CAACzB,OAAO,CAACP,QAAQ,CAAC,GAAG,IAAI;AAAA,IAAA,CAC/D,CAAC;AACL,EAAA,CAAC,EAAE,CAACwB,YAAY,EAAEP,eAAe,CAAC,CAAC;EAEnC,oBACE7C,eAAA,CAAAkB,mBAAA,EAAA;IAAAzC,QAAA,EAAA,cACET,cAAA,CAACuE,UAAQ,EAAA;AAAO9B,MAAAA,eAAe,EAAfA;KAAoB,CAAC,eACrCT,eAAA,CAAA,KAAA,EAAA;AAAK9B,MAAAA,SAAS,EAAC,WAAW;MAAAO,QAAA,EAAA,cACxBT,cAAA,CAACO,UAAU,EAAA;AAACL,QAAAA,SAAS,EAAC,MAAM;AAACkC,QAAAA,KAAK,EAAC,OAAO;QAAA3B,QAAA,EACvCH,CAAC,CAAC,wDAAwD;AAAC,OAClD,CAAC,eACbN,cAAA,CAAC6F,KAAK,EAAA;QACJC,SAAS,EAAA,IAAA;AACT,QAAA,aAAA,EAAY,6BAA6B;AACzCC,QAAAA,WAAW,EAAEzF,CAAC,CAAC,8CAA8C,CAAE;AAC/D0F,QAAAA,MAAM,eAAEhG,cAAA,CAACiG,MAAM,IAAE,CAAE;AACnB3B,QAAAA,IAAI,EAAC,QAAQ;AACb3B,QAAAA,KAAK,EAAEyC,YAAa;QACpBc,QAAQ,EAAEC,4BAAoB,CAACd,eAAe;AAAE,OACjD,CAAC;AAAA,KACC,CAAC,eACNrF,cAAA,CAACN,IAAI,EAAA;AAAC,MAAA,aAAA,EAAY,oBAAoB;AAACE,MAAAA,IAAI,EAAC,OAAO;MAAAa,QAAA,eACjDT,cAAA,CAACiE,iBAAiB,EAAA;AAEdC,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChB3C,QAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBsC,QAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBrB,QAAAA,QAAQ,EAARA,QAAQ;AACRC,QAAAA,eAAe,EAAfA;OAEH;AAAC,KACE,CAAC;AAAA,GACP,CAAC;AAEP,CAAC;;;;;AC7DD,IAAM2D,iBAAe,GAAG,SAAlBA,eAAeA,CAAAzG,IAAA,EAWf;AAAA,EAAA,IAVJ4C,OAAO,GAAA5C,IAAA,CAAP4C,OAAO;IACP8D,QAAQ,GAAA1G,IAAA,CAAR0G,QAAQ;IACRC,gCAAgC,GAAA3G,IAAA,CAAhC2G,gCAAgC;IAChCC,kCAAkC,GAAA5G,IAAA,CAAlC4G,kCAAkC;IAClCC,mBAAmB,GAAA7G,IAAA,CAAnB6G,mBAAmB;IAAAC,iBAAA,GAAA9G,IAAA,CACnB+G,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,iBAAA;IAAAE,WAAA,GAAAhH,IAAA,CACnBiH,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,WAAA;IAAAE,YAAA,GAAAlH,IAAA,CACXmH,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;IAAAE,gBAAA,GAAApH,IAAA,CACZqH,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,gBAAA;AAChBlH,IAAAA,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA,CAAA;AAER,EAAA,IAAMc,IAAI,GAAG0B,OAAO,CAACzB,IAAI;AACzB,EAAA,IAAMmG,cAAc,GAAGC,YAAM,EAAE;AAE/B,EAAA,IAAMjG,OAAO,GAAG,SAAVA,OAAOA,GAAA;IAAA,OAASuF,mBAAmB,CAACjE,OAAO,CAAC;AAAA,EAAA,CAAA;AAElD,EAAA,IAAM4E,kBAAkB,GAAGvB,oBAAU,CAACkB,OAAO,CAAC;AAE9C,EAAA,IAAMM,SAAS,GACb,OAAON,OAAO,KAAK,UAAU,GACzBA,OAAO,CAACvE,OAAO,CAAC,GAChBuE,OAAO,CAAC/C,GAAG,CAAC,UAAAsD,MAAM,EAAA;IAAA,OAChBC,gBAAU,CAACD,MAAM,EAAE;AACjBpG,MAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;AACboG,QAAAA,MAAM,CAACpG,OAAO,CAACsB,OAAO,CAAC;AACzB,MAAA;AACF,KAAC,CAAC;AAAA,EAAA,CACJ,CAAC;AAEPgF,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAMC,WAAW,GAAGP,cAAc,CAACQ,OAAO;AAE1C,IAAA,IACE,CAACD,WAAW,IACZ,CAACnB,QAAQ,IACT,QAAOmB,WAAW,KAAA,IAAA,IAAXA,WAAW,uBAAXA,WAAW,CAAEE,cAAc,CAAA,KAAK,UAAU,EACjD;AACA,MAAA;AACF,IAAA;IACAF,WAAW,CAACE,cAAc,CAAC;AAAEC,MAAAA,QAAQ,EAAE,QAAQ;AAAEC,MAAAA,KAAK,EAAE;AAAU,KAAC,CAAC;AACtE,EAAA,CAAC,EAAE,CAACvB,QAAQ,EAAEY,cAAc,CAAC,CAAC;EAE9B,IAAMY,KAAK,GAAGC,kBAAQ,CAACvF,OAAO,CAACwF,EAAE,EAAEnB,MAAM,CAAC;AAE1C,EAAA,oBACE5E,eAAA,CAAA,KAAA,EAAA;IACE,aAAA,EAAanC,KAAK,CAAC,aAAa,CAAE;AAClCsD,IAAAA,GAAG,EAAE8D,cAAe;AACpB/G,IAAAA,SAAS,EAAEC,UAAU,CACnB,mNAAmN,EACnN;AAAE,MAAA,yCAAyC,EAAEkG;AAAS,KAAC,EACvD;AAAE,MAAA,mDAAmD,EAAEwB;AAAM,KAC/D,CAAE;AACF5G,IAAAA,OAAO,EAAEyF,YAAY,GAAGzF,OAAO,GAAGwC,cAAK;IAAAhD,QAAA,EAAA,CAEtCuG,WAAW,iBACVhH,cAAA,CAAA,MAAA,EAAA;AACEE,MAAAA,SAAS,EAAC,6EAA6E;AACvF,MAAA,aAAA,EAAY,aAAa;MAAAO,QAAA,eAEzBT,cAAA,CAACgI,OAAO,EAAA;AAACpI,QAAAA,IAAI,EAAE;OAAK;KAChB,CACP,eACDoC,eAAA,CAAA,KAAA,EAAA;AACE9B,MAAAA,SAAS,EAAC,mDAAmD;AAC7D,MAAA,aAAA,EAAY,mBAAmB;MAAAO,QAAA,EAAA,CAE9BI,IAAI,iBACHb,cAAA,CAAA,KAAA,EAAA;AAAKE,QAAAA,SAAS,EAAC,eAAe;AAAAO,QAAAA,QAAA,eAC5BT,cAAA,CAACa,IAAI,EAAA,EAAE;AAAC,OACL,CACN,eACDb,cAAA,CAACO,UAAU,EAAA;AACTL,QAAAA,SAAS,EAAC,uBAAuB;QACjC,aAAA,EAAA,EAAA,CAAA+B,MAAA,CAAgBgG,mBAAS,CAAC1F,OAAO,CAAC3B,KAAK,EAAE,aAAa,CAAC,EAAA,QAAA,CAAS;AAChEwB,QAAAA,KAAK,EAAC,OAAO;QAAA3B,QAAA,EAEZ8B,OAAO,CAAC3B;AAAK,OACJ,CAAC;AAAA,KACV,CAAC,EACLuG,kBAAkB,iBACjBnH,cAAA,CAACkI,YAAY,EAAA;AACLd,MAAAA,SAAS,EAATA,SAAS;AACfe,MAAAA,UAAU,EAAE5F,OAAO,CAAC6F,SAAS,IAAI9B,gCAAiC;AAClE+B,MAAAA,mBAAmB,EAAApI,eAAA,CAAA;AACjBgB,QAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEqH,CAAC,EAAA;AAAA,UAAA,OAAIA,CAAC,CAACC,eAAe,EAAE;AAAA,QAAA,CAAA;AACjCrI,QAAAA,SAAS,EAAE,uBAAuB;QAClC,aAAa,EAAA,EAAA,CAAA+B,MAAA,CAAKgG,mBAAS,CAAC1F,OAAO,CAAC3B,KAAK,CAAC,EAAA,gBAAA,CAAgB;QAC1D4H,OAAO,EAAEjG,OAAO,CAAC6F;AAAS,OAAA,EACtBzC,mBAAS,CAACY,kCAAkC,CAAC,IAAI;AACnDkC,QAAAA,YAAY,EAAElC;OACf;AACD,KACH,CACF;AAAA,GACE,CAAC;AAEV,CAAC;AAED,sBAAA,aAAe7F,UAAI,CAAC0F,iBAAe,CAAC;;ACvGpC,IAAM7B,QAAQ,GAAG,SAAXA,QAAQA,CAAA5E,IAAA,EASR;AAAA,EAAA,IARJ8C,eAAe,GAAA9C,IAAA,CAAf8C,eAAe;IACfiG,SAAS,GAAA/I,IAAA,CAAT+I,SAAS;IACTC,sBAAsB,GAAAhJ,IAAA,CAAtBgJ,sBAAsB;IACtBC,mBAAmB,GAAAjJ,IAAA,CAAnBiJ,mBAAmB;IACnBC,cAAc,GAAAlJ,IAAA,CAAdkJ,cAAc;IACdtH,kBAAkB,GAAA5B,IAAA,CAAlB4B,kBAAkB;IAClBuH,aAAa,GAAAnJ,IAAA,CAAbmJ,aAAa;IACbC,kBAAkB,GAAApJ,IAAA,CAAlBoJ,kBAAkB;AAElB,EAAA,IAAAjE,eAAA,GAAcC,2BAAc,EAAE;IAAtBzE,CAAC,GAAAwE,eAAA,CAADxE,CAAC;AAET,EAAA,IAAM0I,wBAAwB,GAAG,SAA3BA,wBAAwBA,GAAS;AACrC,IAAA,IAAI,OAAOF,aAAa,KAAK,UAAU,EAAEA,aAAa,EAAE,CAAC,KACpDrG,eAAe,CAACxD,WAAW,CAACE,QAAQ,CAAC;EAC5C,CAAC;AAED,EAAA,oBACE6C,eAAA,CAAA,KAAA,EAAA;AACE9B,IAAAA,SAAS,EAAC,4CAA4C;AACtD,IAAA,aAAA,EAAY,yBAAyB;IAAAO,QAAA,EAAA,cAErCT,cAAA,CAACO,UAAU,EAAA;AACT,MAAA,aAAA,EAAY,gBAAgB;AAC5BiE,MAAAA,UAAU,EAAC,QAAQ;AACnBpC,MAAAA,KAAK,EAAC,IAAI;AACV5B,MAAAA,MAAM,EAAC,UAAU;AAAAC,MAAAA,QAAA,EAEhBH,CAAC,CAAC,uCAAuC,EAAE2I,gBAAM;KACxC,CAAC,eACbjH,eAAA,CAAA,KAAA,EAAA;AAAK9B,MAAAA,SAAS,EAAC,2CAA2C;MAAAO,QAAA,EAAA,cACxDT,cAAA,CAACyE,MAAM,EAAA;AACL,QAAA,aAAA,EAAY,oBAAoB;AAChC5C,QAAAA,QAAQ,EAAE6G,SAAU;AACpB5H,QAAAA,IAAI,EAAEoI,IAAK;AACXC,QAAAA,YAAY,EAAC,MAAM;AACnBX,QAAAA,OAAO,EAAEjH,kBAAmB;AAC5B3B,QAAAA,IAAI,EAAC,OAAO;AACZwC,QAAAA,KAAK,EAAC,MAAM;AACZxB,QAAAA,KAAK,EACHmI,kBAAkB,IAClBzI,CAAC,CAAC,6CAA6C,CAChD;AACDW,QAAAA,OAAO,EAAE+H;AAAyB,OACnC,CAAC,EACDL,sBAAsB,iBACrB3I,cAAA,CAACyE,MAAM,EAAA;AACL,QAAA,aAAA,EAAY,yBAAyB;AACrC5C,QAAAA,QAAQ,EAAE+G,mBAAoB;AAC9B9H,QAAAA,IAAI,EAAEsI,KAAM;AACZZ,QAAAA,OAAO,EAAEI,mBAAoB;AAC7BhJ,QAAAA,IAAI,EAAC,OAAO;AACZwC,QAAAA,KAAK,EAAC,WAAW;AACjBqG,QAAAA,YAAY,EAAE;AACZ7G,UAAAA,OAAO,EAAEtB,CAAC,CAAC,8CAA8C,CAAC;AAC1DyB,UAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG;SACnB;AACFd,QAAAA,OAAO,EAAE4H;AAAe,OACzB,CACF;AAAA,KACE,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;;;;ACtDD,IAAMQ,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA1J,IAAA,EAmBpB;AAAA,EAAA,IAlBJ6G,mBAAmB,GAAA7G,IAAA,CAAnB6G,mBAAmB;IACnB8C,iBAAiB,GAAA3J,IAAA,CAAjB2J,iBAAiB;IACjBC,gBAAgB,GAAA5J,IAAA,CAAhB4J,gBAAgB;IAChBC,iBAAiB,GAAA7J,IAAA,CAAjB6J,iBAAiB;IACjBC,gBAAgB,GAAA9J,IAAA,CAAhB8J,gBAAgB;IAChBhH,eAAe,GAAA9C,IAAA,CAAf8C,eAAe;IACfiH,gBAAgB,GAAA/J,IAAA,CAAhB+J,gBAAgB;IAChBC,iBAAiB,GAAAhK,IAAA,CAAjBgK,iBAAiB;IACjBC,kBAAkB,GAAAjK,IAAA,CAAlBiK,kBAAkB;IAClBC,sBAAsB,GAAAlK,IAAA,CAAtBkK,sBAAsB;IACtBhB,cAAc,GAAAlJ,IAAA,CAAdkJ,cAAc;IACdD,mBAAmB,GAAAjJ,IAAA,CAAnBiJ,mBAAmB;IACnBD,sBAAsB,GAAAhJ,IAAA,CAAtBgJ,sBAAsB;IACtBpH,kBAAkB,GAAA5B,IAAA,CAAlB4B,kBAAkB;IAClBuH,aAAa,GAAAnJ,IAAA,CAAbmJ,aAAa;IACbC,kBAAkB,GAAApJ,IAAA,CAAlBoJ,kBAAkB;IAClBzC,gCAAgC,GAAA3G,IAAA,CAAhC2G,gCAAgC;IAChCC,kCAAkC,GAAA5G,IAAA,CAAlC4G,kCAAkC;AAElC,EAAA,IAAMuD,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIvH,OAAO,EAAA;AAAA,IAAA,IAAED,KAAK,GAAAyH,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAG,CAAC;IAAA,oBAC/CnH,mBAAA,CAACwD,eAAe,EAAA;AAEZ7D,MAAAA,OAAO,EAAPA,OAAO;AACPiE,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBlE,MAAAA,KAAK,EAALA,KAAK;AACLgE,MAAAA,gCAAgC,EAAhCA,gCAAgC;AAChCC,MAAAA,kCAAkC,EAAlCA,kCAAkC;MAEpCG,YAAY,EAAA,IAAA;MACZI,OAAO,EAAEvE,OAAO,CAACuE,OAAQ;AACzBT,MAAAA,QAAQ,EAAEmD,iBAAiB,KAAKjH,OAAO,CAACwF,EAAG;AAC3ChF,MAAAA,GAAG,EAAER,OAAO,CAACwF,EAAE,IAAIzF,KAAM;AACzB,MAAA,aAAA,EAAA,iBAAA,CAAAL,MAAA,CACEiI,KAAK,CAACC,OAAO,CAACR,iBAAiB,CAAC,GAAA,GAAA,CAAA1H,MAAA,CAAOK,KAAK,GAAG,CAAC,IAAK,EAAE;AACtD,KACJ,CAAC;EAAA,CACH;AAED,EAAA,IAAAwC,eAAA,GAAcC,2BAAc,EAAE;IAAtBzE,CAAC,GAAAwE,eAAA,CAADxE,CAAC;EAET,oBACE0B,eAAA,CAAAkB,mBAAA,EAAA;IAAAzC,QAAA,EAAA,cACET,cAAA,CAACuE,QAAQ,EAAA;AAELsE,MAAAA,cAAc,EAAdA,cAAc;AACdC,MAAAA,aAAa,EAAbA,aAAa;AACbC,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBH,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBrH,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBkB,MAAAA,eAAe,EAAfA,eAAe;AACfkG,MAAAA,sBAAsB,EAAtBA;AAAsB,KAEzB,CAAC,eACF3G,eAAA,CAACtC,IAAI,EAAA;AAAC,MAAA,aAAA,EAAY,6BAA6B;MAAAe,QAAA,EAAA,cAC7CT,cAAA,CAACO,UAAU,EAAA;AAACL,QAAAA,SAAS,EAAC,MAAM;AAACkC,QAAAA,KAAK,EAAC,OAAO;QAAA3B,QAAA,EACvCH,CAAC,CAAC,0DAA0D;AAAC,OACpD,CAAC,EACZ4J,KAAK,CAACC,OAAO,CAACR,iBAAiB,CAAC,GAC7B/D,oBAAU,CAAC+D,iBAAiB,CAAC,IAC7BA,iBAAiB,CAAC5F,GAAG,CAAC+F,qBAAqB,CAAC,GAC5CnE,mBAAS,CAACgE,iBAAiB,CAAC,IAC5BG,qBAAqB,CAACH,iBAAiB,CAAC,eAC5C3J,cAAA,CAACoE,aAAS,EAAA;AACRC,QAAAA,WAAW,EAAEjF,mCAAoC;QACjDkF,IAAI,EAAE/E,eAAe,CAACE,gBAAiB;QAAAgB,QAAA,EAEtC,SAAAA,QAAAA,CAAA2J,KAAA,EAAA;AAAA,UAAA,IAAGhH,QAAQ,GAAAgH,KAAA,CAARhH,QAAQ;YAAEiH,cAAc,GAAAD,KAAA,CAAdC,cAAc;YAAEtE,WAAW,GAAAqE,KAAA,CAAXrE,WAAW;AAAA,UAAA,oBACvC/D,eAAA,CAAA,KAAA,EAAA/B,aAAA,CAAAA,aAAA,CAAA;AACEkD,YAAAA,GAAG,EAAEC;AAAS,WAAA,EACViH,cAAc,CAAA,EAAA,EAAA,EAAA;AAClB,YAAA,aAAA,EAAY,uCAAuC;AAAA5J,YAAAA,QAAA,EAAA,CAElDgJ,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,MAAA,GAAA,MAAA,GAAhBA,gBAAgB,CAAE1F,GAAG,CAAC,UAACxB,OAAO,EAAED,KAAK,EAAK;AAAA,cAAA,IAAAgI,iBAAA,EAAAC,WAAA,EAAAC,YAAA;AACzC,cAAA,IAAMC,SAAS,GAAA,CAAAH,iBAAA,GAAGf,gBAAgB,aAAhBA,gBAAgB,KAAA,MAAA,GAAA,MAAA,GAAhBA,gBAAgB,CAAGhH,OAAO,CAAC,MAAA,IAAA,IAAA+H,iBAAA,KAAA,MAAA,GAAAA,iBAAA,GAAI,IAAI;AAErD,cAAA,IAAI,CAACG,SAAS,EAAE,OAAO,IAAI;cAE3B,IAAMC,iBAAiB,GAAGd,kBAAkB,CAACnE,QAAQ,CACnDlD,OAAO,CAACwF,EACV,CAAC;AAED,cAAA,IAAM5G,cAAc,GAAGmI,iBAAiB,IAAIoB,iBAAiB;cAE7D,IAAM3H,GAAG,IAAAwH,WAAA,GACPhI,OAAO,CAACwF,EAAE,cAAAwC,WAAA,KAAA,MAAA,GAAAA,WAAA,GAAA,UAAA,CAAAtI,MAAA,CAAeC,sBAAc,CAACK,OAAO,CAAC3B,KAAK,CAAC,CAAE;cAE1D,oBACEgC,mBAAA,CAACC,aAAS,EAAA;AACFP,gBAAAA,KAAK,EAALA,KAAK;AAAEnB,gBAAAA,cAAc,EAAdA,cAAc;AAC3B2B,gBAAAA,WAAW,EAAA,CAAA0H,YAAA,GAAEjI,OAAO,CAACwF,EAAE,MAAA,IAAA,IAAAyC,YAAA,KAAA,MAAA,GAAAA,YAAA,GAAA,UAAA,CAAAvI,MAAA,CAAeK,KAAK,CAAG;AAC9CS,gBAAAA,GAAG,EAAEA;AAAI,eAAA,EAER,UAAA4H,KAAA,EAAA;AAAA,gBAAA,IAAAC,YAAA;AAAA,gBAAA,IAAGxH,QAAQ,GAAAuH,KAAA,CAARvH,QAAQ;kBAAEC,cAAc,GAAAsH,KAAA,CAAdtH,cAAc;kBAAEC,eAAe,GAAAqH,KAAA,CAAfrH,eAAe;AAAA,gBAAA,oBAC3CtD,cAAA,CAAA,KAAA,EAAAC,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAA;AACEkD,kBAAAA,GAAG,EAAEC;iBAAS,EACVC,cAAc,GACdC,eAAe,CAAA,EAAA,EAAA,EAAA;kBAAA7C,QAAA,eAEnBmC,mBAAA,CAACwD,eAAe,EAAA;AAEZ7D,oBAAAA,OAAO,EAAPA,OAAO;AACPiE,oBAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBF,oBAAAA,gCAAgC,EAAhCA,gCAAgC;AAChCC,oBAAAA,kCAAkC,EAAlCA,kCAAkC;oBAEpCG,YAAY,EAAA,IAAA;AACZI,oBAAAA,OAAO,EAAE+C,sBAAuB;AAChCxD,oBAAAA,QAAQ,EAAEmD,iBAAiB,KAAKjH,OAAO,CAACwF,EAAG;oBAC3Cf,WAAW,EAAE,CAAC7F,cAAe;oBAC7B4B,GAAG,EAAA,CAAA6H,YAAA,GAAErI,OAAO,CAACwF,EAAE,MAAA,IAAA,IAAA6C,YAAA,KAAA,MAAA,GAAAA,YAAA,GAAItI;mBACpB;AAAC,iBAAA,CACC,CAAC;AAAA,cAAA,CAEC,CAAC;YAEhB,CAAC,CAAC,EACDyD,WAAW;AAAA,WAAA,CACT,CAAC;AAAA,QAAA;OAEC,CAAC,EACXJ,mBAAS,CAAC+D,gBAAgB,CAAC,iBAC1B1J,cAAA,CAACoG,eAAe,EAAA;AAEZI,QAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBF,QAAAA,gCAAgC,EAAhCA,gCAAgC;AAChCC,QAAAA,kCAAkC,EAAlCA,kCAAkC;QAEpCG,YAAY,EAAA,IAAA;QACZI,OAAO,EAAE4C,gBAAgB,CAAC5C,OAAQ;AAClC,QAAA,aAAA,EAAY,uBAAuB;AACnCvE,QAAAA,OAAO,EAAEmH,gBAAiB;AAC1BrD,QAAAA,QAAQ,EAAEmD,iBAAiB,KAAKE,gBAAgB,CAAC3B;AAAG,OACrD,CACF;AAAA,KACG,CAAC;AAAA,GACP,CAAC;AAEP,CAAC;;AC3ID,IAAM8C,aAAa,GAAG,SAAhBA,aAAaA,CAAAlL,IAAA,EAqBb;AAAA,EAAA,IApBJkF,eAAe,GAAAlF,IAAA,CAAfkF,eAAe;IAAAiG,qBAAA,GAAAnL,IAAA,CACf8J,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAqB,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IACrBC,gBAAgB,GAAApL,IAAA,CAAhBoL,gBAAgB;IAChBxB,gBAAgB,GAAA5J,IAAA,CAAhB4J,gBAAgB;IAChBI,iBAAiB,GAAAhK,IAAA,CAAjBgK,iBAAiB;IACjBD,gBAAgB,GAAA/J,IAAA,CAAhB+J,gBAAgB;IAAAsB,qBAAA,GAAArL,IAAA,CAChBiK,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAoB,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,qBAAA,GAAAtL,IAAA,CACvB2J,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAA2B,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAAAC,qBAAA,GAAAvL,IAAA,CACxBkE,sBAAsB;AAAtBA,IAAAA,sBAAsB,GAAAqH,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAC7B1E,mBAAmB,GAAA7G,IAAA,CAAnB6G,mBAAmB;IACnBgD,iBAAiB,GAAA7J,IAAA,CAAjB6J,iBAAiB;IACjBK,sBAAsB,GAAAlK,IAAA,CAAtBkK,sBAAsB;IAAAsB,mBAAA,GAAAxL,IAAA,CACtBkJ,cAAc;AAAdA,IAAAA,cAAc,GAAAsC,mBAAA,KAAA,MAAA,GAAG1H,cAAI,GAAA0H,mBAAA;IAAAC,qBAAA,GAAAzL,IAAA,CACrBiJ,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAwC,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAC,qBAAA,GAAA1L,IAAA,CAC3BgJ,sBAAsB;AAAtBA,IAAAA,sBAAsB,GAAA0C,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAC,qBAAA,GAAA3L,IAAA,CAC9B4B,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAA+J,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAC1BxC,aAAa,GAAAnJ,IAAA,CAAbmJ,aAAa;IACbC,kBAAkB,GAAApJ,IAAA,CAAlBoJ,kBAAkB;IAAAwC,qBAAA,GAAA5L,IAAA,CAClB2G,gCAAgC;AAAhCA,IAAAA,gCAAgC,GAAAiF,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAC,qBAAA,GAAA7L,IAAA,CACxC4G,kCAAkC;AAAlCA,IAAAA,kCAAkC,GAAAiF,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAEvC,EAAA,IAAAxG,SAAA,GAAwCC,cAAQ,CAAChG,WAAW,CAACC,OAAO,CAAC;IAAAgG,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA9DyG,IAAAA,YAAY,GAAAvG,UAAA,CAAA,CAAA,CAAA;AAAEzC,IAAAA,eAAe,GAAAyC,UAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAAwG,eAAA,GAAmBC,yBAAc,EAAE;IAA3BC,MAAM,GAAAF,eAAA,CAANE,MAAM;AACd,EAAA,IAAMC,cAAc,GAAG,CAACD,MAAM,CAAC,QAAQ,CAAC;AAExC,EAAA,IAAAE,UAAA,GACE7G,cAAQ,CAAC,CAAC4G,cAAc,CAAC;IAAAE,UAAA,GAAA5G,cAAA,CAAA2G,UAAA,EAAA,CAAA,CAAA;AADpBE,IAAAA,wBAAwB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,2BAA2B,GAAAF,UAAA,CAAA,CAAA,CAAA;AAG5DxE,EAAAA,eAAS,CAAC,YAAM;IACd0E,2BAA2B,CAAC,CAACJ,cAAc,CAAC;AAC9C,EAAA,CAAC,EAAE,CAACA,cAAc,CAAC,CAAC;EAEpB,oBACE7J,eAAA,CAAAkB,mBAAA,EAAA;AAAAzC,IAAAA,QAAA,EAAA,CACG,CAACuL,wBAAwB,iBACxBhM,cAAA,CAAA,KAAA,EAAA;AACEE,MAAAA,SAAS,EAAC,yCAAyC;AACnDe,MAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;QACbgL,2BAA2B,CAAC,CAACD,wBAAwB,CAAC;AACxD,MAAA;KACD,CACF,eACDhK,eAAA,CAAA,KAAA,EAAA;AACE9B,MAAAA,SAAS,EAAEC,UAAU,CACnB,sDAAsD,EACtD;AACE,QAAA,iEAAiE,EAC/D6L;AACJ,OACF,CAAE;AAAAvL,MAAAA,QAAA,gBAEFT,cAAA,CAAA,KAAA,EAAA;AAAKE,QAAAA,SAAS,EAAC,wDAAwD;AAAAO,QAAAA,QAAA,eACrET,cAAA,CAAA,KAAA,EAAA;AACEE,UAAAA,SAAS,EAAEC,UAAU,CACnB,6CAA6C,EAC7C;AACE,YAAA,mBAAmB,EAAEsL,YAAY,KAAKxM,WAAW,CAACC,OAAO;AACzD,YAAA,qBAAqB,EAAEuM,YAAY,KAAKxM,WAAW,CAACC;AACtD,WACF,CAAE;AACF+B,UAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEQ,KAAK,EAAA;AAAA,YAAA,OAAIA,KAAK,CAAC8G,eAAe,EAAE;UAAA,CAAC;UAAA9H,QAAA,EAEzCgL,YAAY,KAAKxM,WAAW,CAACC,OAAO,gBACnCc,cAAA,CAACqJ,oBAAoB,EAAA;AAEjBR,YAAAA,cAAc,EAAdA,cAAc;AACdC,YAAAA,aAAa,EAAbA,aAAa;AACbC,YAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBa,YAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBD,YAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBD,YAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBlD,YAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBoC,YAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBrH,YAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBgI,YAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBD,YAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBhD,YAAAA,gCAAgC,EAAhCA,gCAAgC;AAChCuD,YAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBtD,YAAAA,kCAAkC,EAAlCA,kCAAkC;AAClCiD,YAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBC,YAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBhH,YAAAA,eAAe,EAAfA,eAAe;AACfkG,YAAAA,sBAAsB,EAAtBA;AAAsB,WAEzB,CAAC,gBAEF3I,cAAA,CAAC2E,WAAW,EAAA;AAERE,YAAAA,eAAe,EAAfA,eAAe;AACftD,YAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBsC,YAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBpB,YAAAA,eAAe,EAAfA,eAAe;AAEjBD,YAAAA,QAAQ,EAAEuI;WACX;SAEA;AAAC,OACH,CAAC,eACN/K,cAAA,CAACyE,MAAM,EAAA;AACLvE,QAAAA,SAAS,EAAC,sDAAsD;AAChEY,QAAAA,IAAI,EAAEoL,QAAS;AACf9J,QAAAA,KAAK,EAAC,WAAW;AACjBnB,QAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;UACbgL,2BAA2B,CAAC,CAACD,wBAAwB,CAAC;AACxD,QAAA;AAAE,OACH,CAAC;AAAA,KACC,CAAC;AAAA,GACN,CAAC;AAEP;;AC1HA,IAAMG,aAAa,GAAG9L,KAAK,CAAC,UAAAV,IAAA,EAAA;AAAA,EAAA,IAAGW,CAAC,GAAAX,IAAA,CAADW,CAAC;AAAA,EAAA,oBAC9B0B,eAAA,CAAA,KAAA,EAAA;AAAK9B,IAAAA,SAAS,EAAC,uBAAuB;AAAAO,IAAAA,QAAA,gBACpCT,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,qIAAqI;MAAAO,QAAA,eAClJT,cAAA,CAACO,UAAU,EAAA;AACTL,QAAAA,SAAS,EAAC,aAAa;AACvB,QAAA,aAAA,EAAY,uBAAuB;AACnCsE,QAAAA,UAAU,EAAC,QAAQ;AACnBpC,QAAAA,KAAK,EAAC,OAAO;QAAA3B,QAAA,EAEZH,CAAC,CAAC,oDAAoD;OAC7C;KACT,CAAC,eACNN,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC;KAAwD,CAAC,eACxEF,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC;AAAsD,KAAE,CAAC;AAAA,GACrE,CAAC;AAAA,CACP,CAAC;;ACdF,IAAMkM,QAAQ,GAAG/L,KAAK,CAAC,UAAAV,IAAA,EAAA;AAAA,EAAA,IAAGW,CAAC,GAAAX,IAAA,CAADW,CAAC;AAAA,EAAA,oBACzB0B,eAAA,CAAA,KAAA,EAAA;AAAK9B,IAAAA,SAAS,EAAC,uBAAuB;AAAAO,IAAAA,QAAA,gBACpCT,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC;KAAwD,CAAC,eACxE8B,eAAA,CAAA,KAAA,EAAA;AAAK9B,MAAAA,SAAS,EAAC,qIAAqI;MAAAO,QAAA,EAAA,cAClJT,cAAA,CAACO,UAAU,EAAA;AACTL,QAAAA,SAAS,EAAC,aAAa;AACvB,QAAA,aAAA,EAAY,uBAAuB;AACnCsE,QAAAA,UAAU,EAAC,QAAQ;AACnBpC,QAAAA,KAAK,EAAC,OAAO;QAAA3B,QAAA,EAEZH,CAAC,CAAC,uDAAuD;AAAC,OACjD,CAAC,eACbN,cAAA,CAACqM,SAAS,IAAE,CAAC;KACV,CAAC,eACNrM,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC;KAAwD,CAAC,eACxEF,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC;AAAsD,KAAE,CAAC;AAAA,GACrE,CAAC;AAAA,CACP,CAAC;;ACTF,IAAMoM,eAAe,GAAG,SAAlBA,eAAeA,CAAA3M,IAAA,EAAkC;AAAA,EAAA,IAA5BoI,EAAE,GAAApI,IAAA,CAAFoI,EAAE;IAAEtH,QAAQ,GAAAd,IAAA,CAARc,QAAQ;IAAE8L,OAAO,GAAA5M,IAAA,CAAP4M,OAAO;AAC9C,EAAA,IAAAb,eAAA,GAAmBC,yBAAc,CAAC,UAAAa,MAAM,EAAA;MAAA,OAAK;AAC3CC,QAAAA,YAAY,EAAED,MAAM,CAACE,UAAU,IAAI;OACpC;AAAA,IAAA,CAAC,CAAC;IAFKd,MAAM,GAAAF,eAAA,CAANE,MAAM;AAGd,EAAA,IAAMC,cAAc,GAAGD,MAAM,CAAC,cAAc,CAAC;AAC7C,EAAA,IAAA5G,SAAA,GACEC,cAAQ,CAAC,CAAC4G,cAAc,CAAC;IAAA3G,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AADpB2H,IAAAA,0BAA0B,GAAAzH,UAAA,CAAA,CAAA,CAAA;AAAE0H,IAAAA,6BAA6B,GAAA1H,UAAA,CAAA,CAAA,CAAA;AAGhEqC,EAAAA,eAAS,CAAC,YAAM;IACdqF,6BAA6B,CAAC,CAACf,cAAc,CAAC;AAChD,EAAA,CAAC,EAAE,CAACA,cAAc,CAAC,CAAC;AAEpBtE,EAAAA,eAAS,CAAC,YAAM;IACd,IAAI,CAACQ,EAAE,EAAE;IACT6E,6BAA6B,CAAC,KAAK,CAAC;AACtC,EAAA,CAAC,EAAE,CAAC7E,EAAE,CAAC,CAAC;AAER,EAAA,IAAM8E,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAS;IAChCD,6BAA6B,CAAC,CAACD,0BAA0B,CAAC;AAC1DJ,IAAAA,OAAO,aAAPA,OAAO,KAAA,MAAA,IAAPA,OAAO,CAAGxE,EAAE,CAAC;EACf,CAAC;EAED,oBACE/F,eAAA,CAAAkB,mBAAA,EAAA;AAAAzC,IAAAA,QAAA,EAAA,CACG,CAACkM,0BAA0B,iBAC1B3M,cAAA,CAAA,KAAA,EAAA;AACEE,MAAAA,SAAS,EAAC,2FAA2F;AACrGe,MAAAA,OAAO,EAAE4L;KACV,CACF,eACD7K,eAAA,CAAA,KAAA,EAAA;AACE9B,MAAAA,SAAS,EAAEC,UAAU,CACnB,2DAA2D,EAC3D;AACE,QAAA,sEAAsE,EACpEwM;AACJ,OACF,CAAE;AAAAlM,MAAAA,QAAA,gBAEFT,cAAA,CAAA,KAAA,EAAA;AACEE,QAAAA,SAAS,EAAC,oEAAoE;AAC9E,QAAA,aAAA,EAAY,kBAAkB;QAAAO,QAAA,EAE7BA,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,MAAA,GAARA,QAAQ,gBAAIT,cAAA,CAACoM,QAAQ,EAAA,EAAE;AAAC,OACtB,CAAC,EACL,CAACO,0BAA0B,iBAC1B3M,cAAA,CAACyE,MAAM,EAAA;AACLvE,QAAAA,SAAS,EAAC,iDAAiD;AAC3DY,QAAAA,IAAI,EAAE4D,KAAM;AACZtC,QAAAA,KAAK,EAAC,WAAW;AACjBnB,QAAAA,OAAO,EAAE4L;AAAoB,OAC9B,CACF;AAAA,KACE,CAAC;AAAA,GACN,CAAC;AAEP;AAEAP,eAAe,CAACH,aAAa,GAAGA,aAAa;;;;;;;;;;"}
@@ -133,7 +133,7 @@ var findOwnIndex = neetoCist.findIndexBy({
133
133
  userId: initializers.globalProps.user.id
134
134
  });
135
135
  var groupReactions = ramda.collectBy(ramda.prop("unified"));
136
- var Reactions = function Reactions(_ref) {
136
+ var Reactions$1 = function Reactions(_ref) {
137
137
  var reactions = _ref.reactions,
138
138
  onAdd = _ref.onAdd,
139
139
  onRemove = _ref.onRemove;
@@ -192,7 +192,7 @@ var Reactions = function Reactions(_ref) {
192
192
  })]
193
193
  });
194
194
  };
195
- var Reactions$1 = /*#__PURE__*/React.memo(Reactions, ramda.eqProps("reactions"));
195
+ var Reactions = /*#__PURE__*/React.memo(Reactions$1, ramda.eqProps("reactions"));
196
196
 
197
197
  var ENGAGEMENT_TYPES = {
198
198
  COMMENT: "comment",
@@ -228,7 +228,7 @@ var Comment = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
228
228
  user: user
229
229
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
230
230
  className: "neeto-molecules-comments-node__inner p-4",
231
- children: [children, reactions !== false && /*#__PURE__*/jsxRuntime.jsx(Reactions$1, {
231
+ children: [children, reactions !== false && /*#__PURE__*/jsxRuntime.jsx(Reactions, {
232
232
  reactions: reactions,
233
233
  onAdd: onAddReaction,
234
234
  onRemove: onRemoveReaction
@@ -1 +1 @@
1
- {"version":3,"file":"Engagements.js","sources":["../../src/components/Engagements/Activity/Icon.jsx","../../src/components/Engagements/Activity/index.jsx","../../src/components/Engagements/Comment/Header.jsx","../../src/components/Engagements/Comment/Reactions.jsx","../../src/components/Engagements/constants.js","../../src/components/Engagements/utils.js","../../src/components/Engagements/Comment/index.jsx","../../src/components/Engagements/index.jsx"],"sourcesContent":["import classNames from \"classnames\";\n\nconst ActivityIcon = ({ icon, unread }) => (\n <div className=\"mx-0.5 flex-shrink-0\">\n <span\n className={classNames(\n \"neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-full neeto-molecules-activity-node-icon relative z-10 flex h-7 w-7 items-center justify-center p-1\",\n {\n \"neeto-ui-text-primary-600 neeto-ui-bg-primary-100\": unread,\n }\n )}\n >\n {icon}\n {unread && (\n <span className=\"neeto-ui-rounded-full neeto-ui-bg-primary-800 absolute -end-0.5 -top-0.5 h-2 w-2\" />\n )}\n </span>\n </div>\n);\n\nexport default ActivityIcon;\n","import classNames from \"classnames\";\nimport { Avatar } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport ActivityIcon from \"./Icon\";\n\nconst Activity = ({\n user,\n icon,\n unread = false,\n className,\n children,\n userIcon,\n}) => (\n <div\n className={classNames(\n \"neeto-molecules-engagements-node relative -mt-4 flex items-center gap-2 px-4 py-4\",\n className\n )}\n >\n <ActivityIcon {...{ icon, unread }} />\n {userIcon || (\n <Avatar\n size=\"small\"\n user={{ name: user.name, imageUrl: user.profileImageUrl }}\n />\n )}\n <div className=\"neeto-molecules-engagements-node__children\">{children}</div>\n </div>\n);\n\nActivity.propTypes = {\n /** Object representing the user information */\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n\n /** Element to render as the icon */\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n\n /** Boolean indicating if the activity is unread to show unread badge */\n unread: PropTypes.bool,\n\n /** Additional classes passed on to the board view. */\n className: PropTypes.string,\n};\n\nexport default Activity;\n","import { isPresent } from \"neetocist\";\nimport { Avatar, Typography } from \"neetoui\";\n\nimport DateFormat from \"components/DateFormat\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst CommentHeader = ({ user, comment, info, actions }) => {\n const avatar = { name: user.name, imageUrl: user.profileImageUrl };\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 flex items-center justify-between rounded-t-md border-b py-1 pe-1 ps-4\">\n <div className=\"flex min-w-0 flex-grow flex-wrap items-center gap-2\">\n <Avatar size=\"medium\" user={avatar} />\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {user.name}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n •\n </Typography>\n {info && (\n <>\n <Typography\n className=\"neeto-ui-text-gray-500 lowercase\"\n style=\"body2\"\n >\n {info}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n •\n </Typography>\n </>\n )}\n {comment.createdAt && (\n <DateFormat.FromNow\n date={comment.createdAt}\n typographyProps={{\n style: \"body2\",\n className: \"neeto-ui-text-gray-500\",\n }}\n />\n )}\n </div>\n {isPresent(actions) && (\n <MoreDropdown\n dropdownButtonProps={{ className: \"self-start fles-shrink-0\" }}\n dropdownProps={{ position: \"bottom-start\" }}\n menuItems={actions}\n />\n )}\n </div>\n );\n};\n\nexport default CommentHeader;\n","import { memo } from \"react\";\n\nimport classNames from \"classnames\";\nimport { findIndexBy } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { collectBy, eqProps, pathEq, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmojiPicker from \"components/EmojiPicker\";\n\nconst findOwnIndex = findIndexBy({ userId: globalProps.user.id });\nconst groupReactions = collectBy(prop(\"unified\"));\n\nconst Reactions = ({ reactions, onAdd, onRemove }) => {\n const { t } = useTranslation();\n const groups = groupReactions(reactions);\n\n const onSelect = emoji => {\n // Try to find group to which emoji belongs in existing reactions.\n const group = groups.find(pathEq(emoji.unified, [0, \"unified\"]));\n if (group && findOwnIndex(group) >= 0) return; // User already reacted with same emoji.\n onAdd({ ...emoji, emoji: emoji.native });\n };\n\n return (\n <div className=\"mt-2 flex flex-wrap gap-0.5\">\n <div className=\"neeto-ui-rounded-full neeto-ui-bg-gray-200 me-2\">\n <EmojiPicker {...{ onSelect }} />\n </div>\n {groups.map(reactions => {\n const ownIndex = findOwnIndex(reactions);\n const selected = ownIndex >= 0;\n const reaction = selected ? reactions[ownIndex] : reactions[0];\n const names = pluck(\"reactor\", reactions).join(\", \");\n\n return (\n <Tooltip\n key={reaction.unified}\n position=\"top\"\n content={\n <p className=\"text-center text-xs\">\n {t(\"neetoMolecules.engagements.namesReacted\", { names })}\n </p>\n }\n >\n <div\n className={classNames(\n \"neeto-ui-rounded-full mx-1 flex cursor-pointer items-center justify-center px-2 py-1\",\n {\n \"neeto-ui-bg-accent-100\": selected,\n \"neeto-ui-bg-gray-100\": !selected,\n }\n )}\n onClick={() => (selected ? onRemove : onAdd)(reaction)}\n >\n <Typography\n className=\"flex items-center gap-x-1 text-sm\"\n style=\"body2\"\n >\n <span className=\"text-sm\">{reaction.emoji}</span>\n <span className=\"text-sm\">{reactions.length}</span>\n </Typography>\n </div>\n </Tooltip>\n );\n })}\n </div>\n );\n};\n\nexport default memo(Reactions, eqProps(\"reactions\"));\n","export const ACTIVITY_TYPES = {\n TIMELINE: \"Timeline\",\n FIELD_VALUE: \"FieldValue\",\n TASK: \"Task\",\n ASSIGNEE: \"Assignee\",\n CHECKLIST: \"Checklist\",\n FIELD: \"Field\",\n PROJECT: \"Project\",\n COMMENT: \"Comment\",\n DOCUMENT: \"Document\",\n CHAT_MESSAGE: \"ChatMessage\",\n MESSAGE: \"Message\",\n SECTION: \"Section\",\n PROJECT_MEMBER: \"ProjectMember\",\n PULL_REQUEST: \"NeetoGithubEngine::PullRequest\",\n};\n\nexport const ENGAGEMENT_TYPES = {\n COMMENT: \"comment\",\n ACTIVITY: \"activity\",\n};\n","import { ENGAGEMENT_TYPES } from \"./constants\";\n\nexport const createCommentElementId = comment =>\n `neeto-molecules-engagement-comment--${comment.id}`;\n\nexport const defaultMatchType = engagement => {\n if (engagement.commenter) return ENGAGEMENT_TYPES.COMMENT;\n else if (engagement.creator) return ENGAGEMENT_TYPES.ACTIVITY;\n\n return null;\n};\n","import { forwardRef } from \"react\";\n\nimport classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport CommentHeader from \"./Header\";\nimport Reactions from \"./Reactions\";\n\nimport { createCommentElementId } from \"../utils\";\n\nconst Comment = forwardRef(\n (\n {\n user,\n comment,\n reactions,\n info,\n actions,\n className,\n children,\n onAddReaction,\n onRemoveReaction,\n },\n ref\n ) => (\n <div\n {...{ ref }}\n id={createCommentElementId(comment)}\n className={classNames(\n \"neeto-ui-bg-white neeto-ui-rounded-md neeto-ui-border-gray-300 neeto-molecules-comments-node mb-4 w-full border\",\n className\n )}\n >\n <CommentHeader {...{ actions, comment, info, user }} />\n <div className=\"neeto-molecules-comments-node__inner p-4\">\n {children}\n {reactions !== false && (\n <Reactions\n {...{ reactions }}\n onAdd={onAddReaction}\n onRemove={onRemoveReaction}\n />\n )}\n </div>\n </div>\n )\n);\n\nComment.displayName = \"Comment\";\nComment.propTypes = {\n /** Object representing the user information */\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n\n /** Object representing the comment item. */\n comment: PropTypes.shape({\n id: PropTypes.string.isRequired,\n createdAt: PropTypes.string.isRequired,\n }).isRequired,\n\n /** Array of reactions. Settings this to `false` will disable reactions for the item */\n reactions: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n\n /** Optional text label to be displayed in the header. */\n info: PropTypes.string,\n\n /** Optional action items to be passed to the menuItems prop of the actions dropdown */\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n isVisible: PropTypes.bool,\n key: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n })\n ),\n\n /** Additional classes passed on to the board view. */\n className: PropTypes.string,\n\n /** Callback function triggered when a reaction (emoji) is added */\n onAddReaction: PropTypes.func,\n\n /** Callback function triggered when a reaction (emoji) is removed*/\n onRemoveReaction: PropTypes.func,\n};\n\nexport default Comment;\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport Activity from \"./Activity\";\nimport Comment from \"./Comment\";\nimport { ENGAGEMENT_TYPES } from \"./constants\";\nimport \"./engagements.scss\";\nimport { defaultMatchType } from \"./utils\";\n\nconst Engagements = ({\n data,\n isActivitiesEnabled = false,\n matchType = defaultMatchType,\n renderComment,\n renderActivity,\n}) => {\n const rendererHashmap = {\n [ENGAGEMENT_TYPES.COMMENT]: renderComment,\n [ENGAGEMENT_TYPES.ACTIVITY]: isActivitiesEnabled ? renderActivity : noop,\n };\n\n return (\n <>\n {data.map((engagement, index) => {\n const type = matchType(engagement);\n const renderer = rendererHashmap[type];\n if (!renderer) return null;\n\n return (\n <React.Fragment key={engagement.id}>\n {renderer(engagement, index)}\n </React.Fragment>\n );\n })}\n </>\n );\n};\n\nEngagements.displayName = \"Engagements\";\nEngagements.Comment = Comment;\nEngagements.Activity = Activity;\nEngagements.TYPES = ENGAGEMENT_TYPES;\n\nEngagements.propTypes = {\n /** An array of engagement items */\n data: PropTypes.arrayOf(PropTypes.shape({ id: PropTypes.string.isRequired }))\n .isRequired,\n\n /** Boolean, determines whether activities are rendered. Defaults to false */\n isActivitiesEnabled: PropTypes.bool,\n\n /** Optional function to match the item type. Receives item as argument and should return one of Engagements.TYPES.*/\n matchType: PropTypes.func,\n\n /** A function to render individual comment item. Receives comment and index as arguments */\n renderComment: PropTypes.func.isRequired,\n\n /** A function to render individual activity item. Receives comment and index as arguments */\n renderActivity: PropTypes.func.isRequired,\n};\n\nexport default Engagements;\n"],"names":["ActivityIcon","_ref","icon","unread","_jsx","className","children","_jsxs","classNames","Activity","user","_ref$unread","userIcon","Avatar","size","name","imageUrl","profileImageUrl","CommentHeader","comment","info","actions","avatar","Typography","style","weight","_Fragment","createdAt","DateFormat","FromNow","date","typographyProps","isPresent","MoreDropdown","dropdownButtonProps","dropdownProps","position","menuItems","findOwnIndex","findIndexBy","userId","globalProps","id","groupReactions","collectBy","prop","Reactions","reactions","onAdd","onRemove","_useTranslation","useTranslation","t","groups","onSelect","emoji","group","find","pathEq","unified","_objectSpread","EmojiPicker","map","ownIndex","selected","reaction","names","pluck","join","Tooltip","content","onClick","length","memo","eqProps","ENGAGEMENT_TYPES","COMMENT","ACTIVITY","createCommentElementId","concat","defaultMatchType","engagement","commenter","creator","Comment","forwardRef","ref","onAddReaction","onRemoveReaction","displayName","propTypes","PropTypes","shape","string","isRequired","oneOfType","array","bool","arrayOf","isVisible","key","label","func","Engagements","data","_ref$isActivitiesEnab","isActivitiesEnabled","_ref$matchType","matchType","renderComment","renderActivity","rendererHashmap","_defineProperty","noop","index","type","renderer","React","Fragment","TYPES"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;AAAA,EAAA,oBAClCC,cAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,sBAAsB;AAAAC,IAAAA,QAAA,eACnCC,eAAA,CAAA,MAAA,EAAA;AACEF,MAAAA,SAAS,EAAEG,UAAU,CACnB,iKAAiK,EACjK;AACE,QAAA,mDAAmD,EAAEL;AACvD,OACF,CAAE;AAAAG,MAAAA,QAAA,EAAA,CAEDJ,IAAI,EACJC,MAAM,iBACLC,cAAA,CAAA,MAAA,EAAA;AAAMC,QAAAA,SAAS,EAAC;AAAkF,OAAE,CACrG;KACG;AAAC,GACJ,CAAC;AAAA,CACP;;ACZD,IAAMI,QAAQ,GAAG,SAAXA,QAAQA,CAAAR,IAAA,EAAA;AAAA,EAAA,IACZS,IAAI,GAAAT,IAAA,CAAJS,IAAI;IACJR,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAAS,WAAA,GAAAV,IAAA,CACJE,MAAM;AAANA,IAAAA,MAAM,GAAAQ,WAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,WAAA;IACdN,SAAS,GAAAJ,IAAA,CAATI,SAAS;IACTC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IACRM,QAAQ,GAAAX,IAAA,CAARW,QAAQ;AAAA,EAAA,oBAERL,eAAA,CAAA,KAAA,EAAA;AACEF,IAAAA,SAAS,EAAEG,UAAU,CACnB,mFAAmF,EACnFH,SACF,CAAE;IAAAC,QAAA,EAAA,cAEFF,cAAA,CAACJ,YAAY,EAAA;AAAOE,MAAAA,IAAI,EAAJA,IAAI;AAAEC,MAAAA,MAAM,EAANA;AAAM,KAAK,CAAC,EACrCS,QAAQ,iBACPR,cAAA,CAACS,MAAM,EAAA;AACLC,MAAAA,IAAI,EAAC,OAAO;AACZJ,MAAAA,IAAI,EAAE;QAAEK,IAAI,EAAEL,IAAI,CAACK,IAAI;QAAEC,QAAQ,EAAEN,IAAI,CAACO;AAAgB;KACzD,CACF,eACDb,cAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,4CAA4C;AAAAC,MAAAA,QAAA,EAAEA;AAAQ,KAAM,CAAC;AAAA,GACzE,CAAC;AAAA,CACP;;ACvBD,IAAMY,aAAa,GAAG,SAAhBA,aAAaA,CAAAjB,IAAA,EAAyC;AAAA,EAAA,IAAnCS,IAAI,GAAAT,IAAA,CAAJS,IAAI;IAAES,OAAO,GAAAlB,IAAA,CAAPkB,OAAO;IAAEC,IAAI,GAAAnB,IAAA,CAAJmB,IAAI;IAAEC,OAAO,GAAApB,IAAA,CAAPoB,OAAO;AACnD,EAAA,IAAMC,MAAM,GAAG;IAAEP,IAAI,EAAEL,IAAI,CAACK,IAAI;IAAEC,QAAQ,EAAEN,IAAI,CAACO;GAAiB;AAElE,EAAA,oBACEV,eAAA,CAAA,KAAA,EAAA;AAAKF,IAAAA,SAAS,EAAC,sHAAsH;AAAAC,IAAAA,QAAA,gBACnIC,eAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,qDAAqD;MAAAC,QAAA,EAAA,cAClEF,cAAA,CAACS,MAAM,EAAA;AAACC,QAAAA,IAAI,EAAC,QAAQ;AAACJ,QAAAA,IAAI,EAAEY;AAAO,OAAE,CAAC,eACtClB,cAAA,CAACmB,UAAU,EAAA;AACTlB,QAAAA,SAAS,EAAC,wBAAwB;AAClCmB,QAAAA,KAAK,EAAC,OAAO;AACbC,QAAAA,MAAM,EAAC,UAAU;QAAAnB,QAAA,EAEhBI,IAAI,CAACK;AAAI,OACA,CAAC,eACbX,cAAA,CAACmB,UAAU,EAAA;AAAClB,QAAAA,SAAS,EAAC,wBAAwB;AAACmB,QAAAA,KAAK,EAAC,OAAO;AAAAlB,QAAAA,QAAA,EAAC;AAE7D,OAAY,CAAC,EACZc,IAAI,iBACHb,eAAA,CAAAmB,mBAAA,EAAA;QAAApB,QAAA,EAAA,cACEF,cAAA,CAACmB,UAAU,EAAA;AACTlB,UAAAA,SAAS,EAAC,kCAAkC;AAC5CmB,UAAAA,KAAK,EAAC,OAAO;AAAAlB,UAAAA,QAAA,EAEZc;AAAI,SACK,CAAC,eACbhB,cAAA,CAACmB,UAAU,EAAA;AAAClB,UAAAA,SAAS,EAAC,wBAAwB;AAACmB,UAAAA,KAAK,EAAC,OAAO;AAAAlB,UAAAA,QAAA,EAAC;AAE7D,SAAY,CAAC;OACb,CACH,EACAa,OAAO,CAACQ,SAAS,iBAChBvB,cAAA,CAACwB,UAAU,CAACC,OAAO,EAAA;QACjBC,IAAI,EAAEX,OAAO,CAACQ,SAAU;AACxBI,QAAAA,eAAe,EAAE;AACfP,UAAAA,KAAK,EAAE,OAAO;AACdnB,UAAAA,SAAS,EAAE;AACb;AAAE,OACH,CACF;KACE,CAAC,EACL2B,mBAAS,CAACX,OAAO,CAAC,iBACjBjB,cAAA,CAAC6B,YAAY,EAAA;AACXC,MAAAA,mBAAmB,EAAE;AAAE7B,QAAAA,SAAS,EAAE;OAA6B;AAC/D8B,MAAAA,aAAa,EAAE;AAAEC,QAAAA,QAAQ,EAAE;OAAiB;AAC5CC,MAAAA,SAAS,EAAEhB;AAAQ,KACpB,CACF;AAAA,GACE,CAAC;AAEV,CAAC;;;;AC5CD,IAAMiB,YAAY,GAAGC,qBAAW,CAAC;AAAEC,EAAAA,MAAM,EAAEC,wBAAW,CAAC/B,IAAI,CAACgC;AAAG,CAAC,CAAC;AACjE,IAAMC,cAAc,GAAGC,eAAS,CAACC,UAAI,CAAC,SAAS,CAAC,CAAC;AAEjD,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAA7C,IAAA,EAAuC;AAAA,EAAA,IAAjC8C,SAAS,GAAA9C,IAAA,CAAT8C,SAAS;IAAEC,KAAK,GAAA/C,IAAA,CAAL+C,KAAK;IAAEC,QAAQ,GAAAhD,IAAA,CAARgD,QAAQ;AAC7C,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AACT,EAAA,IAAMC,MAAM,GAAGV,cAAc,CAACI,SAAS,CAAC;AAExC,EAAA,IAAMO,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,KAAK,EAAI;AACxB;AACA,IAAA,IAAMC,KAAK,GAAGH,MAAM,CAACI,IAAI,CAACC,YAAM,CAACH,KAAK,CAACI,OAAO,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;IAChE,IAAIH,KAAK,IAAIlB,YAAY,CAACkB,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO;AAC9CR,IAAAA,KAAK,CAAAY,aAAA,CAAAA,aAAA,KAAML,KAAK,CAAA,EAAA,EAAA,EAAA;AAAEA,MAAAA,KAAK,EAAEA,KAAK,CAAA,QAAA;AAAO,KAAA,CAAE,CAAC;EAC1C,CAAC;AAED,EAAA,oBACEhD,eAAA,CAAA,KAAA,EAAA;AAAKF,IAAAA,SAAS,EAAC,6BAA6B;AAAAC,IAAAA,QAAA,gBAC1CF,cAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,iDAAiD;MAAAC,QAAA,eAC9DF,cAAA,CAACyD,WAAW,EAAA;AAAOP,QAAAA,QAAQ,EAARA;OAAa;KAC7B,CAAC,EACLD,MAAM,CAACS,GAAG,CAAC,UAAAf,SAAS,EAAI;AACvB,MAAA,IAAMgB,QAAQ,GAAGzB,YAAY,CAACS,SAAS,CAAC;AACxC,MAAA,IAAMiB,QAAQ,GAAGD,QAAQ,IAAI,CAAC;AAC9B,MAAA,IAAME,QAAQ,GAAGD,QAAQ,GAAGjB,SAAS,CAACgB,QAAQ,CAAC,GAAGhB,SAAS,CAAC,CAAC,CAAC;AAC9D,MAAA,IAAMmB,KAAK,GAAGC,WAAK,CAAC,SAAS,EAAEpB,SAAS,CAAC,CAACqB,IAAI,CAAC,IAAI,CAAC;MAEpD,oBACEhE,cAAA,CAACiE,OAAO,EAAA;AAENjC,QAAAA,QAAQ,EAAC,KAAK;AACdkC,QAAAA,OAAO,eACLlE,cAAA,CAAA,GAAA,EAAA;AAAGC,UAAAA,SAAS,EAAC,qBAAqB;AAAAC,UAAAA,QAAA,EAC/B8C,CAAC,CAAC,yCAAyC,EAAE;AAAEc,YAAAA,KAAK,EAALA;WAAO;AAAC,SACvD,CACJ;AAAA5D,QAAAA,QAAA,eAEDF,cAAA,CAAA,KAAA,EAAA;AACEC,UAAAA,SAAS,EAAEG,UAAU,CACnB,sFAAsF,EACtF;AACE,YAAA,wBAAwB,EAAEwD,QAAQ;AAClC,YAAA,sBAAsB,EAAE,CAACA;AAC3B,WACF,CAAE;UACFO,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQ,CAACP,QAAQ,GAAGf,QAAQ,GAAGD,KAAK,EAAEiB,QAAQ,CAAC;UAAA,CAAC;UAAA3D,QAAA,eAEvDC,eAAA,CAACgB,UAAU,EAAA;AACTlB,YAAAA,SAAS,EAAC,mCAAmC;AAC7CmB,YAAAA,KAAK,EAAC,OAAO;AAAAlB,YAAAA,QAAA,gBAEbF,cAAA,CAAA,MAAA,EAAA;AAAMC,cAAAA,SAAS,EAAC,SAAS;cAAAC,QAAA,EAAE2D,QAAQ,CAACV;aAAY,CAAC,eACjDnD,cAAA,CAAA,MAAA,EAAA;AAAMC,cAAAA,SAAS,EAAC,SAAS;cAAAC,QAAA,EAAEyC,SAAS,CAACyB;AAAM,aAAO,CAAC;WACzC;SACT;OAAC,EAzBDP,QAAQ,CAACN,OA0BP,CAAC;AAEd,IAAA,CAAC,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;AAED,kBAAA,aAAec,UAAI,CAAC3B,SAAS,EAAE4B,aAAO,CAAC,WAAW,CAAC,CAAC;;ACtD7C,IAAMC,gBAAgB,GAAG;AAC9BC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,QAAQ,EAAE;AACZ,CAAC;;AClBM,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAG3D,OAAO,EAAA;AAAA,EAAA,OAAA,sCAAA,CAAA4D,MAAA,CACJ5D,OAAO,CAACuB,EAAE,CAAA;AAAA,CAAE;AAE9C,IAAMsC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,UAAU,EAAI;AAC5C,EAAA,IAAIA,UAAU,CAACC,SAAS,EAAE,OAAOP,gBAAgB,CAACC,OAAO,CAAC,KACrD,IAAIK,UAAU,CAACE,OAAO,EAAE,OAAOR,gBAAgB,CAACE,QAAQ;AAE7D,EAAA,OAAO,IAAI;AACb,CAAC;;ACAD,IAAMO,OAAO,gBAAGC,gBAAU,CACxB,UAAApF,IAAA,EAYEqF,GAAG,EAAA;AAAA,EAAA,IAVD5E,IAAI,GAAAT,IAAA,CAAJS,IAAI;IACJS,OAAO,GAAAlB,IAAA,CAAPkB,OAAO;IACP4B,SAAS,GAAA9C,IAAA,CAAT8C,SAAS;IACT3B,IAAI,GAAAnB,IAAA,CAAJmB,IAAI;IACJC,OAAO,GAAApB,IAAA,CAAPoB,OAAO;IACPhB,SAAS,GAAAJ,IAAA,CAATI,SAAS;IACTC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IACRiF,aAAa,GAAAtF,IAAA,CAAbsF,aAAa;IACbC,gBAAgB,GAAAvF,IAAA,CAAhBuF,gBAAgB;AAAA,EAAA,oBAIlBjF,eAAA,CAAA,KAAA,EAAA;AACQ+E,IAAAA,GAAG,EAAHA,GAAG;AACT5C,IAAAA,EAAE,EAAEoC,sBAAsB,CAAC3D,OAAO,CAAE;AACpCd,IAAAA,SAAS,EAAEG,UAAU,CACnB,iHAAiH,EACjHH,SACF,CAAE;IAAAC,QAAA,EAAA,cAEFF,cAAA,CAACc,aAAa,EAAA;AAAOG,MAAAA,OAAO,EAAPA,OAAO;AAAEF,MAAAA,OAAO,EAAPA,OAAO;AAAEC,MAAAA,IAAI,EAAJA,IAAI;AAAEV,MAAAA,IAAI,EAAJA;KAAS,CAAC,eACvDH,eAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,0CAA0C;MAAAC,QAAA,EAAA,CACtDA,QAAQ,EACRyC,SAAS,KAAK,KAAK,iBAClB3C,cAAA,CAAC0C,WAAS,EAAA;AACFC,QAAAA,SAAS,EAATA,SAAS;AACfC,QAAAA,KAAK,EAAEuC,aAAc;AACrBtC,QAAAA,QAAQ,EAAEuC;AAAiB,OAC5B,CACF;AAAA,KACE,CAAC;AAAA,GACH,CAAC;AAAA,CAEV,CAAC;AAEDJ,OAAO,CAACK,WAAW,GAAG,SAAS;AAC/BL,OAAO,CAACM,SAAS,GAAG;AAClB;AACAhF,EAAAA,IAAI,EAAEiF,eAAS,CAACC,KAAK,CAAC;AAAE7E,IAAAA,IAAI,EAAE4E,eAAS,CAACE,MAAM,CAACC;GAAY,CAAC,CAACA,UAAU;AAEvE;AACA3E,EAAAA,OAAO,EAAEwE,eAAS,CAACC,KAAK,CAAC;AACvBlD,IAAAA,EAAE,EAAEiD,eAAS,CAACE,MAAM,CAACC,UAAU;AAC/BnE,IAAAA,SAAS,EAAEgE,eAAS,CAACE,MAAM,CAACC;GAC7B,CAAC,CAACA,UAAU;AAEb;AACA/C,EAAAA,SAAS,EAAE4C,eAAS,CAACI,SAAS,CAAC,CAACJ,eAAS,CAACK,KAAK,EAAEL,eAAS,CAACM,IAAI,CAAC,CAAC;AAEjE;EACA7E,IAAI,EAAEuE,eAAS,CAACE,MAAM;AAEtB;EACAxE,OAAO,EAAEsE,eAAS,CAACO,OAAO,CACxBP,eAAS,CAACC,KAAK,CAAC;IACdO,SAAS,EAAER,eAAS,CAACM,IAAI;AACzBG,IAAAA,GAAG,EAAET,eAAS,CAACE,MAAM,CAACC,UAAU;AAChCO,IAAAA,KAAK,EAAEV,eAAS,CAACE,MAAM,CAACC,UAAU;AAClCvB,IAAAA,OAAO,EAAEoB,eAAS,CAACW,IAAI,CAACR;AAC1B,GAAC,CACH,CAAC;AAED;EACAzF,SAAS,EAAEsF,eAAS,CAACE,MAAM;AAE3B;EACAN,aAAa,EAAEI,eAAS,CAACW,IAAI;AAE7B;EACAd,gBAAgB,EAAEG,eAAS,CAACW;AAC9B,CAAC;;;;;ACxED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAAtG,IAAA,EAMX;AAAA,EAAA,IALJuG,IAAI,GAAAvG,IAAA,CAAJuG,IAAI;IAAAC,qBAAA,GAAAxG,IAAA,CACJyG,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAE,cAAA,GAAA1G,IAAA,CAC3B2G,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG3B,gBAAgB,GAAA2B,cAAA;IAC5BE,aAAa,GAAA5G,IAAA,CAAb4G,aAAa;IACbC,cAAc,GAAA7G,IAAA,CAAd6G,cAAc;EAEd,IAAMC,eAAe,GAAAC,eAAA,CAAAA,eAAA,CAAA,EAAA,EAClBrC,gBAAgB,CAACC,OAAO,EAAGiC,aAAa,CAAA,EACxClC,gBAAgB,CAACE,QAAQ,EAAG6B,mBAAmB,GAAGI,cAAc,GAAGG,cAAI,CACzE;EAED,oBACE7G,cAAA,CAAAsB,mBAAA,EAAA;IAAApB,QAAA,EACGkG,IAAI,CAAC1C,GAAG,CAAC,UAACmB,UAAU,EAAEiC,KAAK,EAAK;AAC/B,MAAA,IAAMC,IAAI,GAAGP,SAAS,CAAC3B,UAAU,CAAC;AAClC,MAAA,IAAMmC,QAAQ,GAAGL,eAAe,CAACI,IAAI,CAAC;AACtC,MAAA,IAAI,CAACC,QAAQ,EAAE,OAAO,IAAI;AAE1B,MAAA,oBACEhH,cAAA,CAACiH,KAAK,CAACC,QAAQ,EAAA;AAAAhH,QAAAA,QAAA,EACZ8G,QAAQ,CAACnC,UAAU,EAAEiC,KAAK;OAAC,EADTjC,UAAU,CAACvC,EAEhB,CAAC;IAErB,CAAC;AAAC,GACF,CAAC;AAEP;AAEA6D,WAAW,CAACd,WAAW,GAAG,aAAa;AACvCc,WAAW,CAACnB,OAAO,GAAGA,OAAO;AAC7BmB,WAAW,CAAC9F,QAAQ,GAAGA,QAAQ;AAC/B8F,WAAW,CAACgB,KAAK,GAAG5C,gBAAgB;;;;"}
1
+ {"version":3,"file":"Engagements.js","sources":["../../src/components/Engagements/Activity/Icon.jsx","../../src/components/Engagements/Activity/index.jsx","../../src/components/Engagements/Comment/Header.jsx","../../src/components/Engagements/Comment/Reactions.jsx","../../src/components/Engagements/constants.js","../../src/components/Engagements/utils.js","../../src/components/Engagements/Comment/index.jsx","../../src/components/Engagements/index.jsx"],"sourcesContent":["import classNames from \"classnames\";\n\nconst ActivityIcon = ({ icon, unread }) => (\n <div className=\"mx-0.5 flex-shrink-0\">\n <span\n className={classNames(\n \"neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-full neeto-molecules-activity-node-icon relative z-10 flex h-7 w-7 items-center justify-center p-1\",\n {\n \"neeto-ui-text-primary-600 neeto-ui-bg-primary-100\": unread,\n }\n )}\n >\n {icon}\n {unread && (\n <span className=\"neeto-ui-rounded-full neeto-ui-bg-primary-800 absolute -end-0.5 -top-0.5 h-2 w-2\" />\n )}\n </span>\n </div>\n);\n\nexport default ActivityIcon;\n","import classNames from \"classnames\";\nimport { Avatar } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport ActivityIcon from \"./Icon\";\n\nconst Activity = ({\n user,\n icon,\n unread = false,\n className,\n children,\n userIcon,\n}) => (\n <div\n className={classNames(\n \"neeto-molecules-engagements-node relative -mt-4 flex items-center gap-2 px-4 py-4\",\n className\n )}\n >\n <ActivityIcon {...{ icon, unread }} />\n {userIcon || (\n <Avatar\n size=\"small\"\n user={{ name: user.name, imageUrl: user.profileImageUrl }}\n />\n )}\n <div className=\"neeto-molecules-engagements-node__children\">{children}</div>\n </div>\n);\n\nActivity.propTypes = {\n /** Object representing the user information */\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n\n /** Element to render as the icon */\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n\n /** Boolean indicating if the activity is unread to show unread badge */\n unread: PropTypes.bool,\n\n /** Additional classes passed on to the board view. */\n className: PropTypes.string,\n};\n\nexport default Activity;\n","import { isPresent } from \"neetocist\";\nimport { Avatar, Typography } from \"neetoui\";\n\nimport DateFormat from \"components/DateFormat\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst CommentHeader = ({ user, comment, info, actions }) => {\n const avatar = { name: user.name, imageUrl: user.profileImageUrl };\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 flex items-center justify-between rounded-t-md border-b py-1 pe-1 ps-4\">\n <div className=\"flex min-w-0 flex-grow flex-wrap items-center gap-2\">\n <Avatar size=\"medium\" user={avatar} />\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {user.name}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n •\n </Typography>\n {info && (\n <>\n <Typography\n className=\"neeto-ui-text-gray-500 lowercase\"\n style=\"body2\"\n >\n {info}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n •\n </Typography>\n </>\n )}\n {comment.createdAt && (\n <DateFormat.FromNow\n date={comment.createdAt}\n typographyProps={{\n style: \"body2\",\n className: \"neeto-ui-text-gray-500\",\n }}\n />\n )}\n </div>\n {isPresent(actions) && (\n <MoreDropdown\n dropdownButtonProps={{ className: \"self-start fles-shrink-0\" }}\n dropdownProps={{ position: \"bottom-start\" }}\n menuItems={actions}\n />\n )}\n </div>\n );\n};\n\nexport default CommentHeader;\n","import { memo } from \"react\";\n\nimport classNames from \"classnames\";\nimport { findIndexBy } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { collectBy, eqProps, pathEq, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmojiPicker from \"components/EmojiPicker\";\n\nconst findOwnIndex = findIndexBy({ userId: globalProps.user.id });\nconst groupReactions = collectBy(prop(\"unified\"));\n\nconst Reactions = ({ reactions, onAdd, onRemove }) => {\n const { t } = useTranslation();\n const groups = groupReactions(reactions);\n\n const onSelect = emoji => {\n // Try to find group to which emoji belongs in existing reactions.\n const group = groups.find(pathEq(emoji.unified, [0, \"unified\"]));\n if (group && findOwnIndex(group) >= 0) return; // User already reacted with same emoji.\n onAdd({ ...emoji, emoji: emoji.native });\n };\n\n return (\n <div className=\"mt-2 flex flex-wrap gap-0.5\">\n <div className=\"neeto-ui-rounded-full neeto-ui-bg-gray-200 me-2\">\n <EmojiPicker {...{ onSelect }} />\n </div>\n {groups.map(reactions => {\n const ownIndex = findOwnIndex(reactions);\n const selected = ownIndex >= 0;\n const reaction = selected ? reactions[ownIndex] : reactions[0];\n const names = pluck(\"reactor\", reactions).join(\", \");\n\n return (\n <Tooltip\n key={reaction.unified}\n position=\"top\"\n content={\n <p className=\"text-center text-xs\">\n {t(\"neetoMolecules.engagements.namesReacted\", { names })}\n </p>\n }\n >\n <div\n className={classNames(\n \"neeto-ui-rounded-full mx-1 flex cursor-pointer items-center justify-center px-2 py-1\",\n {\n \"neeto-ui-bg-accent-100\": selected,\n \"neeto-ui-bg-gray-100\": !selected,\n }\n )}\n onClick={() => (selected ? onRemove : onAdd)(reaction)}\n >\n <Typography\n className=\"flex items-center gap-x-1 text-sm\"\n style=\"body2\"\n >\n <span className=\"text-sm\">{reaction.emoji}</span>\n <span className=\"text-sm\">{reactions.length}</span>\n </Typography>\n </div>\n </Tooltip>\n );\n })}\n </div>\n );\n};\n\nexport default memo(Reactions, eqProps(\"reactions\"));\n","export const ACTIVITY_TYPES = {\n TIMELINE: \"Timeline\",\n FIELD_VALUE: \"FieldValue\",\n TASK: \"Task\",\n ASSIGNEE: \"Assignee\",\n CHECKLIST: \"Checklist\",\n FIELD: \"Field\",\n PROJECT: \"Project\",\n COMMENT: \"Comment\",\n DOCUMENT: \"Document\",\n CHAT_MESSAGE: \"ChatMessage\",\n MESSAGE: \"Message\",\n SECTION: \"Section\",\n PROJECT_MEMBER: \"ProjectMember\",\n PULL_REQUEST: \"NeetoGithubEngine::PullRequest\",\n};\n\nexport const ENGAGEMENT_TYPES = {\n COMMENT: \"comment\",\n ACTIVITY: \"activity\",\n};\n","import { ENGAGEMENT_TYPES } from \"./constants\";\n\nexport const createCommentElementId = comment =>\n `neeto-molecules-engagement-comment--${comment.id}`;\n\nexport const defaultMatchType = engagement => {\n if (engagement.commenter) return ENGAGEMENT_TYPES.COMMENT;\n else if (engagement.creator) return ENGAGEMENT_TYPES.ACTIVITY;\n\n return null;\n};\n","import { forwardRef } from \"react\";\n\nimport classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport CommentHeader from \"./Header\";\nimport Reactions from \"./Reactions\";\n\nimport { createCommentElementId } from \"../utils\";\n\nconst Comment = forwardRef(\n (\n {\n user,\n comment,\n reactions,\n info,\n actions,\n className,\n children,\n onAddReaction,\n onRemoveReaction,\n },\n ref\n ) => (\n <div\n {...{ ref }}\n id={createCommentElementId(comment)}\n className={classNames(\n \"neeto-ui-bg-white neeto-ui-rounded-md neeto-ui-border-gray-300 neeto-molecules-comments-node mb-4 w-full border\",\n className\n )}\n >\n <CommentHeader {...{ actions, comment, info, user }} />\n <div className=\"neeto-molecules-comments-node__inner p-4\">\n {children}\n {reactions !== false && (\n <Reactions\n {...{ reactions }}\n onAdd={onAddReaction}\n onRemove={onRemoveReaction}\n />\n )}\n </div>\n </div>\n )\n);\n\nComment.displayName = \"Comment\";\nComment.propTypes = {\n /** Object representing the user information */\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n\n /** Object representing the comment item. */\n comment: PropTypes.shape({\n id: PropTypes.string.isRequired,\n createdAt: PropTypes.string.isRequired,\n }).isRequired,\n\n /** Array of reactions. Settings this to `false` will disable reactions for the item */\n reactions: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n\n /** Optional text label to be displayed in the header. */\n info: PropTypes.string,\n\n /** Optional action items to be passed to the menuItems prop of the actions dropdown */\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n isVisible: PropTypes.bool,\n key: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n })\n ),\n\n /** Additional classes passed on to the board view. */\n className: PropTypes.string,\n\n /** Callback function triggered when a reaction (emoji) is added */\n onAddReaction: PropTypes.func,\n\n /** Callback function triggered when a reaction (emoji) is removed*/\n onRemoveReaction: PropTypes.func,\n};\n\nexport default Comment;\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport Activity from \"./Activity\";\nimport Comment from \"./Comment\";\nimport { ENGAGEMENT_TYPES } from \"./constants\";\nimport \"./engagements.scss\";\nimport { defaultMatchType } from \"./utils\";\n\nconst Engagements = ({\n data,\n isActivitiesEnabled = false,\n matchType = defaultMatchType,\n renderComment,\n renderActivity,\n}) => {\n const rendererHashmap = {\n [ENGAGEMENT_TYPES.COMMENT]: renderComment,\n [ENGAGEMENT_TYPES.ACTIVITY]: isActivitiesEnabled ? renderActivity : noop,\n };\n\n return (\n <>\n {data.map((engagement, index) => {\n const type = matchType(engagement);\n const renderer = rendererHashmap[type];\n if (!renderer) return null;\n\n return (\n <React.Fragment key={engagement.id}>\n {renderer(engagement, index)}\n </React.Fragment>\n );\n })}\n </>\n );\n};\n\nEngagements.displayName = \"Engagements\";\nEngagements.Comment = Comment;\nEngagements.Activity = Activity;\nEngagements.TYPES = ENGAGEMENT_TYPES;\n\nEngagements.propTypes = {\n /** An array of engagement items */\n data: PropTypes.arrayOf(PropTypes.shape({ id: PropTypes.string.isRequired }))\n .isRequired,\n\n /** Boolean, determines whether activities are rendered. Defaults to false */\n isActivitiesEnabled: PropTypes.bool,\n\n /** Optional function to match the item type. Receives item as argument and should return one of Engagements.TYPES.*/\n matchType: PropTypes.func,\n\n /** A function to render individual comment item. Receives comment and index as arguments */\n renderComment: PropTypes.func.isRequired,\n\n /** A function to render individual activity item. Receives comment and index as arguments */\n renderActivity: PropTypes.func.isRequired,\n};\n\nexport default Engagements;\n"],"names":["ActivityIcon","_ref","icon","unread","_jsx","className","children","_jsxs","classNames","Activity","user","_ref$unread","userIcon","Avatar","size","name","imageUrl","profileImageUrl","CommentHeader","comment","info","actions","avatar","Typography","style","weight","_Fragment","createdAt","DateFormat","FromNow","date","typographyProps","isPresent","MoreDropdown","dropdownButtonProps","dropdownProps","position","menuItems","findOwnIndex","findIndexBy","userId","globalProps","id","groupReactions","collectBy","prop","Reactions","reactions","onAdd","onRemove","_useTranslation","useTranslation","t","groups","onSelect","emoji","group","find","pathEq","unified","_objectSpread","EmojiPicker","map","ownIndex","selected","reaction","names","pluck","join","Tooltip","content","onClick","length","memo","eqProps","ENGAGEMENT_TYPES","COMMENT","ACTIVITY","createCommentElementId","concat","defaultMatchType","engagement","commenter","creator","Comment","forwardRef","ref","onAddReaction","onRemoveReaction","displayName","propTypes","PropTypes","shape","string","isRequired","oneOfType","array","bool","arrayOf","isVisible","key","label","func","Engagements","data","_ref$isActivitiesEnab","isActivitiesEnabled","_ref$matchType","matchType","renderComment","renderActivity","rendererHashmap","_defineProperty","noop","index","type","renderer","React","Fragment","TYPES"],"mappings":"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"}
@@ -91,7 +91,7 @@ injectCss.n(css$1,{});
91
91
  var _excluded$3 = ["name", "description", "url", "isHighlighted"];
92
92
  function ownKeys$7(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
93
93
  function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
94
- var ProductLink = function ProductLink(_ref) {
94
+ var ProductLink$1 = function ProductLink(_ref) {
95
95
  var name = _ref.name,
96
96
  description = _ref.description,
97
97
  url = _ref.url,
@@ -129,7 +129,7 @@ var ProductLink = function ProductLink(_ref) {
129
129
  })]
130
130
  }));
131
131
  };
132
- var ProductLink$1 = /*#__PURE__*/React.memo(ProductLink);
132
+ var ProductLink = /*#__PURE__*/React.memo(ProductLink$1);
133
133
 
134
134
  function ownKeys$6(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
135
135
  function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -148,7 +148,7 @@ var Content = function Content(_ref) {
148
148
  return (filteredApps === null || filteredApps === void 0 ? void 0 : filteredApps.length) > 0 ? /*#__PURE__*/jsxRuntime.jsx("div", {
149
149
  className: "neeto-molecules-product-switcher__grid",
150
150
  children: filteredApps.map(function (app, index) {
151
- return /*#__PURE__*/jsxRuntime.jsx(ProductLink$1, _objectSpread$6(_objectSpread$6({}, app), {}, {
151
+ return /*#__PURE__*/jsxRuntime.jsx(ProductLink, _objectSpread$6(_objectSpread$6({}, app), {}, {
152
152
  "data-highlighted-index": index,
153
153
  isHighlighted: index === highlightedIndex
154
154
  }), app.name);
@@ -994,7 +994,7 @@ var ProfileButton = function ProfileButton(_ref) {
994
994
  var _KeyboardShortcuts$us = KeyboardShortcuts.usePaneState(),
995
995
  _KeyboardShortcuts$us2 = _slicedToArray(_KeyboardShortcuts$us, 2),
996
996
  setIsOpen = _KeyboardShortcuts$us2[1];
997
- useHotkeys(["ctrl+e", "command+e"], function () {
997
+ useHotkeys(["ctrl+u", "command+u"], function () {
998
998
  return setIsModalOpen(ramda.not);
999
999
  }, {
1000
1000
  mode: "global"