@bigbinary/neeto-molecules 4.1.50 → 4.1.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CalendarView.js +2 -1
- package/dist/CalendarView.js.map +1 -1
- package/dist/{Columns-BB50-jks.js → Columns-D68XA-e7.js} +2 -53
- package/dist/Columns-D68XA-e7.js.map +1 -0
- package/dist/Columns-cUgR6NTO.js +502 -0
- package/dist/Columns-cUgR6NTO.js.map +1 -0
- package/dist/Columns.js +2 -1
- package/dist/Columns.js.map +1 -1
- package/dist/StatusDropdown.js +1 -0
- package/dist/StatusDropdown.js.map +1 -1
- package/dist/SubHeader.js +2 -1
- package/dist/SubHeader.js.map +1 -1
- package/dist/Taxonomy.js +2 -1
- package/dist/Taxonomy.js.map +1 -1
- package/dist/circle-question-mark-Dib48f5Z.js +19 -0
- package/dist/circle-question-mark-Dib48f5Z.js.map +1 -0
- package/dist/cjs/CalendarView.js +2 -1
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/{Columns-jm_CUnLP.js → Columns-BACqpEQU.js} +3 -54
- package/dist/cjs/Columns-BACqpEQU.js.map +1 -0
- package/dist/cjs/Columns-D3eocaeY.js +508 -0
- package/dist/cjs/Columns-D3eocaeY.js.map +1 -0
- package/dist/cjs/Columns.js +2 -1
- package/dist/cjs/Columns.js.map +1 -1
- package/dist/cjs/StatusDropdown.js +1 -0
- package/dist/cjs/StatusDropdown.js.map +1 -1
- package/dist/cjs/SubHeader.js +2 -1
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/Taxonomy.js +2 -1
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/circle-question-mark-kxBMPyWQ.js +21 -0
- package/dist/cjs/circle-question-mark-kxBMPyWQ.js.map +1 -0
- package/dist/cjs/ellipsis-BcfLTtl5.js +21 -0
- package/dist/cjs/ellipsis-BcfLTtl5.js.map +1 -0
- package/dist/cjs/utilities.esm-jwIHISzF.js +58 -0
- package/dist/cjs/utilities.esm-jwIHISzF.js.map +1 -0
- package/dist/cjs/v2/Breadcrumbs.js +50 -0
- package/dist/cjs/v2/Breadcrumbs.js.map +1 -0
- package/dist/cjs/v2/Columns.js +34 -0
- package/dist/cjs/v2/Columns.js.map +1 -0
- package/dist/cjs/v2/Container.js +34 -0
- package/dist/cjs/v2/Container.js.map +1 -0
- package/dist/cjs/v2/FloatingActionMenu.js +10 -24
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/Header.js +128 -0
- package/dist/cjs/v2/Header.js.map +1 -0
- package/dist/cjs/v2/HelpPopover.js +93 -0
- package/dist/cjs/v2/HelpPopover.js.map +1 -0
- package/dist/cjs/v2/MoreDropdown.js +201 -0
- package/dist/cjs/v2/MoreDropdown.js.map +1 -0
- package/dist/cjs/v2/Search.js +129 -0
- package/dist/cjs/v2/Search.js.map +1 -0
- package/dist/cjs/v2/Sidebar.js +3 -17
- package/dist/cjs/v2/Sidebar.js.map +1 -1
- package/dist/cjs/v2/SubHeader.js +246 -0
- package/dist/cjs/v2/SubHeader.js.map +1 -0
- package/dist/ellipsis-DpI9xqUK.js +19 -0
- package/dist/ellipsis-DpI9xqUK.js.map +1 -0
- package/dist/utilities.esm-CS21Daln.js +56 -0
- package/dist/utilities.esm-CS21Daln.js.map +1 -0
- package/dist/v2/Breadcrumbs.js +48 -0
- package/dist/v2/Breadcrumbs.js.map +1 -0
- package/dist/v2/Columns.js +22 -0
- package/dist/v2/Columns.js.map +1 -0
- package/dist/v2/Container.js +32 -0
- package/dist/v2/Container.js.map +1 -0
- package/dist/v2/FloatingActionMenu.js +8 -22
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/Header.js +126 -0
- package/dist/v2/Header.js.map +1 -0
- package/dist/v2/HelpPopover.js +91 -0
- package/dist/v2/HelpPopover.js.map +1 -0
- package/dist/v2/MoreDropdown.js +199 -0
- package/dist/v2/MoreDropdown.js.map +1 -0
- package/dist/v2/Search.js +127 -0
- package/dist/v2/Search.js.map +1 -0
- package/dist/v2/Sidebar.js +2 -16
- package/dist/v2/Sidebar.js.map +1 -1
- package/dist/v2/SubHeader.js +244 -0
- package/dist/v2/SubHeader.js.map +1 -0
- package/package.json +1 -1
- package/types/v2/Breadcrumbs.d.ts +12 -0
- package/types/v2/Columns.d.ts +42 -0
- package/types/v2/Container.d.ts +8 -0
- package/types/v2/Header.d.ts +22 -0
- package/types/v2/HelpPopover.d.ts +23 -0
- package/types/v2/MoreDropdown.d.ts +42 -0
- package/types/v2/Search.d.ts +16 -0
- package/types/v2/SubHeader.d.ts +51 -0
- package/dist/Columns-BB50-jks.js.map +0 -1
- package/dist/cjs/Columns-jm_CUnLP.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusDropdown.js","sources":["../src/components/StatusDropdown/Menu.jsx","../src/components/StatusDropdown/constants.js","../src/components/StatusDropdown/Target.jsx","../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-testid={`status-dropdown-item-${hyphenate(option.value)}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Down, Close } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ICON_SIZE } from \"./constants.js\";\n\nconst Target = ({\n color,\n value,\n label,\n dataTestid,\n isClearable,\n onClear,\n placeholder,\n}) => {\n const { t } = useTranslation();\n const targetClassName = `neeto-ui-rounded-sm inline-flex items-center gap-2 cursor-pointer py-0.5 px-2 status-dropdown-target--${\n color || \"waiting\"\n }`;\n const isOptionSelected = !isNil(value);\n\n const handleClearClick = event => {\n onClear();\n event.stopPropagation();\n };\n\n const handleClearKeyDown = event => {\n if (!(event.key === \"Enter\" || event.key === \" \")) return;\n event.preventDefault();\n handleClearClick(event);\n };\n\n return (\n <button\n aria-haspopup=\"listbox\"\n className={targetClassName}\n data-testid={isPresent(dataTestid) ? dataTestid : \"status-dropdown\"}\n type=\"button\"\n aria-label={\n isOptionSelected\n ? `Selected: ${label}`\n : placeholder || t(\"neetoMolecules.statusDropdown.placeholder\")\n }\n >\n {isOptionSelected ? (\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n ) : (\n <Typography className=\"neeto-ui-text-gray-600 inline\" style=\"body2\">\n {placeholder || t(\"neetoMolecules.statusDropdown.placeholder\")}\n </Typography>\n )}\n <span className=\"inline-flex items-center gap-1\">\n {isClearable && isOptionSelected && (\n <span\n aria-label={t(\"neetoMolecules.statusDropdown.clear\")}\n className=\"cursor-pointer\"\n data-testid=\"status-dropdown-clear-button\"\n role=\"button\"\n tabIndex={0}\n onClick={handleClearClick}\n onKeyDown={handleClearKeyDown}\n >\n <Close size={ICON_SIZE} />\n </span>\n )}\n <Down aria-hidden=\"true\" size={ICON_SIZE} />\n </span>\n </button>\n );\n};\n\nexport default memo(Target);\n","import { _findBy, noop } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n placeholder = null,\n selectedValue,\n shouldShowAllOptions = false,\n isClearable = false,\n onClear = noop,\n dataTestid = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n appendTo={() => document.body}\n strategy=\"fixed\"\n customTarget={() => (\n <Target\n label={selectedValue}\n {...{\n ...selectedOption,\n dataTestid,\n isClearable,\n onClear,\n placeholder,\n }}\n />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * Placeholder for the dropdown.\n */\n placeholder: PropTypes.string,\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n /**\n * This prop will decide whether the dropdown is clearable or not.\n */\n isClearable: PropTypes.bool,\n /**\n * Function to be called when the clear button is clicked.\n */\n onClear: PropTypes.func,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","hyphenate","onClick","label","memo","ICON_SIZE","Target","dataTestid","isClearable","onClear","placeholder","_useTranslation","useTranslation","t","targetClassName","isOptionSelected","isNil","handleClearClick","event","stopPropagation","handleClearKeyDown","key","preventDefault","_jsxs","isPresent","type","Typography","style","role","tabIndex","onKeyDown","Close","size","Down","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","_ref$placeholder","selectedValue","_ref$isClearable","_ref$onClear","noop","_ref$dataTestid","selectedOption","_findBy","appendTo","document","body","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StatusDropdown.js","sources":["../src/components/StatusDropdown/Menu.jsx","../src/components/StatusDropdown/constants.js","../src/components/StatusDropdown/Target.jsx","../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-testid={`status-dropdown-item-${hyphenate(option.value)}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Down, Close } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ICON_SIZE } from \"./constants.js\";\n\nconst Target = ({\n color,\n value,\n label,\n dataTestid,\n isClearable,\n onClear,\n placeholder,\n}) => {\n const { t } = useTranslation();\n const targetClassName = `neeto-ui-rounded-sm inline-flex items-center gap-2 cursor-pointer py-0.5 px-2 status-dropdown-target--${\n color || \"waiting\"\n }`;\n const isOptionSelected = !isNil(value);\n\n const handleClearClick = event => {\n onClear();\n event.stopPropagation();\n };\n\n const handleClearKeyDown = event => {\n if (!(event.key === \"Enter\" || event.key === \" \")) return;\n event.preventDefault();\n handleClearClick(event);\n };\n\n return (\n <button\n aria-haspopup=\"listbox\"\n className={targetClassName}\n data-testid={isPresent(dataTestid) ? dataTestid : \"status-dropdown\"}\n type=\"button\"\n aria-label={\n isOptionSelected\n ? `Selected: ${label}`\n : placeholder || t(\"neetoMolecules.statusDropdown.placeholder\")\n }\n >\n {isOptionSelected ? (\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n ) : (\n <Typography className=\"neeto-ui-text-gray-600 inline\" style=\"body2\">\n {placeholder || t(\"neetoMolecules.statusDropdown.placeholder\")}\n </Typography>\n )}\n <span className=\"inline-flex items-center gap-1\">\n {isClearable && isOptionSelected && (\n <span\n aria-label={t(\"neetoMolecules.statusDropdown.clear\")}\n className=\"cursor-pointer\"\n data-testid=\"status-dropdown-clear-button\"\n role=\"button\"\n tabIndex={0}\n onClick={handleClearClick}\n onKeyDown={handleClearKeyDown}\n >\n <Close size={ICON_SIZE} />\n </span>\n )}\n <Down aria-hidden=\"true\" size={ICON_SIZE} />\n </span>\n </button>\n );\n};\n\nexport default memo(Target);\n","import { _findBy, noop } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n placeholder = null,\n selectedValue,\n shouldShowAllOptions = false,\n isClearable = false,\n onClear = noop,\n dataTestid = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n appendTo={() => document.body}\n strategy=\"fixed\"\n zIndex={99999}\n customTarget={() => (\n <Target\n label={selectedValue}\n {...{\n ...selectedOption,\n dataTestid,\n isClearable,\n onClear,\n placeholder,\n }}\n />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * Placeholder for the dropdown.\n */\n placeholder: PropTypes.string,\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n /**\n * This prop will decide whether the dropdown is clearable or not.\n */\n isClearable: PropTypes.bool,\n /**\n * Function to be called when the clear button is clicked.\n */\n onClear: PropTypes.func,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","hyphenate","onClick","label","memo","ICON_SIZE","Target","dataTestid","isClearable","onClear","placeholder","_useTranslation","useTranslation","t","targetClassName","isOptionSelected","isNil","handleClearClick","event","stopPropagation","handleClearKeyDown","key","preventDefault","_jsxs","isPresent","type","Typography","style","role","tabIndex","onKeyDown","Close","size","Down","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","_ref$placeholder","selectedValue","_ref$isClearable","_ref$onClear","noop","_ref$dataTestid","selectedOption","_findBy","appendTo","document","body","strategy","zIndex","customTarget","_objectSpread","Spinner"],"mappings":"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"}
|
package/dist/SubHeader.js
CHANGED
|
@@ -6,7 +6,7 @@ import { omit, not } from 'ramda';
|
|
|
6
6
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
7
7
|
import { withT } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
8
8
|
import Column from '@bigbinary/neeto-icons/Column';
|
|
9
|
-
import { a as Columns$1 } from './Columns-
|
|
9
|
+
import { a as Columns$1 } from './Columns-D68XA-e7.js';
|
|
10
10
|
import '@babel/runtime/helpers/toConsumableArray';
|
|
11
11
|
import '@tanstack/react-query';
|
|
12
12
|
import '@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation';
|
|
@@ -27,6 +27,7 @@ import '@bigbinary/neetoui/Dropdown';
|
|
|
27
27
|
import '@bigbinary/neetoui/Input';
|
|
28
28
|
import '@bigbinary/neetoui/Label';
|
|
29
29
|
import 'react-i18next';
|
|
30
|
+
import './utilities.esm-CS21Daln.js';
|
|
30
31
|
import '@bigbinary/neeto-icons/Drag';
|
|
31
32
|
|
|
32
33
|
var _excluded$1 = ["t", "buttonProps", "columnData", "onMutationSuccess", "allowConfigurationResetOnUpdate", "tableKey"];
|
package/dist/SubHeader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubHeader.js","sources":["../src/components/SubHeader/RightBlock/Columns.jsx","../src/components/SubHeader/RightBlock/Download.jsx","../src/components/SubHeader/RightBlock/Filter.jsx","../src/components/SubHeader/RightBlock/index.jsx","../src/components/SubHeader/index.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Column } from \"neetoicons\";\nimport { omit } from \"ramda\";\n\nimport ManageColumns from \"components/Columns\";\n\nconst unUsedI18nProps = [\"tReady\", \"i18n\"];\n\nconst Columns = withT(\n ({\n t,\n buttonProps = {},\n columnData,\n onMutationSuccess,\n allowConfigurationResetOnUpdate,\n tableKey,\n ...props\n }) => (\n <div className=\"neeto-molecules-subheader__columns\">\n <ManageColumns\n isSearchable\n className=\"neeto-ui-dropdown--manage-columns\"\n buttonProps={{\n icon: Column,\n label: null,\n tooltipProps: {\n content: t(\"neetoMolecules.columns.columns\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n \"data-testid\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n {...{\n allowConfigurationResetOnUpdate,\n columnData,\n onMutationSuccess,\n tableKey,\n ...omit(unUsedI18nProps, props),\n }}\n />\n </div>\n )\n);\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { isPresent } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({\n t,\n count,\n onClick,\n \"data-testid\": dataTestid = \"download-button\",\n tooltipProps,\n }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-testid={isPresent(dataTestid) ? dataTestid : \"download-button\"}\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n ...tooltipProps,\n }}\n />\n {count && (\n <span className=\"neeto-molecules-subheader__download-count\">\n {count}\n </span>\n )}\n </div>\n )\n);\n\nexport default DownloadButton;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Filters as NeetoFilters } from \"neetofilters\";\nimport { Filter } from \"neetoicons\";\n\nconst FilterButton = withT(({ t, buttonProps, ...props }) => (\n <div className=\"neeto-molecules-subheader__filter\">\n <NeetoFilters\n buttonProps={{\n \"data-testid\": \"filter-button\",\n icon: Filter,\n style: \"text\",\n tooltipProps: {\n content: t(\"neetoMolecules.common.filter\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n label: null,\n ...buttonProps,\n }}\n {...props}\n />\n </div>\n));\n\nexport default FilterButton;\n","import classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\n\nimport Columns from \"./Columns\";\nimport Download from \"./Download\";\nimport Filter from \"./Filter\";\n\nconst RightBlock = ({\n downloadButtonProps,\n columnsButtonProps,\n filterProps,\n dataProps,\n}) => {\n const showIcons = isNotPresent(dataProps?.totalCount)\n ? true\n : dataProps?.totalCount > 0;\n\n return (\n <div\n data-testid=\"subheader-rightblock-buttons-container\"\n className={classnames(\"neeto-molecules-subheader__right-actions\", {\n hidden: not(showIcons),\n })}\n >\n {downloadButtonProps && <Download {...downloadButtonProps} />}\n {columnsButtonProps && <Columns {...columnsButtonProps} />}\n {filterProps && <Filter {...filterProps} />}\n </div>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * Props that are passed to the download button.\n */\n downloadButtonProps: PropTypes.shape({\n count: PropTypes.number,\n onClick: PropTypes.func,\n tooltipProps: PropTypes.object,\n }),\n /**\n * Props that are passed to the columns button, same as the `Columns` component from neetoMolecules.\n */\n columnsButtonProps: PropTypes.shape({\n actionBlock: PropTypes.node,\n tableKey: PropTypes.string,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n onMutationSuccess: PropTypes.func,\n allowConfigurationResetOnUpdate: PropTypes.bool,\n }),\n /**\n * Props that are passed the the filter component. These are the same props as the\n * neetoFilters `Filters` component.\n */\n filterProps: PropTypes.shape({\n size: PropTypes.oneOf([\"xsmall\", \"small\", \"large\"]),\n isOpen: PropTypes.bool,\n setIsOpen: PropTypes.func,\n columns: PropTypes.object,\n onChange: PropTypes.func,\n onSelectorsChange: PropTypes.func,\n buttonProps: PropTypes.object,\n paneProps: PropTypes.object,\n isSearchable: PropTypes.bool,\n className: PropTypes.string,\n }),\n /**\n * Props related to data being displayed, such as tables, lists, and more. The buttons\n * will be hidden if the value of `totalCount` in `dataProps` is `0`.\n */\n dataProps: PropTypes.shape({ totalCount: PropTypes.number }),\n};\n\nexport default RightBlock;\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-testid\": dataTestid = \"subheader\",\n}) => {\n const subheaderRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!subheaderRef.current) return;\n const height = subheaderRef.current.offsetHeight;\n document.body.style.setProperty(\n \"--neeto-molecules-effective-subheader-height\",\n `${height}px`\n );\n };\n\n updateHeaderHeight();\n\n window.addEventListener(\"resize\", updateHeaderHeight);\n\n return () => window.removeEventListener(\"resize\", updateHeaderHeight);\n }, []);\n\n return (\n <div\n className={classnames([\"neeto-molecules-subheader\", className])}\n data-testid={isPresent(dataTestid) ? dataTestid : \"subheader\"}\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-testid=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-testid=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-testid=\"subheader-right\"\n >\n {rightActionBlock}\n </div>\n )}\n </div>\n );\n};\n\nSubHeader.RightBlock = RightBlock;\n\nSubHeader.propTypes = {\n /**\n * To specify external classnames as overrides to the `SubHeader`.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the left side of the `SubHeader` section.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `SubHeader` section.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default SubHeader;\n"],"names":["unUsedI18nProps","Columns","withT","_ref","t","_ref$buttonProps","buttonProps","columnData","onMutationSuccess","allowConfigurationResetOnUpdate","tableKey","props","_objectWithoutProperties","_excluded","_jsx","className","children","ManageColumns","_objectSpread","isSearchable","icon","Column","label","tooltipProps","content","position","touch","omit","displayName","DownloadButton","count","onClick","_ref$dataTestid","dataTestid","_jsxs","Button","isPresent","Download","style","FilterButton","NeetoFilters","Filter","RightBlock","downloadButtonProps","columnsButtonProps","filterProps","dataProps","showIcons","isNotPresent","totalCount","classnames","hidden","not","SubHeader","_ref$className","leftActionBlock","rightActionBlock","subheaderRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","setProperty","concat","window","addEventListener","removeEventListener","ref"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SubHeader.js","sources":["../src/components/SubHeader/RightBlock/Columns.jsx","../src/components/SubHeader/RightBlock/Download.jsx","../src/components/SubHeader/RightBlock/Filter.jsx","../src/components/SubHeader/RightBlock/index.jsx","../src/components/SubHeader/index.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Column } from \"neetoicons\";\nimport { omit } from \"ramda\";\n\nimport ManageColumns from \"components/Columns\";\n\nconst unUsedI18nProps = [\"tReady\", \"i18n\"];\n\nconst Columns = withT(\n ({\n t,\n buttonProps = {},\n columnData,\n onMutationSuccess,\n allowConfigurationResetOnUpdate,\n tableKey,\n ...props\n }) => (\n <div className=\"neeto-molecules-subheader__columns\">\n <ManageColumns\n isSearchable\n className=\"neeto-ui-dropdown--manage-columns\"\n buttonProps={{\n icon: Column,\n label: null,\n tooltipProps: {\n content: t(\"neetoMolecules.columns.columns\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n \"data-testid\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n {...{\n allowConfigurationResetOnUpdate,\n columnData,\n onMutationSuccess,\n tableKey,\n ...omit(unUsedI18nProps, props),\n }}\n />\n </div>\n )\n);\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { isPresent } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({\n t,\n count,\n onClick,\n \"data-testid\": dataTestid = \"download-button\",\n tooltipProps,\n }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-testid={isPresent(dataTestid) ? dataTestid : \"download-button\"}\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n ...tooltipProps,\n }}\n />\n {count && (\n <span className=\"neeto-molecules-subheader__download-count\">\n {count}\n </span>\n )}\n </div>\n )\n);\n\nexport default DownloadButton;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Filters as NeetoFilters } from \"neetofilters\";\nimport { Filter } from \"neetoicons\";\n\nconst FilterButton = withT(({ t, buttonProps, ...props }) => (\n <div className=\"neeto-molecules-subheader__filter\">\n <NeetoFilters\n buttonProps={{\n \"data-testid\": \"filter-button\",\n icon: Filter,\n style: \"text\",\n tooltipProps: {\n content: t(\"neetoMolecules.common.filter\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n label: null,\n ...buttonProps,\n }}\n {...props}\n />\n </div>\n));\n\nexport default FilterButton;\n","import classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\n\nimport Columns from \"./Columns\";\nimport Download from \"./Download\";\nimport Filter from \"./Filter\";\n\nconst RightBlock = ({\n downloadButtonProps,\n columnsButtonProps,\n filterProps,\n dataProps,\n}) => {\n const showIcons = isNotPresent(dataProps?.totalCount)\n ? true\n : dataProps?.totalCount > 0;\n\n return (\n <div\n data-testid=\"subheader-rightblock-buttons-container\"\n className={classnames(\"neeto-molecules-subheader__right-actions\", {\n hidden: not(showIcons),\n })}\n >\n {downloadButtonProps && <Download {...downloadButtonProps} />}\n {columnsButtonProps && <Columns {...columnsButtonProps} />}\n {filterProps && <Filter {...filterProps} />}\n </div>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * Props that are passed to the download button.\n */\n downloadButtonProps: PropTypes.shape({\n count: PropTypes.number,\n onClick: PropTypes.func,\n tooltipProps: PropTypes.object,\n }),\n /**\n * Props that are passed to the columns button, same as the `Columns` component from neetoMolecules.\n */\n columnsButtonProps: PropTypes.shape({\n actionBlock: PropTypes.node,\n tableKey: PropTypes.string,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n onMutationSuccess: PropTypes.func,\n allowConfigurationResetOnUpdate: PropTypes.bool,\n }),\n /**\n * Props that are passed the the filter component. These are the same props as the\n * neetoFilters `Filters` component.\n */\n filterProps: PropTypes.shape({\n size: PropTypes.oneOf([\"xsmall\", \"small\", \"large\"]),\n isOpen: PropTypes.bool,\n setIsOpen: PropTypes.func,\n columns: PropTypes.object,\n onChange: PropTypes.func,\n onSelectorsChange: PropTypes.func,\n buttonProps: PropTypes.object,\n paneProps: PropTypes.object,\n isSearchable: PropTypes.bool,\n className: PropTypes.string,\n }),\n /**\n * Props related to data being displayed, such as tables, lists, and more. The buttons\n * will be hidden if the value of `totalCount` in `dataProps` is `0`.\n */\n dataProps: PropTypes.shape({ totalCount: PropTypes.number }),\n};\n\nexport default RightBlock;\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-testid\": dataTestid = \"subheader\",\n}) => {\n const subheaderRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!subheaderRef.current) return;\n const height = subheaderRef.current.offsetHeight;\n document.body.style.setProperty(\n \"--neeto-molecules-effective-subheader-height\",\n `${height}px`\n );\n };\n\n updateHeaderHeight();\n\n window.addEventListener(\"resize\", updateHeaderHeight);\n\n return () => window.removeEventListener(\"resize\", updateHeaderHeight);\n }, []);\n\n return (\n <div\n className={classnames([\"neeto-molecules-subheader\", className])}\n data-testid={isPresent(dataTestid) ? dataTestid : \"subheader\"}\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-testid=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-testid=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-testid=\"subheader-right\"\n >\n {rightActionBlock}\n </div>\n )}\n </div>\n );\n};\n\nSubHeader.RightBlock = RightBlock;\n\nSubHeader.propTypes = {\n /**\n * To specify external classnames as overrides to the `SubHeader`.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the left side of the `SubHeader` section.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `SubHeader` section.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default SubHeader;\n"],"names":["unUsedI18nProps","Columns","withT","_ref","t","_ref$buttonProps","buttonProps","columnData","onMutationSuccess","allowConfigurationResetOnUpdate","tableKey","props","_objectWithoutProperties","_excluded","_jsx","className","children","ManageColumns","_objectSpread","isSearchable","icon","Column","label","tooltipProps","content","position","touch","omit","displayName","DownloadButton","count","onClick","_ref$dataTestid","dataTestid","_jsxs","Button","isPresent","Download","style","FilterButton","NeetoFilters","Filter","RightBlock","downloadButtonProps","columnsButtonProps","filterProps","dataProps","showIcons","isNotPresent","totalCount","classnames","hidden","not","SubHeader","_ref$className","leftActionBlock","rightActionBlock","subheaderRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","setProperty","concat","window","addEventListener","removeEventListener","ref"],"mappings":"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"}
|
package/dist/Taxonomy.js
CHANGED
|
@@ -51,11 +51,12 @@ import '@bigbinary/neeto-icons/MenuHorizontal';
|
|
|
51
51
|
import '@bigbinary/neeto-icons/MenuVertical';
|
|
52
52
|
import '@bigbinary/neetoui/Tooltip';
|
|
53
53
|
import '@bigbinary/neeto-icons/Column';
|
|
54
|
-
import './Columns-
|
|
54
|
+
import './Columns-D68XA-e7.js';
|
|
55
55
|
import '@dnd-kit/core';
|
|
56
56
|
import '@dnd-kit/sortable';
|
|
57
57
|
import '@bigbinary/neetoui/Checkbox';
|
|
58
58
|
import '@bigbinary/neetoui/Label';
|
|
59
|
+
import './utilities.esm-CS21Daln.js';
|
|
59
60
|
import '@bigbinary/neeto-icons/Drag';
|
|
60
61
|
import '@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation';
|
|
61
62
|
import '@bigbinary/neeto-icons/Download';
|
package/dist/Taxonomy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Taxonomy.js","sources":["../src/components/Taxonomy/constants.js","../src/components/Taxonomy/api.js","../src/components/Taxonomy/useTaxonomyApi.js","../src/components/Taxonomy/utils.jsx","../src/components/Taxonomy/EditPane.jsx","../src/components/Taxonomy/LeftActionBlock.jsx","../src/components/Taxonomy/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const LABEL_REJECT_CHARS_REGEX = /[^a-zA-Z\\d\\s_-]+/;\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n singularLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.singularLabelRequired\")\n ),\n pluralLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.pluralLabelRequired\")\n ),\n});\n\nexport const TAXONOMY_EVENTS = { UPDATED: \"taxonomy_updated\" };\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/constants\";\n\nconst update = ({ keyName, payload }) =>\n axios.patch(`${BASE_API_V1_URL}/taxonomies/${keyName}`, payload);\n\nconst bulkDestroy = payload =>\n axios.delete(`${BASE_API_V1_URL}/taxonomies/bulk_destroy`, {\n data: payload,\n });\n\nconst taxonomiesApi = { update, bulkDestroy };\n\nexport default taxonomiesApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport taxonomiesApi from \"./api\";\n\nconst useUpdateTaxonomy = options =>\n useMutation({ mutationFn: taxonomiesApi.update, ...options });\n\nconst useBulkDestroyTaxonomies = options =>\n useMutation({ mutationFn: taxonomiesApi.bulkDestroy, ...options });\n\nexport { useUpdateTaxonomy, useBulkDestroyTaxonomies };\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nexport const formatLabel = label => capitalize(label.trim());\n\nexport const formatDataForTable = taxonomies =>\n toPairs(taxonomies).map(([keyName, labels]) => ({\n keyName,\n singularLabel: labels[\"singular\"],\n pluralLabel: labels[\"plural\"],\n }));\n\nexport const getColumnData = ({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n}) => {\n const {\n singularColumn: showSingularColumn = true,\n pluralColumn: showPluralColumn = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n return [\n {\n title: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n dataIndex: \"default\",\n key: \"defaultLabel\",\n width: 400,\n render: (_, values) => {\n const menuItems = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => handleEdit(values),\n },\n {\n key: \"reset\",\n label: t(\"neetoMolecules.common.actions.resetToDefaults\"),\n onClick: () => {\n setCurrentKeys([values.keyName]);\n setIsResetModalOpen(true);\n },\n },\n ];\n\n return (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">\n {t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n </Typography>\n <MoreDropdown\n {...{ menuItems }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n className: \"me-1 my-1\",\n }}\n dropdownProps={{\n strategy: \"fixed\",\n placement: \"bottom-end\",\n appendTo: () => document.body,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n title: singularLabel,\n dataIndex: \"singularLabel\",\n key: \"singularLabel\",\n width: 300,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [\n {\n title: pluralLabel,\n dataIndex: \"pluralLabel\",\n key: \"pluralLabel\",\n width: 300,\n },\n ]\n : []),\n ];\n};\n\nexport const getFilteredTaxonomies = (matchString, taxonomies) => {\n const filteredArray = toPairs(taxonomies).filter(([key, value]) => {\n const defaultLabel = t(`taxonomyDefaultLabels.${key}.singular`);\n const valuesToSearch = [defaultLabel, ...Object.values(value)];\n\n return valuesToSearch.some(str =>\n str.toLowerCase().includes(matchString.toLowerCase())\n );\n });\n\n return fromPairs(filteredArray);\n};\n","import { useRef } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/utils\";\nimport { Pane, Toastr, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n LABEL_REJECT_CHARS_REGEX,\n TAXONOMY_EVENTS,\n VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { useUpdateTaxonomy } from \"./useTaxonomyApi\";\nimport { formatLabel } from \"./utils\";\n\nconst EditPane = ({\n columnLabels,\n columnsToShow,\n initialValues,\n isOpen,\n onClose,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const { mutate: updateTaxonomy } = useUpdateTaxonomy();\n\n const {\n singularColumn: showSingularInputField = true,\n pluralColumn: showPluralInputField = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n const handleSubmit = (values, { setSubmitting }) => {\n const { keyName, singularLabel, pluralLabel } = values;\n\n const payload = {\n taxonomy: {\n keyName,\n singularLabel: formatLabel(singularLabel),\n pluralLabel: formatLabel(pluralLabel),\n },\n };\n\n const options = {\n onSuccess: () => {\n captureAnalyticsEvent(TAXONOMY_EVENTS.UPDATED, {\n taxonomy: payload.taxonomy,\n });\n window.location.reload();\n },\n onError: error => Toastr.error(error),\n onSettled: () => setSubmitting(false),\n };\n\n updateTaxonomy({ keyName, payload }, options);\n };\n\n return (\n <Pane\n {...{ initialFocusRef, isOpen, onClose }}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.editPane.title\"\n values={{\n entity: t(\n `taxonomyDefaultLabels.${initialValues.keyName}.singular`\n ),\n ...(showSingularInputField && showPluralInputField\n ? PLURAL\n : SINGULAR),\n }}\n />\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body>\n <div className=\"flex w-full flex-col gap-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center gap-x-2\"\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default EditPane;\n","import { t } from \"i18next\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n return (\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography\n className=\"me-4 font-semibold\"\n component=\"h4\"\n data-testid=\"item-count\"\n >\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"neeto-ui-text-gray-600\" />,\n }}\n />\n </Typography>\n <Dropdown\n buttonStyle=\"secondary\"\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n >\n <Menu>\n <MenuItem.Button\n style=\"secondary\"\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </>\n ) : (\n <Typography\n className=\"me-4 font-semibold\"\n component=\"h4\"\n data-testid=\"item-count\"\n >\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n )\n );\n};\n\nexport default LeftActionBlock;\n","import { useState } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/initializers\";\nimport { Alert, NoData, Table, Toastr } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop, pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomies);\n\n const [filteredTaxonomies, setFilteredTaxonomies] = useState(hostTaxonomies);\n\n const handleRowSelect = ids => setSelectedRowIds(ids);\n\n const handleDelete = () => {\n const payload = { keyNames: currentKeys };\n\n const options = {\n onSuccess: () => window.location.reload(),\n onError: error => Toastr.error(error),\n };\n\n bulkDestroyTaxonomies(payload, options);\n };\n\n const handleEdit = values => {\n setInitialValues(values);\n setIsEditTaxonomyPaneOpen(true);\n };\n\n const handleSearch = event => {\n setSearchString(event.target.value);\n const newTaxonomies = getFilteredTaxonomies(\n event.target.value,\n hostTaxonomies\n );\n setFilteredTaxonomies(newTaxonomies);\n };\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={Object.entries(filteredTaxonomies).length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <TableWrapper>\n <Table\n fixedHeight\n rowSelection\n allowRowClick={false}\n rowData={formatDataForTable(filteredTaxonomies)}\n rowKey={prop(\"keyName\")}\n selectedRowKeys={selectedRowIds}\n tableLayout=\"fixed\"\n columnData={getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n })}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Alert\n isOpen={isResetModalOpen}\n submitButtonLabel={t(\"neetoMolecules.common.actions.proceed\")}\n title={t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n }\n onClose={() => setIsResetModalOpen(false)}\n onSubmit={handleDelete}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.taxonomy.noData\")} />\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n /**\n * To show breadcrumbs. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n /**\n * To provide custom column labels for the table.\n */\n columnLabels: PropTypes.object,\n /**\n * To show/hide columns in the table.\n */\n columnsToShow: PropTypes.object,\n /**\n * Props to be passed to the help popover in the title.\n */\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default Taxonomy;\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","title","dataIndex","key","width","render","_","values","menuItems","onClick","_jsxs","className","children","_jsx","Typography","style","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","placement","appendTo","document","body","_toConsumableArray","getFilteredTaxonomies","matchString","filteredArray","filter","_ref4","_ref5","value","defaultLabel","valuesToSearch","Object","some","str","toLowerCase","includes","fromPairs","EditPane","initialValues","isOpen","onClose","_useTranslation","useTranslation","initialFocusRef","useRef","_useUpdateTaxonomy","updateTaxonomy","mutate","showSingularInputField","showPluralInputField","handleSubmit","setSubmitting","taxonomy","onSuccess","captureAnalyticsEvent","window","location","reload","onError","error","Toastr","onSettled","Pane","Header","weight","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","Menu","Dropdown","MenuItem","_Fragment","component","count","components","span","buttonStyle","Button","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState0","searchString","setSearchString","_useState1","_useState10","currentKeys","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","hostTaxonomies","pick","_useState11","_useState12","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","Container","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","entries","isNotEmpty","TableWrapper","Table","fixedHeight","rowSelection","allowRowClick","rowData","rowKey","prop","selectedRowKeys","tableLayout","columnData","onRowSelect","Alert","submitButtonLabel","message","what","NoData"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Taxonomy.js","sources":["../src/components/Taxonomy/constants.js","../src/components/Taxonomy/api.js","../src/components/Taxonomy/useTaxonomyApi.js","../src/components/Taxonomy/utils.jsx","../src/components/Taxonomy/EditPane.jsx","../src/components/Taxonomy/LeftActionBlock.jsx","../src/components/Taxonomy/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const LABEL_REJECT_CHARS_REGEX = /[^a-zA-Z\\d\\s_-]+/;\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n singularLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.singularLabelRequired\")\n ),\n pluralLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.pluralLabelRequired\")\n ),\n});\n\nexport const TAXONOMY_EVENTS = { UPDATED: \"taxonomy_updated\" };\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/constants\";\n\nconst update = ({ keyName, payload }) =>\n axios.patch(`${BASE_API_V1_URL}/taxonomies/${keyName}`, payload);\n\nconst bulkDestroy = payload =>\n axios.delete(`${BASE_API_V1_URL}/taxonomies/bulk_destroy`, {\n data: payload,\n });\n\nconst taxonomiesApi = { update, bulkDestroy };\n\nexport default taxonomiesApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport taxonomiesApi from \"./api\";\n\nconst useUpdateTaxonomy = options =>\n useMutation({ mutationFn: taxonomiesApi.update, ...options });\n\nconst useBulkDestroyTaxonomies = options =>\n useMutation({ mutationFn: taxonomiesApi.bulkDestroy, ...options });\n\nexport { useUpdateTaxonomy, useBulkDestroyTaxonomies };\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nexport const formatLabel = label => capitalize(label.trim());\n\nexport const formatDataForTable = taxonomies =>\n toPairs(taxonomies).map(([keyName, labels]) => ({\n keyName,\n singularLabel: labels[\"singular\"],\n pluralLabel: labels[\"plural\"],\n }));\n\nexport const getColumnData = ({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n}) => {\n const {\n singularColumn: showSingularColumn = true,\n pluralColumn: showPluralColumn = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n return [\n {\n title: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n dataIndex: \"default\",\n key: \"defaultLabel\",\n width: 400,\n render: (_, values) => {\n const menuItems = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => handleEdit(values),\n },\n {\n key: \"reset\",\n label: t(\"neetoMolecules.common.actions.resetToDefaults\"),\n onClick: () => {\n setCurrentKeys([values.keyName]);\n setIsResetModalOpen(true);\n },\n },\n ];\n\n return (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">\n {t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n </Typography>\n <MoreDropdown\n {...{ menuItems }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n className: \"me-1 my-1\",\n }}\n dropdownProps={{\n strategy: \"fixed\",\n placement: \"bottom-end\",\n appendTo: () => document.body,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n title: singularLabel,\n dataIndex: \"singularLabel\",\n key: \"singularLabel\",\n width: 300,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [\n {\n title: pluralLabel,\n dataIndex: \"pluralLabel\",\n key: \"pluralLabel\",\n width: 300,\n },\n ]\n : []),\n ];\n};\n\nexport const getFilteredTaxonomies = (matchString, taxonomies) => {\n const filteredArray = toPairs(taxonomies).filter(([key, value]) => {\n const defaultLabel = t(`taxonomyDefaultLabels.${key}.singular`);\n const valuesToSearch = [defaultLabel, ...Object.values(value)];\n\n return valuesToSearch.some(str =>\n str.toLowerCase().includes(matchString.toLowerCase())\n );\n });\n\n return fromPairs(filteredArray);\n};\n","import { useRef } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/utils\";\nimport { Pane, Toastr, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n LABEL_REJECT_CHARS_REGEX,\n TAXONOMY_EVENTS,\n VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { useUpdateTaxonomy } from \"./useTaxonomyApi\";\nimport { formatLabel } from \"./utils\";\n\nconst EditPane = ({\n columnLabels,\n columnsToShow,\n initialValues,\n isOpen,\n onClose,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const { mutate: updateTaxonomy } = useUpdateTaxonomy();\n\n const {\n singularColumn: showSingularInputField = true,\n pluralColumn: showPluralInputField = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n const handleSubmit = (values, { setSubmitting }) => {\n const { keyName, singularLabel, pluralLabel } = values;\n\n const payload = {\n taxonomy: {\n keyName,\n singularLabel: formatLabel(singularLabel),\n pluralLabel: formatLabel(pluralLabel),\n },\n };\n\n const options = {\n onSuccess: () => {\n captureAnalyticsEvent(TAXONOMY_EVENTS.UPDATED, {\n taxonomy: payload.taxonomy,\n });\n window.location.reload();\n },\n onError: error => Toastr.error(error),\n onSettled: () => setSubmitting(false),\n };\n\n updateTaxonomy({ keyName, payload }, options);\n };\n\n return (\n <Pane\n {...{ initialFocusRef, isOpen, onClose }}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.editPane.title\"\n values={{\n entity: t(\n `taxonomyDefaultLabels.${initialValues.keyName}.singular`\n ),\n ...(showSingularInputField && showPluralInputField\n ? PLURAL\n : SINGULAR),\n }}\n />\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body>\n <div className=\"flex w-full flex-col gap-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center gap-x-2\"\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default EditPane;\n","import { t } from \"i18next\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n return (\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography\n className=\"me-4 font-semibold\"\n component=\"h4\"\n data-testid=\"item-count\"\n >\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"neeto-ui-text-gray-600\" />,\n }}\n />\n </Typography>\n <Dropdown\n buttonStyle=\"secondary\"\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n >\n <Menu>\n <MenuItem.Button\n style=\"secondary\"\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </>\n ) : (\n <Typography\n className=\"me-4 font-semibold\"\n component=\"h4\"\n data-testid=\"item-count\"\n >\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n )\n );\n};\n\nexport default LeftActionBlock;\n","import { useState } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/initializers\";\nimport { Alert, NoData, Table, Toastr } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop, pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomies);\n\n const [filteredTaxonomies, setFilteredTaxonomies] = useState(hostTaxonomies);\n\n const handleRowSelect = ids => setSelectedRowIds(ids);\n\n const handleDelete = () => {\n const payload = { keyNames: currentKeys };\n\n const options = {\n onSuccess: () => window.location.reload(),\n onError: error => Toastr.error(error),\n };\n\n bulkDestroyTaxonomies(payload, options);\n };\n\n const handleEdit = values => {\n setInitialValues(values);\n setIsEditTaxonomyPaneOpen(true);\n };\n\n const handleSearch = event => {\n setSearchString(event.target.value);\n const newTaxonomies = getFilteredTaxonomies(\n event.target.value,\n hostTaxonomies\n );\n setFilteredTaxonomies(newTaxonomies);\n };\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={Object.entries(filteredTaxonomies).length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <TableWrapper>\n <Table\n fixedHeight\n rowSelection\n allowRowClick={false}\n rowData={formatDataForTable(filteredTaxonomies)}\n rowKey={prop(\"keyName\")}\n selectedRowKeys={selectedRowIds}\n tableLayout=\"fixed\"\n columnData={getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n })}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Alert\n isOpen={isResetModalOpen}\n submitButtonLabel={t(\"neetoMolecules.common.actions.proceed\")}\n title={t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n }\n onClose={() => setIsResetModalOpen(false)}\n onSubmit={handleDelete}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.taxonomy.noData\")} />\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n /**\n * To show breadcrumbs. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n /**\n * To provide custom column labels for the table.\n */\n columnLabels: PropTypes.object,\n /**\n * To show/hide columns in the table.\n */\n columnsToShow: PropTypes.object,\n /**\n * Props to be passed to the help popover in the title.\n */\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default Taxonomy;\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","title","dataIndex","key","width","render","_","values","menuItems","onClick","_jsxs","className","children","_jsx","Typography","style","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","placement","appendTo","document","body","_toConsumableArray","getFilteredTaxonomies","matchString","filteredArray","filter","_ref4","_ref5","value","defaultLabel","valuesToSearch","Object","some","str","toLowerCase","includes","fromPairs","EditPane","initialValues","isOpen","onClose","_useTranslation","useTranslation","initialFocusRef","useRef","_useUpdateTaxonomy","updateTaxonomy","mutate","showSingularInputField","showPluralInputField","handleSubmit","setSubmitting","taxonomy","onSuccess","captureAnalyticsEvent","window","location","reload","onError","error","Toastr","onSettled","Pane","Header","weight","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","Menu","Dropdown","MenuItem","_Fragment","component","count","components","span","buttonStyle","Button","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState0","searchString","setSearchString","_useState1","_useState10","currentKeys","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","hostTaxonomies","pick","_useState11","_useState12","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","Container","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","entries","isNotEmpty","TableWrapper","Table","fixedHeight","rowSelection","allowRowClick","rowData","rowKey","prop","selectedRowKeys","tableLayout","columnData","onRowSelect","Alert","submitButtonLabel","message","what","NoData"],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { c as createLucideIcon } from './createLucideIcon-mNMhCCpf.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @license lucide-react v1.7.0 - ISC
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the ISC license.
|
|
7
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
const __iconNode = [
|
|
12
|
+
["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
|
|
13
|
+
["path", { d: "M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3", key: "1u773s" }],
|
|
14
|
+
["path", { d: "M12 17h.01", key: "p32p05" }]
|
|
15
|
+
];
|
|
16
|
+
const CircleQuestionMark = createLucideIcon("circle-question-mark", __iconNode);
|
|
17
|
+
|
|
18
|
+
export { CircleQuestionMark as C };
|
|
19
|
+
//# sourceMappingURL=circle-question-mark-Dib48f5Z.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"circle-question-mark-Dib48f5Z.js","sources":["../node_modules/lucide-react/dist/esm/icons/circle-question-mark.js"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"path\", { d: \"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\", key: \"1u773s\" }],\n [\"path\", { d: \"M12 17h.01\", key: \"p32p05\" }]\n];\nconst CircleQuestionMark = createLucideIcon(\"circle-question-mark\", __iconNode);\n\nexport { __iconNode, CircleQuestionMark as default };\n//# sourceMappingURL=circle-question-mark.js.map\n"],"names":[],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG;AACnB,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC5D,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,sCAAsC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AACxE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE;AAC7C,CAAC;AACI,MAAC,kBAAkB,GAAG,gBAAgB,CAAC,sBAAsB,EAAE,UAAU;;;;","x_google_ignoreList":[0]}
|
package/dist/cjs/CalendarView.js
CHANGED
|
@@ -26,7 +26,7 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
26
26
|
require('classnames');
|
|
27
27
|
require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
28
28
|
require('@bigbinary/neeto-icons/Column');
|
|
29
|
-
require('./Columns-
|
|
29
|
+
require('./Columns-BACqpEQU.js');
|
|
30
30
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
31
31
|
require('@dnd-kit/core');
|
|
32
32
|
require('@dnd-kit/sortable');
|
|
@@ -34,6 +34,7 @@ require('@bigbinary/neeto-icons/Search');
|
|
|
34
34
|
require('@bigbinary/neetoui/Checkbox');
|
|
35
35
|
require('@bigbinary/neetoui/Input');
|
|
36
36
|
require('@bigbinary/neetoui/Label');
|
|
37
|
+
require('./utilities.esm-jwIHISzF.js');
|
|
37
38
|
require('@bigbinary/neeto-icons/Drag');
|
|
38
39
|
require('@tanstack/react-query');
|
|
39
40
|
require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarView.js","sources":["../../src/components/CalendarView/constants.js","../../src/components/CalendarView/utils.js","../../src/components/CalendarView/CustomDatePicker.jsx","../../src/components/CalendarView/Header.jsx","../../src/components/CalendarView/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst WEEKLY_VIEW = t(\"neetoMolecules.calendarView.weekly\");\nconst MONTHLY_VIEW = t(\"neetoMolecules.calendarView.monthly\");\nconst DAILY_VIEW = t(\"neetoMolecules.calendarView.daily\");\n\nexport const VIEW_OPTIONS = {\n [DAILY_VIEW]: {\n label: DAILY_VIEW,\n fullCalendarView: \"timeGridDay\",\n picker: \"day\",\n },\n [WEEKLY_VIEW]: {\n label: WEEKLY_VIEW,\n fullCalendarView: \"timeGridWeek\",\n picker: \"week\",\n },\n [MONTHLY_VIEW]: {\n label: MONTHLY_VIEW,\n fullCalendarView: \"dayGridMonth\",\n picker: \"month\",\n },\n};\n\nexport const LOCALE_CONFIG = {\n ja: {\n dayCellContent: arg => arg.date.getDate(),\n dayHeaderFormat: { weekday: \"long\" },\n },\n};\n","import { dayjs } from \"neetocommons/utils\";\n\nconst getWeekString = ({\n date,\n isStartOfWeek = true,\n showMonth = false,\n showYear = false,\n}) =>\n `${showMonth || isStartOfWeek ? date.format(\"MMM\") : \"\"} ${date.date()} ${\n showYear || !isStartOfWeek ? date.format(\"YYYY\") : \"\"\n }`;\n\nexport const getStartOfWeek = date => dayjs(date).startOf(\"week\");\n\nexport const getEndOfWeek = date => dayjs(date).endOf(\"week\");\n\nexport const getFormattedMonthStr = date => date.format(\"MMM YYYY\");\n\nexport const getFormattedWeekRangeStr = date => {\n const startOfWeek = getStartOfWeek(date);\n const endOfWeek = getEndOfWeek(date);\n\n const shouldShowMonthsSeparately = startOfWeek.month() !== endOfWeek.month();\n const shouldShowYearsSeparately = startOfWeek.year() !== endOfWeek.year();\n\n const startOfWeekStr = getWeekString({\n date: startOfWeek,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n const endOfWeekStr = getWeekString({\n date: endOfWeek,\n isStartOfWeek: false,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n return `${startOfWeekStr} - ${endOfWeekStr}`;\n};\n\nexport const getFormattedDayStr = date => date.format(\"DD MMM YYYY\");\n\nexport const getFormattedRangeStr = (date, picker) => {\n const formatFunctions = {\n month: getFormattedMonthStr,\n week: getFormattedWeekRangeStr,\n day: getFormattedDayStr,\n };\n const selectedFormatter = formatFunctions[picker];\n\n return selectedFormatter(date);\n};\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { useRef, useState } from \"react\";\n\nimport { dayjs } from \"neetocommons/utils\";\nimport { Down, Left, Right } from \"neetoicons\";\nimport { Typography, Button, DatePicker } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getFormattedRangeStr } from \"./utils\";\n\nconst CustomDatePicker = ({\n selectedDate,\n setSelectedDate,\n picker,\n validDates,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n const [isOpen, setIsOpen] = useState(false);\n\n const datePickerRef = useRef(null);\n const buttonRef = useRef(null);\n\n const selectedRangeStr = getFormattedRangeStr(selectedDate, picker);\n\n const { start, end } = validDates;\n\n const isDateLessThanStart =\n start && selectedDate.isSameOrBefore(dayjs(start), picker);\n\n const isDateGreaterThanEnd =\n end && selectedDate.isSameOrAfter(dayjs(end), picker);\n\n const onPrevious = () =>\n setSelectedDate(selectedDate => selectedDate.subtract(1, picker));\n\n const onNext = () =>\n setSelectedDate(selectedDate => selectedDate.add(1, picker));\n\n const onToday = () => setSelectedDate(dayjs());\n\n const getDisabledDates = date => {\n if (!date) return false;\n\n return (start && date <= start) || (end && date >= end);\n };\n\n const handleButtonMouseDown = e => {\n if (!(buttonRef.current && buttonRef.current.contains(e.target))) return;\n e.stopPropagation();\n if (isOpen) datePickerRef.current.focus();\n };\n\n return (\n <div className=\"flex items-center justify-start gap-x-4\">\n <Button\n aria-label={t(\"neetoMolecules.calendarView.aria.goToToday\")}\n data-testid=\"neeto-molecules-calendar-view-today-button\"\n label={t(\"neetoMolecules.calendarView.today\")}\n style=\"secondary\"\n onClick={onToday}\n />\n <div\n aria-label={t(\"neetoMolecules.calendarView.aria.dateNavigation\")}\n className=\"flex\"\n role=\"group\"\n >\n <Button\n className=\"me-1\"\n data-testid=\"neeto-molecules-calendar-view-previous-button\"\n disabled={isDateLessThanStart}\n icon={() => <Left className=\"rtl:scale-x-[-1]\" size={20} />}\n style=\"text\"\n aria-label={t(\"neetoMolecules.calendarView.aria.previousPeriod\", {\n period: picker,\n })}\n onClick={onPrevious}\n />\n <Button\n aria-expanded={isOpen}\n aria-haspopup=\"dialog\"\n className=\"min-w-52 justify-center\"\n data-testid=\"neeto-molecules-calendar-view-date-picker-button\"\n icon={Down}\n ref={buttonRef}\n style=\"text\"\n aria-label={t(\"neetoMolecules.calendarView.aria.selectDate\", {\n currentDate: selectedRangeStr,\n })}\n onClick={() => setIsOpen(isOpen => !isOpen)}\n onMouseDown={handleButtonMouseDown}\n >\n <Typography\n data-testid=\"neeto-molecules-calendar-view-date-picker-button-label\"\n style=\"h5\"\n >\n {selectedRangeStr}\n </Typography>\n </Button>\n <DatePicker\n className=\"invisible w-0 px-0\"\n defaultValue={selectedDate}\n disabledDate={getDisabledDates}\n open={isOpen}\n placement=\"topRight\"\n ref={datePickerRef}\n value={selectedDate}\n onChange={setSelectedDate}\n onOpenChange={setIsOpen}\n {...{ picker, ...otherProps }}\n />\n <Button\n className=\"ms-1\"\n data-testid=\"neeto-molecules-calendar-view-next-button\"\n disabled={isDateGreaterThanEnd}\n icon={() => <Right className=\"rtl:scale-x-[-1]\" size={20} />}\n style=\"text\"\n aria-label={t(\"neetoMolecules.calendarView.aria.nextPeriod\", {\n period: picker,\n })}\n onClick={onNext}\n />\n </div>\n </div>\n );\n};\n\nexport default CustomDatePicker;\n","import { useEffect } from \"react\";\n\nimport { capitalize } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { prop, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CustomDatePicker from \"./CustomDatePicker\";\n\nconst Header = ({\n calendarRef,\n selectedView,\n setSelectedView,\n setSelectedDate,\n selectedDate,\n calendarViewOptions,\n validDates,\n}) => {\n const { t } = useTranslation();\n const { Menu, MenuItem } = Dropdown;\n\n const handleViewSelection = option => {\n setSelectedView(option);\n calendarRef.current.calendar.changeView(option.fullCalendarView);\n };\n\n const navigateToSelectedDate = () =>\n calendarRef?.current?.calendar?.gotoDate(selectedDate.format(\"YYYY-MM-DD\"));\n\n useEffect(() => {\n setTimeout(navigateToSelectedDate);\n }, [selectedDate]);\n\n return (\n <div\n aria-label={t(\"neetoMolecules.calendarView.aria.calendarControls\")}\n className=\"flex gap-x-4\"\n role=\"group\"\n >\n <CustomDatePicker\n {...{ selectedDate, setSelectedDate, validDates }}\n getPopupContainer={prop(\"parentNode\")}\n picker={selectedView.picker}\n />\n {Object.keys(calendarViewOptions).length > 1 && (\n <Dropdown\n buttonStyle=\"secondary\"\n label={capitalize(selectedView.label)}\n buttonProps={{\n \"data-testid\": \"calendar-view-dropdown\",\n \"aria-label\": t(\"neetoMolecules.calendarView.aria.viewSelector\", {\n view: capitalize(selectedView.label),\n }),\n }}\n >\n <Menu>\n {values(calendarViewOptions).map((option, idx) => (\n <MenuItem.Button\n isActive={selectedView === option}\n key={idx}\n onClick={() => handleViewSelection(option)}\n >\n {capitalize(option.label)}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n )}\n </div>\n );\n};\n\nexport default Header;\n","import { forwardRef, useRef, useState, useEffect } from \"react\";\n\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport i18next from \"i18next\";\nimport { noop } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SubHeader from \"components/SubHeader\";\n\nimport \"./calendar-view.scss\";\nimport { LOCALE_CONFIG, VIEW_OPTIONS } from \"./constants\";\nimport Header from \"./Header\";\nimport { mergeRefs } from \"./utils\";\n\nconst direction = i18next.dir() || \"ltr\";\n\nconst CalendarView = forwardRef(\n (\n {\n viewOptions = VIEW_OPTIONS,\n events = [],\n handleDateClick = noop,\n handleEventClick = noop,\n eventClassNames = \"\",\n dayCellClassNames = \"\",\n validDates = { start: null, end: null },\n onDateChange = noop,\n dayMaxEvents,\n eventMaxStack,\n hideHeader = false,\n locale,\n ...otherProps\n },\n ref\n ) => {\n const calendarViewOptions = viewOptions || VIEW_OPTIONS;\n\n const defaultView =\n Object.values(calendarViewOptions).find(prop(\"default\")) ||\n calendarViewOptions[Object.keys(calendarViewOptions)[0]];\n\n const [selectedView, setSelectedView] = useState(defaultView);\n\n const [selectedDate, setSelectedDate] = useState(dayjs());\n\n const { t } = useTranslation();\n\n const localeSpecificProps = LOCALE_CONFIG[locale] || {};\n\n const handleDateChange = date => {\n setSelectedDate(prevDate => {\n const newDate = typeof date === \"function\" ? date(prevDate) : date;\n onDateChange(newDate);\n\n return newDate;\n });\n };\n const calendarWrapperRef = useRef(null);\n const calendarRef = useRef();\n\n useEffect(() => {\n const calendarApi = calendarRef.current?.getApi?.();\n const wrapperElement = calendarWrapperRef.current;\n\n if (!calendarApi || !wrapperElement) return undefined;\n\n const handleResize = () => {\n calendarApi.updateSize();\n };\n\n const observer = new ResizeObserver(handleResize);\n\n observer.observe(wrapperElement);\n\n return () => {\n observer.disconnect();\n };\n }, []);\n\n return (\n <div\n className=\"flex-col\"\n data-testid=\"calendar-view\"\n ref={calendarWrapperRef}\n >\n {!hideHeader && (\n <SubHeader\n leftActionBlock={\n <Typography style=\"h2\">\n {selectedDate.format(\"MMMM, YYYY\")}\n </Typography>\n }\n rightActionBlock={\n <Header\n {...{\n calendarRef,\n calendarViewOptions,\n selectedDate,\n selectedView,\n setSelectedDate,\n setSelectedView,\n validDates,\n }}\n setSelectedDate={handleDateChange}\n />\n }\n />\n )}\n <FullCalendar\n expandRows\n allDayText={t(\"neetoMolecules.calendarView.allDay\")}\n dateClick={handleDateClick}\n dayHeaderClassNames=\"p-2\"\n displayEventTime={false}\n eventClick={handleEventClick}\n headerToolbar={false}\n height=\"auto\"\n initialView={selectedView.fullCalendarView}\n plugins={[dayGridPlugin, timeGridPlugin, interactionPlugin]}\n ref={mergeRefs(ref, calendarRef)}\n {...{\n dayCellClassNames,\n dayMaxEvents,\n direction,\n eventClassNames,\n eventMaxStack,\n events,\n locale,\n ...localeSpecificProps,\n ...otherProps,\n }}\n />\n </div>\n );\n }\n);\n\nCalendarView.displayName = \"CalendarView\";\n\nCalendarView.propTypes = {\n /**\n * Views to be listed in the dropdown. The default selected view can be set by adding `default: true` to the required view.\n */\n viewOptions: PropTypes.object,\n /**\n * An array of event objects that will be displayed on the calendar.\n */\n events: PropTypes.array,\n /**\n * Function to be triggered when the user clicks on a date or a time.\n */\n handleDateClick: PropTypes.func,\n /**\n * Function to be triggered when the user clicks an event.\n */\n handleEventClick: PropTypes.func,\n /**\n * A className input for adding classNames to the outermost event element.\n */\n eventClassNames: PropTypes.string,\n /**\n * A className input for adding classNames to the <td> cell.\n */\n dayCellClassNames: PropTypes.string,\n /**\n * In dayGrid view, the max number of events within a given day, not counting the +more link.\n */\n dayMaxEvents: PropTypes.number,\n /**\n * For timeline view, the maximum number of events that stack top-to-bottom. For timeGrid view, the maximum number of events that stack left-to-right.\n */\n eventMaxStack: PropTypes.number,\n /**\n * This function will be triggered with the new selected date passed as argument\n */\n onDateChange: PropTypes.func,\n /**\n * An object containing the start and end dates in which the range given is the valid range of selectable dates.\n */\n validDates: PropTypes.shape({\n start: PropTypes.instanceOf(Date),\n end: PropTypes.instanceOf(Date),\n }),\n /**\n * This prop can be used to hide the header\n */\n hideHeader: PropTypes.bool,\n /**\n * The locale to be used for the calendar.\n */\n locale: PropTypes.string,\n};\n\nexport default CalendarView;\n"],"names":["WEEKLY_VIEW","t","MONTHLY_VIEW","DAILY_VIEW","VIEW_OPTIONS","_defineProperty","label","fullCalendarView","picker","LOCALE_CONFIG","ja","dayCellContent","arg","date","getDate","dayHeaderFormat","weekday","getWeekString","_ref","_ref$isStartOfWeek","isStartOfWeek","_ref$showMonth","showMonth","_ref$showYear","showYear","concat","format","getStartOfWeek","dayjs","startOf","getEndOfWeek","endOf","getFormattedMonthStr","getFormattedWeekRangeStr","startOfWeek","endOfWeek","shouldShowMonthsSeparately","month","shouldShowYearsSeparately","year","startOfWeekStr","endOfWeekStr","getFormattedDayStr","getFormattedRangeStr","formatFunctions","week","day","selectedFormatter","mergeRefs","_len","arguments","length","refs","Array","_key","node","filter","Boolean","forEach","ref","current","CustomDatePicker","selectedDate","setSelectedDate","validDates","otherProps","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","datePickerRef","useRef","buttonRef","selectedRangeStr","start","end","isDateLessThanStart","isSameOrBefore","isDateGreaterThanEnd","isSameOrAfter","onPrevious","subtract","onNext","add","onToday","getDisabledDates","handleButtonMouseDown","e","contains","target","stopPropagation","focus","_jsxs","className","children","_jsx","Button","style","onClick","role","disabled","icon","Left","size","period","Down","currentDate","onMouseDown","Typography","DatePicker","_objectSpread","defaultValue","disabledDate","open","placement","value","onChange","onOpenChange","Right","Header","calendarRef","selectedView","setSelectedView","calendarViewOptions","Menu","Dropdown","MenuItem","handleViewSelection","option","calendar","changeView","navigateToSelectedDate","_calendarRef$current","gotoDate","useEffect","setTimeout","getPopupContainer","prop","Object","keys","buttonStyle","capitalize","buttonProps","view","values","map","idx","isActive","direction","i18next","dir","CalendarView","forwardRef","_ref$viewOptions","viewOptions","_ref$events","events","_ref$handleDateClick","handleDateClick","noop","_ref$handleEventClick","handleEventClick","_ref$eventClassNames","eventClassNames","_ref$dayCellClassName","dayCellClassNames","_ref$validDates","_ref$onDateChange","onDateChange","dayMaxEvents","eventMaxStack","_ref$hideHeader","hideHeader","locale","defaultView","find","_useState3","_useState4","localeSpecificProps","handleDateChange","prevDate","newDate","calendarWrapperRef","_calendarRef$current$","calendarApi","getApi","call","wrapperElement","undefined","handleResize","updateSize","observer","ResizeObserver","observe","disconnect","SubHeader","leftActionBlock","rightActionBlock","FullCalendar","expandRows","allDayText","dateClick","dayHeaderClassNames","displayEventTime","eventClick","headerToolbar","height","initialView","plugins","dayGridPlugin","timeGridPlugin","interactionPlugin","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,WAAW,GAAGC,SAAC,CAAC,oCAAoC,CAAC;AAC3D,IAAMC,YAAY,GAAGD,SAAC,CAAC,qCAAqC,CAAC;AAC7D,IAAME,UAAU,GAAGF,SAAC,CAAC,mCAAmC,CAAC;AAElD,IAAMG,YAAY,GAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EACtBF,UAAU,EAAG;AACZG,EAAAA,KAAK,EAAEH,UAAU;AACjBI,EAAAA,gBAAgB,EAAE,aAAa;AAC/BC,EAAAA,MAAM,EAAE;AACV,CAAC,CAAA,EACAR,WAAW,EAAG;AACbM,EAAAA,KAAK,EAAEN,WAAW;AAClBO,EAAAA,gBAAgB,EAAE,cAAc;AAChCC,EAAAA,MAAM,EAAE;AACV,CAAC,CAAA,EACAN,YAAY,EAAG;AACdI,EAAAA,KAAK,EAAEJ,YAAY;AACnBK,EAAAA,gBAAgB,EAAE,cAAc;AAChCC,EAAAA,MAAM,EAAE;AACV,CAAC,CACF;AAEM,IAAMC,aAAa,GAAG;AAC3BC,EAAAA,EAAE,EAAE;AACFC,IAAAA,cAAc,EAAE,SAAhBA,cAAcA,CAAEC,GAAG,EAAA;AAAA,MAAA,OAAIA,GAAG,CAACC,IAAI,CAACC,OAAO,EAAE;AAAA,IAAA,CAAA;AACzCC,IAAAA,eAAe,EAAE;AAAEC,MAAAA,OAAO,EAAE;AAAO;AACrC;AACF,CAAC;;AC3BD,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA,EAAA;AAAA,EAAA,IACjBL,IAAI,GAAAK,IAAA,CAAJL,IAAI;IAAAM,kBAAA,GAAAD,IAAA,CACJE,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,kBAAA;IAAAE,cAAA,GAAAH,IAAA,CACpBI,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,cAAA;IAAAE,aAAA,GAAAL,IAAA,CACjBM,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,aAAA;AAAA,EAAA,OAAA,EAAA,CAAAE,MAAA,CAEbH,SAAS,IAAIF,aAAa,GAAGP,IAAI,CAACa,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAA,GAAA,CAAA,CAAAD,MAAA,CAAIZ,IAAI,CAACA,IAAI,EAAE,EAAA,GAAA,CAAA,CAAAY,MAAA,CACpED,QAAQ,IAAI,CAACJ,aAAa,GAAGP,IAAI,CAACa,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAA;AAAA,CACrD;AAEG,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAGd,IAAI,EAAA;EAAA,OAAIe,WAAK,CAACf,IAAI,CAAC,CAACgB,OAAO,CAAC,MAAM,CAAC;AAAA,CAAA;AAE1D,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAGjB,IAAI,EAAA;EAAA,OAAIe,WAAK,CAACf,IAAI,CAAC,CAACkB,KAAK,CAAC,MAAM,CAAC;AAAA,CAAA;AAEtD,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGnB,IAAI,EAAA;AAAA,EAAA,OAAIA,IAAI,CAACa,MAAM,CAAC,UAAU,CAAC;AAAA,CAAA;AAE5D,IAAMO,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAGpB,IAAI,EAAI;AAC9C,EAAA,IAAMqB,WAAW,GAAGP,cAAc,CAACd,IAAI,CAAC;AACxC,EAAA,IAAMsB,SAAS,GAAGL,YAAY,CAACjB,IAAI,CAAC;AAEpC,EAAA,IAAMuB,0BAA0B,GAAGF,WAAW,CAACG,KAAK,EAAE,KAAKF,SAAS,CAACE,KAAK,EAAE;AAC5E,EAAA,IAAMC,yBAAyB,GAAGJ,WAAW,CAACK,IAAI,EAAE,KAAKJ,SAAS,CAACI,IAAI,EAAE;EAEzE,IAAMC,cAAc,GAAGvB,aAAa,CAAC;AACnCJ,IAAAA,IAAI,EAAEqB,WAAW;AACjBZ,IAAAA,SAAS,EAAEc,0BAA0B;AACrCZ,IAAAA,QAAQ,EAAEc;AACZ,GAAC,CAAC;EAEF,IAAMG,YAAY,GAAGxB,aAAa,CAAC;AACjCJ,IAAAA,IAAI,EAAEsB,SAAS;AACff,IAAAA,aAAa,EAAE,KAAK;AACpBE,IAAAA,SAAS,EAAEc,0BAA0B;AACrCZ,IAAAA,QAAQ,EAAEc;AACZ,GAAC,CAAC;AAEF,EAAA,OAAA,EAAA,CAAAb,MAAA,CAAUe,cAAc,EAAA,KAAA,CAAA,CAAAf,MAAA,CAAMgB,YAAY,CAAA;AAC5C,CAAC;AAEM,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAG7B,IAAI,EAAA;AAAA,EAAA,OAAIA,IAAI,CAACa,MAAM,CAAC,aAAa,CAAC;AAAA,CAAA;AAE7D,IAAMiB,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAI9B,IAAI,EAAEL,MAAM,EAAK;AACpD,EAAA,IAAMoC,eAAe,GAAG;AACtBP,IAAAA,KAAK,EAAEL,oBAAoB;AAC3Ba,IAAAA,IAAI,EAAEZ,wBAAwB;AAC9Ba,IAAAA,GAAG,EAAEJ;GACN;AACD,EAAA,IAAMK,iBAAiB,GAAGH,eAAe,CAACpC,MAAM,CAAC;EAEjD,OAAOuC,iBAAiB,CAAClC,IAAI,CAAC;AAChC,CAAC;AAEM,IAAMmC,SAAS,GACpB,SADWA,SAASA,GAAA;AAAA,EAAA,KAAA,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAChBC,IAAI,GAAA,IAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,GAAA,CAAA,EAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,EAAA,EAAA;AAAJF,IAAAA,IAAI,CAAAE,IAAA,CAAA,GAAAJ,SAAA,CAAAI,IAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OACR,UAAAC,IAAI,EAAA;IAAA,OACFH,IAAI,CACDI,MAAM,CAACC,OAAO,CAAC,CACfC,OAAO,CAAC,UAAAC,GAAG,EAAA;AAAA,MAAA,OACV,OAAOA,GAAG,KAAK,UAAU,GAAGA,GAAG,CAACJ,IAAI,CAAC,GAAII,GAAG,CAACC,OAAO,GAAGL,IAAK;AAAA,IAAA,CAC9D,CAAC;AAAA,EAAA,CAAA;AAAA,CAAA;;;;;ACpDP,IAAMM,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA3C,IAAA,EAMhB;AAAA,EAAA,IALJ4C,YAAY,GAAA5C,IAAA,CAAZ4C,YAAY;IACZC,eAAe,GAAA7C,IAAA,CAAf6C,eAAe;IACfvD,MAAM,GAAAU,IAAA,CAANV,MAAM;IACNwD,UAAU,GAAA9C,IAAA,CAAV8C,UAAU;AACPC,IAAAA,UAAU,GAAAC,wBAAA,CAAAhD,IAAA,EAAAiD,WAAA,CAAA;AAEb,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBpE,CAAC,GAAAmE,eAAA,CAADnE,CAAC;AACT,EAAA,IAAAqE,SAAA,GAA4BC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApCI,IAAAA,MAAM,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,SAAS,GAAAH,UAAA,CAAA,CAAA,CAAA;AAExB,EAAA,IAAMI,aAAa,GAAGC,YAAM,CAAC,IAAI,CAAC;AAClC,EAAA,IAAMC,SAAS,GAAGD,YAAM,CAAC,IAAI,CAAC;AAE9B,EAAA,IAAME,gBAAgB,GAAGpC,oBAAoB,CAACmB,YAAY,EAAEtD,MAAM,CAAC;AAEnE,EAAA,IAAQwE,KAAK,GAAUhB,UAAU,CAAzBgB,KAAK;IAAEC,GAAG,GAAKjB,UAAU,CAAlBiB,GAAG;AAElB,EAAA,IAAMC,mBAAmB,GACvBF,KAAK,IAAIlB,YAAY,CAACqB,cAAc,CAACvD,WAAK,CAACoD,KAAK,CAAC,EAAExE,MAAM,CAAC;AAE5D,EAAA,IAAM4E,oBAAoB,GACxBH,GAAG,IAAInB,YAAY,CAACuB,aAAa,CAACzD,WAAK,CAACqD,GAAG,CAAC,EAAEzE,MAAM,CAAC;AAEvD,EAAA,IAAM8E,UAAU,GAAG,SAAbA,UAAUA,GAAA;IAAA,OACdvB,eAAe,CAAC,UAAAD,YAAY,EAAA;AAAA,MAAA,OAAIA,YAAY,CAACyB,QAAQ,CAAC,CAAC,EAAE/E,MAAM,CAAC;IAAA,CAAA,CAAC;AAAA,EAAA,CAAA;AAEnE,EAAA,IAAMgF,MAAM,GAAG,SAATA,MAAMA,GAAA;IAAA,OACVzB,eAAe,CAAC,UAAAD,YAAY,EAAA;AAAA,MAAA,OAAIA,YAAY,CAAC2B,GAAG,CAAC,CAAC,EAAEjF,MAAM,CAAC;IAAA,CAAA,CAAC;AAAA,EAAA,CAAA;AAE9D,EAAA,IAAMkF,OAAO,GAAG,SAAVA,OAAOA,GAAA;AAAA,IAAA,OAAS3B,eAAe,CAACnC,WAAK,EAAE,CAAC;AAAA,EAAA,CAAA;AAE9C,EAAA,IAAM+D,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAG9E,IAAI,EAAI;AAC/B,IAAA,IAAI,CAACA,IAAI,EAAE,OAAO,KAAK;IAEvB,OAAQmE,KAAK,IAAInE,IAAI,IAAImE,KAAK,IAAMC,GAAG,IAAIpE,IAAI,IAAIoE,GAAI;EACzD,CAAC;AAED,EAAA,IAAMW,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,CAAC,EAAI;AACjC,IAAA,IAAI,EAAEf,SAAS,CAAClB,OAAO,IAAIkB,SAAS,CAAClB,OAAO,CAACkC,QAAQ,CAACD,CAAC,CAACE,MAAM,CAAC,CAAC,EAAE;IAClEF,CAAC,CAACG,eAAe,EAAE;IACnB,IAAItB,MAAM,EAAEE,aAAa,CAAChB,OAAO,CAACqC,KAAK,EAAE;EAC3C,CAAC;AAED,EAAA,oBACEC,eAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,yCAAyC;IAAAC,QAAA,EAAA,cACtDC,cAAA,CAACC,MAAM,EAAA;MACL,YAAA,EAAYrG,CAAC,CAAC,4CAA4C,CAAE;AAC5D,MAAA,aAAA,EAAY,4CAA4C;AACxDK,MAAAA,KAAK,EAAEL,CAAC,CAAC,mCAAmC,CAAE;AAC9CsG,MAAAA,KAAK,EAAC,WAAW;AACjBC,MAAAA,OAAO,EAAEd;KACV,CAAC,eACFQ,eAAA,CAAA,KAAA,EAAA;MACE,YAAA,EAAYjG,CAAC,CAAC,iDAAiD,CAAE;AACjEkG,MAAAA,SAAS,EAAC,MAAM;AAChBM,MAAAA,IAAI,EAAC,OAAO;MAAAL,QAAA,EAAA,cAEZC,cAAA,CAACC,MAAM,EAAA;AACLH,QAAAA,SAAS,EAAC,MAAM;AAChB,QAAA,aAAA,EAAY,+CAA+C;AAC3DO,QAAAA,QAAQ,EAAExB,mBAAoB;QAC9ByB,IAAI,EAAE,SAANA,IAAIA,GAAA;UAAA,oBAAQN,cAAA,CAACO,IAAI,EAAA;AAACT,YAAAA,SAAS,EAAC,kBAAkB;AAACU,YAAAA,IAAI,EAAE;AAAG,WAAE,CAAC;QAAA,CAAC;AAC5DN,QAAAA,KAAK,EAAC,MAAM;QACZ,YAAA,EAAYtG,CAAC,CAAC,iDAAiD,EAAE;AAC/D6G,UAAAA,MAAM,EAAEtG;AACV,SAAC,CAAE;AACHgG,QAAAA,OAAO,EAAElB;AAAW,OACrB,CAAC,eACFe,cAAA,CAACC,MAAM,EAAA;AACL,QAAA,eAAA,EAAe5B,MAAO;AACtB,QAAA,eAAA,EAAc,QAAQ;AACtByB,QAAAA,SAAS,EAAC,yBAAyB;AACnC,QAAA,aAAA,EAAY,kDAAkD;AAC9DQ,QAAAA,IAAI,EAAEI,IAAK;AACXpD,QAAAA,GAAG,EAAEmB,SAAU;AACfyB,QAAAA,KAAK,EAAC,MAAM;QACZ,YAAA,EAAYtG,CAAC,CAAC,6CAA6C,EAAE;AAC3D+G,UAAAA,WAAW,EAAEjC;AACf,SAAC,CAAE;QACHyB,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQ7B,SAAS,CAAC,UAAAD,MAAM,EAAA;AAAA,YAAA,OAAI,CAACA,MAAM;UAAA,CAAA,CAAC;QAAA,CAAC;AAC5CuC,QAAAA,WAAW,EAAErB,qBAAsB;QAAAQ,QAAA,eAEnCC,cAAA,CAACa,UAAU,EAAA;AACT,UAAA,aAAA,EAAY,wDAAwD;AACpEX,UAAAA,KAAK,EAAC,IAAI;AAAAH,UAAAA,QAAA,EAETrB;SACS;AAAC,OACP,CAAC,eACTsB,cAAA,CAACc,UAAU,EAAAC,eAAA,CAAA;AACTjB,QAAAA,SAAS,EAAC,oBAAoB;AAC9BkB,QAAAA,YAAY,EAAEvD,YAAa;AAC3BwD,QAAAA,YAAY,EAAE3B,gBAAiB;AAC/B4B,QAAAA,IAAI,EAAE7C,MAAO;AACb8C,QAAAA,SAAS,EAAC,UAAU;AACpB7D,QAAAA,GAAG,EAAEiB,aAAc;AACnB6C,QAAAA,KAAK,EAAE3D,YAAa;AACpB4D,QAAAA,QAAQ,EAAE3D,eAAgB;AAC1B4D,QAAAA,YAAY,EAAEhD;AAAU,OAAA,EAAAyC,eAAA,CAAA;AAClB5G,QAAAA,MAAM,EAANA;AAAM,OAAA,EAAKyD,UAAU,CAAA,CAC5B,CAAC,eACFoC,cAAA,CAACC,MAAM,EAAA;AACLH,QAAAA,SAAS,EAAC,MAAM;AAChB,QAAA,aAAA,EAAY,2CAA2C;AACvDO,QAAAA,QAAQ,EAAEtB,oBAAqB;QAC/BuB,IAAI,EAAE,SAANA,IAAIA,GAAA;UAAA,oBAAQN,cAAA,CAACuB,KAAK,EAAA;AAACzB,YAAAA,SAAS,EAAC,kBAAkB;AAACU,YAAAA,IAAI,EAAE;AAAG,WAAE,CAAC;QAAA,CAAC;AAC7DN,QAAAA,KAAK,EAAC,MAAM;QACZ,YAAA,EAAYtG,CAAC,CAAC,6CAA6C,EAAE;AAC3D6G,UAAAA,MAAM,EAAEtG;AACV,SAAC,CAAE;AACHgG,QAAAA,OAAO,EAAEhB;AAAO,OACjB,CAAC;AAAA,KACC,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;;ACnHD,IAAMqC,MAAM,GAAG,SAATA,MAAMA,CAAA3G,IAAA,EAQN;AAAA,EAAA,IAPJ4G,WAAW,GAAA5G,IAAA,CAAX4G,WAAW;IACXC,YAAY,GAAA7G,IAAA,CAAZ6G,YAAY;IACZC,eAAe,GAAA9G,IAAA,CAAf8G,eAAe;IACfjE,eAAe,GAAA7C,IAAA,CAAf6C,eAAe;IACfD,YAAY,GAAA5C,IAAA,CAAZ4C,YAAY;IACZmE,mBAAmB,GAAA/G,IAAA,CAAnB+G,mBAAmB;IACnBjE,UAAU,GAAA9C,IAAA,CAAV8C,UAAU;AAEV,EAAA,IAAAI,eAAA,GAAcC,2BAAc,EAAE;IAAtBpE,CAAC,GAAAmE,eAAA,CAADnE,CAAC;AACT,EAAA,IAAQiI,IAAI,GAAeC,QAAQ,CAA3BD,IAAI;IAAEE,QAAQ,GAAKD,QAAQ,CAArBC,QAAQ;AAEtB,EAAA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,MAAM,EAAI;IACpCN,eAAe,CAACM,MAAM,CAAC;IACvBR,WAAW,CAAClE,OAAO,CAAC2E,QAAQ,CAACC,UAAU,CAACF,MAAM,CAAC/H,gBAAgB,CAAC;EAClE,CAAC;AAED,EAAA,IAAMkI,sBAAsB,GAAG,SAAzBA,sBAAsBA,GAAA;AAAA,IAAA,IAAAC,oBAAA;AAAA,IAAA,OAC1BZ,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,IAAA,CAAAY,oBAAA,GAAXZ,WAAW,CAAElE,OAAO,MAAA,IAAA,IAAA8E,oBAAA,KAAA,MAAA,IAAA,CAAAA,oBAAA,GAApBA,oBAAA,CAAsBH,QAAQ,MAAA,IAAA,IAAAG,oBAAA,KAAA,MAAA,GAAA,MAAA,GAA9BA,oBAAA,CAAgCC,QAAQ,CAAC7E,YAAY,CAACpC,MAAM,CAAC,YAAY,CAAC,CAAC;AAAA,EAAA,CAAA;AAE7EkH,EAAAA,eAAS,CAAC,YAAM;IACdC,UAAU,CAACJ,sBAAsB,CAAC;AACpC,EAAA,CAAC,EAAE,CAAC3E,YAAY,CAAC,CAAC;AAElB,EAAA,oBACEoC,eAAA,CAAA,KAAA,EAAA;IACE,YAAA,EAAYjG,CAAC,CAAC,mDAAmD,CAAE;AACnEkG,IAAAA,SAAS,EAAC,cAAc;AACxBM,IAAAA,IAAI,EAAC,OAAO;IAAAL,QAAA,EAAA,cAEZC,cAAA,CAACxC,gBAAgB,EAAA;AACTC,MAAAA,YAAY,EAAZA,YAAY;AAAEC,MAAAA,eAAe,EAAfA,eAAe;AAAEC,MAAAA,UAAU,EAAVA,UAAU;AAC/C8E,MAAAA,iBAAiB,EAAEC,UAAI,CAAC,YAAY,CAAE;MACtCvI,MAAM,EAAEuH,YAAY,CAACvH;AAAO,KAC7B,CAAC,EACDwI,MAAM,CAACC,IAAI,CAAChB,mBAAmB,CAAC,CAAC9E,MAAM,GAAG,CAAC,iBAC1CkD,cAAA,CAAC8B,QAAQ,EAAA;AACPe,MAAAA,WAAW,EAAC,WAAW;AACvB5I,MAAAA,KAAK,EAAE6I,oBAAU,CAACpB,YAAY,CAACzH,KAAK,CAAE;AACtC8I,MAAAA,WAAW,EAAE;AACX,QAAA,aAAa,EAAE,wBAAwB;AACvC,QAAA,YAAY,EAAEnJ,CAAC,CAAC,+CAA+C,EAAE;AAC/DoJ,UAAAA,IAAI,EAAEF,oBAAU,CAACpB,YAAY,CAACzH,KAAK;SACpC;OACD;MAAA8F,QAAA,eAEFC,cAAA,CAAC6B,IAAI,EAAA;QAAA9B,QAAA,EACFkD,YAAM,CAACrB,mBAAmB,CAAC,CAACsB,GAAG,CAAC,UAACjB,MAAM,EAAEkB,GAAG,EAAA;AAAA,UAAA,oBAC3CnD,cAAA,CAAC+B,QAAQ,CAAC9B,MAAM,EAAA;YACdmD,QAAQ,EAAE1B,YAAY,KAAKO,MAAO;YAElC9B,OAAO,EAAE,SAATA,OAAOA,GAAA;cAAA,OAAQ6B,mBAAmB,CAACC,MAAM,CAAC;YAAA,CAAC;AAAAlC,YAAAA,QAAA,EAE1C+C,oBAAU,CAACb,MAAM,CAAChI,KAAK;AAAC,WAAA,EAHpBkJ,GAIU,CAAC;QAAA,CACnB;OACG;AAAC,KACC,CACX;AAAA,GACE,CAAC;AAEV,CAAC;;;;;ACjDD,IAAME,SAAS,GAAGC,OAAO,CAACC,GAAG,EAAE,IAAI,KAAK;AAExC,IAAMC,YAAY,gBAAGC,gBAAU,CAC7B,UAAA5I,IAAA,EAgBEyC,GAAG,EACA;AAAA,EAAA,IAAAoG,gBAAA,GAAA7I,IAAA,CAfD8I,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG3J,YAAY,GAAA2J,gBAAA;IAAAE,WAAA,GAAA/I,IAAA,CAC1BgJ,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,WAAA;IAAAE,oBAAA,GAAAjJ,IAAA,CACXkJ,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAGE,cAAI,GAAAF,oBAAA;IAAAG,qBAAA,GAAApJ,IAAA,CACtBqJ,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAGD,cAAI,GAAAC,qBAAA;IAAAE,oBAAA,GAAAtJ,IAAA,CACvBuJ,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAE,qBAAA,GAAAxJ,IAAA,CACpByJ,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,eAAA,GAAA1J,IAAA,CACtB8C,UAAU;IAAVA,UAAU,GAAA4G,eAAA,KAAA,MAAA,GAAG;AAAE5F,MAAAA,KAAK,EAAE,IAAI;AAAEC,MAAAA,GAAG,EAAE;AAAK,KAAC,GAAA2F,eAAA;IAAAC,iBAAA,GAAA3J,IAAA,CACvC4J,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAGR,cAAI,GAAAQ,iBAAA;IACnBE,YAAY,GAAA7J,IAAA,CAAZ6J,YAAY;IACZC,aAAa,GAAA9J,IAAA,CAAb8J,aAAa;IAAAC,eAAA,GAAA/J,IAAA,CACbgK,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,eAAA;IAClBE,MAAM,GAAAjK,IAAA,CAANiK,MAAM;AACHlH,IAAAA,UAAU,GAAAC,wBAAA,CAAAhD,IAAA,EAAAiD,SAAA,CAAA;AAIf,EAAA,IAAM8D,mBAAmB,GAAG+B,WAAW,IAAI5J,YAAY;AAEvD,EAAA,IAAMgL,WAAW,GACfpC,MAAM,CAACM,MAAM,CAACrB,mBAAmB,CAAC,CAACoD,IAAI,CAACtC,UAAI,CAAC,SAAS,CAAC,CAAC,IACxDd,mBAAmB,CAACe,MAAM,CAACC,IAAI,CAAChB,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE1D,EAAA,IAAA3D,SAAA,GAAwCC,cAAQ,CAAC6G,WAAW,CAAC;IAAA5G,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtDyD,IAAAA,YAAY,GAAAvD,UAAA,CAAA,CAAA,CAAA;AAAEwD,IAAAA,eAAe,GAAAxD,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAA8G,UAAA,GAAwC/G,cAAQ,CAAC3C,WAAK,EAAE,CAAC;IAAA2J,UAAA,GAAA9G,cAAA,CAAA6G,UAAA,EAAA,CAAA,CAAA;AAAlDxH,IAAAA,YAAY,GAAAyH,UAAA,CAAA,CAAA,CAAA;AAAExH,IAAAA,eAAe,GAAAwH,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAAnH,eAAA,GAAcC,2BAAc,EAAE;IAAtBpE,CAAC,GAAAmE,eAAA,CAADnE,CAAC;EAET,IAAMuL,mBAAmB,GAAG/K,aAAa,CAAC0K,MAAM,CAAC,IAAI,EAAE;AAEvD,EAAA,IAAMM,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAG5K,IAAI,EAAI;IAC/BkD,eAAe,CAAC,UAAA2H,QAAQ,EAAI;AAC1B,MAAA,IAAMC,OAAO,GAAG,OAAO9K,IAAI,KAAK,UAAU,GAAGA,IAAI,CAAC6K,QAAQ,CAAC,GAAG7K,IAAI;MAClEiK,YAAY,CAACa,OAAO,CAAC;AAErB,MAAA,OAAOA,OAAO;AAChB,IAAA,CAAC,CAAC;EACJ,CAAC;AACD,EAAA,IAAMC,kBAAkB,GAAG/G,YAAM,CAAC,IAAI,CAAC;AACvC,EAAA,IAAMiD,WAAW,GAAGjD,YAAM,EAAE;AAE5B+D,EAAAA,eAAS,CAAC,YAAM;IAAA,IAAAF,oBAAA,EAAAmD,qBAAA;IACd,IAAMC,WAAW,IAAApD,oBAAA,GAAGZ,WAAW,CAAClE,OAAO,MAAA,IAAA,IAAA8E,oBAAA,KAAA,MAAA,IAAA,CAAAmD,qBAAA,GAAnBnD,oBAAA,CAAqBqD,MAAM,MAAA,IAAA,IAAAF,qBAAA,KAAA,MAAA,GAAA,MAAA,GAA3BA,qBAAA,CAAAG,IAAA,CAAAtD,oBAA8B,CAAC;AACnD,IAAA,IAAMuD,cAAc,GAAGL,kBAAkB,CAAChI,OAAO;AAEjD,IAAA,IAAI,CAACkI,WAAW,IAAI,CAACG,cAAc,EAAE,OAAOC,SAAS;AAErD,IAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,GAAS;MACzBL,WAAW,CAACM,UAAU,EAAE;IAC1B,CAAC;AAED,IAAA,IAAMC,QAAQ,GAAG,IAAIC,cAAc,CAACH,YAAY,CAAC;AAEjDE,IAAAA,QAAQ,CAACE,OAAO,CAACN,cAAc,CAAC;AAEhC,IAAA,OAAO,YAAM;MACXI,QAAQ,CAACG,UAAU,EAAE;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AAEN,EAAA,oBACEtG,eAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,UAAU;AACpB,IAAA,aAAA,EAAY,eAAe;AAC3BxC,IAAAA,GAAG,EAAEiI,kBAAmB;AAAAxF,IAAAA,QAAA,GAEvB,CAAC8E,UAAU,iBACV7E,cAAA,CAACoG,SAAS,EAAA;MACRC,eAAe,eACbrG,cAAA,CAACa,UAAU,EAAA;AAACX,QAAAA,KAAK,EAAC,IAAI;AAAAH,QAAAA,QAAA,EACnBtC,YAAY,CAACpC,MAAM,CAAC,YAAY;AAAC,OACxB,CACb;AACDiL,MAAAA,gBAAgB,eACdtG,cAAA,CAACwB,MAAM,EAAAxH,eAAA,CAAA;AAEHyH,QAAAA,WAAW,EAAXA,WAAW;AACXG,QAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBnE,QAAAA,YAAY,EAAZA,YAAY;AACZiE,QAAAA,YAAY,EAAZA,YAAY;AACZhE,QAAAA,eAAe,EAAfA,eAAe;AACfiE,QAAAA,eAAe,EAAfA,eAAe;AACfhE,QAAAA,UAAU,EAAVA;AAAU,OAAA,EAAA,iBAAA,EAEKyH,gBAAgB,CAClC;AACF,KACF,CACF,eACDpF,cAAA,CAACuG,YAAY,EAAAxF,aAAA,CAAA;MACXyF,UAAU,EAAA,IAAA;AACVC,MAAAA,UAAU,EAAE7M,CAAC,CAAC,oCAAoC,CAAE;AACpD8M,MAAAA,SAAS,EAAE3C,eAAgB;AAC3B4C,MAAAA,mBAAmB,EAAC,KAAK;AACzBC,MAAAA,gBAAgB,EAAE,KAAM;AACxBC,MAAAA,UAAU,EAAE3C,gBAAiB;AAC7B4C,MAAAA,aAAa,EAAE,KAAM;AACrBC,MAAAA,MAAM,EAAC,MAAM;MACbC,WAAW,EAAEtF,YAAY,CAACxH,gBAAiB;AAC3C+M,MAAAA,OAAO,EAAE,CAACC,aAAa,EAAEC,cAAc,EAAEC,iBAAiB,CAAE;AAC5D9J,MAAAA,GAAG,EAAEX,SAAS,CAACW,GAAG,EAAEmE,WAAW;KAAE,EAAAV,aAAA,CAAAA,aAAA,CAAA;AAE/BuD,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBI,MAAAA,YAAY,EAAZA,YAAY;AACZrB,MAAAA,SAAS,EAATA,SAAS;AACTe,MAAAA,eAAe,EAAfA,eAAe;AACfO,MAAAA,aAAa,EAAbA,aAAa;AACbd,MAAAA,MAAM,EAANA,MAAM;AACNiB,MAAAA,MAAM,EAANA;AAAM,KAAA,EACHK,mBAAmB,CAAA,EACnBvH,UAAU,CAAA,CAEhB,CAAC;AAAA,GACC,CAAC;AAEV,CACF;AAEA4F,YAAY,CAAC6D,WAAW,GAAG,cAAc;;;;"}
|
|
1
|
+
{"version":3,"file":"CalendarView.js","sources":["../../src/components/CalendarView/constants.js","../../src/components/CalendarView/utils.js","../../src/components/CalendarView/CustomDatePicker.jsx","../../src/components/CalendarView/Header.jsx","../../src/components/CalendarView/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst WEEKLY_VIEW = t(\"neetoMolecules.calendarView.weekly\");\nconst MONTHLY_VIEW = t(\"neetoMolecules.calendarView.monthly\");\nconst DAILY_VIEW = t(\"neetoMolecules.calendarView.daily\");\n\nexport const VIEW_OPTIONS = {\n [DAILY_VIEW]: {\n label: DAILY_VIEW,\n fullCalendarView: \"timeGridDay\",\n picker: \"day\",\n },\n [WEEKLY_VIEW]: {\n label: WEEKLY_VIEW,\n fullCalendarView: \"timeGridWeek\",\n picker: \"week\",\n },\n [MONTHLY_VIEW]: {\n label: MONTHLY_VIEW,\n fullCalendarView: \"dayGridMonth\",\n picker: \"month\",\n },\n};\n\nexport const LOCALE_CONFIG = {\n ja: {\n dayCellContent: arg => arg.date.getDate(),\n dayHeaderFormat: { weekday: \"long\" },\n },\n};\n","import { dayjs } from \"neetocommons/utils\";\n\nconst getWeekString = ({\n date,\n isStartOfWeek = true,\n showMonth = false,\n showYear = false,\n}) =>\n `${showMonth || isStartOfWeek ? date.format(\"MMM\") : \"\"} ${date.date()} ${\n showYear || !isStartOfWeek ? date.format(\"YYYY\") : \"\"\n }`;\n\nexport const getStartOfWeek = date => dayjs(date).startOf(\"week\");\n\nexport const getEndOfWeek = date => dayjs(date).endOf(\"week\");\n\nexport const getFormattedMonthStr = date => date.format(\"MMM YYYY\");\n\nexport const getFormattedWeekRangeStr = date => {\n const startOfWeek = getStartOfWeek(date);\n const endOfWeek = getEndOfWeek(date);\n\n const shouldShowMonthsSeparately = startOfWeek.month() !== endOfWeek.month();\n const shouldShowYearsSeparately = startOfWeek.year() !== endOfWeek.year();\n\n const startOfWeekStr = getWeekString({\n date: startOfWeek,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n const endOfWeekStr = getWeekString({\n date: endOfWeek,\n isStartOfWeek: false,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n return `${startOfWeekStr} - ${endOfWeekStr}`;\n};\n\nexport const getFormattedDayStr = date => date.format(\"DD MMM YYYY\");\n\nexport const getFormattedRangeStr = (date, picker) => {\n const formatFunctions = {\n month: getFormattedMonthStr,\n week: getFormattedWeekRangeStr,\n day: getFormattedDayStr,\n };\n const selectedFormatter = formatFunctions[picker];\n\n return selectedFormatter(date);\n};\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { useRef, useState } from \"react\";\n\nimport { dayjs } from \"neetocommons/utils\";\nimport { Down, Left, Right } from \"neetoicons\";\nimport { Typography, Button, DatePicker } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getFormattedRangeStr } from \"./utils\";\n\nconst CustomDatePicker = ({\n selectedDate,\n setSelectedDate,\n picker,\n validDates,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n const [isOpen, setIsOpen] = useState(false);\n\n const datePickerRef = useRef(null);\n const buttonRef = useRef(null);\n\n const selectedRangeStr = getFormattedRangeStr(selectedDate, picker);\n\n const { start, end } = validDates;\n\n const isDateLessThanStart =\n start && selectedDate.isSameOrBefore(dayjs(start), picker);\n\n const isDateGreaterThanEnd =\n end && selectedDate.isSameOrAfter(dayjs(end), picker);\n\n const onPrevious = () =>\n setSelectedDate(selectedDate => selectedDate.subtract(1, picker));\n\n const onNext = () =>\n setSelectedDate(selectedDate => selectedDate.add(1, picker));\n\n const onToday = () => setSelectedDate(dayjs());\n\n const getDisabledDates = date => {\n if (!date) return false;\n\n return (start && date <= start) || (end && date >= end);\n };\n\n const handleButtonMouseDown = e => {\n if (!(buttonRef.current && buttonRef.current.contains(e.target))) return;\n e.stopPropagation();\n if (isOpen) datePickerRef.current.focus();\n };\n\n return (\n <div className=\"flex items-center justify-start gap-x-4\">\n <Button\n aria-label={t(\"neetoMolecules.calendarView.aria.goToToday\")}\n data-testid=\"neeto-molecules-calendar-view-today-button\"\n label={t(\"neetoMolecules.calendarView.today\")}\n style=\"secondary\"\n onClick={onToday}\n />\n <div\n aria-label={t(\"neetoMolecules.calendarView.aria.dateNavigation\")}\n className=\"flex\"\n role=\"group\"\n >\n <Button\n className=\"me-1\"\n data-testid=\"neeto-molecules-calendar-view-previous-button\"\n disabled={isDateLessThanStart}\n icon={() => <Left className=\"rtl:scale-x-[-1]\" size={20} />}\n style=\"text\"\n aria-label={t(\"neetoMolecules.calendarView.aria.previousPeriod\", {\n period: picker,\n })}\n onClick={onPrevious}\n />\n <Button\n aria-expanded={isOpen}\n aria-haspopup=\"dialog\"\n className=\"min-w-52 justify-center\"\n data-testid=\"neeto-molecules-calendar-view-date-picker-button\"\n icon={Down}\n ref={buttonRef}\n style=\"text\"\n aria-label={t(\"neetoMolecules.calendarView.aria.selectDate\", {\n currentDate: selectedRangeStr,\n })}\n onClick={() => setIsOpen(isOpen => !isOpen)}\n onMouseDown={handleButtonMouseDown}\n >\n <Typography\n data-testid=\"neeto-molecules-calendar-view-date-picker-button-label\"\n style=\"h5\"\n >\n {selectedRangeStr}\n </Typography>\n </Button>\n <DatePicker\n className=\"invisible w-0 px-0\"\n defaultValue={selectedDate}\n disabledDate={getDisabledDates}\n open={isOpen}\n placement=\"topRight\"\n ref={datePickerRef}\n value={selectedDate}\n onChange={setSelectedDate}\n onOpenChange={setIsOpen}\n {...{ picker, ...otherProps }}\n />\n <Button\n className=\"ms-1\"\n data-testid=\"neeto-molecules-calendar-view-next-button\"\n disabled={isDateGreaterThanEnd}\n icon={() => <Right className=\"rtl:scale-x-[-1]\" size={20} />}\n style=\"text\"\n aria-label={t(\"neetoMolecules.calendarView.aria.nextPeriod\", {\n period: picker,\n })}\n onClick={onNext}\n />\n </div>\n </div>\n );\n};\n\nexport default CustomDatePicker;\n","import { useEffect } from \"react\";\n\nimport { capitalize } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { prop, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CustomDatePicker from \"./CustomDatePicker\";\n\nconst Header = ({\n calendarRef,\n selectedView,\n setSelectedView,\n setSelectedDate,\n selectedDate,\n calendarViewOptions,\n validDates,\n}) => {\n const { t } = useTranslation();\n const { Menu, MenuItem } = Dropdown;\n\n const handleViewSelection = option => {\n setSelectedView(option);\n calendarRef.current.calendar.changeView(option.fullCalendarView);\n };\n\n const navigateToSelectedDate = () =>\n calendarRef?.current?.calendar?.gotoDate(selectedDate.format(\"YYYY-MM-DD\"));\n\n useEffect(() => {\n setTimeout(navigateToSelectedDate);\n }, [selectedDate]);\n\n return (\n <div\n aria-label={t(\"neetoMolecules.calendarView.aria.calendarControls\")}\n className=\"flex gap-x-4\"\n role=\"group\"\n >\n <CustomDatePicker\n {...{ selectedDate, setSelectedDate, validDates }}\n getPopupContainer={prop(\"parentNode\")}\n picker={selectedView.picker}\n />\n {Object.keys(calendarViewOptions).length > 1 && (\n <Dropdown\n buttonStyle=\"secondary\"\n label={capitalize(selectedView.label)}\n buttonProps={{\n \"data-testid\": \"calendar-view-dropdown\",\n \"aria-label\": t(\"neetoMolecules.calendarView.aria.viewSelector\", {\n view: capitalize(selectedView.label),\n }),\n }}\n >\n <Menu>\n {values(calendarViewOptions).map((option, idx) => (\n <MenuItem.Button\n isActive={selectedView === option}\n key={idx}\n onClick={() => handleViewSelection(option)}\n >\n {capitalize(option.label)}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n )}\n </div>\n );\n};\n\nexport default Header;\n","import { forwardRef, useRef, useState, useEffect } from \"react\";\n\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport i18next from \"i18next\";\nimport { noop } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SubHeader from \"components/SubHeader\";\n\nimport \"./calendar-view.scss\";\nimport { LOCALE_CONFIG, VIEW_OPTIONS } from \"./constants\";\nimport Header from \"./Header\";\nimport { mergeRefs } from \"./utils\";\n\nconst direction = i18next.dir() || \"ltr\";\n\nconst CalendarView = forwardRef(\n (\n {\n viewOptions = VIEW_OPTIONS,\n events = [],\n handleDateClick = noop,\n handleEventClick = noop,\n eventClassNames = \"\",\n dayCellClassNames = \"\",\n validDates = { start: null, end: null },\n onDateChange = noop,\n dayMaxEvents,\n eventMaxStack,\n hideHeader = false,\n locale,\n ...otherProps\n },\n ref\n ) => {\n const calendarViewOptions = viewOptions || VIEW_OPTIONS;\n\n const defaultView =\n Object.values(calendarViewOptions).find(prop(\"default\")) ||\n calendarViewOptions[Object.keys(calendarViewOptions)[0]];\n\n const [selectedView, setSelectedView] = useState(defaultView);\n\n const [selectedDate, setSelectedDate] = useState(dayjs());\n\n const { t } = useTranslation();\n\n const localeSpecificProps = LOCALE_CONFIG[locale] || {};\n\n const handleDateChange = date => {\n setSelectedDate(prevDate => {\n const newDate = typeof date === \"function\" ? date(prevDate) : date;\n onDateChange(newDate);\n\n return newDate;\n });\n };\n const calendarWrapperRef = useRef(null);\n const calendarRef = useRef();\n\n useEffect(() => {\n const calendarApi = calendarRef.current?.getApi?.();\n const wrapperElement = calendarWrapperRef.current;\n\n if (!calendarApi || !wrapperElement) return undefined;\n\n const handleResize = () => {\n calendarApi.updateSize();\n };\n\n const observer = new ResizeObserver(handleResize);\n\n observer.observe(wrapperElement);\n\n return () => {\n observer.disconnect();\n };\n }, []);\n\n return (\n <div\n className=\"flex-col\"\n data-testid=\"calendar-view\"\n ref={calendarWrapperRef}\n >\n {!hideHeader && (\n <SubHeader\n leftActionBlock={\n <Typography style=\"h2\">\n {selectedDate.format(\"MMMM, YYYY\")}\n </Typography>\n }\n rightActionBlock={\n <Header\n {...{\n calendarRef,\n calendarViewOptions,\n selectedDate,\n selectedView,\n setSelectedDate,\n setSelectedView,\n validDates,\n }}\n setSelectedDate={handleDateChange}\n />\n }\n />\n )}\n <FullCalendar\n expandRows\n allDayText={t(\"neetoMolecules.calendarView.allDay\")}\n dateClick={handleDateClick}\n dayHeaderClassNames=\"p-2\"\n displayEventTime={false}\n eventClick={handleEventClick}\n headerToolbar={false}\n height=\"auto\"\n initialView={selectedView.fullCalendarView}\n plugins={[dayGridPlugin, timeGridPlugin, interactionPlugin]}\n ref={mergeRefs(ref, calendarRef)}\n {...{\n dayCellClassNames,\n dayMaxEvents,\n direction,\n eventClassNames,\n eventMaxStack,\n events,\n locale,\n ...localeSpecificProps,\n ...otherProps,\n }}\n />\n </div>\n );\n }\n);\n\nCalendarView.displayName = \"CalendarView\";\n\nCalendarView.propTypes = {\n /**\n * Views to be listed in the dropdown. The default selected view can be set by adding `default: true` to the required view.\n */\n viewOptions: PropTypes.object,\n /**\n * An array of event objects that will be displayed on the calendar.\n */\n events: PropTypes.array,\n /**\n * Function to be triggered when the user clicks on a date or a time.\n */\n handleDateClick: PropTypes.func,\n /**\n * Function to be triggered when the user clicks an event.\n */\n handleEventClick: PropTypes.func,\n /**\n * A className input for adding classNames to the outermost event element.\n */\n eventClassNames: PropTypes.string,\n /**\n * A className input for adding classNames to the <td> cell.\n */\n dayCellClassNames: PropTypes.string,\n /**\n * In dayGrid view, the max number of events within a given day, not counting the +more link.\n */\n dayMaxEvents: PropTypes.number,\n /**\n * For timeline view, the maximum number of events that stack top-to-bottom. For timeGrid view, the maximum number of events that stack left-to-right.\n */\n eventMaxStack: PropTypes.number,\n /**\n * This function will be triggered with the new selected date passed as argument\n */\n onDateChange: PropTypes.func,\n /**\n * An object containing the start and end dates in which the range given is the valid range of selectable dates.\n */\n validDates: PropTypes.shape({\n start: PropTypes.instanceOf(Date),\n end: PropTypes.instanceOf(Date),\n }),\n /**\n * This prop can be used to hide the header\n */\n hideHeader: PropTypes.bool,\n /**\n * The locale to be used for the calendar.\n */\n locale: PropTypes.string,\n};\n\nexport default CalendarView;\n"],"names":["WEEKLY_VIEW","t","MONTHLY_VIEW","DAILY_VIEW","VIEW_OPTIONS","_defineProperty","label","fullCalendarView","picker","LOCALE_CONFIG","ja","dayCellContent","arg","date","getDate","dayHeaderFormat","weekday","getWeekString","_ref","_ref$isStartOfWeek","isStartOfWeek","_ref$showMonth","showMonth","_ref$showYear","showYear","concat","format","getStartOfWeek","dayjs","startOf","getEndOfWeek","endOf","getFormattedMonthStr","getFormattedWeekRangeStr","startOfWeek","endOfWeek","shouldShowMonthsSeparately","month","shouldShowYearsSeparately","year","startOfWeekStr","endOfWeekStr","getFormattedDayStr","getFormattedRangeStr","formatFunctions","week","day","selectedFormatter","mergeRefs","_len","arguments","length","refs","Array","_key","node","filter","Boolean","forEach","ref","current","CustomDatePicker","selectedDate","setSelectedDate","validDates","otherProps","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","datePickerRef","useRef","buttonRef","selectedRangeStr","start","end","isDateLessThanStart","isSameOrBefore","isDateGreaterThanEnd","isSameOrAfter","onPrevious","subtract","onNext","add","onToday","getDisabledDates","handleButtonMouseDown","e","contains","target","stopPropagation","focus","_jsxs","className","children","_jsx","Button","style","onClick","role","disabled","icon","Left","size","period","Down","currentDate","onMouseDown","Typography","DatePicker","_objectSpread","defaultValue","disabledDate","open","placement","value","onChange","onOpenChange","Right","Header","calendarRef","selectedView","setSelectedView","calendarViewOptions","Menu","Dropdown","MenuItem","handleViewSelection","option","calendar","changeView","navigateToSelectedDate","_calendarRef$current","gotoDate","useEffect","setTimeout","getPopupContainer","prop","Object","keys","buttonStyle","capitalize","buttonProps","view","values","map","idx","isActive","direction","i18next","dir","CalendarView","forwardRef","_ref$viewOptions","viewOptions","_ref$events","events","_ref$handleDateClick","handleDateClick","noop","_ref$handleEventClick","handleEventClick","_ref$eventClassNames","eventClassNames","_ref$dayCellClassName","dayCellClassNames","_ref$validDates","_ref$onDateChange","onDateChange","dayMaxEvents","eventMaxStack","_ref$hideHeader","hideHeader","locale","defaultView","find","_useState3","_useState4","localeSpecificProps","handleDateChange","prevDate","newDate","calendarWrapperRef","_calendarRef$current$","calendarApi","getApi","call","wrapperElement","undefined","handleResize","updateSize","observer","ResizeObserver","observe","disconnect","SubHeader","leftActionBlock","rightActionBlock","FullCalendar","expandRows","allDayText","dateClick","dayHeaderClassNames","displayEventTime","eventClick","headerToolbar","height","initialView","plugins","dayGridPlugin","timeGridPlugin","interactionPlugin","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,WAAW,GAAGC,SAAC,CAAC,oCAAoC,CAAC;AAC3D,IAAMC,YAAY,GAAGD,SAAC,CAAC,qCAAqC,CAAC;AAC7D,IAAME,UAAU,GAAGF,SAAC,CAAC,mCAAmC,CAAC;AAElD,IAAMG,YAAY,GAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EACtBF,UAAU,EAAG;AACZG,EAAAA,KAAK,EAAEH,UAAU;AACjBI,EAAAA,gBAAgB,EAAE,aAAa;AAC/BC,EAAAA,MAAM,EAAE;AACV,CAAC,CAAA,EACAR,WAAW,EAAG;AACbM,EAAAA,KAAK,EAAEN,WAAW;AAClBO,EAAAA,gBAAgB,EAAE,cAAc;AAChCC,EAAAA,MAAM,EAAE;AACV,CAAC,CAAA,EACAN,YAAY,EAAG;AACdI,EAAAA,KAAK,EAAEJ,YAAY;AACnBK,EAAAA,gBAAgB,EAAE,cAAc;AAChCC,EAAAA,MAAM,EAAE;AACV,CAAC,CACF;AAEM,IAAMC,aAAa,GAAG;AAC3BC,EAAAA,EAAE,EAAE;AACFC,IAAAA,cAAc,EAAE,SAAhBA,cAAcA,CAAEC,GAAG,EAAA;AAAA,MAAA,OAAIA,GAAG,CAACC,IAAI,CAACC,OAAO,EAAE;AAAA,IAAA,CAAA;AACzCC,IAAAA,eAAe,EAAE;AAAEC,MAAAA,OAAO,EAAE;AAAO;AACrC;AACF,CAAC;;AC3BD,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA,EAAA;AAAA,EAAA,IACjBL,IAAI,GAAAK,IAAA,CAAJL,IAAI;IAAAM,kBAAA,GAAAD,IAAA,CACJE,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,kBAAA;IAAAE,cAAA,GAAAH,IAAA,CACpBI,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,cAAA;IAAAE,aAAA,GAAAL,IAAA,CACjBM,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,aAAA;AAAA,EAAA,OAAA,EAAA,CAAAE,MAAA,CAEbH,SAAS,IAAIF,aAAa,GAAGP,IAAI,CAACa,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAA,GAAA,CAAA,CAAAD,MAAA,CAAIZ,IAAI,CAACA,IAAI,EAAE,EAAA,GAAA,CAAA,CAAAY,MAAA,CACpED,QAAQ,IAAI,CAACJ,aAAa,GAAGP,IAAI,CAACa,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAA;AAAA,CACrD;AAEG,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAGd,IAAI,EAAA;EAAA,OAAIe,WAAK,CAACf,IAAI,CAAC,CAACgB,OAAO,CAAC,MAAM,CAAC;AAAA,CAAA;AAE1D,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAGjB,IAAI,EAAA;EAAA,OAAIe,WAAK,CAACf,IAAI,CAAC,CAACkB,KAAK,CAAC,MAAM,CAAC;AAAA,CAAA;AAEtD,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGnB,IAAI,EAAA;AAAA,EAAA,OAAIA,IAAI,CAACa,MAAM,CAAC,UAAU,CAAC;AAAA,CAAA;AAE5D,IAAMO,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAGpB,IAAI,EAAI;AAC9C,EAAA,IAAMqB,WAAW,GAAGP,cAAc,CAACd,IAAI,CAAC;AACxC,EAAA,IAAMsB,SAAS,GAAGL,YAAY,CAACjB,IAAI,CAAC;AAEpC,EAAA,IAAMuB,0BAA0B,GAAGF,WAAW,CAACG,KAAK,EAAE,KAAKF,SAAS,CAACE,KAAK,EAAE;AAC5E,EAAA,IAAMC,yBAAyB,GAAGJ,WAAW,CAACK,IAAI,EAAE,KAAKJ,SAAS,CAACI,IAAI,EAAE;EAEzE,IAAMC,cAAc,GAAGvB,aAAa,CAAC;AACnCJ,IAAAA,IAAI,EAAEqB,WAAW;AACjBZ,IAAAA,SAAS,EAAEc,0BAA0B;AACrCZ,IAAAA,QAAQ,EAAEc;AACZ,GAAC,CAAC;EAEF,IAAMG,YAAY,GAAGxB,aAAa,CAAC;AACjCJ,IAAAA,IAAI,EAAEsB,SAAS;AACff,IAAAA,aAAa,EAAE,KAAK;AACpBE,IAAAA,SAAS,EAAEc,0BAA0B;AACrCZ,IAAAA,QAAQ,EAAEc;AACZ,GAAC,CAAC;AAEF,EAAA,OAAA,EAAA,CAAAb,MAAA,CAAUe,cAAc,EAAA,KAAA,CAAA,CAAAf,MAAA,CAAMgB,YAAY,CAAA;AAC5C,CAAC;AAEM,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAG7B,IAAI,EAAA;AAAA,EAAA,OAAIA,IAAI,CAACa,MAAM,CAAC,aAAa,CAAC;AAAA,CAAA;AAE7D,IAAMiB,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAI9B,IAAI,EAAEL,MAAM,EAAK;AACpD,EAAA,IAAMoC,eAAe,GAAG;AACtBP,IAAAA,KAAK,EAAEL,oBAAoB;AAC3Ba,IAAAA,IAAI,EAAEZ,wBAAwB;AAC9Ba,IAAAA,GAAG,EAAEJ;GACN;AACD,EAAA,IAAMK,iBAAiB,GAAGH,eAAe,CAACpC,MAAM,CAAC;EAEjD,OAAOuC,iBAAiB,CAAClC,IAAI,CAAC;AAChC,CAAC;AAEM,IAAMmC,SAAS,GACpB,SADWA,SAASA,GAAA;AAAA,EAAA,KAAA,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAChBC,IAAI,GAAA,IAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,GAAA,CAAA,EAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,EAAA,EAAA;AAAJF,IAAAA,IAAI,CAAAE,IAAA,CAAA,GAAAJ,SAAA,CAAAI,IAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OACR,UAAAC,IAAI,EAAA;IAAA,OACFH,IAAI,CACDI,MAAM,CAACC,OAAO,CAAC,CACfC,OAAO,CAAC,UAAAC,GAAG,EAAA;AAAA,MAAA,OACV,OAAOA,GAAG,KAAK,UAAU,GAAGA,GAAG,CAACJ,IAAI,CAAC,GAAII,GAAG,CAACC,OAAO,GAAGL,IAAK;AAAA,IAAA,CAC9D,CAAC;AAAA,EAAA,CAAA;AAAA,CAAA;;;;;ACpDP,IAAMM,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA3C,IAAA,EAMhB;AAAA,EAAA,IALJ4C,YAAY,GAAA5C,IAAA,CAAZ4C,YAAY;IACZC,eAAe,GAAA7C,IAAA,CAAf6C,eAAe;IACfvD,MAAM,GAAAU,IAAA,CAANV,MAAM;IACNwD,UAAU,GAAA9C,IAAA,CAAV8C,UAAU;AACPC,IAAAA,UAAU,GAAAC,wBAAA,CAAAhD,IAAA,EAAAiD,WAAA,CAAA;AAEb,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBpE,CAAC,GAAAmE,eAAA,CAADnE,CAAC;AACT,EAAA,IAAAqE,SAAA,GAA4BC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApCI,IAAAA,MAAM,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,SAAS,GAAAH,UAAA,CAAA,CAAA,CAAA;AAExB,EAAA,IAAMI,aAAa,GAAGC,YAAM,CAAC,IAAI,CAAC;AAClC,EAAA,IAAMC,SAAS,GAAGD,YAAM,CAAC,IAAI,CAAC;AAE9B,EAAA,IAAME,gBAAgB,GAAGpC,oBAAoB,CAACmB,YAAY,EAAEtD,MAAM,CAAC;AAEnE,EAAA,IAAQwE,KAAK,GAAUhB,UAAU,CAAzBgB,KAAK;IAAEC,GAAG,GAAKjB,UAAU,CAAlBiB,GAAG;AAElB,EAAA,IAAMC,mBAAmB,GACvBF,KAAK,IAAIlB,YAAY,CAACqB,cAAc,CAACvD,WAAK,CAACoD,KAAK,CAAC,EAAExE,MAAM,CAAC;AAE5D,EAAA,IAAM4E,oBAAoB,GACxBH,GAAG,IAAInB,YAAY,CAACuB,aAAa,CAACzD,WAAK,CAACqD,GAAG,CAAC,EAAEzE,MAAM,CAAC;AAEvD,EAAA,IAAM8E,UAAU,GAAG,SAAbA,UAAUA,GAAA;IAAA,OACdvB,eAAe,CAAC,UAAAD,YAAY,EAAA;AAAA,MAAA,OAAIA,YAAY,CAACyB,QAAQ,CAAC,CAAC,EAAE/E,MAAM,CAAC;IAAA,CAAA,CAAC;AAAA,EAAA,CAAA;AAEnE,EAAA,IAAMgF,MAAM,GAAG,SAATA,MAAMA,GAAA;IAAA,OACVzB,eAAe,CAAC,UAAAD,YAAY,EAAA;AAAA,MAAA,OAAIA,YAAY,CAAC2B,GAAG,CAAC,CAAC,EAAEjF,MAAM,CAAC;IAAA,CAAA,CAAC;AAAA,EAAA,CAAA;AAE9D,EAAA,IAAMkF,OAAO,GAAG,SAAVA,OAAOA,GAAA;AAAA,IAAA,OAAS3B,eAAe,CAACnC,WAAK,EAAE,CAAC;AAAA,EAAA,CAAA;AAE9C,EAAA,IAAM+D,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAG9E,IAAI,EAAI;AAC/B,IAAA,IAAI,CAACA,IAAI,EAAE,OAAO,KAAK;IAEvB,OAAQmE,KAAK,IAAInE,IAAI,IAAImE,KAAK,IAAMC,GAAG,IAAIpE,IAAI,IAAIoE,GAAI;EACzD,CAAC;AAED,EAAA,IAAMW,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,CAAC,EAAI;AACjC,IAAA,IAAI,EAAEf,SAAS,CAAClB,OAAO,IAAIkB,SAAS,CAAClB,OAAO,CAACkC,QAAQ,CAACD,CAAC,CAACE,MAAM,CAAC,CAAC,EAAE;IAClEF,CAAC,CAACG,eAAe,EAAE;IACnB,IAAItB,MAAM,EAAEE,aAAa,CAAChB,OAAO,CAACqC,KAAK,EAAE;EAC3C,CAAC;AAED,EAAA,oBACEC,eAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,yCAAyC;IAAAC,QAAA,EAAA,cACtDC,cAAA,CAACC,MAAM,EAAA;MACL,YAAA,EAAYrG,CAAC,CAAC,4CAA4C,CAAE;AAC5D,MAAA,aAAA,EAAY,4CAA4C;AACxDK,MAAAA,KAAK,EAAEL,CAAC,CAAC,mCAAmC,CAAE;AAC9CsG,MAAAA,KAAK,EAAC,WAAW;AACjBC,MAAAA,OAAO,EAAEd;KACV,CAAC,eACFQ,eAAA,CAAA,KAAA,EAAA;MACE,YAAA,EAAYjG,CAAC,CAAC,iDAAiD,CAAE;AACjEkG,MAAAA,SAAS,EAAC,MAAM;AAChBM,MAAAA,IAAI,EAAC,OAAO;MAAAL,QAAA,EAAA,cAEZC,cAAA,CAACC,MAAM,EAAA;AACLH,QAAAA,SAAS,EAAC,MAAM;AAChB,QAAA,aAAA,EAAY,+CAA+C;AAC3DO,QAAAA,QAAQ,EAAExB,mBAAoB;QAC9ByB,IAAI,EAAE,SAANA,IAAIA,GAAA;UAAA,oBAAQN,cAAA,CAACO,IAAI,EAAA;AAACT,YAAAA,SAAS,EAAC,kBAAkB;AAACU,YAAAA,IAAI,EAAE;AAAG,WAAE,CAAC;QAAA,CAAC;AAC5DN,QAAAA,KAAK,EAAC,MAAM;QACZ,YAAA,EAAYtG,CAAC,CAAC,iDAAiD,EAAE;AAC/D6G,UAAAA,MAAM,EAAEtG;AACV,SAAC,CAAE;AACHgG,QAAAA,OAAO,EAAElB;AAAW,OACrB,CAAC,eACFe,cAAA,CAACC,MAAM,EAAA;AACL,QAAA,eAAA,EAAe5B,MAAO;AACtB,QAAA,eAAA,EAAc,QAAQ;AACtByB,QAAAA,SAAS,EAAC,yBAAyB;AACnC,QAAA,aAAA,EAAY,kDAAkD;AAC9DQ,QAAAA,IAAI,EAAEI,IAAK;AACXpD,QAAAA,GAAG,EAAEmB,SAAU;AACfyB,QAAAA,KAAK,EAAC,MAAM;QACZ,YAAA,EAAYtG,CAAC,CAAC,6CAA6C,EAAE;AAC3D+G,UAAAA,WAAW,EAAEjC;AACf,SAAC,CAAE;QACHyB,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQ7B,SAAS,CAAC,UAAAD,MAAM,EAAA;AAAA,YAAA,OAAI,CAACA,MAAM;UAAA,CAAA,CAAC;QAAA,CAAC;AAC5CuC,QAAAA,WAAW,EAAErB,qBAAsB;QAAAQ,QAAA,eAEnCC,cAAA,CAACa,UAAU,EAAA;AACT,UAAA,aAAA,EAAY,wDAAwD;AACpEX,UAAAA,KAAK,EAAC,IAAI;AAAAH,UAAAA,QAAA,EAETrB;SACS;AAAC,OACP,CAAC,eACTsB,cAAA,CAACc,UAAU,EAAAC,eAAA,CAAA;AACTjB,QAAAA,SAAS,EAAC,oBAAoB;AAC9BkB,QAAAA,YAAY,EAAEvD,YAAa;AAC3BwD,QAAAA,YAAY,EAAE3B,gBAAiB;AAC/B4B,QAAAA,IAAI,EAAE7C,MAAO;AACb8C,QAAAA,SAAS,EAAC,UAAU;AACpB7D,QAAAA,GAAG,EAAEiB,aAAc;AACnB6C,QAAAA,KAAK,EAAE3D,YAAa;AACpB4D,QAAAA,QAAQ,EAAE3D,eAAgB;AAC1B4D,QAAAA,YAAY,EAAEhD;AAAU,OAAA,EAAAyC,eAAA,CAAA;AAClB5G,QAAAA,MAAM,EAANA;AAAM,OAAA,EAAKyD,UAAU,CAAA,CAC5B,CAAC,eACFoC,cAAA,CAACC,MAAM,EAAA;AACLH,QAAAA,SAAS,EAAC,MAAM;AAChB,QAAA,aAAA,EAAY,2CAA2C;AACvDO,QAAAA,QAAQ,EAAEtB,oBAAqB;QAC/BuB,IAAI,EAAE,SAANA,IAAIA,GAAA;UAAA,oBAAQN,cAAA,CAACuB,KAAK,EAAA;AAACzB,YAAAA,SAAS,EAAC,kBAAkB;AAACU,YAAAA,IAAI,EAAE;AAAG,WAAE,CAAC;QAAA,CAAC;AAC7DN,QAAAA,KAAK,EAAC,MAAM;QACZ,YAAA,EAAYtG,CAAC,CAAC,6CAA6C,EAAE;AAC3D6G,UAAAA,MAAM,EAAEtG;AACV,SAAC,CAAE;AACHgG,QAAAA,OAAO,EAAEhB;AAAO,OACjB,CAAC;AAAA,KACC,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;;ACnHD,IAAMqC,MAAM,GAAG,SAATA,MAAMA,CAAA3G,IAAA,EAQN;AAAA,EAAA,IAPJ4G,WAAW,GAAA5G,IAAA,CAAX4G,WAAW;IACXC,YAAY,GAAA7G,IAAA,CAAZ6G,YAAY;IACZC,eAAe,GAAA9G,IAAA,CAAf8G,eAAe;IACfjE,eAAe,GAAA7C,IAAA,CAAf6C,eAAe;IACfD,YAAY,GAAA5C,IAAA,CAAZ4C,YAAY;IACZmE,mBAAmB,GAAA/G,IAAA,CAAnB+G,mBAAmB;IACnBjE,UAAU,GAAA9C,IAAA,CAAV8C,UAAU;AAEV,EAAA,IAAAI,eAAA,GAAcC,2BAAc,EAAE;IAAtBpE,CAAC,GAAAmE,eAAA,CAADnE,CAAC;AACT,EAAA,IAAQiI,IAAI,GAAeC,QAAQ,CAA3BD,IAAI;IAAEE,QAAQ,GAAKD,QAAQ,CAArBC,QAAQ;AAEtB,EAAA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,MAAM,EAAI;IACpCN,eAAe,CAACM,MAAM,CAAC;IACvBR,WAAW,CAAClE,OAAO,CAAC2E,QAAQ,CAACC,UAAU,CAACF,MAAM,CAAC/H,gBAAgB,CAAC;EAClE,CAAC;AAED,EAAA,IAAMkI,sBAAsB,GAAG,SAAzBA,sBAAsBA,GAAA;AAAA,IAAA,IAAAC,oBAAA;AAAA,IAAA,OAC1BZ,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,IAAA,CAAAY,oBAAA,GAAXZ,WAAW,CAAElE,OAAO,MAAA,IAAA,IAAA8E,oBAAA,KAAA,MAAA,IAAA,CAAAA,oBAAA,GAApBA,oBAAA,CAAsBH,QAAQ,MAAA,IAAA,IAAAG,oBAAA,KAAA,MAAA,GAAA,MAAA,GAA9BA,oBAAA,CAAgCC,QAAQ,CAAC7E,YAAY,CAACpC,MAAM,CAAC,YAAY,CAAC,CAAC;AAAA,EAAA,CAAA;AAE7EkH,EAAAA,eAAS,CAAC,YAAM;IACdC,UAAU,CAACJ,sBAAsB,CAAC;AACpC,EAAA,CAAC,EAAE,CAAC3E,YAAY,CAAC,CAAC;AAElB,EAAA,oBACEoC,eAAA,CAAA,KAAA,EAAA;IACE,YAAA,EAAYjG,CAAC,CAAC,mDAAmD,CAAE;AACnEkG,IAAAA,SAAS,EAAC,cAAc;AACxBM,IAAAA,IAAI,EAAC,OAAO;IAAAL,QAAA,EAAA,cAEZC,cAAA,CAACxC,gBAAgB,EAAA;AACTC,MAAAA,YAAY,EAAZA,YAAY;AAAEC,MAAAA,eAAe,EAAfA,eAAe;AAAEC,MAAAA,UAAU,EAAVA,UAAU;AAC/C8E,MAAAA,iBAAiB,EAAEC,UAAI,CAAC,YAAY,CAAE;MACtCvI,MAAM,EAAEuH,YAAY,CAACvH;AAAO,KAC7B,CAAC,EACDwI,MAAM,CAACC,IAAI,CAAChB,mBAAmB,CAAC,CAAC9E,MAAM,GAAG,CAAC,iBAC1CkD,cAAA,CAAC8B,QAAQ,EAAA;AACPe,MAAAA,WAAW,EAAC,WAAW;AACvB5I,MAAAA,KAAK,EAAE6I,oBAAU,CAACpB,YAAY,CAACzH,KAAK,CAAE;AACtC8I,MAAAA,WAAW,EAAE;AACX,QAAA,aAAa,EAAE,wBAAwB;AACvC,QAAA,YAAY,EAAEnJ,CAAC,CAAC,+CAA+C,EAAE;AAC/DoJ,UAAAA,IAAI,EAAEF,oBAAU,CAACpB,YAAY,CAACzH,KAAK;SACpC;OACD;MAAA8F,QAAA,eAEFC,cAAA,CAAC6B,IAAI,EAAA;QAAA9B,QAAA,EACFkD,YAAM,CAACrB,mBAAmB,CAAC,CAACsB,GAAG,CAAC,UAACjB,MAAM,EAAEkB,GAAG,EAAA;AAAA,UAAA,oBAC3CnD,cAAA,CAAC+B,QAAQ,CAAC9B,MAAM,EAAA;YACdmD,QAAQ,EAAE1B,YAAY,KAAKO,MAAO;YAElC9B,OAAO,EAAE,SAATA,OAAOA,GAAA;cAAA,OAAQ6B,mBAAmB,CAACC,MAAM,CAAC;YAAA,CAAC;AAAAlC,YAAAA,QAAA,EAE1C+C,oBAAU,CAACb,MAAM,CAAChI,KAAK;AAAC,WAAA,EAHpBkJ,GAIU,CAAC;QAAA,CACnB;OACG;AAAC,KACC,CACX;AAAA,GACE,CAAC;AAEV,CAAC;;;;;ACjDD,IAAME,SAAS,GAAGC,OAAO,CAACC,GAAG,EAAE,IAAI,KAAK;AAExC,IAAMC,YAAY,gBAAGC,gBAAU,CAC7B,UAAA5I,IAAA,EAgBEyC,GAAG,EACA;AAAA,EAAA,IAAAoG,gBAAA,GAAA7I,IAAA,CAfD8I,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG3J,YAAY,GAAA2J,gBAAA;IAAAE,WAAA,GAAA/I,IAAA,CAC1BgJ,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,WAAA;IAAAE,oBAAA,GAAAjJ,IAAA,CACXkJ,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAGE,cAAI,GAAAF,oBAAA;IAAAG,qBAAA,GAAApJ,IAAA,CACtBqJ,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAGD,cAAI,GAAAC,qBAAA;IAAAE,oBAAA,GAAAtJ,IAAA,CACvBuJ,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAE,qBAAA,GAAAxJ,IAAA,CACpByJ,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,eAAA,GAAA1J,IAAA,CACtB8C,UAAU;IAAVA,UAAU,GAAA4G,eAAA,KAAA,MAAA,GAAG;AAAE5F,MAAAA,KAAK,EAAE,IAAI;AAAEC,MAAAA,GAAG,EAAE;AAAK,KAAC,GAAA2F,eAAA;IAAAC,iBAAA,GAAA3J,IAAA,CACvC4J,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAGR,cAAI,GAAAQ,iBAAA;IACnBE,YAAY,GAAA7J,IAAA,CAAZ6J,YAAY;IACZC,aAAa,GAAA9J,IAAA,CAAb8J,aAAa;IAAAC,eAAA,GAAA/J,IAAA,CACbgK,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,eAAA;IAClBE,MAAM,GAAAjK,IAAA,CAANiK,MAAM;AACHlH,IAAAA,UAAU,GAAAC,wBAAA,CAAAhD,IAAA,EAAAiD,SAAA,CAAA;AAIf,EAAA,IAAM8D,mBAAmB,GAAG+B,WAAW,IAAI5J,YAAY;AAEvD,EAAA,IAAMgL,WAAW,GACfpC,MAAM,CAACM,MAAM,CAACrB,mBAAmB,CAAC,CAACoD,IAAI,CAACtC,UAAI,CAAC,SAAS,CAAC,CAAC,IACxDd,mBAAmB,CAACe,MAAM,CAACC,IAAI,CAAChB,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE1D,EAAA,IAAA3D,SAAA,GAAwCC,cAAQ,CAAC6G,WAAW,CAAC;IAAA5G,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtDyD,IAAAA,YAAY,GAAAvD,UAAA,CAAA,CAAA,CAAA;AAAEwD,IAAAA,eAAe,GAAAxD,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAA8G,UAAA,GAAwC/G,cAAQ,CAAC3C,WAAK,EAAE,CAAC;IAAA2J,UAAA,GAAA9G,cAAA,CAAA6G,UAAA,EAAA,CAAA,CAAA;AAAlDxH,IAAAA,YAAY,GAAAyH,UAAA,CAAA,CAAA,CAAA;AAAExH,IAAAA,eAAe,GAAAwH,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAAnH,eAAA,GAAcC,2BAAc,EAAE;IAAtBpE,CAAC,GAAAmE,eAAA,CAADnE,CAAC;EAET,IAAMuL,mBAAmB,GAAG/K,aAAa,CAAC0K,MAAM,CAAC,IAAI,EAAE;AAEvD,EAAA,IAAMM,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAG5K,IAAI,EAAI;IAC/BkD,eAAe,CAAC,UAAA2H,QAAQ,EAAI;AAC1B,MAAA,IAAMC,OAAO,GAAG,OAAO9K,IAAI,KAAK,UAAU,GAAGA,IAAI,CAAC6K,QAAQ,CAAC,GAAG7K,IAAI;MAClEiK,YAAY,CAACa,OAAO,CAAC;AAErB,MAAA,OAAOA,OAAO;AAChB,IAAA,CAAC,CAAC;EACJ,CAAC;AACD,EAAA,IAAMC,kBAAkB,GAAG/G,YAAM,CAAC,IAAI,CAAC;AACvC,EAAA,IAAMiD,WAAW,GAAGjD,YAAM,EAAE;AAE5B+D,EAAAA,eAAS,CAAC,YAAM;IAAA,IAAAF,oBAAA,EAAAmD,qBAAA;IACd,IAAMC,WAAW,IAAApD,oBAAA,GAAGZ,WAAW,CAAClE,OAAO,MAAA,IAAA,IAAA8E,oBAAA,KAAA,MAAA,IAAA,CAAAmD,qBAAA,GAAnBnD,oBAAA,CAAqBqD,MAAM,MAAA,IAAA,IAAAF,qBAAA,KAAA,MAAA,GAAA,MAAA,GAA3BA,qBAAA,CAAAG,IAAA,CAAAtD,oBAA8B,CAAC;AACnD,IAAA,IAAMuD,cAAc,GAAGL,kBAAkB,CAAChI,OAAO;AAEjD,IAAA,IAAI,CAACkI,WAAW,IAAI,CAACG,cAAc,EAAE,OAAOC,SAAS;AAErD,IAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,GAAS;MACzBL,WAAW,CAACM,UAAU,EAAE;IAC1B,CAAC;AAED,IAAA,IAAMC,QAAQ,GAAG,IAAIC,cAAc,CAACH,YAAY,CAAC;AAEjDE,IAAAA,QAAQ,CAACE,OAAO,CAACN,cAAc,CAAC;AAEhC,IAAA,OAAO,YAAM;MACXI,QAAQ,CAACG,UAAU,EAAE;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AAEN,EAAA,oBACEtG,eAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,UAAU;AACpB,IAAA,aAAA,EAAY,eAAe;AAC3BxC,IAAAA,GAAG,EAAEiI,kBAAmB;AAAAxF,IAAAA,QAAA,GAEvB,CAAC8E,UAAU,iBACV7E,cAAA,CAACoG,SAAS,EAAA;MACRC,eAAe,eACbrG,cAAA,CAACa,UAAU,EAAA;AAACX,QAAAA,KAAK,EAAC,IAAI;AAAAH,QAAAA,QAAA,EACnBtC,YAAY,CAACpC,MAAM,CAAC,YAAY;AAAC,OACxB,CACb;AACDiL,MAAAA,gBAAgB,eACdtG,cAAA,CAACwB,MAAM,EAAAxH,eAAA,CAAA;AAEHyH,QAAAA,WAAW,EAAXA,WAAW;AACXG,QAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBnE,QAAAA,YAAY,EAAZA,YAAY;AACZiE,QAAAA,YAAY,EAAZA,YAAY;AACZhE,QAAAA,eAAe,EAAfA,eAAe;AACfiE,QAAAA,eAAe,EAAfA,eAAe;AACfhE,QAAAA,UAAU,EAAVA;AAAU,OAAA,EAAA,iBAAA,EAEKyH,gBAAgB,CAClC;AACF,KACF,CACF,eACDpF,cAAA,CAACuG,YAAY,EAAAxF,aAAA,CAAA;MACXyF,UAAU,EAAA,IAAA;AACVC,MAAAA,UAAU,EAAE7M,CAAC,CAAC,oCAAoC,CAAE;AACpD8M,MAAAA,SAAS,EAAE3C,eAAgB;AAC3B4C,MAAAA,mBAAmB,EAAC,KAAK;AACzBC,MAAAA,gBAAgB,EAAE,KAAM;AACxBC,MAAAA,UAAU,EAAE3C,gBAAiB;AAC7B4C,MAAAA,aAAa,EAAE,KAAM;AACrBC,MAAAA,MAAM,EAAC,MAAM;MACbC,WAAW,EAAEtF,YAAY,CAACxH,gBAAiB;AAC3C+M,MAAAA,OAAO,EAAE,CAACC,aAAa,EAAEC,cAAc,EAAEC,iBAAiB,CAAE;AAC5D9J,MAAAA,GAAG,EAAEX,SAAS,CAACW,GAAG,EAAEmE,WAAW;KAAE,EAAAV,aAAA,CAAAA,aAAA,CAAA;AAE/BuD,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBI,MAAAA,YAAY,EAAZA,YAAY;AACZrB,MAAAA,SAAS,EAATA,SAAS;AACTe,MAAAA,eAAe,EAAfA,eAAe;AACfO,MAAAA,aAAa,EAAbA,aAAa;AACbd,MAAAA,MAAM,EAANA,MAAM;AACNiB,MAAAA,MAAM,EAANA;AAAM,KAAA,EACHK,mBAAmB,CAAA,EACnBvH,UAAU,CAAA,CAEhB,CAAC;AAAA,GACC,CAAC;AAEV,CACF;AAEA4F,YAAY,CAAC6D,WAAW,GAAG,cAAc;;;;"}
|