@bigbinary/neeto-molecules 4.0.2 → 4.0.3
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/AuditLogs.js +1 -1
- package/dist/CalendarView.js +1 -1
- package/dist/Columns.js +1 -1
- package/dist/SubHeader.js +6 -2
- package/dist/SubHeader.js.map +1 -1
- package/dist/Taxonomy.js +1 -1
- package/dist/cjs/AuditLogs.js +1 -1
- package/dist/cjs/CalendarView.js +1 -1
- package/dist/cjs/Columns.js +1 -1
- package/dist/cjs/SubHeader.js +6 -2
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/Taxonomy.js +1 -1
- package/dist/cjs/{useColumns-XlhUVahw.js → useColumns-Bg0ZzPdJ.js} +23 -11
- package/dist/cjs/useColumns-Bg0ZzPdJ.js.map +1 -0
- package/dist/{useColumns-ZmJggX3n.js → useColumns-B7aUtolF.js} +24 -12
- package/dist/useColumns-B7aUtolF.js.map +1 -0
- package/package.json +1 -1
- package/src/translations/de.json +2 -1
- package/src/translations/es.json +2 -1
- package/src/translations/fr.json +2 -1
- package/src/translations/nl.json +2 -1
- package/src/translations/pl.json +2 -1
- package/src/translations/pt.json +2 -1
- package/dist/cjs/useColumns-XlhUVahw.js.map +0 -1
- package/dist/useColumns-ZmJggX3n.js.map +0 -1
package/dist/AuditLogs.js
CHANGED
|
@@ -44,7 +44,7 @@ import '@bigbinary/neeto-commons-frontend/react-utils/useUpdateEffect';
|
|
|
44
44
|
import '@bigbinary/neeto-icons/Search';
|
|
45
45
|
import '@bigbinary/neetoui/Input';
|
|
46
46
|
import '@bigbinary/neeto-icons/Column';
|
|
47
|
-
import './useColumns-
|
|
47
|
+
import './useColumns-B7aUtolF.js';
|
|
48
48
|
import '@babel/runtime/helpers/toConsumableArray';
|
|
49
49
|
import '@dnd-kit/core';
|
|
50
50
|
import '@dnd-kit/sortable';
|
package/dist/CalendarView.js
CHANGED
|
@@ -24,7 +24,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
24
24
|
import 'classnames';
|
|
25
25
|
import '@bigbinary/neeto-commons-frontend/react-utils';
|
|
26
26
|
import '@bigbinary/neeto-icons/Column';
|
|
27
|
-
import './useColumns-
|
|
27
|
+
import './useColumns-B7aUtolF.js';
|
|
28
28
|
import '@babel/runtime/helpers/toConsumableArray';
|
|
29
29
|
import '@dnd-kit/core';
|
|
30
30
|
import '@dnd-kit/sortable';
|
package/dist/Columns.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { c as COLUMNS_ORDER_STORAGE_KEY, H as HIDDEN_COLUMNS_STORAGE_KEY, T as TABLE_CONFIGURATION_QUERY_KEY, C as default, e as useColumnOrderStore, d as useColumns, b as useHiddenColumnStore, a as useHiddenColumns, u as useTableConfigurations } from './useColumns-
|
|
1
|
+
export { c as COLUMNS_ORDER_STORAGE_KEY, H as HIDDEN_COLUMNS_STORAGE_KEY, T as TABLE_CONFIGURATION_QUERY_KEY, C as default, e as useColumnOrderStore, d as useColumns, b as useHiddenColumnStore, a as useHiddenColumns, u as useTableConfigurations } from './useColumns-B7aUtolF.js';
|
|
2
2
|
import '@babel/runtime/helpers/defineProperty';
|
|
3
3
|
import '@babel/runtime/helpers/toConsumableArray';
|
|
4
4
|
import '@babel/runtime/helpers/slicedToArray';
|
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 { C as Columns$1 } from './useColumns-
|
|
9
|
+
import { C as Columns$1 } from './useColumns-B7aUtolF.js';
|
|
10
10
|
import '@babel/runtime/helpers/toConsumableArray';
|
|
11
11
|
import '@tanstack/react-query';
|
|
12
12
|
import '@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation';
|
|
@@ -32,7 +32,7 @@ import 'zustand';
|
|
|
32
32
|
import 'zustand/middleware';
|
|
33
33
|
import '@bigbinary/neeto-commons-frontend/utils/general';
|
|
34
34
|
|
|
35
|
-
var _excluded$1 = ["t", "buttonProps", "columnData", "tableKey"];
|
|
35
|
+
var _excluded$1 = ["t", "buttonProps", "columnData", "onMutationSuccess", "allowConfigurationResetOnUpdate", "tableKey"];
|
|
36
36
|
function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
37
37
|
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
38
38
|
var unUsedI18nProps = ["tReady", "i18n"];
|
|
@@ -41,6 +41,8 @@ var Columns = withT(function (_ref) {
|
|
|
41
41
|
_ref$buttonProps = _ref.buttonProps,
|
|
42
42
|
buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
|
|
43
43
|
columnData = _ref.columnData,
|
|
44
|
+
onMutationSuccess = _ref.onMutationSuccess,
|
|
45
|
+
allowConfigurationResetOnUpdate = _ref.allowConfigurationResetOnUpdate,
|
|
44
46
|
tableKey = _ref.tableKey,
|
|
45
47
|
props = _objectWithoutProperties(_ref, _excluded$1);
|
|
46
48
|
return /*#__PURE__*/jsx("div", {
|
|
@@ -60,7 +62,9 @@ var Columns = withT(function (_ref) {
|
|
|
60
62
|
"data-cy": "columns-dropdown-button"
|
|
61
63
|
}, buttonProps)
|
|
62
64
|
}, _objectSpread$2({
|
|
65
|
+
allowConfigurationResetOnUpdate: allowConfigurationResetOnUpdate,
|
|
63
66
|
columnData: columnData,
|
|
67
|
+
onMutationSuccess: onMutationSuccess,
|
|
64
68
|
tableKey: tableKey
|
|
65
69
|
}, omit(unUsedI18nProps, props))))
|
|
66
70
|
});
|
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 ({ t, buttonProps = {}, columnData, tableKey, ...props }) => (\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-button\",\n \"data-cy\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n {...{ columnData, tableKey, ...omit(unUsedI18nProps, props) }}\n />\n </div>\n )\n);\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({ t, count, onClick, \"data-cy\": dataCy = \"download-button\" }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-cy={dataCy}\n data-testid=\"download-button\"\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\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 }),\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 }),\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 PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-cy\": dataCy = \"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-cy={dataCy}\n data-testid=\"subheader\"\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-cy=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-cy=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-cy=\"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","tableKey","props","_objectWithoutProperties","_excluded","_jsx","className","children","ManageColumns","_objectSpread","isSearchable","icon","Column","label","tooltipProps","content","position","touch","omit","displayName","DownloadButton","count","onClick","_ref$dataCy","dataCy","_jsxs","Button","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-button\",\n \"data-cy\": \"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 { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({ t, count, onClick, \"data-cy\": dataCy = \"download-button\" }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-cy={dataCy}\n data-testid=\"download-button\"\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\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 }),\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 PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-cy\": dataCy = \"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-cy={dataCy}\n data-testid=\"subheader\"\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-cy=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-cy=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-cy=\"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$dataCy","dataCy","_jsxs","Button","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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAMA,eAAe,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;AAE1C,IAAMC,OAAO,GAAGC,KAAK,CACnB,UAAAC,IAAA,EAAA;AAAA,EAAA,IACEC,CAAC,GAAAD,IAAA,CAADC,CAAC;IAAAC,gBAAA,GAAAF,IAAA,CACDG,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA;IAChBE,UAAU,GAAAJ,IAAA,CAAVI,UAAU;IACVC,iBAAiB,GAAAL,IAAA,CAAjBK,iBAAiB;IACjBC,+BAA+B,GAAAN,IAAA,CAA/BM,+BAA+B;IAC/BC,QAAQ,GAAAP,IAAA,CAARO,QAAQ;AACLC,IAAAA,KAAK,GAAAC,wBAAA,CAAAT,IAAA,EAAAU,WAAA,CAAA,CAAA;AAAA,EAAA,oBAERC,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,oCAAoC;AAAAC,IAAAA,QAAA,eACjDF,GAAA,CAACG,SAAa,EAAAC,eAAA,CAAA;MACZC,YAAY,EAAA,IAAA;AACZJ,MAAAA,SAAS,EAAC,mCAAmC;AAC7CT,MAAAA,WAAW,EAAAY,eAAA,CAAA;AACTE,QAAAA,IAAI,EAAEC,MAAM;AACZC,QAAAA,KAAK,EAAE,IAAI;AACXC,QAAAA,YAAY,EAAE;AACZC,UAAAA,OAAO,EAAEpB,CAAC,CAAC,gCAAgC,CAAC;AAC5CqB,UAAAA,QAAQ,EAAE,QAAQ;AAClBC,UAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAA;SACpB;AACD,QAAA,aAAa,EAAE,gBAAgB;AAC/B,QAAA,SAAS,EAAE,yBAAA;AAAyB,OAAA,EACjCpB,WAAW,CAAA;AACd,KAAA,EAAAY,eAAA,CAAA;AAEAT,MAAAA,+BAA+B,EAA/BA,+BAA+B;AAC/BF,MAAAA,UAAU,EAAVA,UAAU;AACVC,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBE,MAAAA,QAAQ,EAARA,QAAAA;AAAQ,KAAA,EACLiB,IAAI,CAAC3B,eAAe,EAAEW,KAAK,CAAC,CAElC,CAAA,CAAA;AAAC,GACC,CAAC,CAAA;AAAA,CAEV,CAAC,CAAA;AAEDV,OAAO,CAAC2B,WAAW,GAAG,SAAS;;AC1C/B,IAAMC,cAAc,GAAG3B,KAAK,CAC1B,UAAAC,IAAA,EAAA;AAAA,EAAA,IAAGC,CAAC,GAAAD,IAAA,CAADC,CAAC;IAAE0B,KAAK,GAAA3B,IAAA,CAAL2B,KAAK;IAAEC,OAAO,GAAA5B,IAAA,CAAP4B,OAAO;IAAAC,WAAA,GAAA7B,IAAA,CAAE,SAAS,CAAA;AAAE8B,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,iBAAiB,GAAAA,WAAA,CAAA;AAAA,EAAA,oBACzDE,IAAA,CAAA,KAAA,EAAA;AAAKnB,IAAAA,SAAS,EAAC,qCAAqC;IAAAC,QAAA,EAAA,cAClDF,GAAA,CAACqB,MAAM,EAAA;AACCJ,MAAAA,OAAO,EAAPA,OAAO;AACb,MAAA,SAAA,EAASE,MAAO;AAChB,MAAA,aAAA,EAAY,iBAAiB;AAC7Bb,MAAAA,IAAI,EAAEgB,QAAS;AACfC,MAAAA,KAAK,EAAC,MAAM;AACZd,MAAAA,YAAY,EAAE;AACZC,QAAAA,OAAO,EAAEpB,CAAC,CAAC,gCAAgC,CAAC;AAC5CqB,QAAAA,QAAQ,EAAE,QAAQ;AAClBC,QAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAA;AACrB,OAAA;AAAE,KACH,CAAC,EACDI,KAAK,iBACJhB,GAAA,CAAA,MAAA,EAAA;AAAMC,MAAAA,SAAS,EAAC,2CAA2C;AAAAC,MAAAA,QAAA,EACxDc,KAAAA;AAAK,KACF,CACP,CAAA;AAAA,GACE,CAAC,CAAA;AAAA,CAEV,CAAC;;;;;ACtBD,IAAMQ,YAAY,GAAGpC,KAAK,CAAC,UAAAC,IAAA,EAAA;AAAA,EAAA,IAAGC,CAAC,GAAAD,IAAA,CAADC,CAAC;IAAEE,WAAW,GAAAH,IAAA,CAAXG,WAAW;AAAKK,IAAAA,KAAK,GAAAC,wBAAA,CAAAT,IAAA,EAAAU,SAAA,CAAA,CAAA;AAAA,EAAA,oBACpDC,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,mCAAmC;AAAAC,IAAAA,QAAA,eAChDF,GAAA,CAACyB,YAAY,EAAArB,eAAA,CAAA;AACXZ,MAAAA,WAAW,EAAAY,eAAA,CAAA;AACT,QAAA,aAAa,EAAE,eAAe;AAC9BE,QAAAA,IAAI,EAAEoB,MAAM;AACZH,QAAAA,KAAK,EAAE,MAAM;AACbd,QAAAA,YAAY,EAAE;AACZC,UAAAA,OAAO,EAAEpB,CAAC,CAAC,8BAA8B,CAAC;AAC1CqB,UAAAA,QAAQ,EAAE,QAAQ;AAClBC,UAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAA;SACpB;AACDJ,QAAAA,KAAK,EAAE,IAAA;AAAI,OAAA,EACRhB,WAAW,CAAA;AACd,KAAA,EACEK,KAAK,CACV,CAAA;AAAC,GACC,CAAC,CAAA;AAAA,CACP,CAAC;;;;ACbF,IAAM8B,UAAU,GAAG,SAAbA,UAAUA,CAAAtC,IAAA,EAKV;AAAA,EAAA,IAJJuC,mBAAmB,GAAAvC,IAAA,CAAnBuC,mBAAmB;IACnBC,kBAAkB,GAAAxC,IAAA,CAAlBwC,kBAAkB;IAClBC,WAAW,GAAAzC,IAAA,CAAXyC,WAAW;IACXC,SAAS,GAAA1C,IAAA,CAAT0C,SAAS,CAAA;EAET,IAAMC,SAAS,GAAGC,YAAY,CAACF,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAATA,SAAS,CAAEG,UAAU,CAAC,GACjD,IAAI,GACJ,CAAAH,SAAS,KAATA,IAAAA,IAAAA,SAAS,uBAATA,SAAS,CAAEG,UAAU,IAAG,CAAC,CAAA;AAE7B,EAAA,oBACEd,IAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,wCAAwC;AACpDnB,IAAAA,SAAS,EAAEkC,UAAU,CAAC,0CAA0C,EAAE;MAChEC,MAAM,EAAEC,GAAG,CAACL,SAAS,CAAA;AACvB,KAAC,CAAE;AAAA9B,IAAAA,QAAA,EAEF0B,CAAAA,mBAAmB,iBAAI5B,GAAA,CAACsB,cAAQ,EAAAlB,aAAA,CAAA,EAAA,EAAKwB,mBAAmB,CAAG,CAAC,EAC5DC,kBAAkB,iBAAI7B,GAAA,CAACb,OAAO,EAAAiB,aAAA,CAAKyB,EAAAA,EAAAA,kBAAkB,CAAG,CAAC,EACzDC,WAAW,iBAAI9B,GAAA,CAAC0B,YAAM,EAAAtB,aAAA,CAAK0B,EAAAA,EAAAA,WAAW,CAAG,CAAC,CAAA;AAAA,GACxC,CAAC,CAAA;AAEV,CAAC;;;;;ACvBD,IAAMQ,SAAS,GAAG,SAAZA,SAASA,CAAAjD,IAAA,EAKT;AAAA,EAAA,IAAAkD,cAAA,GAAAlD,IAAA,CAJJY,SAAS;AAATA,IAAAA,SAAS,GAAAsC,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;IACdC,eAAe,GAAAnD,IAAA,CAAfmD,eAAe;IACfC,gBAAgB,GAAApD,IAAA,CAAhBoD,gBAAgB;IAAAvB,WAAA,GAAA7B,IAAA,CAChB,SAAS,CAAA;AAAE8B,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,WAAW,GAAAA,WAAA,CAAA;AAE/B,EAAA,IAAMwB,YAAY,GAAGC,MAAM,CAAC,IAAI,CAAC,CAAA;AAEjCC,EAAAA,eAAe,CAAC,YAAM;AACpB,IAAA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;AAC/B,MAAA,IAAI,CAACH,YAAY,CAACI,OAAO,EAAE,OAAA;AAC3B,MAAA,IAAMC,MAAM,GAAGL,YAAY,CAACI,OAAO,CAACE,YAAY,CAAA;AAChDC,MAAAA,QAAQ,CAACC,IAAI,CAAC3B,KAAK,CAAC4B,WAAW,CAC7B,8CAA8C,EAAAC,EAAAA,CAAAA,MAAA,CAC3CL,MAAM,OACX,CAAC,CAAA;KACF,CAAA;AAEDF,IAAAA,kBAAkB,EAAE,CAAA;AAEpBQ,IAAAA,MAAM,CAACC,gBAAgB,CAAC,QAAQ,EAAET,kBAAkB,CAAC,CAAA;IAErD,OAAO,YAAA;AAAA,MAAA,OAAMQ,MAAM,CAACE,mBAAmB,CAAC,QAAQ,EAAEV,kBAAkB,CAAC,CAAA;AAAA,KAAA,CAAA;GACtE,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,oBACEzB,IAAA,CAAA,KAAA,EAAA;IACEnB,SAAS,EAAEkC,UAAU,CAAC,CAAC,2BAA2B,EAAElC,SAAS,CAAC,CAAE;AAChE,IAAA,SAAA,EAASkB,MAAO;AAChB,IAAA,aAAA,EAAY,WAAW;AACvBqC,IAAAA,GAAG,EAAEd,YAAa;AAAAxC,IAAAA,QAAA,gBAElBF,GAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,yCAAyC;AACnD,MAAA,SAAA,EAAQ,wBAAwB;MAAAC,QAAA,EAE/BsC,eAAe,iBACdxC,GAAA,CAAA,KAAA,EAAA;AACEC,QAAAA,SAAS,EAAC,iCAAiC;AAC3C,QAAA,SAAA,EAAQ,gBAAgB;AAAAC,QAAAA,QAAA,EAEvBsC,eAAAA;OACE,CAAA;AACN,KACE,CAAC,EACLC,gBAAgB,iBACfzC,GAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,kCAAkC;AAC5C,MAAA,SAAA,EAAQ,iBAAiB;AAAAC,MAAAA,QAAA,EAExBuC,gBAAAA;AAAgB,KACd,CACN,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,EAAC;AAEDH,SAAS,CAACX,UAAU,GAAGA,UAAU;;;;"}
|
package/dist/Taxonomy.js
CHANGED
|
@@ -52,7 +52,7 @@ import '@bigbinary/neeto-icons/MenuVertical';
|
|
|
52
52
|
import '@bigbinary/neetoui/Tooltip';
|
|
53
53
|
import '@bigbinary/neeto-commons-frontend/react-utils';
|
|
54
54
|
import '@bigbinary/neeto-icons/Column';
|
|
55
|
-
import './useColumns-
|
|
55
|
+
import './useColumns-B7aUtolF.js';
|
|
56
56
|
import '@dnd-kit/core';
|
|
57
57
|
import '@dnd-kit/sortable';
|
|
58
58
|
import '@bigbinary/neetoui/Checkbox';
|
package/dist/cjs/AuditLogs.js
CHANGED
|
@@ -46,7 +46,7 @@ require('@bigbinary/neeto-commons-frontend/react-utils/useUpdateEffect');
|
|
|
46
46
|
require('@bigbinary/neeto-icons/Search');
|
|
47
47
|
require('@bigbinary/neetoui/Input');
|
|
48
48
|
require('@bigbinary/neeto-icons/Column');
|
|
49
|
-
require('./useColumns-
|
|
49
|
+
require('./useColumns-Bg0ZzPdJ.js');
|
|
50
50
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
51
51
|
require('@dnd-kit/core');
|
|
52
52
|
require('@dnd-kit/sortable');
|
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('./useColumns-
|
|
29
|
+
require('./useColumns-Bg0ZzPdJ.js');
|
|
30
30
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
31
31
|
require('@dnd-kit/core');
|
|
32
32
|
require('@dnd-kit/sortable');
|
package/dist/cjs/Columns.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var useColumns = require('./useColumns-
|
|
5
|
+
var useColumns = require('./useColumns-Bg0ZzPdJ.js');
|
|
6
6
|
require('@babel/runtime/helpers/defineProperty');
|
|
7
7
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
8
8
|
require('@babel/runtime/helpers/slicedToArray');
|
package/dist/cjs/SubHeader.js
CHANGED
|
@@ -8,7 +8,7 @@ var ramda = require('ramda');
|
|
|
8
8
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
9
9
|
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
10
10
|
var Column = require('@bigbinary/neeto-icons/Column');
|
|
11
|
-
var useColumns = require('./useColumns-
|
|
11
|
+
var useColumns = require('./useColumns-Bg0ZzPdJ.js');
|
|
12
12
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
13
13
|
require('@tanstack/react-query');
|
|
14
14
|
require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
|
|
@@ -34,7 +34,7 @@ require('zustand');
|
|
|
34
34
|
require('zustand/middleware');
|
|
35
35
|
require('@bigbinary/neeto-commons-frontend/utils/general');
|
|
36
36
|
|
|
37
|
-
var _excluded$1 = ["t", "buttonProps", "columnData", "tableKey"];
|
|
37
|
+
var _excluded$1 = ["t", "buttonProps", "columnData", "onMutationSuccess", "allowConfigurationResetOnUpdate", "tableKey"];
|
|
38
38
|
function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
39
39
|
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
40
40
|
var unUsedI18nProps = ["tReady", "i18n"];
|
|
@@ -43,6 +43,8 @@ var Columns = reactUtils.withT(function (_ref) {
|
|
|
43
43
|
_ref$buttonProps = _ref.buttonProps,
|
|
44
44
|
buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
|
|
45
45
|
columnData = _ref.columnData,
|
|
46
|
+
onMutationSuccess = _ref.onMutationSuccess,
|
|
47
|
+
allowConfigurationResetOnUpdate = _ref.allowConfigurationResetOnUpdate,
|
|
46
48
|
tableKey = _ref.tableKey,
|
|
47
49
|
props = _objectWithoutProperties(_ref, _excluded$1);
|
|
48
50
|
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
@@ -62,7 +64,9 @@ var Columns = reactUtils.withT(function (_ref) {
|
|
|
62
64
|
"data-cy": "columns-dropdown-button"
|
|
63
65
|
}, buttonProps)
|
|
64
66
|
}, _objectSpread$2({
|
|
67
|
+
allowConfigurationResetOnUpdate: allowConfigurationResetOnUpdate,
|
|
65
68
|
columnData: columnData,
|
|
69
|
+
onMutationSuccess: onMutationSuccess,
|
|
66
70
|
tableKey: tableKey
|
|
67
71
|
}, ramda.omit(unUsedI18nProps, props))))
|
|
68
72
|
});
|
|
@@ -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 ({ t, buttonProps = {}, columnData, tableKey, ...props }) => (\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-button\",\n \"data-cy\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n {...{ columnData, tableKey, ...omit(unUsedI18nProps, props) }}\n />\n </div>\n )\n);\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({ t, count, onClick, \"data-cy\": dataCy = \"download-button\" }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-cy={dataCy}\n data-testid=\"download-button\"\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\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 }),\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 }),\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 PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-cy\": dataCy = \"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-cy={dataCy}\n data-testid=\"subheader\"\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-cy=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-cy=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-cy=\"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","tableKey","props","_objectWithoutProperties","_excluded","_jsx","className","children","ManageColumns","_objectSpread","isSearchable","icon","Column","label","tooltipProps","content","position","touch","omit","displayName","DownloadButton","count","onClick","_ref$dataCy","dataCy","_jsxs","Button","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-button\",\n \"data-cy\": \"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 { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({ t, count, onClick, \"data-cy\": dataCy = \"download-button\" }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-cy={dataCy}\n data-testid=\"download-button\"\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\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 }),\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 PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-cy\": dataCy = \"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-cy={dataCy}\n data-testid=\"subheader\"\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-cy=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-cy=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-cy=\"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$dataCy","dataCy","_jsxs","Button","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/cjs/Taxonomy.js
CHANGED
|
@@ -54,7 +54,7 @@ require('@bigbinary/neeto-icons/MenuVertical');
|
|
|
54
54
|
require('@bigbinary/neetoui/Tooltip');
|
|
55
55
|
require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
56
56
|
require('@bigbinary/neeto-icons/Column');
|
|
57
|
-
require('./useColumns-
|
|
57
|
+
require('./useColumns-Bg0ZzPdJ.js');
|
|
58
58
|
require('@dnd-kit/core');
|
|
59
59
|
require('@dnd-kit/sortable');
|
|
60
60
|
require('@bigbinary/neetoui/Checkbox');
|
|
@@ -175,27 +175,35 @@ var useFetchTableConfiguration = function useFetchTableConfiguration(_ref) {
|
|
|
175
175
|
}, options));
|
|
176
176
|
};
|
|
177
177
|
var useUpdateTableConfiguration = function useUpdateTableConfiguration(tableKey) {
|
|
178
|
-
|
|
178
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
179
|
+
return useMutationWithInvalidation(tableConfigurationApi.update, _objectSpread$3({
|
|
179
180
|
keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
|
|
180
|
-
});
|
|
181
|
+
}, options));
|
|
181
182
|
};
|
|
182
183
|
var useDestroyTableConfiguration = function useDestroyTableConfiguration(tableKey) {
|
|
183
|
-
|
|
184
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
185
|
+
return useMutationWithInvalidation(tableConfigurationApi.destroy, _objectSpread$3({
|
|
184
186
|
keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
|
|
185
|
-
});
|
|
187
|
+
}, options));
|
|
186
188
|
};
|
|
187
189
|
|
|
188
190
|
function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
189
191
|
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
190
192
|
var useTableConfigurations = function useTableConfigurations(tableKey, columnData) {
|
|
193
|
+
var onMutationSuccess = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : neetoCist.noop;
|
|
194
|
+
var allowConfigurationResetOnUpdate = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
191
195
|
var _useFetchTableConfigu = useFetchTableConfiguration({
|
|
192
196
|
tableKey: tableKey
|
|
193
197
|
}),
|
|
194
198
|
tableConfiguration = _useFetchTableConfigu.data,
|
|
195
199
|
isLoading = _useFetchTableConfigu.isLoading;
|
|
196
|
-
var _useUpdateTableConfig = useUpdateTableConfiguration(tableKey
|
|
200
|
+
var _useUpdateTableConfig = useUpdateTableConfiguration(tableKey, {
|
|
201
|
+
onSuccess: onMutationSuccess
|
|
202
|
+
}),
|
|
197
203
|
updateConfiguration = _useUpdateTableConfig.mutate;
|
|
198
|
-
var _useDestroyTableConfi = useDestroyTableConfiguration(tableKey
|
|
204
|
+
var _useDestroyTableConfi = useDestroyTableConfiguration(tableKey, {
|
|
205
|
+
onSuccess: onMutationSuccess
|
|
206
|
+
}),
|
|
199
207
|
destroyConfiguration = _useDestroyTableConfi.mutate;
|
|
200
208
|
var processColumnsWithConfiguration = React.useCallback(function () {
|
|
201
209
|
var originalColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
@@ -229,10 +237,10 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
|
|
|
229
237
|
return !isLoading && (tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && neetoCist.isNotEmpty(tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && !hasAdditionalColumns;
|
|
230
238
|
}, [tableConfiguration, isLoading, hasAdditionalColumns]);
|
|
231
239
|
React.useEffect(function () {
|
|
232
|
-
if (hasAdditionalColumns && tableConfiguration) {
|
|
240
|
+
if (hasAdditionalColumns && tableConfiguration && allowConfigurationResetOnUpdate) {
|
|
233
241
|
destroyConfiguration(tableKey);
|
|
234
242
|
}
|
|
235
|
-
}, [hasAdditionalColumns, tableKey]);
|
|
243
|
+
}, [hasAdditionalColumns, tableKey, allowConfigurationResetOnUpdate]);
|
|
236
244
|
var allProcessedColumns = React.useMemo(function () {
|
|
237
245
|
if (!isLoading && neetoCist.isNotEmpty(tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && !hasAdditionalColumns) {
|
|
238
246
|
return processColumnsWithConfiguration(columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns);
|
|
@@ -321,7 +329,7 @@ var removeDeletedColumns = function removeDeletedColumns(hiddenColumns, columnDa
|
|
|
321
329
|
});
|
|
322
330
|
};
|
|
323
331
|
|
|
324
|
-
var _excluded$1 = ["actionBlock", "checkboxProps", "columnData", "isSearchable", "tableKey", "noColumnMessage", "searchProps"];
|
|
332
|
+
var _excluded$1 = ["actionBlock", "checkboxProps", "columnData", "isSearchable", "tableKey", "noColumnMessage", "searchProps", "allowConfigurationResetOnUpdate", "onMutationSuccess"];
|
|
325
333
|
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
326
334
|
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
327
335
|
var Columns = function Columns(_ref) {
|
|
@@ -338,6 +346,10 @@ var Columns = function Columns(_ref) {
|
|
|
338
346
|
noColumnMessage = _ref$noColumnMessage === void 0 ? i18next.t("neetoMolecules.columns.noColumns") : _ref$noColumnMessage,
|
|
339
347
|
_ref$searchProps = _ref.searchProps,
|
|
340
348
|
searchProps = _ref$searchProps === void 0 ? {} : _ref$searchProps,
|
|
349
|
+
_ref$allowConfigurati = _ref.allowConfigurationResetOnUpdate,
|
|
350
|
+
allowConfigurationResetOnUpdate = _ref$allowConfigurati === void 0 ? true : _ref$allowConfigurati,
|
|
351
|
+
_ref$onMutationSucces = _ref.onMutationSuccess,
|
|
352
|
+
onMutationSuccess = _ref$onMutationSucces === void 0 ? neetoCist.noop : _ref$onMutationSucces,
|
|
341
353
|
dropdownProps = _objectWithoutProperties(_ref, _excluded$1);
|
|
342
354
|
var Divider = Dropdown.Divider,
|
|
343
355
|
Menu = Dropdown.Menu,
|
|
@@ -348,7 +360,7 @@ var Columns = function Columns(_ref) {
|
|
|
348
360
|
setSearchTerm = _useState2[1];
|
|
349
361
|
var _useTranslation = reactI18next.useTranslation(),
|
|
350
362
|
t = _useTranslation.t;
|
|
351
|
-
var _useTableConfiguratio = useTableConfigurations(tableKey, columnData),
|
|
363
|
+
var _useTableConfiguratio = useTableConfigurations(tableKey, columnData, onMutationSuccess, allowConfigurationResetOnUpdate),
|
|
352
364
|
allProcessedColumns = _useTableConfiguratio.allProcessedColumns,
|
|
353
365
|
existingColumnConfiguration = _useTableConfiguratio.existingColumnConfiguration,
|
|
354
366
|
hideColumn = _useTableConfiguratio.hideColumn,
|
|
@@ -575,4 +587,4 @@ exports.useColumns = useColumns;
|
|
|
575
587
|
exports.useHiddenColumnStore = useHiddenColumnStore;
|
|
576
588
|
exports.useHiddenColumns = useHiddenColumns;
|
|
577
589
|
exports.useTableConfigurations = useTableConfigurations;
|
|
578
|
-
//# sourceMappingURL=useColumns-
|
|
590
|
+
//# sourceMappingURL=useColumns-Bg0ZzPdJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useColumns-Bg0ZzPdJ.js","sources":["../../node_modules/@dnd-kit/utilities/dist/utilities.esm.js","../../src/components/Columns/Item.jsx","../../src/components/Columns/api.js","../../src/components/Columns/constants.js","../../src/components/Columns/useTableConfigurationsApi.js","../../src/components/Columns/useTableConfigurations.js","../../src/components/Columns/utils.js","../../src/components/Columns/Columns.jsx","../../src/components/Columns/useHiddenColumns.js","../../src/components/Columns/useColumns.js"],"sourcesContent":["import { useMemo, useLayoutEffect, useEffect, useRef, useCallback } from 'react';\n\nfunction useCombinedRefs() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n\n return useMemo(() => node => {\n refs.forEach(ref => ref(node));\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n}\n\n// https://github.com/facebook/react/blob/master/packages/shared/ExecutionEnvironment.js\nconst canUseDOM = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined';\n\nfunction isWindow(element) {\n const elementString = Object.prototype.toString.call(element);\n return elementString === '[object Window]' || // In Electron context the Window object serializes to [object global]\n elementString === '[object global]';\n}\n\nfunction isNode(node) {\n return 'nodeType' in node;\n}\n\nfunction getWindow(target) {\n var _target$ownerDocument, _target$ownerDocument2;\n\n if (!target) {\n return window;\n }\n\n if (isWindow(target)) {\n return target;\n }\n\n if (!isNode(target)) {\n return window;\n }\n\n return (_target$ownerDocument = (_target$ownerDocument2 = target.ownerDocument) == null ? void 0 : _target$ownerDocument2.defaultView) != null ? _target$ownerDocument : window;\n}\n\nfunction isDocument(node) {\n const {\n Document\n } = getWindow(node);\n return node instanceof Document;\n}\n\nfunction isHTMLElement(node) {\n if (isWindow(node)) {\n return false;\n }\n\n return node instanceof getWindow(node).HTMLElement;\n}\n\nfunction isSVGElement(node) {\n return node instanceof getWindow(node).SVGElement;\n}\n\nfunction getOwnerDocument(target) {\n if (!target) {\n return document;\n }\n\n if (isWindow(target)) {\n return target.document;\n }\n\n if (!isNode(target)) {\n return document;\n }\n\n if (isDocument(target)) {\n return target;\n }\n\n if (isHTMLElement(target) || isSVGElement(target)) {\n return target.ownerDocument;\n }\n\n return document;\n}\n\n/**\r\n * A hook that resolves to useEffect on the server and useLayoutEffect on the client\r\n * @param callback {function} Callback function that is invoked when the dependencies of the hook change\r\n */\n\nconst useIsomorphicLayoutEffect = canUseDOM ? useLayoutEffect : useEffect;\n\nfunction useEvent(handler) {\n const handlerRef = useRef(handler);\n useIsomorphicLayoutEffect(() => {\n handlerRef.current = handler;\n });\n return useCallback(function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return handlerRef.current == null ? void 0 : handlerRef.current(...args);\n }, []);\n}\n\nfunction useInterval() {\n const intervalRef = useRef(null);\n const set = useCallback((listener, duration) => {\n intervalRef.current = setInterval(listener, duration);\n }, []);\n const clear = useCallback(() => {\n if (intervalRef.current !== null) {\n clearInterval(intervalRef.current);\n intervalRef.current = null;\n }\n }, []);\n return [set, clear];\n}\n\nfunction useLatestValue(value, dependencies) {\n if (dependencies === void 0) {\n dependencies = [value];\n }\n\n const valueRef = useRef(value);\n useIsomorphicLayoutEffect(() => {\n if (valueRef.current !== value) {\n valueRef.current = value;\n }\n }, dependencies);\n return valueRef;\n}\n\nfunction useLazyMemo(callback, dependencies) {\n const valueRef = useRef();\n return useMemo(() => {\n const newValue = callback(valueRef.current);\n valueRef.current = newValue;\n return newValue;\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [...dependencies]);\n}\n\nfunction useNodeRef(onChange) {\n const onChangeHandler = useEvent(onChange);\n const node = useRef(null);\n const setNodeRef = useCallback(element => {\n if (element !== node.current) {\n onChangeHandler == null ? void 0 : onChangeHandler(element, node.current);\n }\n\n node.current = element;\n }, //eslint-disable-next-line\n []);\n return [node, setNodeRef];\n}\n\nfunction usePrevious(value) {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref.current;\n}\n\nlet ids = {};\nfunction useUniqueId(prefix, value) {\n return useMemo(() => {\n if (value) {\n return value;\n }\n\n const id = ids[prefix] == null ? 0 : ids[prefix] + 1;\n ids[prefix] = id;\n return prefix + \"-\" + id;\n }, [prefix, value]);\n}\n\nfunction createAdjustmentFn(modifier) {\n return function (object) {\n for (var _len = arguments.length, adjustments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n adjustments[_key - 1] = arguments[_key];\n }\n\n return adjustments.reduce((accumulator, adjustment) => {\n const entries = Object.entries(adjustment);\n\n for (const [key, valueAdjustment] of entries) {\n const value = accumulator[key];\n\n if (value != null) {\n accumulator[key] = value + modifier * valueAdjustment;\n }\n }\n\n return accumulator;\n }, { ...object\n });\n };\n}\n\nconst add = /*#__PURE__*/createAdjustmentFn(1);\nconst subtract = /*#__PURE__*/createAdjustmentFn(-1);\n\nfunction hasViewportRelativeCoordinates(event) {\n return 'clientX' in event && 'clientY' in event;\n}\n\nfunction isKeyboardEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n KeyboardEvent\n } = getWindow(event.target);\n return KeyboardEvent && event instanceof KeyboardEvent;\n}\n\nfunction isTouchEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n TouchEvent\n } = getWindow(event.target);\n return TouchEvent && event instanceof TouchEvent;\n}\n\n/**\r\n * Returns the normalized x and y coordinates for mouse and touch events.\r\n */\n\nfunction getEventCoordinates(event) {\n if (isTouchEvent(event)) {\n if (event.touches && event.touches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.touches[0];\n return {\n x,\n y\n };\n } else if (event.changedTouches && event.changedTouches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.changedTouches[0];\n return {\n x,\n y\n };\n }\n }\n\n if (hasViewportRelativeCoordinates(event)) {\n return {\n x: event.clientX,\n y: event.clientY\n };\n }\n\n return null;\n}\n\nconst CSS = /*#__PURE__*/Object.freeze({\n Translate: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n x,\n y\n } = transform;\n return \"translate3d(\" + (x ? Math.round(x) : 0) + \"px, \" + (y ? Math.round(y) : 0) + \"px, 0)\";\n }\n\n },\n Scale: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n scaleX,\n scaleY\n } = transform;\n return \"scaleX(\" + scaleX + \") scaleY(\" + scaleY + \")\";\n }\n\n },\n Transform: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n return [CSS.Translate.toString(transform), CSS.Scale.toString(transform)].join(' ');\n }\n\n },\n Transition: {\n toString(_ref) {\n let {\n property,\n duration,\n easing\n } = _ref;\n return property + \" \" + duration + \"ms \" + easing;\n }\n\n }\n});\n\nconst SELECTOR = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]';\nfunction findFirstFocusableNode(element) {\n if (element.matches(SELECTOR)) {\n return element;\n }\n\n return element.querySelector(SELECTOR);\n}\n\nexport { CSS, add, canUseDOM, findFirstFocusableNode, getEventCoordinates, getOwnerDocument, getWindow, hasViewportRelativeCoordinates, isDocument, isHTMLElement, isKeyboardEvent, isNode, isSVGElement, isTouchEvent, isWindow, subtract, useCombinedRefs, useEvent, useInterval, useIsomorphicLayoutEffect, useLatestValue, useLazyMemo, useNodeRef, usePrevious, useUniqueId };\n//# sourceMappingURL=utilities.esm.js.map\n","import { useSortable } from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport { Drag } from \"neetoicons\";\nimport { Checkbox, Label } from \"neetoui\";\n\nconst Item = ({ column, hiddenColumns, checkboxProps, onToggle }) => {\n const { key, title } = column;\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n } = useSortable({ id: key });\n\n const dragStyle = {\n transform: isDragging ? CSS.Transform.toString(transform) : undefined,\n transition,\n opacity: isDragging ? 0.5 : 1,\n };\n\n return (\n <div\n className=\"neeto-molecules-columns__sortable-item\"\n ref={setNodeRef}\n style={dragStyle}\n >\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer neeto-ui-items-center px-4 py-2\"\n htmlFor={key}\n >\n <div\n {...attributes}\n {...listeners}\n className=\"neeto-ui-mr-2 neeto-ui-cursor-grab neeto-ui-flex neeto-ui-items-center\"\n >\n <Drag className=\"neeto-ui-text-gray-400\" size={16} />\n </div>\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={onToggle}\n {...checkboxProps}\n />\n </Label>\n </div>\n );\n};\n\nexport default Item;\n","import axios from \"axios\";\n\nconst baseUrl = \"api/v1/table_configurations\";\n\nconst fetch = tableKey => axios.get(`${baseUrl}/${tableKey}`);\n\nconst create = payload => axios.post(baseUrl, { tableConfiguration: payload });\n\nconst update = ({ tableKey, payload }) =>\n axios.patch(`${baseUrl}/${tableKey}`, { tableConfiguration: payload });\n\nconst destroy = tableKey => axios.delete(`${baseUrl}/${tableKey}`);\n\nconst tableConfigurationApi = { fetch, create, update, destroy };\n\nexport default tableConfigurationApi;\n","export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\nexport const COLUMNS_ORDER_STORAGE_KEY = \"neeto-molecules-columns-order\";\nexport const TABLE_CONFIGURATION_QUERY_KEY = \"table-configuration\";\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\n\nimport tableConfigurationApi from \"./api\";\nimport { TABLE_CONFIGURATION_QUERY_KEY } from \"./constants.js\";\n\nconst useFetchTableConfiguration = ({ tableKey, options = {} }) =>\n useQuery({\n queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],\n enabled: !!tableKey,\n queryFn: () => tableConfigurationApi.fetch(tableKey),\n ...options,\n });\n\nconst useUpdateTableConfiguration = (tableKey, options = {}) =>\n useMutationWithInvalidation(tableConfigurationApi.update, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n ...options,\n });\n\nconst useDestroyTableConfiguration = (tableKey, options = {}) =>\n useMutationWithInvalidation(tableConfigurationApi.destroy, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n ...options,\n });\n\nexport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n};\n","import { useEffect, useMemo, useCallback } from \"react\";\n\nimport { isNotEqualDeep, isNotEmpty, noop } from \"neetocist\";\nimport { isEmpty, pluck, prop } from \"ramda\";\n\nimport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n} from \"./useTableConfigurationsApi.js\";\n\nconst useTableConfigurations = (\n tableKey,\n columnData,\n onMutationSuccess = noop,\n allowConfigurationResetOnUpdate = true\n) => {\n const { data: tableConfiguration, isLoading } = useFetchTableConfiguration({\n tableKey,\n });\n\n const { mutate: updateConfiguration } = useUpdateTableConfiguration(\n tableKey,\n { onSuccess: onMutationSuccess }\n );\n\n const { mutate: destroyConfiguration } = useDestroyTableConfiguration(\n tableKey,\n { onSuccess: onMutationSuccess }\n );\n\n const processColumnsWithConfiguration = useCallback(\n (originalColumns = [], existingColumnConfiguration = []) => {\n if (isEmpty(existingColumnConfiguration)) {\n return originalColumns;\n }\n\n const originalColumnsByKey = new Map(\n originalColumns?.filter(prop(\"key\")).map(column => [column.key, column])\n );\n\n const configurationByKey = new Map(\n existingColumnConfiguration.map(config => [config.key, config])\n );\n\n const orderedConfiguredColumns = existingColumnConfiguration\n .map(config => originalColumnsByKey.get(config.key))\n .filter(Boolean);\n\n const unconfiguredOriginalColumns = originalColumns.filter(\n column => column.key && !configurationByKey.has(column.key)\n );\n\n return [...orderedConfiguredColumns, ...unconfiguredOriginalColumns];\n },\n []\n );\n\n const hasAdditionalColumns = useMemo(() => {\n if (!tableConfiguration?.columns || !columnData) {\n return false;\n }\n\n const configurationKeys = pluck(\"key\", tableConfiguration.columns).sort();\n const dataKeys = pluck(\"key\", columnData).sort();\n\n return isNotEqualDeep(configurationKeys, dataKeys);\n }, [tableConfiguration, columnData]);\n\n const shouldApplyTableConfiguration = useMemo(\n () =>\n !isLoading &&\n tableConfiguration?.columns &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns,\n [tableConfiguration, isLoading, hasAdditionalColumns]\n );\n\n useEffect(() => {\n if (\n hasAdditionalColumns &&\n tableConfiguration &&\n allowConfigurationResetOnUpdate\n ) {\n destroyConfiguration(tableKey);\n }\n }, [hasAdditionalColumns, tableKey, allowConfigurationResetOnUpdate]);\n\n const allProcessedColumns = useMemo(() => {\n if (\n !isLoading &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns\n ) {\n return processColumnsWithConfiguration(\n columnData,\n tableConfiguration?.columns\n );\n }\n\n return columnData || [];\n }, [\n isLoading,\n tableConfiguration?.columns,\n hasAdditionalColumns,\n columnData,\n processColumnsWithConfiguration,\n ]);\n\n const customizedColumns = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n const visibleColumnKeys = pluck(\n \"key\",\n tableConfiguration.columns.filter(prop(\"isShown\"))\n );\n\n return allProcessedColumns.filter(column =>\n visibleColumnKeys.includes(column.key)\n );\n }\n\n return columnData || [];\n }, [\n allProcessedColumns,\n columnData,\n tableConfiguration?.columns,\n shouldApplyTableConfiguration,\n ]);\n\n const existingColumnConfiguration = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n return tableConfiguration.columns;\n }\n\n if (!columnData || isEmpty(columnData)) {\n return [];\n }\n\n return columnData.map(column => ({ key: column.key, isShown: true }));\n }, [shouldApplyTableConfiguration, columnData, tableConfiguration?.columns]);\n\n const updateColumns = updatedColumns => {\n updateConfiguration({\n tableKey,\n payload: { table_key: tableKey, columns: updatedColumns },\n });\n };\n\n const hideColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: false } : column\n )\n );\n };\n\n const showColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: true } : column\n )\n );\n };\n\n const reorderColumns = newOrder => {\n updateColumns(newOrder);\n };\n\n return {\n customizedColumns, // Only visible columns (for displaying the columns in the table)\n allProcessedColumns, // All columns (for displaying the columns in the Subheader)\n isTableConfigurationLoading: isLoading,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n reorderColumns,\n destroyConfiguration,\n };\n};\n\nexport default useTableConfigurations;\n","import { existsBy, removeBy } from \"neetocist\";\nimport { filter, includes, toLower, trim } from \"ramda\";\n\nexport const getHidableColumns = columnData =>\n removeBy({ isHidable: false }, columnData);\n\nexport const filterBySearchTerm = (searchTerm, columns) =>\n filter(\n ({ title }) => includes(trim(toLower(searchTerm)), trim(toLower(title))),\n columns\n );\n\nexport const removeDeletedColumns = (hiddenColumns, columnData) =>\n hiddenColumns.filter(hiddenColumn =>\n existsBy({ dataIndex: hiddenColumn }, columnData)\n );\n","import { useState } from \"react\";\n\nimport { DndContext } from \"@dnd-kit/core\";\nimport { SortableContext } from \"@dnd-kit/sortable\";\nimport i18next from \"i18next\";\nimport { isNotEmpty, findIndexBy, noop } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport Item from \"./Item\";\nimport useTableConfigurations from \"./useTableConfigurations.js\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils.js\";\n\nconst Columns = ({\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n tableKey = \"\",\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n searchProps = {},\n allowConfigurationResetOnUpdate = true,\n onMutationSuccess = noop,\n ...dropdownProps\n}) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n allProcessedColumns,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n reorderColumns,\n destroyConfiguration,\n } = useTableConfigurations(\n tableKey,\n columnData,\n onMutationSuccess,\n allowConfigurationResetOnUpdate\n );\n\n const hiddenColumns = pluck(\n \"key\",\n existingColumnConfiguration.filter(column => !column.isShown)\n );\n\n const handleDragEnd = event => {\n const { active, over } = event;\n if (!over || active.id === over.id) return;\n\n const oldIndex = findIndexBy(\n { key: active.id },\n existingColumnConfiguration\n );\n\n const newIndex = findIndexBy({ key: over.id }, existingColumnConfiguration);\n\n if (oldIndex === -1 || newIndex === -1) return;\n\n const newOrder = [...existingColumnConfiguration];\n const [movedItem] = newOrder.splice(oldIndex, 1);\n newOrder.splice(newIndex, 0, movedItem);\n reorderColumns(newOrder);\n };\n\n const columns = getHidableColumns(allProcessedColumns);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n position=\"bottom-end\"\n onClose={() => setSearchTerm(\"\")}\n {...dropdownProps}\n >\n <Menu>\n <div className=\"neeto-molecules-columns__container\">\n {isSearchable && (\n <Input\n className=\"px-4 py-2\"\n data-cy=\"neeto-ui-columns-search\"\n data-testid=\"neeto-ui-columns-search\"\n placeholder={t(\"neetoMolecules.columns.search\")}\n prefix={<Search />}\n type=\"search\"\n value={searchTerm}\n onChange={handleSearch}\n {...searchProps}\n />\n )}\n {isEmpty(filteredColumns) && (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {isNotEmpty(filteredColumns) && !searchTerm && (\n <DndContext onDragEnd={handleDragEnd}>\n <SortableContext items={pluck(\"key\", filteredColumns)}>\n {filteredColumns.map(column => (\n <Item\n {...{ checkboxProps, column, hiddenColumns }}\n key={column.key}\n onToggle={handleChange}\n />\n ))}\n </SortableContext>\n </DndContext>\n )}\n {isNotEmpty(filteredColumns) &&\n searchTerm &&\n filteredColumns.map(({ key, title }) => (\n <MenuItem key={key}>\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2\"\n htmlFor={key}\n >\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))}\n <Divider />\n {!!actionBlock && (\n <>\n {actionBlock}\n <Divider />\n </>\n )}\n <div className=\"flex justify-end p-1 pr-3\">\n <Button\n data-cy=\"column-visibility-reset-button\"\n label={t(\"neetoMolecules.columns.reset\")}\n style=\"secondary\"\n onClick={() => destroyConfiguration(tableKey)}\n />\n </div>\n </div>\n </Menu>\n </Dropdown>\n );\n};\n\nColumns.propTypes = {\n /**\n * Controls whether the table configuration should be reset on adding custom fields (optional).\n */\n allowConfigurationResetOnUpdate: PropTypes.bool,\n /**\n * Extra action items that can be added at the end of the dropdown (optional).\n */\n actionBlock: PropTypes.element,\n /**\n * Additional props for the checkboxes in the dropdown (optional).\n */\n checkboxProps: PropTypes.object,\n /**\n * The list of columns from which the dropdown options are built (required).\n */\n columnData: PropTypes.array,\n /**\n * Controls whether the dropdown options should be searchable (optional).\n */\n isSearchable: PropTypes.bool,\n /**\n * The table key used to identify table configuration in the API (required).\n */\n tableKey: PropTypes.string,\n /**\n * The message to be shown when there are no columns to be displayed in the dropdown (optional).\n */\n noColumnMessage: PropTypes.string,\n /**\n * Props to be passed to the search input in the column dropdown. Only works when `isSearchable` is set to `true` (optional).\n */\n searchProps: PropTypes.object,\n /**\n * The function will be called when the mutation is successful (optional).\n */\n onMutationSuccess: PropTypes.func,\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { useEffect } from \"react\";\n\nimport { removeBy } from \"neetocist\";\nimport {\n getFromLocalStorage,\n removeFromLocalStorage,\n} from \"neetocommons/utils/general\";\nimport { __, without, includes, isEmpty, equals, union } from \"ramda\";\nimport { create } from \"zustand\";\nimport { persist } from \"zustand/middleware\";\n\nimport { HIDDEN_COLUMNS_STORAGE_KEY } from \"./constants\";\nimport { removeDeletedColumns } from \"./utils\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useHiddenColumnStore = create(\n persist(() => ({}), { name: HIDDEN_COLUMNS_STORAGE_KEY })\n);\n\nconst useHiddenColumns = (localStorageKey, initialValue = []) => {\n const hiddenColumns = useHiddenColumnStore(state => state[localStorageKey]);\n const setHiddenColumns = columns =>\n useHiddenColumnStore.setState({ [localStorageKey]: columns });\n\n // Migrates values from old location to new zustand location.\n useEffect(() => {\n const oldValue = getFromLocalStorage(localStorageKey);\n if (oldValue) {\n setHiddenColumns(oldValue);\n removeFromLocalStorage(localStorageKey);\n } else if (!hiddenColumns) {\n setHiddenColumns(initialValue);\n }\n }, [localStorageKey]);\n\n const hideColumn = columns =>\n setHiddenColumns(\n union(hiddenColumns, Array.isArray(columns) ? columns : [columns])\n );\n\n const showColumn = columns =>\n setHiddenColumns(\n without(Array.isArray(columns) ? columns : [columns], hiddenColumns)\n );\n\n const getVisibleColumnData = columnData =>\n removeBy({ dataIndex: includes(__, hiddenColumns || []) }, columnData);\n\n const onColumnDataChange = columnData => {\n if (isEmpty(columnData) || !hiddenColumns) return;\n const newHiddenColumns = removeDeletedColumns(hiddenColumns, columnData);\n if (!equals(newHiddenColumns, hiddenColumns)) {\n setHiddenColumns(newHiddenColumns);\n }\n };\n\n return {\n hiddenColumns,\n hideColumn,\n showColumn,\n getVisibleColumnData,\n onColumnDataChange,\n };\n};\n\nexport { useHiddenColumns, useHiddenColumnStore };\n","import { identity, isEmpty, pipe } from \"ramda\";\nimport { create } from \"zustand\";\nimport { persist } from \"zustand/middleware\";\n\nimport { COLUMNS_ORDER_STORAGE_KEY } from \"./constants\";\nimport { useHiddenColumns } from \"./useHiddenColumns\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useColumnOrderStore = create(\n persist(() => ({}), { name: COLUMNS_ORDER_STORAGE_KEY })\n);\n\nconst useColumns = ({\n localStorageKey,\n initialHiddenColumns,\n initialOrder = [],\n}) => {\n const columnOrder =\n useColumnOrderStore(state => state[localStorageKey]) || initialOrder;\n\n const setColumnOrder = columns =>\n useColumnOrderStore.setState({ [localStorageKey]: columns });\n\n const { hiddenColumns, getVisibleColumnData, ...hiddenColumnHelpers } =\n useHiddenColumns(localStorageKey, initialHiddenColumns);\n\n const orderColumns = columnData => {\n if (isEmpty(columnOrder)) return columnData;\n\n return columnData.sort((a, b) => {\n if (\n !columnOrder.includes(a.dataIndex) ||\n !columnOrder.includes(b.dataIndex)\n ) {\n return 0;\n }\n\n return (\n columnOrder.indexOf(a.dataIndex) - columnOrder.indexOf(b.dataIndex)\n );\n });\n };\n\n const getColumnData = ({\n columnData,\n isHidable = true,\n isReOrderable = false,\n }) =>\n pipe(\n isHidable ? getVisibleColumnData : identity,\n isReOrderable ? orderColumns : identity\n )(columnData);\n\n return {\n ...hiddenColumnHelpers,\n hiddenColumns,\n columnOrder,\n getVisibleColumnData,\n setColumnOrder,\n getColumnData,\n };\n};\n\nexport { useColumns, useColumnOrderStore };\n"],"names":["Item","_ref","column","hiddenColumns","checkboxProps","onToggle","key","title","_useSortable","useSortable","id","attributes","listeners","setNodeRef","transform","transition","isDragging","dragStyle","CSS","Transform","toString","undefined","opacity","_jsx","className","ref","style","children","_jsxs","Label","htmlFor","_objectSpread","Drag","size","Checkbox","checked","includes","label","name","onChange","baseUrl","fetch","tableKey","axios","get","concat","create","payload","post","tableConfiguration","update","patch","destroy","tableConfigurationApi","HIDDEN_COLUMNS_STORAGE_KEY","COLUMNS_ORDER_STORAGE_KEY","TABLE_CONFIGURATION_QUERY_KEY","useFetchTableConfiguration","_ref$options","options","useQuery","queryKey","enabled","queryFn","useUpdateTableConfiguration","arguments","length","useMutationWithInvalidation","keysToInvalidate","useDestroyTableConfiguration","useTableConfigurations","columnData","onMutationSuccess","noop","allowConfigurationResetOnUpdate","_useFetchTableConfigu","data","isLoading","_useUpdateTableConfig","onSuccess","updateConfiguration","mutate","_useDestroyTableConfi","destroyConfiguration","processColumnsWithConfiguration","useCallback","originalColumns","existingColumnConfiguration","isEmpty","originalColumnsByKey","Map","filter","prop","map","configurationByKey","config","orderedConfiguredColumns","Boolean","unconfiguredOriginalColumns","has","_toConsumableArray","hasAdditionalColumns","useMemo","columns","configurationKeys","pluck","sort","dataKeys","isNotEqualDeep","shouldApplyTableConfiguration","isNotEmpty","useEffect","allProcessedColumns","customizedColumns","visibleColumnKeys","isShown","updateColumns","updatedColumns","table_key","hideColumn","columnKey","showColumn","reorderColumns","newOrder","isTableConfigurationLoading","getHidableColumns","removeBy","isHidable","filterBySearchTerm","searchTerm","trim","toLower","removeDeletedColumns","hiddenColumn","existsBy","dataIndex","Columns","actionBlock","_ref$checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$tableKey","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$searchProps","searchProps","_ref$allowConfigurati","_ref$onMutationSucces","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useTableConfiguratio","handleDragEnd","event","active","over","oldIndex","findIndexBy","newIndex","_newOrder$splice","splice","_newOrder$splice2","movedItem","filteredColumns","handleChange","_ref2","_ref2$target","target","handleSearch","_ref3","value","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","position","onClose","Input","placeholder","prefix","Search","type","DndContext","onDragEnd","SortableContext","items","_createElement","_ref4","_Fragment","Button","onClick","displayName","useHiddenColumnStore","persist","useHiddenColumns","localStorageKey","initialValue","state","setHiddenColumns","setState","_defineProperty","oldValue","getFromLocalStorage","removeFromLocalStorage","union","Array","isArray","without","getVisibleColumnData","__","onColumnDataChange","newHiddenColumns","equals","useColumnOrderStore","useColumns","initialHiddenColumns","_ref$initialOrder","initialOrder","columnOrder","setColumnOrder","_useHiddenColumns","hiddenColumnHelpers","orderColumns","a","b","indexOf","getColumnData","_ref2$isHidable","_ref2$isReOrderable","isReOrderable","pipe","identity"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -6,7 +6,7 @@ import { useCallback, useMemo, useEffect, useState, createElement } from 'react'
|
|
|
6
6
|
import { DndContext } from '@dnd-kit/core';
|
|
7
7
|
import { useSortable, SortableContext } from '@dnd-kit/sortable';
|
|
8
8
|
import i18next from 'i18next';
|
|
9
|
-
import { isNotEqualDeep, isNotEmpty, removeBy, existsBy, findIndexBy } from '@bigbinary/neeto-cist';
|
|
9
|
+
import { isNotEqualDeep, isNotEmpty, noop, removeBy, existsBy, findIndexBy } from '@bigbinary/neeto-cist';
|
|
10
10
|
import Search from '@bigbinary/neeto-icons/Search';
|
|
11
11
|
import Checkbox from '@bigbinary/neetoui/Checkbox';
|
|
12
12
|
import Dropdown from '@bigbinary/neetoui/Dropdown';
|
|
@@ -173,27 +173,35 @@ var useFetchTableConfiguration = function useFetchTableConfiguration(_ref) {
|
|
|
173
173
|
}, options));
|
|
174
174
|
};
|
|
175
175
|
var useUpdateTableConfiguration = function useUpdateTableConfiguration(tableKey) {
|
|
176
|
-
|
|
176
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
177
|
+
return useMutationWithInvalidation(tableConfigurationApi.update, _objectSpread$3({
|
|
177
178
|
keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
|
|
178
|
-
});
|
|
179
|
+
}, options));
|
|
179
180
|
};
|
|
180
181
|
var useDestroyTableConfiguration = function useDestroyTableConfiguration(tableKey) {
|
|
181
|
-
|
|
182
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
183
|
+
return useMutationWithInvalidation(tableConfigurationApi.destroy, _objectSpread$3({
|
|
182
184
|
keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]]
|
|
183
|
-
});
|
|
185
|
+
}, options));
|
|
184
186
|
};
|
|
185
187
|
|
|
186
188
|
function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
187
189
|
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
188
190
|
var useTableConfigurations = function useTableConfigurations(tableKey, columnData) {
|
|
191
|
+
var onMutationSuccess = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : noop;
|
|
192
|
+
var allowConfigurationResetOnUpdate = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
189
193
|
var _useFetchTableConfigu = useFetchTableConfiguration({
|
|
190
194
|
tableKey: tableKey
|
|
191
195
|
}),
|
|
192
196
|
tableConfiguration = _useFetchTableConfigu.data,
|
|
193
197
|
isLoading = _useFetchTableConfigu.isLoading;
|
|
194
|
-
var _useUpdateTableConfig = useUpdateTableConfiguration(tableKey
|
|
198
|
+
var _useUpdateTableConfig = useUpdateTableConfiguration(tableKey, {
|
|
199
|
+
onSuccess: onMutationSuccess
|
|
200
|
+
}),
|
|
195
201
|
updateConfiguration = _useUpdateTableConfig.mutate;
|
|
196
|
-
var _useDestroyTableConfi = useDestroyTableConfiguration(tableKey
|
|
202
|
+
var _useDestroyTableConfi = useDestroyTableConfiguration(tableKey, {
|
|
203
|
+
onSuccess: onMutationSuccess
|
|
204
|
+
}),
|
|
197
205
|
destroyConfiguration = _useDestroyTableConfi.mutate;
|
|
198
206
|
var processColumnsWithConfiguration = useCallback(function () {
|
|
199
207
|
var originalColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
@@ -227,10 +235,10 @@ var useTableConfigurations = function useTableConfigurations(tableKey, columnDat
|
|
|
227
235
|
return !isLoading && (tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && isNotEmpty(tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && !hasAdditionalColumns;
|
|
228
236
|
}, [tableConfiguration, isLoading, hasAdditionalColumns]);
|
|
229
237
|
useEffect(function () {
|
|
230
|
-
if (hasAdditionalColumns && tableConfiguration) {
|
|
238
|
+
if (hasAdditionalColumns && tableConfiguration && allowConfigurationResetOnUpdate) {
|
|
231
239
|
destroyConfiguration(tableKey);
|
|
232
240
|
}
|
|
233
|
-
}, [hasAdditionalColumns, tableKey]);
|
|
241
|
+
}, [hasAdditionalColumns, tableKey, allowConfigurationResetOnUpdate]);
|
|
234
242
|
var allProcessedColumns = useMemo(function () {
|
|
235
243
|
if (!isLoading && isNotEmpty(tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns) && !hasAdditionalColumns) {
|
|
236
244
|
return processColumnsWithConfiguration(columnData, tableConfiguration === null || tableConfiguration === void 0 ? void 0 : tableConfiguration.columns);
|
|
@@ -319,7 +327,7 @@ var removeDeletedColumns = function removeDeletedColumns(hiddenColumns, columnDa
|
|
|
319
327
|
});
|
|
320
328
|
};
|
|
321
329
|
|
|
322
|
-
var _excluded$1 = ["actionBlock", "checkboxProps", "columnData", "isSearchable", "tableKey", "noColumnMessage", "searchProps"];
|
|
330
|
+
var _excluded$1 = ["actionBlock", "checkboxProps", "columnData", "isSearchable", "tableKey", "noColumnMessage", "searchProps", "allowConfigurationResetOnUpdate", "onMutationSuccess"];
|
|
323
331
|
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
324
332
|
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
325
333
|
var Columns = function Columns(_ref) {
|
|
@@ -336,6 +344,10 @@ var Columns = function Columns(_ref) {
|
|
|
336
344
|
noColumnMessage = _ref$noColumnMessage === void 0 ? i18next.t("neetoMolecules.columns.noColumns") : _ref$noColumnMessage,
|
|
337
345
|
_ref$searchProps = _ref.searchProps,
|
|
338
346
|
searchProps = _ref$searchProps === void 0 ? {} : _ref$searchProps,
|
|
347
|
+
_ref$allowConfigurati = _ref.allowConfigurationResetOnUpdate,
|
|
348
|
+
allowConfigurationResetOnUpdate = _ref$allowConfigurati === void 0 ? true : _ref$allowConfigurati,
|
|
349
|
+
_ref$onMutationSucces = _ref.onMutationSuccess,
|
|
350
|
+
onMutationSuccess = _ref$onMutationSucces === void 0 ? noop : _ref$onMutationSucces,
|
|
339
351
|
dropdownProps = _objectWithoutProperties(_ref, _excluded$1);
|
|
340
352
|
var Divider = Dropdown.Divider,
|
|
341
353
|
Menu = Dropdown.Menu,
|
|
@@ -346,7 +358,7 @@ var Columns = function Columns(_ref) {
|
|
|
346
358
|
setSearchTerm = _useState2[1];
|
|
347
359
|
var _useTranslation = useTranslation(),
|
|
348
360
|
t = _useTranslation.t;
|
|
349
|
-
var _useTableConfiguratio = useTableConfigurations(tableKey, columnData),
|
|
361
|
+
var _useTableConfiguratio = useTableConfigurations(tableKey, columnData, onMutationSuccess, allowConfigurationResetOnUpdate),
|
|
350
362
|
allProcessedColumns = _useTableConfiguratio.allProcessedColumns,
|
|
351
363
|
existingColumnConfiguration = _useTableConfiguratio.existingColumnConfiguration,
|
|
352
364
|
hideColumn = _useTableConfiguratio.hideColumn,
|
|
@@ -565,4 +577,4 @@ var useColumns = function useColumns(_ref) {
|
|
|
565
577
|
};
|
|
566
578
|
|
|
567
579
|
export { Columns as C, HIDDEN_COLUMNS_STORAGE_KEY as H, TABLE_CONFIGURATION_QUERY_KEY as T, useHiddenColumns as a, useHiddenColumnStore as b, COLUMNS_ORDER_STORAGE_KEY as c, useColumns as d, useColumnOrderStore as e, useTableConfigurations as u };
|
|
568
|
-
//# sourceMappingURL=useColumns-
|
|
580
|
+
//# sourceMappingURL=useColumns-B7aUtolF.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useColumns-B7aUtolF.js","sources":["../node_modules/@dnd-kit/utilities/dist/utilities.esm.js","../src/components/Columns/Item.jsx","../src/components/Columns/api.js","../src/components/Columns/constants.js","../src/components/Columns/useTableConfigurationsApi.js","../src/components/Columns/useTableConfigurations.js","../src/components/Columns/utils.js","../src/components/Columns/Columns.jsx","../src/components/Columns/useHiddenColumns.js","../src/components/Columns/useColumns.js"],"sourcesContent":["import { useMemo, useLayoutEffect, useEffect, useRef, useCallback } from 'react';\n\nfunction useCombinedRefs() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n\n return useMemo(() => node => {\n refs.forEach(ref => ref(node));\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n}\n\n// https://github.com/facebook/react/blob/master/packages/shared/ExecutionEnvironment.js\nconst canUseDOM = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined';\n\nfunction isWindow(element) {\n const elementString = Object.prototype.toString.call(element);\n return elementString === '[object Window]' || // In Electron context the Window object serializes to [object global]\n elementString === '[object global]';\n}\n\nfunction isNode(node) {\n return 'nodeType' in node;\n}\n\nfunction getWindow(target) {\n var _target$ownerDocument, _target$ownerDocument2;\n\n if (!target) {\n return window;\n }\n\n if (isWindow(target)) {\n return target;\n }\n\n if (!isNode(target)) {\n return window;\n }\n\n return (_target$ownerDocument = (_target$ownerDocument2 = target.ownerDocument) == null ? void 0 : _target$ownerDocument2.defaultView) != null ? _target$ownerDocument : window;\n}\n\nfunction isDocument(node) {\n const {\n Document\n } = getWindow(node);\n return node instanceof Document;\n}\n\nfunction isHTMLElement(node) {\n if (isWindow(node)) {\n return false;\n }\n\n return node instanceof getWindow(node).HTMLElement;\n}\n\nfunction isSVGElement(node) {\n return node instanceof getWindow(node).SVGElement;\n}\n\nfunction getOwnerDocument(target) {\n if (!target) {\n return document;\n }\n\n if (isWindow(target)) {\n return target.document;\n }\n\n if (!isNode(target)) {\n return document;\n }\n\n if (isDocument(target)) {\n return target;\n }\n\n if (isHTMLElement(target) || isSVGElement(target)) {\n return target.ownerDocument;\n }\n\n return document;\n}\n\n/**\r\n * A hook that resolves to useEffect on the server and useLayoutEffect on the client\r\n * @param callback {function} Callback function that is invoked when the dependencies of the hook change\r\n */\n\nconst useIsomorphicLayoutEffect = canUseDOM ? useLayoutEffect : useEffect;\n\nfunction useEvent(handler) {\n const handlerRef = useRef(handler);\n useIsomorphicLayoutEffect(() => {\n handlerRef.current = handler;\n });\n return useCallback(function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return handlerRef.current == null ? void 0 : handlerRef.current(...args);\n }, []);\n}\n\nfunction useInterval() {\n const intervalRef = useRef(null);\n const set = useCallback((listener, duration) => {\n intervalRef.current = setInterval(listener, duration);\n }, []);\n const clear = useCallback(() => {\n if (intervalRef.current !== null) {\n clearInterval(intervalRef.current);\n intervalRef.current = null;\n }\n }, []);\n return [set, clear];\n}\n\nfunction useLatestValue(value, dependencies) {\n if (dependencies === void 0) {\n dependencies = [value];\n }\n\n const valueRef = useRef(value);\n useIsomorphicLayoutEffect(() => {\n if (valueRef.current !== value) {\n valueRef.current = value;\n }\n }, dependencies);\n return valueRef;\n}\n\nfunction useLazyMemo(callback, dependencies) {\n const valueRef = useRef();\n return useMemo(() => {\n const newValue = callback(valueRef.current);\n valueRef.current = newValue;\n return newValue;\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [...dependencies]);\n}\n\nfunction useNodeRef(onChange) {\n const onChangeHandler = useEvent(onChange);\n const node = useRef(null);\n const setNodeRef = useCallback(element => {\n if (element !== node.current) {\n onChangeHandler == null ? void 0 : onChangeHandler(element, node.current);\n }\n\n node.current = element;\n }, //eslint-disable-next-line\n []);\n return [node, setNodeRef];\n}\n\nfunction usePrevious(value) {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref.current;\n}\n\nlet ids = {};\nfunction useUniqueId(prefix, value) {\n return useMemo(() => {\n if (value) {\n return value;\n }\n\n const id = ids[prefix] == null ? 0 : ids[prefix] + 1;\n ids[prefix] = id;\n return prefix + \"-\" + id;\n }, [prefix, value]);\n}\n\nfunction createAdjustmentFn(modifier) {\n return function (object) {\n for (var _len = arguments.length, adjustments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n adjustments[_key - 1] = arguments[_key];\n }\n\n return adjustments.reduce((accumulator, adjustment) => {\n const entries = Object.entries(adjustment);\n\n for (const [key, valueAdjustment] of entries) {\n const value = accumulator[key];\n\n if (value != null) {\n accumulator[key] = value + modifier * valueAdjustment;\n }\n }\n\n return accumulator;\n }, { ...object\n });\n };\n}\n\nconst add = /*#__PURE__*/createAdjustmentFn(1);\nconst subtract = /*#__PURE__*/createAdjustmentFn(-1);\n\nfunction hasViewportRelativeCoordinates(event) {\n return 'clientX' in event && 'clientY' in event;\n}\n\nfunction isKeyboardEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n KeyboardEvent\n } = getWindow(event.target);\n return KeyboardEvent && event instanceof KeyboardEvent;\n}\n\nfunction isTouchEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n TouchEvent\n } = getWindow(event.target);\n return TouchEvent && event instanceof TouchEvent;\n}\n\n/**\r\n * Returns the normalized x and y coordinates for mouse and touch events.\r\n */\n\nfunction getEventCoordinates(event) {\n if (isTouchEvent(event)) {\n if (event.touches && event.touches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.touches[0];\n return {\n x,\n y\n };\n } else if (event.changedTouches && event.changedTouches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.changedTouches[0];\n return {\n x,\n y\n };\n }\n }\n\n if (hasViewportRelativeCoordinates(event)) {\n return {\n x: event.clientX,\n y: event.clientY\n };\n }\n\n return null;\n}\n\nconst CSS = /*#__PURE__*/Object.freeze({\n Translate: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n x,\n y\n } = transform;\n return \"translate3d(\" + (x ? Math.round(x) : 0) + \"px, \" + (y ? Math.round(y) : 0) + \"px, 0)\";\n }\n\n },\n Scale: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n scaleX,\n scaleY\n } = transform;\n return \"scaleX(\" + scaleX + \") scaleY(\" + scaleY + \")\";\n }\n\n },\n Transform: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n return [CSS.Translate.toString(transform), CSS.Scale.toString(transform)].join(' ');\n }\n\n },\n Transition: {\n toString(_ref) {\n let {\n property,\n duration,\n easing\n } = _ref;\n return property + \" \" + duration + \"ms \" + easing;\n }\n\n }\n});\n\nconst SELECTOR = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]';\nfunction findFirstFocusableNode(element) {\n if (element.matches(SELECTOR)) {\n return element;\n }\n\n return element.querySelector(SELECTOR);\n}\n\nexport { CSS, add, canUseDOM, findFirstFocusableNode, getEventCoordinates, getOwnerDocument, getWindow, hasViewportRelativeCoordinates, isDocument, isHTMLElement, isKeyboardEvent, isNode, isSVGElement, isTouchEvent, isWindow, subtract, useCombinedRefs, useEvent, useInterval, useIsomorphicLayoutEffect, useLatestValue, useLazyMemo, useNodeRef, usePrevious, useUniqueId };\n//# sourceMappingURL=utilities.esm.js.map\n","import { useSortable } from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport { Drag } from \"neetoicons\";\nimport { Checkbox, Label } from \"neetoui\";\n\nconst Item = ({ column, hiddenColumns, checkboxProps, onToggle }) => {\n const { key, title } = column;\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n } = useSortable({ id: key });\n\n const dragStyle = {\n transform: isDragging ? CSS.Transform.toString(transform) : undefined,\n transition,\n opacity: isDragging ? 0.5 : 1,\n };\n\n return (\n <div\n className=\"neeto-molecules-columns__sortable-item\"\n ref={setNodeRef}\n style={dragStyle}\n >\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer neeto-ui-items-center px-4 py-2\"\n htmlFor={key}\n >\n <div\n {...attributes}\n {...listeners}\n className=\"neeto-ui-mr-2 neeto-ui-cursor-grab neeto-ui-flex neeto-ui-items-center\"\n >\n <Drag className=\"neeto-ui-text-gray-400\" size={16} />\n </div>\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={onToggle}\n {...checkboxProps}\n />\n </Label>\n </div>\n );\n};\n\nexport default Item;\n","import axios from \"axios\";\n\nconst baseUrl = \"api/v1/table_configurations\";\n\nconst fetch = tableKey => axios.get(`${baseUrl}/${tableKey}`);\n\nconst create = payload => axios.post(baseUrl, { tableConfiguration: payload });\n\nconst update = ({ tableKey, payload }) =>\n axios.patch(`${baseUrl}/${tableKey}`, { tableConfiguration: payload });\n\nconst destroy = tableKey => axios.delete(`${baseUrl}/${tableKey}`);\n\nconst tableConfigurationApi = { fetch, create, update, destroy };\n\nexport default tableConfigurationApi;\n","export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\nexport const COLUMNS_ORDER_STORAGE_KEY = \"neeto-molecules-columns-order\";\nexport const TABLE_CONFIGURATION_QUERY_KEY = \"table-configuration\";\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\n\nimport tableConfigurationApi from \"./api\";\nimport { TABLE_CONFIGURATION_QUERY_KEY } from \"./constants.js\";\n\nconst useFetchTableConfiguration = ({ tableKey, options = {} }) =>\n useQuery({\n queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],\n enabled: !!tableKey,\n queryFn: () => tableConfigurationApi.fetch(tableKey),\n ...options,\n });\n\nconst useUpdateTableConfiguration = (tableKey, options = {}) =>\n useMutationWithInvalidation(tableConfigurationApi.update, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n ...options,\n });\n\nconst useDestroyTableConfiguration = (tableKey, options = {}) =>\n useMutationWithInvalidation(tableConfigurationApi.destroy, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n ...options,\n });\n\nexport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n};\n","import { useEffect, useMemo, useCallback } from \"react\";\n\nimport { isNotEqualDeep, isNotEmpty, noop } from \"neetocist\";\nimport { isEmpty, pluck, prop } from \"ramda\";\n\nimport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n} from \"./useTableConfigurationsApi.js\";\n\nconst useTableConfigurations = (\n tableKey,\n columnData,\n onMutationSuccess = noop,\n allowConfigurationResetOnUpdate = true\n) => {\n const { data: tableConfiguration, isLoading } = useFetchTableConfiguration({\n tableKey,\n });\n\n const { mutate: updateConfiguration } = useUpdateTableConfiguration(\n tableKey,\n { onSuccess: onMutationSuccess }\n );\n\n const { mutate: destroyConfiguration } = useDestroyTableConfiguration(\n tableKey,\n { onSuccess: onMutationSuccess }\n );\n\n const processColumnsWithConfiguration = useCallback(\n (originalColumns = [], existingColumnConfiguration = []) => {\n if (isEmpty(existingColumnConfiguration)) {\n return originalColumns;\n }\n\n const originalColumnsByKey = new Map(\n originalColumns?.filter(prop(\"key\")).map(column => [column.key, column])\n );\n\n const configurationByKey = new Map(\n existingColumnConfiguration.map(config => [config.key, config])\n );\n\n const orderedConfiguredColumns = existingColumnConfiguration\n .map(config => originalColumnsByKey.get(config.key))\n .filter(Boolean);\n\n const unconfiguredOriginalColumns = originalColumns.filter(\n column => column.key && !configurationByKey.has(column.key)\n );\n\n return [...orderedConfiguredColumns, ...unconfiguredOriginalColumns];\n },\n []\n );\n\n const hasAdditionalColumns = useMemo(() => {\n if (!tableConfiguration?.columns || !columnData) {\n return false;\n }\n\n const configurationKeys = pluck(\"key\", tableConfiguration.columns).sort();\n const dataKeys = pluck(\"key\", columnData).sort();\n\n return isNotEqualDeep(configurationKeys, dataKeys);\n }, [tableConfiguration, columnData]);\n\n const shouldApplyTableConfiguration = useMemo(\n () =>\n !isLoading &&\n tableConfiguration?.columns &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns,\n [tableConfiguration, isLoading, hasAdditionalColumns]\n );\n\n useEffect(() => {\n if (\n hasAdditionalColumns &&\n tableConfiguration &&\n allowConfigurationResetOnUpdate\n ) {\n destroyConfiguration(tableKey);\n }\n }, [hasAdditionalColumns, tableKey, allowConfigurationResetOnUpdate]);\n\n const allProcessedColumns = useMemo(() => {\n if (\n !isLoading &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns\n ) {\n return processColumnsWithConfiguration(\n columnData,\n tableConfiguration?.columns\n );\n }\n\n return columnData || [];\n }, [\n isLoading,\n tableConfiguration?.columns,\n hasAdditionalColumns,\n columnData,\n processColumnsWithConfiguration,\n ]);\n\n const customizedColumns = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n const visibleColumnKeys = pluck(\n \"key\",\n tableConfiguration.columns.filter(prop(\"isShown\"))\n );\n\n return allProcessedColumns.filter(column =>\n visibleColumnKeys.includes(column.key)\n );\n }\n\n return columnData || [];\n }, [\n allProcessedColumns,\n columnData,\n tableConfiguration?.columns,\n shouldApplyTableConfiguration,\n ]);\n\n const existingColumnConfiguration = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n return tableConfiguration.columns;\n }\n\n if (!columnData || isEmpty(columnData)) {\n return [];\n }\n\n return columnData.map(column => ({ key: column.key, isShown: true }));\n }, [shouldApplyTableConfiguration, columnData, tableConfiguration?.columns]);\n\n const updateColumns = updatedColumns => {\n updateConfiguration({\n tableKey,\n payload: { table_key: tableKey, columns: updatedColumns },\n });\n };\n\n const hideColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: false } : column\n )\n );\n };\n\n const showColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: true } : column\n )\n );\n };\n\n const reorderColumns = newOrder => {\n updateColumns(newOrder);\n };\n\n return {\n customizedColumns, // Only visible columns (for displaying the columns in the table)\n allProcessedColumns, // All columns (for displaying the columns in the Subheader)\n isTableConfigurationLoading: isLoading,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n reorderColumns,\n destroyConfiguration,\n };\n};\n\nexport default useTableConfigurations;\n","import { existsBy, removeBy } from \"neetocist\";\nimport { filter, includes, toLower, trim } from \"ramda\";\n\nexport const getHidableColumns = columnData =>\n removeBy({ isHidable: false }, columnData);\n\nexport const filterBySearchTerm = (searchTerm, columns) =>\n filter(\n ({ title }) => includes(trim(toLower(searchTerm)), trim(toLower(title))),\n columns\n );\n\nexport const removeDeletedColumns = (hiddenColumns, columnData) =>\n hiddenColumns.filter(hiddenColumn =>\n existsBy({ dataIndex: hiddenColumn }, columnData)\n );\n","import { useState } from \"react\";\n\nimport { DndContext } from \"@dnd-kit/core\";\nimport { SortableContext } from \"@dnd-kit/sortable\";\nimport i18next from \"i18next\";\nimport { isNotEmpty, findIndexBy, noop } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport Item from \"./Item\";\nimport useTableConfigurations from \"./useTableConfigurations.js\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils.js\";\n\nconst Columns = ({\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n tableKey = \"\",\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n searchProps = {},\n allowConfigurationResetOnUpdate = true,\n onMutationSuccess = noop,\n ...dropdownProps\n}) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n allProcessedColumns,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n reorderColumns,\n destroyConfiguration,\n } = useTableConfigurations(\n tableKey,\n columnData,\n onMutationSuccess,\n allowConfigurationResetOnUpdate\n );\n\n const hiddenColumns = pluck(\n \"key\",\n existingColumnConfiguration.filter(column => !column.isShown)\n );\n\n const handleDragEnd = event => {\n const { active, over } = event;\n if (!over || active.id === over.id) return;\n\n const oldIndex = findIndexBy(\n { key: active.id },\n existingColumnConfiguration\n );\n\n const newIndex = findIndexBy({ key: over.id }, existingColumnConfiguration);\n\n if (oldIndex === -1 || newIndex === -1) return;\n\n const newOrder = [...existingColumnConfiguration];\n const [movedItem] = newOrder.splice(oldIndex, 1);\n newOrder.splice(newIndex, 0, movedItem);\n reorderColumns(newOrder);\n };\n\n const columns = getHidableColumns(allProcessedColumns);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n position=\"bottom-end\"\n onClose={() => setSearchTerm(\"\")}\n {...dropdownProps}\n >\n <Menu>\n <div className=\"neeto-molecules-columns__container\">\n {isSearchable && (\n <Input\n className=\"px-4 py-2\"\n data-cy=\"neeto-ui-columns-search\"\n data-testid=\"neeto-ui-columns-search\"\n placeholder={t(\"neetoMolecules.columns.search\")}\n prefix={<Search />}\n type=\"search\"\n value={searchTerm}\n onChange={handleSearch}\n {...searchProps}\n />\n )}\n {isEmpty(filteredColumns) && (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {isNotEmpty(filteredColumns) && !searchTerm && (\n <DndContext onDragEnd={handleDragEnd}>\n <SortableContext items={pluck(\"key\", filteredColumns)}>\n {filteredColumns.map(column => (\n <Item\n {...{ checkboxProps, column, hiddenColumns }}\n key={column.key}\n onToggle={handleChange}\n />\n ))}\n </SortableContext>\n </DndContext>\n )}\n {isNotEmpty(filteredColumns) &&\n searchTerm &&\n filteredColumns.map(({ key, title }) => (\n <MenuItem key={key}>\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2\"\n htmlFor={key}\n >\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))}\n <Divider />\n {!!actionBlock && (\n <>\n {actionBlock}\n <Divider />\n </>\n )}\n <div className=\"flex justify-end p-1 pr-3\">\n <Button\n data-cy=\"column-visibility-reset-button\"\n label={t(\"neetoMolecules.columns.reset\")}\n style=\"secondary\"\n onClick={() => destroyConfiguration(tableKey)}\n />\n </div>\n </div>\n </Menu>\n </Dropdown>\n );\n};\n\nColumns.propTypes = {\n /**\n * Controls whether the table configuration should be reset on adding custom fields (optional).\n */\n allowConfigurationResetOnUpdate: PropTypes.bool,\n /**\n * Extra action items that can be added at the end of the dropdown (optional).\n */\n actionBlock: PropTypes.element,\n /**\n * Additional props for the checkboxes in the dropdown (optional).\n */\n checkboxProps: PropTypes.object,\n /**\n * The list of columns from which the dropdown options are built (required).\n */\n columnData: PropTypes.array,\n /**\n * Controls whether the dropdown options should be searchable (optional).\n */\n isSearchable: PropTypes.bool,\n /**\n * The table key used to identify table configuration in the API (required).\n */\n tableKey: PropTypes.string,\n /**\n * The message to be shown when there are no columns to be displayed in the dropdown (optional).\n */\n noColumnMessage: PropTypes.string,\n /**\n * Props to be passed to the search input in the column dropdown. Only works when `isSearchable` is set to `true` (optional).\n */\n searchProps: PropTypes.object,\n /**\n * The function will be called when the mutation is successful (optional).\n */\n onMutationSuccess: PropTypes.func,\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { useEffect } from \"react\";\n\nimport { removeBy } from \"neetocist\";\nimport {\n getFromLocalStorage,\n removeFromLocalStorage,\n} from \"neetocommons/utils/general\";\nimport { __, without, includes, isEmpty, equals, union } from \"ramda\";\nimport { create } from \"zustand\";\nimport { persist } from \"zustand/middleware\";\n\nimport { HIDDEN_COLUMNS_STORAGE_KEY } from \"./constants\";\nimport { removeDeletedColumns } from \"./utils\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useHiddenColumnStore = create(\n persist(() => ({}), { name: HIDDEN_COLUMNS_STORAGE_KEY })\n);\n\nconst useHiddenColumns = (localStorageKey, initialValue = []) => {\n const hiddenColumns = useHiddenColumnStore(state => state[localStorageKey]);\n const setHiddenColumns = columns =>\n useHiddenColumnStore.setState({ [localStorageKey]: columns });\n\n // Migrates values from old location to new zustand location.\n useEffect(() => {\n const oldValue = getFromLocalStorage(localStorageKey);\n if (oldValue) {\n setHiddenColumns(oldValue);\n removeFromLocalStorage(localStorageKey);\n } else if (!hiddenColumns) {\n setHiddenColumns(initialValue);\n }\n }, [localStorageKey]);\n\n const hideColumn = columns =>\n setHiddenColumns(\n union(hiddenColumns, Array.isArray(columns) ? columns : [columns])\n );\n\n const showColumn = columns =>\n setHiddenColumns(\n without(Array.isArray(columns) ? columns : [columns], hiddenColumns)\n );\n\n const getVisibleColumnData = columnData =>\n removeBy({ dataIndex: includes(__, hiddenColumns || []) }, columnData);\n\n const onColumnDataChange = columnData => {\n if (isEmpty(columnData) || !hiddenColumns) return;\n const newHiddenColumns = removeDeletedColumns(hiddenColumns, columnData);\n if (!equals(newHiddenColumns, hiddenColumns)) {\n setHiddenColumns(newHiddenColumns);\n }\n };\n\n return {\n hiddenColumns,\n hideColumn,\n showColumn,\n getVisibleColumnData,\n onColumnDataChange,\n };\n};\n\nexport { useHiddenColumns, useHiddenColumnStore };\n","import { identity, isEmpty, pipe } from \"ramda\";\nimport { create } from \"zustand\";\nimport { persist } from \"zustand/middleware\";\n\nimport { COLUMNS_ORDER_STORAGE_KEY } from \"./constants\";\nimport { useHiddenColumns } from \"./useHiddenColumns\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useColumnOrderStore = create(\n persist(() => ({}), { name: COLUMNS_ORDER_STORAGE_KEY })\n);\n\nconst useColumns = ({\n localStorageKey,\n initialHiddenColumns,\n initialOrder = [],\n}) => {\n const columnOrder =\n useColumnOrderStore(state => state[localStorageKey]) || initialOrder;\n\n const setColumnOrder = columns =>\n useColumnOrderStore.setState({ [localStorageKey]: columns });\n\n const { hiddenColumns, getVisibleColumnData, ...hiddenColumnHelpers } =\n useHiddenColumns(localStorageKey, initialHiddenColumns);\n\n const orderColumns = columnData => {\n if (isEmpty(columnOrder)) return columnData;\n\n return columnData.sort((a, b) => {\n if (\n !columnOrder.includes(a.dataIndex) ||\n !columnOrder.includes(b.dataIndex)\n ) {\n return 0;\n }\n\n return (\n columnOrder.indexOf(a.dataIndex) - columnOrder.indexOf(b.dataIndex)\n );\n });\n };\n\n const getColumnData = ({\n columnData,\n isHidable = true,\n isReOrderable = false,\n }) =>\n pipe(\n isHidable ? getVisibleColumnData : identity,\n isReOrderable ? orderColumns : identity\n )(columnData);\n\n return {\n ...hiddenColumnHelpers,\n hiddenColumns,\n columnOrder,\n getVisibleColumnData,\n setColumnOrder,\n getColumnData,\n };\n};\n\nexport { useColumns, useColumnOrderStore };\n"],"names":["Item","_ref","column","hiddenColumns","checkboxProps","onToggle","key","title","_useSortable","useSortable","id","attributes","listeners","setNodeRef","transform","transition","isDragging","dragStyle","CSS","Transform","toString","undefined","opacity","_jsx","className","ref","style","children","_jsxs","Label","htmlFor","_objectSpread","Drag","size","Checkbox","checked","includes","label","name","onChange","baseUrl","fetch","tableKey","axios","get","concat","create","payload","post","tableConfiguration","update","patch","destroy","tableConfigurationApi","HIDDEN_COLUMNS_STORAGE_KEY","COLUMNS_ORDER_STORAGE_KEY","TABLE_CONFIGURATION_QUERY_KEY","useFetchTableConfiguration","_ref$options","options","useQuery","queryKey","enabled","queryFn","useUpdateTableConfiguration","arguments","length","useMutationWithInvalidation","keysToInvalidate","useDestroyTableConfiguration","useTableConfigurations","columnData","onMutationSuccess","noop","allowConfigurationResetOnUpdate","_useFetchTableConfigu","data","isLoading","_useUpdateTableConfig","onSuccess","updateConfiguration","mutate","_useDestroyTableConfi","destroyConfiguration","processColumnsWithConfiguration","useCallback","originalColumns","existingColumnConfiguration","isEmpty","originalColumnsByKey","Map","filter","prop","map","configurationByKey","config","orderedConfiguredColumns","Boolean","unconfiguredOriginalColumns","has","_toConsumableArray","hasAdditionalColumns","useMemo","columns","configurationKeys","pluck","sort","dataKeys","isNotEqualDeep","shouldApplyTableConfiguration","isNotEmpty","useEffect","allProcessedColumns","customizedColumns","visibleColumnKeys","isShown","updateColumns","updatedColumns","table_key","hideColumn","columnKey","showColumn","reorderColumns","newOrder","isTableConfigurationLoading","getHidableColumns","removeBy","isHidable","filterBySearchTerm","searchTerm","trim","toLower","removeDeletedColumns","hiddenColumn","existsBy","dataIndex","Columns","actionBlock","_ref$checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$tableKey","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$searchProps","searchProps","_ref$allowConfigurati","_ref$onMutationSucces","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useTableConfiguratio","handleDragEnd","event","active","over","oldIndex","findIndexBy","newIndex","_newOrder$splice","splice","_newOrder$splice2","movedItem","filteredColumns","handleChange","_ref2","_ref2$target","target","handleSearch","_ref3","value","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","position","onClose","Input","placeholder","prefix","Search","type","DndContext","onDragEnd","SortableContext","items","_createElement","_ref4","_Fragment","Button","onClick","displayName","useHiddenColumnStore","persist","useHiddenColumns","localStorageKey","initialValue","state","setHiddenColumns","setState","_defineProperty","oldValue","getFromLocalStorage","removeFromLocalStorage","union","Array","isArray","without","getVisibleColumnData","__","onColumnDataChange","newHiddenColumns","equals","useColumnOrderStore","useColumns","initialHiddenColumns","_ref$initialOrder","initialOrder","columnOrder","setColumnOrder","_useHiddenColumns","hiddenColumnHelpers","orderColumns","a","b","indexOf","getColumnData","_ref2$isHidable","_ref2$isReOrderable","isReOrderable","pipe","identity"],"mappings":"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","x_google_ignoreList":[0]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.3",
|
|
4
4
|
"description": "A package of reusable molecular components for neeto products.",
|
|
5
5
|
"repository": "git@github.com:bigbinary/neeto-molecules.git",
|
|
6
6
|
"author": "Amaljith K <amaljith.k@bigbinary.com>",
|
package/src/translations/de.json
CHANGED
|
@@ -530,7 +530,8 @@
|
|
|
530
530
|
"placeholder": "{{prefix}} Telefonnummer eingeben",
|
|
531
531
|
"validations": {
|
|
532
532
|
"invalid": "Telefonnummer ist ungültig"
|
|
533
|
-
}
|
|
533
|
+
},
|
|
534
|
+
"countryCodeAriaLabel": "Wählen Sie den Ländercode aus"
|
|
534
535
|
},
|
|
535
536
|
"codeblock": {
|
|
536
537
|
"codeSnippet": "Codeausschnitt"
|
package/src/translations/es.json
CHANGED
|
@@ -530,7 +530,8 @@
|
|
|
530
530
|
"placeholder": "{{prefix}} tipo número de teléfono",
|
|
531
531
|
"validations": {
|
|
532
532
|
"invalid": "El número de teléfono no es válido"
|
|
533
|
-
}
|
|
533
|
+
},
|
|
534
|
+
"countryCodeAriaLabel": "Seleccionar código de país"
|
|
534
535
|
},
|
|
535
536
|
"codeblock": {
|
|
536
537
|
"codeSnippet": "Fragmento de código"
|
package/src/translations/fr.json
CHANGED
|
@@ -530,7 +530,8 @@
|
|
|
530
530
|
"placeholder": "{{prefix}} tapez le numéro de téléphone",
|
|
531
531
|
"validations": {
|
|
532
532
|
"invalid": "Le numéro de téléphone est invalide"
|
|
533
|
-
}
|
|
533
|
+
},
|
|
534
|
+
"countryCodeAriaLabel": "Sélectionnez le code pays"
|
|
534
535
|
},
|
|
535
536
|
"codeblock": {
|
|
536
537
|
"codeSnippet": "Extrait de code"
|
package/src/translations/nl.json
CHANGED
package/src/translations/pl.json
CHANGED
package/src/translations/pt.json
CHANGED
|
@@ -530,7 +530,8 @@
|
|
|
530
530
|
"placeholder": "{{prefix}} digite o número de telefone",
|
|
531
531
|
"validations": {
|
|
532
532
|
"invalid": "Número de telefone é inválido"
|
|
533
|
-
}
|
|
533
|
+
},
|
|
534
|
+
"countryCodeAriaLabel": "Selecione o código do país"
|
|
534
535
|
},
|
|
535
536
|
"codeblock": {
|
|
536
537
|
"codeSnippet": "Trecho de código"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useColumns-XlhUVahw.js","sources":["../../node_modules/@dnd-kit/utilities/dist/utilities.esm.js","../../src/components/Columns/Item.jsx","../../src/components/Columns/api.js","../../src/components/Columns/constants.js","../../src/components/Columns/useTableConfigurationsApi.js","../../src/components/Columns/useTableConfigurations.js","../../src/components/Columns/utils.js","../../src/components/Columns/Columns.jsx","../../src/components/Columns/useHiddenColumns.js","../../src/components/Columns/useColumns.js"],"sourcesContent":["import { useMemo, useLayoutEffect, useEffect, useRef, useCallback } from 'react';\n\nfunction useCombinedRefs() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n\n return useMemo(() => node => {\n refs.forEach(ref => ref(node));\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n}\n\n// https://github.com/facebook/react/blob/master/packages/shared/ExecutionEnvironment.js\nconst canUseDOM = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined';\n\nfunction isWindow(element) {\n const elementString = Object.prototype.toString.call(element);\n return elementString === '[object Window]' || // In Electron context the Window object serializes to [object global]\n elementString === '[object global]';\n}\n\nfunction isNode(node) {\n return 'nodeType' in node;\n}\n\nfunction getWindow(target) {\n var _target$ownerDocument, _target$ownerDocument2;\n\n if (!target) {\n return window;\n }\n\n if (isWindow(target)) {\n return target;\n }\n\n if (!isNode(target)) {\n return window;\n }\n\n return (_target$ownerDocument = (_target$ownerDocument2 = target.ownerDocument) == null ? void 0 : _target$ownerDocument2.defaultView) != null ? _target$ownerDocument : window;\n}\n\nfunction isDocument(node) {\n const {\n Document\n } = getWindow(node);\n return node instanceof Document;\n}\n\nfunction isHTMLElement(node) {\n if (isWindow(node)) {\n return false;\n }\n\n return node instanceof getWindow(node).HTMLElement;\n}\n\nfunction isSVGElement(node) {\n return node instanceof getWindow(node).SVGElement;\n}\n\nfunction getOwnerDocument(target) {\n if (!target) {\n return document;\n }\n\n if (isWindow(target)) {\n return target.document;\n }\n\n if (!isNode(target)) {\n return document;\n }\n\n if (isDocument(target)) {\n return target;\n }\n\n if (isHTMLElement(target) || isSVGElement(target)) {\n return target.ownerDocument;\n }\n\n return document;\n}\n\n/**\r\n * A hook that resolves to useEffect on the server and useLayoutEffect on the client\r\n * @param callback {function} Callback function that is invoked when the dependencies of the hook change\r\n */\n\nconst useIsomorphicLayoutEffect = canUseDOM ? useLayoutEffect : useEffect;\n\nfunction useEvent(handler) {\n const handlerRef = useRef(handler);\n useIsomorphicLayoutEffect(() => {\n handlerRef.current = handler;\n });\n return useCallback(function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return handlerRef.current == null ? void 0 : handlerRef.current(...args);\n }, []);\n}\n\nfunction useInterval() {\n const intervalRef = useRef(null);\n const set = useCallback((listener, duration) => {\n intervalRef.current = setInterval(listener, duration);\n }, []);\n const clear = useCallback(() => {\n if (intervalRef.current !== null) {\n clearInterval(intervalRef.current);\n intervalRef.current = null;\n }\n }, []);\n return [set, clear];\n}\n\nfunction useLatestValue(value, dependencies) {\n if (dependencies === void 0) {\n dependencies = [value];\n }\n\n const valueRef = useRef(value);\n useIsomorphicLayoutEffect(() => {\n if (valueRef.current !== value) {\n valueRef.current = value;\n }\n }, dependencies);\n return valueRef;\n}\n\nfunction useLazyMemo(callback, dependencies) {\n const valueRef = useRef();\n return useMemo(() => {\n const newValue = callback(valueRef.current);\n valueRef.current = newValue;\n return newValue;\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [...dependencies]);\n}\n\nfunction useNodeRef(onChange) {\n const onChangeHandler = useEvent(onChange);\n const node = useRef(null);\n const setNodeRef = useCallback(element => {\n if (element !== node.current) {\n onChangeHandler == null ? void 0 : onChangeHandler(element, node.current);\n }\n\n node.current = element;\n }, //eslint-disable-next-line\n []);\n return [node, setNodeRef];\n}\n\nfunction usePrevious(value) {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref.current;\n}\n\nlet ids = {};\nfunction useUniqueId(prefix, value) {\n return useMemo(() => {\n if (value) {\n return value;\n }\n\n const id = ids[prefix] == null ? 0 : ids[prefix] + 1;\n ids[prefix] = id;\n return prefix + \"-\" + id;\n }, [prefix, value]);\n}\n\nfunction createAdjustmentFn(modifier) {\n return function (object) {\n for (var _len = arguments.length, adjustments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n adjustments[_key - 1] = arguments[_key];\n }\n\n return adjustments.reduce((accumulator, adjustment) => {\n const entries = Object.entries(adjustment);\n\n for (const [key, valueAdjustment] of entries) {\n const value = accumulator[key];\n\n if (value != null) {\n accumulator[key] = value + modifier * valueAdjustment;\n }\n }\n\n return accumulator;\n }, { ...object\n });\n };\n}\n\nconst add = /*#__PURE__*/createAdjustmentFn(1);\nconst subtract = /*#__PURE__*/createAdjustmentFn(-1);\n\nfunction hasViewportRelativeCoordinates(event) {\n return 'clientX' in event && 'clientY' in event;\n}\n\nfunction isKeyboardEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n KeyboardEvent\n } = getWindow(event.target);\n return KeyboardEvent && event instanceof KeyboardEvent;\n}\n\nfunction isTouchEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n TouchEvent\n } = getWindow(event.target);\n return TouchEvent && event instanceof TouchEvent;\n}\n\n/**\r\n * Returns the normalized x and y coordinates for mouse and touch events.\r\n */\n\nfunction getEventCoordinates(event) {\n if (isTouchEvent(event)) {\n if (event.touches && event.touches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.touches[0];\n return {\n x,\n y\n };\n } else if (event.changedTouches && event.changedTouches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.changedTouches[0];\n return {\n x,\n y\n };\n }\n }\n\n if (hasViewportRelativeCoordinates(event)) {\n return {\n x: event.clientX,\n y: event.clientY\n };\n }\n\n return null;\n}\n\nconst CSS = /*#__PURE__*/Object.freeze({\n Translate: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n x,\n y\n } = transform;\n return \"translate3d(\" + (x ? Math.round(x) : 0) + \"px, \" + (y ? Math.round(y) : 0) + \"px, 0)\";\n }\n\n },\n Scale: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n scaleX,\n scaleY\n } = transform;\n return \"scaleX(\" + scaleX + \") scaleY(\" + scaleY + \")\";\n }\n\n },\n Transform: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n return [CSS.Translate.toString(transform), CSS.Scale.toString(transform)].join(' ');\n }\n\n },\n Transition: {\n toString(_ref) {\n let {\n property,\n duration,\n easing\n } = _ref;\n return property + \" \" + duration + \"ms \" + easing;\n }\n\n }\n});\n\nconst SELECTOR = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]';\nfunction findFirstFocusableNode(element) {\n if (element.matches(SELECTOR)) {\n return element;\n }\n\n return element.querySelector(SELECTOR);\n}\n\nexport { CSS, add, canUseDOM, findFirstFocusableNode, getEventCoordinates, getOwnerDocument, getWindow, hasViewportRelativeCoordinates, isDocument, isHTMLElement, isKeyboardEvent, isNode, isSVGElement, isTouchEvent, isWindow, subtract, useCombinedRefs, useEvent, useInterval, useIsomorphicLayoutEffect, useLatestValue, useLazyMemo, useNodeRef, usePrevious, useUniqueId };\n//# sourceMappingURL=utilities.esm.js.map\n","import { useSortable } from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport { Drag } from \"neetoicons\";\nimport { Checkbox, Label } from \"neetoui\";\n\nconst Item = ({ column, hiddenColumns, checkboxProps, onToggle }) => {\n const { key, title } = column;\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n } = useSortable({ id: key });\n\n const dragStyle = {\n transform: isDragging ? CSS.Transform.toString(transform) : undefined,\n transition,\n opacity: isDragging ? 0.5 : 1,\n };\n\n return (\n <div\n className=\"neeto-molecules-columns__sortable-item\"\n ref={setNodeRef}\n style={dragStyle}\n >\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer neeto-ui-items-center px-4 py-2\"\n htmlFor={key}\n >\n <div\n {...attributes}\n {...listeners}\n className=\"neeto-ui-mr-2 neeto-ui-cursor-grab neeto-ui-flex neeto-ui-items-center\"\n >\n <Drag className=\"neeto-ui-text-gray-400\" size={16} />\n </div>\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={onToggle}\n {...checkboxProps}\n />\n </Label>\n </div>\n );\n};\n\nexport default Item;\n","import axios from \"axios\";\n\nconst baseUrl = \"api/v1/table_configurations\";\n\nconst fetch = tableKey => axios.get(`${baseUrl}/${tableKey}`);\n\nconst create = payload => axios.post(baseUrl, { tableConfiguration: payload });\n\nconst update = ({ tableKey, payload }) =>\n axios.patch(`${baseUrl}/${tableKey}`, { tableConfiguration: payload });\n\nconst destroy = tableKey => axios.delete(`${baseUrl}/${tableKey}`);\n\nconst tableConfigurationApi = { fetch, create, update, destroy };\n\nexport default tableConfigurationApi;\n","export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\nexport const COLUMNS_ORDER_STORAGE_KEY = \"neeto-molecules-columns-order\";\nexport const TABLE_CONFIGURATION_QUERY_KEY = \"table-configuration\";\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\n\nimport tableConfigurationApi from \"./api\";\nimport { TABLE_CONFIGURATION_QUERY_KEY } from \"./constants.js\";\n\nconst useFetchTableConfiguration = ({ tableKey, options = {} }) =>\n useQuery({\n queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],\n enabled: !!tableKey,\n queryFn: () => tableConfigurationApi.fetch(tableKey),\n ...options,\n });\n\nconst useUpdateTableConfiguration = tableKey =>\n useMutationWithInvalidation(tableConfigurationApi.update, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n });\n\nconst useDestroyTableConfiguration = tableKey =>\n useMutationWithInvalidation(tableConfigurationApi.destroy, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n });\n\nexport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n};\n","import { useEffect, useMemo, useCallback } from \"react\";\n\nimport { isNotEqualDeep, isNotEmpty } from \"neetocist\";\nimport { isEmpty, pluck, prop } from \"ramda\";\n\nimport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n} from \"./useTableConfigurationsApi.js\";\n\nconst useTableConfigurations = (tableKey, columnData) => {\n const { data: tableConfiguration, isLoading } = useFetchTableConfiguration({\n tableKey,\n });\n const { mutate: updateConfiguration } = useUpdateTableConfiguration(tableKey);\n const { mutate: destroyConfiguration } =\n useDestroyTableConfiguration(tableKey);\n\n const processColumnsWithConfiguration = useCallback(\n (originalColumns = [], existingColumnConfiguration = []) => {\n if (isEmpty(existingColumnConfiguration)) {\n return originalColumns;\n }\n\n const originalColumnsByKey = new Map(\n originalColumns?.filter(prop(\"key\")).map(column => [column.key, column])\n );\n\n const configurationByKey = new Map(\n existingColumnConfiguration.map(config => [config.key, config])\n );\n\n const orderedConfiguredColumns = existingColumnConfiguration\n .map(config => originalColumnsByKey.get(config.key))\n .filter(Boolean);\n\n const unconfiguredOriginalColumns = originalColumns.filter(\n column => column.key && !configurationByKey.has(column.key)\n );\n\n return [...orderedConfiguredColumns, ...unconfiguredOriginalColumns];\n },\n []\n );\n\n const hasAdditionalColumns = useMemo(() => {\n if (!tableConfiguration?.columns || !columnData) {\n return false;\n }\n\n const configurationKeys = pluck(\"key\", tableConfiguration.columns).sort();\n const dataKeys = pluck(\"key\", columnData).sort();\n\n return isNotEqualDeep(configurationKeys, dataKeys);\n }, [tableConfiguration, columnData]);\n\n const shouldApplyTableConfiguration = useMemo(\n () =>\n !isLoading &&\n tableConfiguration?.columns &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns,\n [tableConfiguration, isLoading, hasAdditionalColumns]\n );\n\n useEffect(() => {\n if (hasAdditionalColumns && tableConfiguration) {\n destroyConfiguration(tableKey);\n }\n }, [hasAdditionalColumns, tableKey]);\n\n const allProcessedColumns = useMemo(() => {\n if (\n !isLoading &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns\n ) {\n return processColumnsWithConfiguration(\n columnData,\n tableConfiguration?.columns\n );\n }\n\n return columnData || [];\n }, [\n isLoading,\n tableConfiguration?.columns,\n hasAdditionalColumns,\n columnData,\n processColumnsWithConfiguration,\n ]);\n\n const customizedColumns = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n const visibleColumnKeys = pluck(\n \"key\",\n tableConfiguration.columns.filter(prop(\"isShown\"))\n );\n\n return allProcessedColumns.filter(column =>\n visibleColumnKeys.includes(column.key)\n );\n }\n\n return columnData || [];\n }, [\n allProcessedColumns,\n columnData,\n tableConfiguration?.columns,\n shouldApplyTableConfiguration,\n ]);\n\n const existingColumnConfiguration = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n return tableConfiguration.columns;\n }\n\n if (!columnData || isEmpty(columnData)) {\n return [];\n }\n\n return columnData.map(column => ({ key: column.key, isShown: true }));\n }, [shouldApplyTableConfiguration, columnData, tableConfiguration?.columns]);\n\n const updateColumns = updatedColumns => {\n updateConfiguration({\n tableKey,\n payload: { table_key: tableKey, columns: updatedColumns },\n });\n };\n\n const hideColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: false } : column\n )\n );\n };\n\n const showColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: true } : column\n )\n );\n };\n\n const reorderColumns = newOrder => {\n updateColumns(newOrder);\n };\n\n return {\n customizedColumns, // Only visible columns (for displaying the columns in the table)\n allProcessedColumns, // All columns (for displaying the columns in the Subheader)\n isTableConfigurationLoading: isLoading,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n reorderColumns,\n destroyConfiguration,\n };\n};\n\nexport default useTableConfigurations;\n","import { existsBy, removeBy } from \"neetocist\";\nimport { filter, includes, toLower, trim } from \"ramda\";\n\nexport const getHidableColumns = columnData =>\n removeBy({ isHidable: false }, columnData);\n\nexport const filterBySearchTerm = (searchTerm, columns) =>\n filter(\n ({ title }) => includes(trim(toLower(searchTerm)), trim(toLower(title))),\n columns\n );\n\nexport const removeDeletedColumns = (hiddenColumns, columnData) =>\n hiddenColumns.filter(hiddenColumn =>\n existsBy({ dataIndex: hiddenColumn }, columnData)\n );\n","import { useState } from \"react\";\n\nimport { DndContext } from \"@dnd-kit/core\";\nimport { SortableContext } from \"@dnd-kit/sortable\";\nimport i18next from \"i18next\";\nimport { isNotEmpty, findIndexBy } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport Item from \"./Item\";\nimport useTableConfigurations from \"./useTableConfigurations.js\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils.js\";\n\nconst Columns = ({\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n tableKey = \"\",\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n searchProps = {},\n ...dropdownProps\n}) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n allProcessedColumns,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n reorderColumns,\n destroyConfiguration,\n } = useTableConfigurations(tableKey, columnData);\n\n const hiddenColumns = pluck(\n \"key\",\n existingColumnConfiguration.filter(column => !column.isShown)\n );\n\n const handleDragEnd = event => {\n const { active, over } = event;\n if (!over || active.id === over.id) return;\n\n const oldIndex = findIndexBy(\n { key: active.id },\n existingColumnConfiguration\n );\n\n const newIndex = findIndexBy({ key: over.id }, existingColumnConfiguration);\n\n if (oldIndex === -1 || newIndex === -1) return;\n\n const newOrder = [...existingColumnConfiguration];\n const [movedItem] = newOrder.splice(oldIndex, 1);\n newOrder.splice(newIndex, 0, movedItem);\n reorderColumns(newOrder);\n };\n\n const columns = getHidableColumns(allProcessedColumns);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n position=\"bottom-end\"\n onClose={() => setSearchTerm(\"\")}\n {...dropdownProps}\n >\n <Menu>\n <div className=\"neeto-molecules-columns__container\">\n {isSearchable && (\n <Input\n className=\"px-4 py-2\"\n data-cy=\"neeto-ui-columns-search\"\n data-testid=\"neeto-ui-columns-search\"\n placeholder={t(\"neetoMolecules.columns.search\")}\n prefix={<Search />}\n type=\"search\"\n value={searchTerm}\n onChange={handleSearch}\n {...searchProps}\n />\n )}\n {isEmpty(filteredColumns) && (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {isNotEmpty(filteredColumns) && !searchTerm && (\n <DndContext onDragEnd={handleDragEnd}>\n <SortableContext items={pluck(\"key\", filteredColumns)}>\n {filteredColumns.map(column => (\n <Item\n {...{ checkboxProps, column, hiddenColumns }}\n key={column.key}\n onToggle={handleChange}\n />\n ))}\n </SortableContext>\n </DndContext>\n )}\n {isNotEmpty(filteredColumns) &&\n searchTerm &&\n filteredColumns.map(({ key, title }) => (\n <MenuItem key={key}>\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2\"\n htmlFor={key}\n >\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))}\n <Divider />\n {!!actionBlock && (\n <>\n {actionBlock}\n <Divider />\n </>\n )}\n <div className=\"flex justify-end p-1 pr-3\">\n <Button\n data-cy=\"column-visibility-reset-button\"\n label={t(\"neetoMolecules.columns.reset\")}\n style=\"secondary\"\n onClick={() => destroyConfiguration(tableKey)}\n />\n </div>\n </div>\n </Menu>\n </Dropdown>\n );\n};\n\nColumns.propTypes = {\n /**\n * Extra action items that can be added at the end of the dropdown (optional).\n */\n actionBlock: PropTypes.element,\n /**\n * Additional props for the checkboxes in the dropdown (optional).\n */\n checkboxProps: PropTypes.object,\n /**\n * The list of columns from which the dropdown options are built (required).\n */\n columnData: PropTypes.array,\n /**\n * Controls whether the dropdown options should be searchable (optional).\n */\n isSearchable: PropTypes.bool,\n /**\n * The table key used to identify table configuration in the API (required).\n */\n tableKey: PropTypes.string,\n /**\n * The message to be shown when there are no columns to be displayed in the dropdown (optional).\n */\n noColumnMessage: PropTypes.string,\n /**\n * Props to be passed to the search input in the column dropdown. Only works when `isSearchable` is set to `true` (optional).\n */\n searchProps: PropTypes.object,\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { useEffect } from \"react\";\n\nimport { removeBy } from \"neetocist\";\nimport {\n getFromLocalStorage,\n removeFromLocalStorage,\n} from \"neetocommons/utils/general\";\nimport { __, without, includes, isEmpty, equals, union } from \"ramda\";\nimport { create } from \"zustand\";\nimport { persist } from \"zustand/middleware\";\n\nimport { HIDDEN_COLUMNS_STORAGE_KEY } from \"./constants\";\nimport { removeDeletedColumns } from \"./utils\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useHiddenColumnStore = create(\n persist(() => ({}), { name: HIDDEN_COLUMNS_STORAGE_KEY })\n);\n\nconst useHiddenColumns = (localStorageKey, initialValue = []) => {\n const hiddenColumns = useHiddenColumnStore(state => state[localStorageKey]);\n const setHiddenColumns = columns =>\n useHiddenColumnStore.setState({ [localStorageKey]: columns });\n\n // Migrates values from old location to new zustand location.\n useEffect(() => {\n const oldValue = getFromLocalStorage(localStorageKey);\n if (oldValue) {\n setHiddenColumns(oldValue);\n removeFromLocalStorage(localStorageKey);\n } else if (!hiddenColumns) {\n setHiddenColumns(initialValue);\n }\n }, [localStorageKey]);\n\n const hideColumn = columns =>\n setHiddenColumns(\n union(hiddenColumns, Array.isArray(columns) ? columns : [columns])\n );\n\n const showColumn = columns =>\n setHiddenColumns(\n without(Array.isArray(columns) ? columns : [columns], hiddenColumns)\n );\n\n const getVisibleColumnData = columnData =>\n removeBy({ dataIndex: includes(__, hiddenColumns || []) }, columnData);\n\n const onColumnDataChange = columnData => {\n if (isEmpty(columnData) || !hiddenColumns) return;\n const newHiddenColumns = removeDeletedColumns(hiddenColumns, columnData);\n if (!equals(newHiddenColumns, hiddenColumns)) {\n setHiddenColumns(newHiddenColumns);\n }\n };\n\n return {\n hiddenColumns,\n hideColumn,\n showColumn,\n getVisibleColumnData,\n onColumnDataChange,\n };\n};\n\nexport { useHiddenColumns, useHiddenColumnStore };\n","import { identity, isEmpty, pipe } from \"ramda\";\nimport { create } from \"zustand\";\nimport { persist } from \"zustand/middleware\";\n\nimport { COLUMNS_ORDER_STORAGE_KEY } from \"./constants\";\nimport { useHiddenColumns } from \"./useHiddenColumns\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useColumnOrderStore = create(\n persist(() => ({}), { name: COLUMNS_ORDER_STORAGE_KEY })\n);\n\nconst useColumns = ({\n localStorageKey,\n initialHiddenColumns,\n initialOrder = [],\n}) => {\n const columnOrder =\n useColumnOrderStore(state => state[localStorageKey]) || initialOrder;\n\n const setColumnOrder = columns =>\n useColumnOrderStore.setState({ [localStorageKey]: columns });\n\n const { hiddenColumns, getVisibleColumnData, ...hiddenColumnHelpers } =\n useHiddenColumns(localStorageKey, initialHiddenColumns);\n\n const orderColumns = columnData => {\n if (isEmpty(columnOrder)) return columnData;\n\n return columnData.sort((a, b) => {\n if (\n !columnOrder.includes(a.dataIndex) ||\n !columnOrder.includes(b.dataIndex)\n ) {\n return 0;\n }\n\n return (\n columnOrder.indexOf(a.dataIndex) - columnOrder.indexOf(b.dataIndex)\n );\n });\n };\n\n const getColumnData = ({\n columnData,\n isHidable = true,\n isReOrderable = false,\n }) =>\n pipe(\n isHidable ? getVisibleColumnData : identity,\n isReOrderable ? orderColumns : identity\n )(columnData);\n\n return {\n ...hiddenColumnHelpers,\n hiddenColumns,\n columnOrder,\n getVisibleColumnData,\n setColumnOrder,\n getColumnData,\n };\n};\n\nexport { useColumns, useColumnOrderStore };\n"],"names":["Item","_ref","column","hiddenColumns","checkboxProps","onToggle","key","title","_useSortable","useSortable","id","attributes","listeners","setNodeRef","transform","transition","isDragging","dragStyle","CSS","Transform","toString","undefined","opacity","_jsx","className","ref","style","children","_jsxs","Label","htmlFor","_objectSpread","Drag","size","Checkbox","checked","includes","label","name","onChange","baseUrl","fetch","tableKey","axios","get","concat","create","payload","post","tableConfiguration","update","patch","destroy","tableConfigurationApi","HIDDEN_COLUMNS_STORAGE_KEY","COLUMNS_ORDER_STORAGE_KEY","TABLE_CONFIGURATION_QUERY_KEY","useFetchTableConfiguration","_ref$options","options","useQuery","queryKey","enabled","queryFn","useUpdateTableConfiguration","useMutationWithInvalidation","keysToInvalidate","useDestroyTableConfiguration","useTableConfigurations","columnData","_useFetchTableConfigu","data","isLoading","_useUpdateTableConfig","updateConfiguration","mutate","_useDestroyTableConfi","destroyConfiguration","processColumnsWithConfiguration","useCallback","originalColumns","arguments","length","existingColumnConfiguration","isEmpty","originalColumnsByKey","Map","filter","prop","map","configurationByKey","config","orderedConfiguredColumns","Boolean","unconfiguredOriginalColumns","has","_toConsumableArray","hasAdditionalColumns","useMemo","columns","configurationKeys","pluck","sort","dataKeys","isNotEqualDeep","shouldApplyTableConfiguration","isNotEmpty","useEffect","allProcessedColumns","customizedColumns","visibleColumnKeys","isShown","updateColumns","updatedColumns","table_key","hideColumn","columnKey","showColumn","reorderColumns","newOrder","isTableConfigurationLoading","getHidableColumns","removeBy","isHidable","filterBySearchTerm","searchTerm","trim","toLower","removeDeletedColumns","hiddenColumn","existsBy","dataIndex","Columns","actionBlock","_ref$checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$tableKey","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$searchProps","searchProps","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useTableConfiguratio","handleDragEnd","event","active","over","oldIndex","findIndexBy","newIndex","_newOrder$splice","splice","_newOrder$splice2","movedItem","filteredColumns","handleChange","_ref2","_ref2$target","target","handleSearch","_ref3","value","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","position","onClose","Input","placeholder","prefix","Search","type","DndContext","onDragEnd","SortableContext","items","_createElement","_ref4","_Fragment","Button","onClick","displayName","useHiddenColumnStore","persist","useHiddenColumns","localStorageKey","initialValue","state","setHiddenColumns","setState","_defineProperty","oldValue","getFromLocalStorage","removeFromLocalStorage","union","Array","isArray","without","getVisibleColumnData","__","onColumnDataChange","newHiddenColumns","equals","useColumnOrderStore","useColumns","initialHiddenColumns","_ref$initialOrder","initialOrder","columnOrder","setColumnOrder","_useHiddenColumns","hiddenColumnHelpers","orderColumns","a","b","indexOf","getColumnData","_ref2$isHidable","_ref2$isReOrderable","isReOrderable","pipe","identity"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useColumns-ZmJggX3n.js","sources":["../node_modules/@dnd-kit/utilities/dist/utilities.esm.js","../src/components/Columns/Item.jsx","../src/components/Columns/api.js","../src/components/Columns/constants.js","../src/components/Columns/useTableConfigurationsApi.js","../src/components/Columns/useTableConfigurations.js","../src/components/Columns/utils.js","../src/components/Columns/Columns.jsx","../src/components/Columns/useHiddenColumns.js","../src/components/Columns/useColumns.js"],"sourcesContent":["import { useMemo, useLayoutEffect, useEffect, useRef, useCallback } from 'react';\n\nfunction useCombinedRefs() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n\n return useMemo(() => node => {\n refs.forEach(ref => ref(node));\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n}\n\n// https://github.com/facebook/react/blob/master/packages/shared/ExecutionEnvironment.js\nconst canUseDOM = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined';\n\nfunction isWindow(element) {\n const elementString = Object.prototype.toString.call(element);\n return elementString === '[object Window]' || // In Electron context the Window object serializes to [object global]\n elementString === '[object global]';\n}\n\nfunction isNode(node) {\n return 'nodeType' in node;\n}\n\nfunction getWindow(target) {\n var _target$ownerDocument, _target$ownerDocument2;\n\n if (!target) {\n return window;\n }\n\n if (isWindow(target)) {\n return target;\n }\n\n if (!isNode(target)) {\n return window;\n }\n\n return (_target$ownerDocument = (_target$ownerDocument2 = target.ownerDocument) == null ? void 0 : _target$ownerDocument2.defaultView) != null ? _target$ownerDocument : window;\n}\n\nfunction isDocument(node) {\n const {\n Document\n } = getWindow(node);\n return node instanceof Document;\n}\n\nfunction isHTMLElement(node) {\n if (isWindow(node)) {\n return false;\n }\n\n return node instanceof getWindow(node).HTMLElement;\n}\n\nfunction isSVGElement(node) {\n return node instanceof getWindow(node).SVGElement;\n}\n\nfunction getOwnerDocument(target) {\n if (!target) {\n return document;\n }\n\n if (isWindow(target)) {\n return target.document;\n }\n\n if (!isNode(target)) {\n return document;\n }\n\n if (isDocument(target)) {\n return target;\n }\n\n if (isHTMLElement(target) || isSVGElement(target)) {\n return target.ownerDocument;\n }\n\n return document;\n}\n\n/**\r\n * A hook that resolves to useEffect on the server and useLayoutEffect on the client\r\n * @param callback {function} Callback function that is invoked when the dependencies of the hook change\r\n */\n\nconst useIsomorphicLayoutEffect = canUseDOM ? useLayoutEffect : useEffect;\n\nfunction useEvent(handler) {\n const handlerRef = useRef(handler);\n useIsomorphicLayoutEffect(() => {\n handlerRef.current = handler;\n });\n return useCallback(function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return handlerRef.current == null ? void 0 : handlerRef.current(...args);\n }, []);\n}\n\nfunction useInterval() {\n const intervalRef = useRef(null);\n const set = useCallback((listener, duration) => {\n intervalRef.current = setInterval(listener, duration);\n }, []);\n const clear = useCallback(() => {\n if (intervalRef.current !== null) {\n clearInterval(intervalRef.current);\n intervalRef.current = null;\n }\n }, []);\n return [set, clear];\n}\n\nfunction useLatestValue(value, dependencies) {\n if (dependencies === void 0) {\n dependencies = [value];\n }\n\n const valueRef = useRef(value);\n useIsomorphicLayoutEffect(() => {\n if (valueRef.current !== value) {\n valueRef.current = value;\n }\n }, dependencies);\n return valueRef;\n}\n\nfunction useLazyMemo(callback, dependencies) {\n const valueRef = useRef();\n return useMemo(() => {\n const newValue = callback(valueRef.current);\n valueRef.current = newValue;\n return newValue;\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [...dependencies]);\n}\n\nfunction useNodeRef(onChange) {\n const onChangeHandler = useEvent(onChange);\n const node = useRef(null);\n const setNodeRef = useCallback(element => {\n if (element !== node.current) {\n onChangeHandler == null ? void 0 : onChangeHandler(element, node.current);\n }\n\n node.current = element;\n }, //eslint-disable-next-line\n []);\n return [node, setNodeRef];\n}\n\nfunction usePrevious(value) {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref.current;\n}\n\nlet ids = {};\nfunction useUniqueId(prefix, value) {\n return useMemo(() => {\n if (value) {\n return value;\n }\n\n const id = ids[prefix] == null ? 0 : ids[prefix] + 1;\n ids[prefix] = id;\n return prefix + \"-\" + id;\n }, [prefix, value]);\n}\n\nfunction createAdjustmentFn(modifier) {\n return function (object) {\n for (var _len = arguments.length, adjustments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n adjustments[_key - 1] = arguments[_key];\n }\n\n return adjustments.reduce((accumulator, adjustment) => {\n const entries = Object.entries(adjustment);\n\n for (const [key, valueAdjustment] of entries) {\n const value = accumulator[key];\n\n if (value != null) {\n accumulator[key] = value + modifier * valueAdjustment;\n }\n }\n\n return accumulator;\n }, { ...object\n });\n };\n}\n\nconst add = /*#__PURE__*/createAdjustmentFn(1);\nconst subtract = /*#__PURE__*/createAdjustmentFn(-1);\n\nfunction hasViewportRelativeCoordinates(event) {\n return 'clientX' in event && 'clientY' in event;\n}\n\nfunction isKeyboardEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n KeyboardEvent\n } = getWindow(event.target);\n return KeyboardEvent && event instanceof KeyboardEvent;\n}\n\nfunction isTouchEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n TouchEvent\n } = getWindow(event.target);\n return TouchEvent && event instanceof TouchEvent;\n}\n\n/**\r\n * Returns the normalized x and y coordinates for mouse and touch events.\r\n */\n\nfunction getEventCoordinates(event) {\n if (isTouchEvent(event)) {\n if (event.touches && event.touches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.touches[0];\n return {\n x,\n y\n };\n } else if (event.changedTouches && event.changedTouches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.changedTouches[0];\n return {\n x,\n y\n };\n }\n }\n\n if (hasViewportRelativeCoordinates(event)) {\n return {\n x: event.clientX,\n y: event.clientY\n };\n }\n\n return null;\n}\n\nconst CSS = /*#__PURE__*/Object.freeze({\n Translate: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n x,\n y\n } = transform;\n return \"translate3d(\" + (x ? Math.round(x) : 0) + \"px, \" + (y ? Math.round(y) : 0) + \"px, 0)\";\n }\n\n },\n Scale: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n scaleX,\n scaleY\n } = transform;\n return \"scaleX(\" + scaleX + \") scaleY(\" + scaleY + \")\";\n }\n\n },\n Transform: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n return [CSS.Translate.toString(transform), CSS.Scale.toString(transform)].join(' ');\n }\n\n },\n Transition: {\n toString(_ref) {\n let {\n property,\n duration,\n easing\n } = _ref;\n return property + \" \" + duration + \"ms \" + easing;\n }\n\n }\n});\n\nconst SELECTOR = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]';\nfunction findFirstFocusableNode(element) {\n if (element.matches(SELECTOR)) {\n return element;\n }\n\n return element.querySelector(SELECTOR);\n}\n\nexport { CSS, add, canUseDOM, findFirstFocusableNode, getEventCoordinates, getOwnerDocument, getWindow, hasViewportRelativeCoordinates, isDocument, isHTMLElement, isKeyboardEvent, isNode, isSVGElement, isTouchEvent, isWindow, subtract, useCombinedRefs, useEvent, useInterval, useIsomorphicLayoutEffect, useLatestValue, useLazyMemo, useNodeRef, usePrevious, useUniqueId };\n//# sourceMappingURL=utilities.esm.js.map\n","import { useSortable } from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport { Drag } from \"neetoicons\";\nimport { Checkbox, Label } from \"neetoui\";\n\nconst Item = ({ column, hiddenColumns, checkboxProps, onToggle }) => {\n const { key, title } = column;\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n } = useSortable({ id: key });\n\n const dragStyle = {\n transform: isDragging ? CSS.Transform.toString(transform) : undefined,\n transition,\n opacity: isDragging ? 0.5 : 1,\n };\n\n return (\n <div\n className=\"neeto-molecules-columns__sortable-item\"\n ref={setNodeRef}\n style={dragStyle}\n >\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer neeto-ui-items-center px-4 py-2\"\n htmlFor={key}\n >\n <div\n {...attributes}\n {...listeners}\n className=\"neeto-ui-mr-2 neeto-ui-cursor-grab neeto-ui-flex neeto-ui-items-center\"\n >\n <Drag className=\"neeto-ui-text-gray-400\" size={16} />\n </div>\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={onToggle}\n {...checkboxProps}\n />\n </Label>\n </div>\n );\n};\n\nexport default Item;\n","import axios from \"axios\";\n\nconst baseUrl = \"api/v1/table_configurations\";\n\nconst fetch = tableKey => axios.get(`${baseUrl}/${tableKey}`);\n\nconst create = payload => axios.post(baseUrl, { tableConfiguration: payload });\n\nconst update = ({ tableKey, payload }) =>\n axios.patch(`${baseUrl}/${tableKey}`, { tableConfiguration: payload });\n\nconst destroy = tableKey => axios.delete(`${baseUrl}/${tableKey}`);\n\nconst tableConfigurationApi = { fetch, create, update, destroy };\n\nexport default tableConfigurationApi;\n","export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\nexport const COLUMNS_ORDER_STORAGE_KEY = \"neeto-molecules-columns-order\";\nexport const TABLE_CONFIGURATION_QUERY_KEY = \"table-configuration\";\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\n\nimport tableConfigurationApi from \"./api\";\nimport { TABLE_CONFIGURATION_QUERY_KEY } from \"./constants.js\";\n\nconst useFetchTableConfiguration = ({ tableKey, options = {} }) =>\n useQuery({\n queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],\n enabled: !!tableKey,\n queryFn: () => tableConfigurationApi.fetch(tableKey),\n ...options,\n });\n\nconst useUpdateTableConfiguration = tableKey =>\n useMutationWithInvalidation(tableConfigurationApi.update, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n });\n\nconst useDestroyTableConfiguration = tableKey =>\n useMutationWithInvalidation(tableConfigurationApi.destroy, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n });\n\nexport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n};\n","import { useEffect, useMemo, useCallback } from \"react\";\n\nimport { isNotEqualDeep, isNotEmpty } from \"neetocist\";\nimport { isEmpty, pluck, prop } from \"ramda\";\n\nimport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n} from \"./useTableConfigurationsApi.js\";\n\nconst useTableConfigurations = (tableKey, columnData) => {\n const { data: tableConfiguration, isLoading } = useFetchTableConfiguration({\n tableKey,\n });\n const { mutate: updateConfiguration } = useUpdateTableConfiguration(tableKey);\n const { mutate: destroyConfiguration } =\n useDestroyTableConfiguration(tableKey);\n\n const processColumnsWithConfiguration = useCallback(\n (originalColumns = [], existingColumnConfiguration = []) => {\n if (isEmpty(existingColumnConfiguration)) {\n return originalColumns;\n }\n\n const originalColumnsByKey = new Map(\n originalColumns?.filter(prop(\"key\")).map(column => [column.key, column])\n );\n\n const configurationByKey = new Map(\n existingColumnConfiguration.map(config => [config.key, config])\n );\n\n const orderedConfiguredColumns = existingColumnConfiguration\n .map(config => originalColumnsByKey.get(config.key))\n .filter(Boolean);\n\n const unconfiguredOriginalColumns = originalColumns.filter(\n column => column.key && !configurationByKey.has(column.key)\n );\n\n return [...orderedConfiguredColumns, ...unconfiguredOriginalColumns];\n },\n []\n );\n\n const hasAdditionalColumns = useMemo(() => {\n if (!tableConfiguration?.columns || !columnData) {\n return false;\n }\n\n const configurationKeys = pluck(\"key\", tableConfiguration.columns).sort();\n const dataKeys = pluck(\"key\", columnData).sort();\n\n return isNotEqualDeep(configurationKeys, dataKeys);\n }, [tableConfiguration, columnData]);\n\n const shouldApplyTableConfiguration = useMemo(\n () =>\n !isLoading &&\n tableConfiguration?.columns &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns,\n [tableConfiguration, isLoading, hasAdditionalColumns]\n );\n\n useEffect(() => {\n if (hasAdditionalColumns && tableConfiguration) {\n destroyConfiguration(tableKey);\n }\n }, [hasAdditionalColumns, tableKey]);\n\n const allProcessedColumns = useMemo(() => {\n if (\n !isLoading &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns\n ) {\n return processColumnsWithConfiguration(\n columnData,\n tableConfiguration?.columns\n );\n }\n\n return columnData || [];\n }, [\n isLoading,\n tableConfiguration?.columns,\n hasAdditionalColumns,\n columnData,\n processColumnsWithConfiguration,\n ]);\n\n const customizedColumns = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n const visibleColumnKeys = pluck(\n \"key\",\n tableConfiguration.columns.filter(prop(\"isShown\"))\n );\n\n return allProcessedColumns.filter(column =>\n visibleColumnKeys.includes(column.key)\n );\n }\n\n return columnData || [];\n }, [\n allProcessedColumns,\n columnData,\n tableConfiguration?.columns,\n shouldApplyTableConfiguration,\n ]);\n\n const existingColumnConfiguration = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n return tableConfiguration.columns;\n }\n\n if (!columnData || isEmpty(columnData)) {\n return [];\n }\n\n return columnData.map(column => ({ key: column.key, isShown: true }));\n }, [shouldApplyTableConfiguration, columnData, tableConfiguration?.columns]);\n\n const updateColumns = updatedColumns => {\n updateConfiguration({\n tableKey,\n payload: { table_key: tableKey, columns: updatedColumns },\n });\n };\n\n const hideColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: false } : column\n )\n );\n };\n\n const showColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: true } : column\n )\n );\n };\n\n const reorderColumns = newOrder => {\n updateColumns(newOrder);\n };\n\n return {\n customizedColumns, // Only visible columns (for displaying the columns in the table)\n allProcessedColumns, // All columns (for displaying the columns in the Subheader)\n isTableConfigurationLoading: isLoading,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n reorderColumns,\n destroyConfiguration,\n };\n};\n\nexport default useTableConfigurations;\n","import { existsBy, removeBy } from \"neetocist\";\nimport { filter, includes, toLower, trim } from \"ramda\";\n\nexport const getHidableColumns = columnData =>\n removeBy({ isHidable: false }, columnData);\n\nexport const filterBySearchTerm = (searchTerm, columns) =>\n filter(\n ({ title }) => includes(trim(toLower(searchTerm)), trim(toLower(title))),\n columns\n );\n\nexport const removeDeletedColumns = (hiddenColumns, columnData) =>\n hiddenColumns.filter(hiddenColumn =>\n existsBy({ dataIndex: hiddenColumn }, columnData)\n );\n","import { useState } from \"react\";\n\nimport { DndContext } from \"@dnd-kit/core\";\nimport { SortableContext } from \"@dnd-kit/sortable\";\nimport i18next from \"i18next\";\nimport { isNotEmpty, findIndexBy } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport Item from \"./Item\";\nimport useTableConfigurations from \"./useTableConfigurations.js\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils.js\";\n\nconst Columns = ({\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n tableKey = \"\",\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n searchProps = {},\n ...dropdownProps\n}) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n allProcessedColumns,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n reorderColumns,\n destroyConfiguration,\n } = useTableConfigurations(tableKey, columnData);\n\n const hiddenColumns = pluck(\n \"key\",\n existingColumnConfiguration.filter(column => !column.isShown)\n );\n\n const handleDragEnd = event => {\n const { active, over } = event;\n if (!over || active.id === over.id) return;\n\n const oldIndex = findIndexBy(\n { key: active.id },\n existingColumnConfiguration\n );\n\n const newIndex = findIndexBy({ key: over.id }, existingColumnConfiguration);\n\n if (oldIndex === -1 || newIndex === -1) return;\n\n const newOrder = [...existingColumnConfiguration];\n const [movedItem] = newOrder.splice(oldIndex, 1);\n newOrder.splice(newIndex, 0, movedItem);\n reorderColumns(newOrder);\n };\n\n const columns = getHidableColumns(allProcessedColumns);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n position=\"bottom-end\"\n onClose={() => setSearchTerm(\"\")}\n {...dropdownProps}\n >\n <Menu>\n <div className=\"neeto-molecules-columns__container\">\n {isSearchable && (\n <Input\n className=\"px-4 py-2\"\n data-cy=\"neeto-ui-columns-search\"\n data-testid=\"neeto-ui-columns-search\"\n placeholder={t(\"neetoMolecules.columns.search\")}\n prefix={<Search />}\n type=\"search\"\n value={searchTerm}\n onChange={handleSearch}\n {...searchProps}\n />\n )}\n {isEmpty(filteredColumns) && (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {isNotEmpty(filteredColumns) && !searchTerm && (\n <DndContext onDragEnd={handleDragEnd}>\n <SortableContext items={pluck(\"key\", filteredColumns)}>\n {filteredColumns.map(column => (\n <Item\n {...{ checkboxProps, column, hiddenColumns }}\n key={column.key}\n onToggle={handleChange}\n />\n ))}\n </SortableContext>\n </DndContext>\n )}\n {isNotEmpty(filteredColumns) &&\n searchTerm &&\n filteredColumns.map(({ key, title }) => (\n <MenuItem key={key}>\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2\"\n htmlFor={key}\n >\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))}\n <Divider />\n {!!actionBlock && (\n <>\n {actionBlock}\n <Divider />\n </>\n )}\n <div className=\"flex justify-end p-1 pr-3\">\n <Button\n data-cy=\"column-visibility-reset-button\"\n label={t(\"neetoMolecules.columns.reset\")}\n style=\"secondary\"\n onClick={() => destroyConfiguration(tableKey)}\n />\n </div>\n </div>\n </Menu>\n </Dropdown>\n );\n};\n\nColumns.propTypes = {\n /**\n * Extra action items that can be added at the end of the dropdown (optional).\n */\n actionBlock: PropTypes.element,\n /**\n * Additional props for the checkboxes in the dropdown (optional).\n */\n checkboxProps: PropTypes.object,\n /**\n * The list of columns from which the dropdown options are built (required).\n */\n columnData: PropTypes.array,\n /**\n * Controls whether the dropdown options should be searchable (optional).\n */\n isSearchable: PropTypes.bool,\n /**\n * The table key used to identify table configuration in the API (required).\n */\n tableKey: PropTypes.string,\n /**\n * The message to be shown when there are no columns to be displayed in the dropdown (optional).\n */\n noColumnMessage: PropTypes.string,\n /**\n * Props to be passed to the search input in the column dropdown. Only works when `isSearchable` is set to `true` (optional).\n */\n searchProps: PropTypes.object,\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { useEffect } from \"react\";\n\nimport { removeBy } from \"neetocist\";\nimport {\n getFromLocalStorage,\n removeFromLocalStorage,\n} from \"neetocommons/utils/general\";\nimport { __, without, includes, isEmpty, equals, union } from \"ramda\";\nimport { create } from \"zustand\";\nimport { persist } from \"zustand/middleware\";\n\nimport { HIDDEN_COLUMNS_STORAGE_KEY } from \"./constants\";\nimport { removeDeletedColumns } from \"./utils\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useHiddenColumnStore = create(\n persist(() => ({}), { name: HIDDEN_COLUMNS_STORAGE_KEY })\n);\n\nconst useHiddenColumns = (localStorageKey, initialValue = []) => {\n const hiddenColumns = useHiddenColumnStore(state => state[localStorageKey]);\n const setHiddenColumns = columns =>\n useHiddenColumnStore.setState({ [localStorageKey]: columns });\n\n // Migrates values from old location to new zustand location.\n useEffect(() => {\n const oldValue = getFromLocalStorage(localStorageKey);\n if (oldValue) {\n setHiddenColumns(oldValue);\n removeFromLocalStorage(localStorageKey);\n } else if (!hiddenColumns) {\n setHiddenColumns(initialValue);\n }\n }, [localStorageKey]);\n\n const hideColumn = columns =>\n setHiddenColumns(\n union(hiddenColumns, Array.isArray(columns) ? columns : [columns])\n );\n\n const showColumn = columns =>\n setHiddenColumns(\n without(Array.isArray(columns) ? columns : [columns], hiddenColumns)\n );\n\n const getVisibleColumnData = columnData =>\n removeBy({ dataIndex: includes(__, hiddenColumns || []) }, columnData);\n\n const onColumnDataChange = columnData => {\n if (isEmpty(columnData) || !hiddenColumns) return;\n const newHiddenColumns = removeDeletedColumns(hiddenColumns, columnData);\n if (!equals(newHiddenColumns, hiddenColumns)) {\n setHiddenColumns(newHiddenColumns);\n }\n };\n\n return {\n hiddenColumns,\n hideColumn,\n showColumn,\n getVisibleColumnData,\n onColumnDataChange,\n };\n};\n\nexport { useHiddenColumns, useHiddenColumnStore };\n","import { identity, isEmpty, pipe } from \"ramda\";\nimport { create } from \"zustand\";\nimport { persist } from \"zustand/middleware\";\n\nimport { COLUMNS_ORDER_STORAGE_KEY } from \"./constants\";\nimport { useHiddenColumns } from \"./useHiddenColumns\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useColumnOrderStore = create(\n persist(() => ({}), { name: COLUMNS_ORDER_STORAGE_KEY })\n);\n\nconst useColumns = ({\n localStorageKey,\n initialHiddenColumns,\n initialOrder = [],\n}) => {\n const columnOrder =\n useColumnOrderStore(state => state[localStorageKey]) || initialOrder;\n\n const setColumnOrder = columns =>\n useColumnOrderStore.setState({ [localStorageKey]: columns });\n\n const { hiddenColumns, getVisibleColumnData, ...hiddenColumnHelpers } =\n useHiddenColumns(localStorageKey, initialHiddenColumns);\n\n const orderColumns = columnData => {\n if (isEmpty(columnOrder)) return columnData;\n\n return columnData.sort((a, b) => {\n if (\n !columnOrder.includes(a.dataIndex) ||\n !columnOrder.includes(b.dataIndex)\n ) {\n return 0;\n }\n\n return (\n columnOrder.indexOf(a.dataIndex) - columnOrder.indexOf(b.dataIndex)\n );\n });\n };\n\n const getColumnData = ({\n columnData,\n isHidable = true,\n isReOrderable = false,\n }) =>\n pipe(\n isHidable ? getVisibleColumnData : identity,\n isReOrderable ? orderColumns : identity\n )(columnData);\n\n return {\n ...hiddenColumnHelpers,\n hiddenColumns,\n columnOrder,\n getVisibleColumnData,\n setColumnOrder,\n getColumnData,\n };\n};\n\nexport { useColumns, useColumnOrderStore };\n"],"names":["Item","_ref","column","hiddenColumns","checkboxProps","onToggle","key","title","_useSortable","useSortable","id","attributes","listeners","setNodeRef","transform","transition","isDragging","dragStyle","CSS","Transform","toString","undefined","opacity","_jsx","className","ref","style","children","_jsxs","Label","htmlFor","_objectSpread","Drag","size","Checkbox","checked","includes","label","name","onChange","baseUrl","fetch","tableKey","axios","get","concat","create","payload","post","tableConfiguration","update","patch","destroy","tableConfigurationApi","HIDDEN_COLUMNS_STORAGE_KEY","COLUMNS_ORDER_STORAGE_KEY","TABLE_CONFIGURATION_QUERY_KEY","useFetchTableConfiguration","_ref$options","options","useQuery","queryKey","enabled","queryFn","useUpdateTableConfiguration","useMutationWithInvalidation","keysToInvalidate","useDestroyTableConfiguration","useTableConfigurations","columnData","_useFetchTableConfigu","data","isLoading","_useUpdateTableConfig","updateConfiguration","mutate","_useDestroyTableConfi","destroyConfiguration","processColumnsWithConfiguration","useCallback","originalColumns","arguments","length","existingColumnConfiguration","isEmpty","originalColumnsByKey","Map","filter","prop","map","configurationByKey","config","orderedConfiguredColumns","Boolean","unconfiguredOriginalColumns","has","_toConsumableArray","hasAdditionalColumns","useMemo","columns","configurationKeys","pluck","sort","dataKeys","isNotEqualDeep","shouldApplyTableConfiguration","isNotEmpty","useEffect","allProcessedColumns","customizedColumns","visibleColumnKeys","isShown","updateColumns","updatedColumns","table_key","hideColumn","columnKey","showColumn","reorderColumns","newOrder","isTableConfigurationLoading","getHidableColumns","removeBy","isHidable","filterBySearchTerm","searchTerm","trim","toLower","removeDeletedColumns","hiddenColumn","existsBy","dataIndex","Columns","actionBlock","_ref$checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$tableKey","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$searchProps","searchProps","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useTableConfiguratio","handleDragEnd","event","active","over","oldIndex","findIndexBy","newIndex","_newOrder$splice","splice","_newOrder$splice2","movedItem","filteredColumns","handleChange","_ref2","_ref2$target","target","handleSearch","_ref3","value","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","position","onClose","Input","placeholder","prefix","Search","type","DndContext","onDragEnd","SortableContext","items","_createElement","_ref4","_Fragment","Button","onClick","displayName","useHiddenColumnStore","persist","useHiddenColumns","localStorageKey","initialValue","state","setHiddenColumns","setState","_defineProperty","oldValue","getFromLocalStorage","removeFromLocalStorage","union","Array","isArray","without","getVisibleColumnData","__","onColumnDataChange","newHiddenColumns","equals","useColumnOrderStore","useColumns","initialHiddenColumns","_ref$initialOrder","initialOrder","columnOrder","setColumnOrder","_useHiddenColumns","hiddenColumnHelpers","orderColumns","a","b","indexOf","getColumnData","_ref2$isHidable","_ref2$isReOrderable","isReOrderable","pipe","identity"],"mappings":"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","x_google_ignoreList":[0]}
|