@bigbinary/neeto-molecules 1.15.5 → 1.15.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CalendarView.js +1 -1
- package/dist/{Columns-702d539a.js → Columns-2bdb8579.js} +2 -2
- package/dist/Columns-2bdb8579.js.map +1 -0
- package/dist/Columns.js +1 -1
- package/dist/CustomDomainDashboard.js +1 -1
- package/dist/Settings.js +5 -5
- package/dist/Settings.js.map +1 -1
- package/dist/SubHeader.js +1 -1
- package/dist/Taxonomy.js +1 -1
- package/dist/cjs/CalendarView.js +1 -1
- package/dist/cjs/{Columns-069368e2.js → Columns-6b710238.js} +2 -2
- package/dist/cjs/Columns-6b710238.js.map +1 -0
- package/dist/cjs/Columns.js +1 -1
- package/dist/cjs/CustomDomainDashboard.js +1 -1
- package/dist/cjs/Settings.js +5 -5
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/SubHeader.js +1 -1
- package/dist/cjs/Taxonomy.js +1 -1
- package/package.json +1 -1
- package/dist/Columns-702d539a.js.map +0 -1
- package/dist/cjs/Columns-069368e2.js.map +0 -1
package/dist/CalendarView.js
CHANGED
|
@@ -16,7 +16,7 @@ import SubHeader from './SubHeader.js';
|
|
|
16
16
|
import { t } from 'i18next';
|
|
17
17
|
import { Left, Down, Right } from '@bigbinary/neeto-icons';
|
|
18
18
|
import 'classnames';
|
|
19
|
-
import './Columns-
|
|
19
|
+
import './Columns-2bdb8579.js';
|
|
20
20
|
import './inject-css-c86de496.js';
|
|
21
21
|
import '@bigbinary/neeto-commons-frontend/utils/general';
|
|
22
22
|
import 'zustand';
|
|
@@ -186,7 +186,7 @@ var Columns = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
186
186
|
return /*#__PURE__*/React__default.createElement(MenuItem, {
|
|
187
187
|
key: key
|
|
188
188
|
}, /*#__PURE__*/React__default.createElement(Label, {
|
|
189
|
-
className: "neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2",
|
|
189
|
+
className: "neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2",
|
|
190
190
|
htmlFor: dataIndex
|
|
191
191
|
}, /*#__PURE__*/React__default.createElement(Checkbox, _extends({
|
|
192
192
|
checked: !hiddenColumns.includes(dataIndex),
|
|
@@ -203,4 +203,4 @@ var Columns = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
203
203
|
Columns.displayName = "Columns";
|
|
204
204
|
|
|
205
205
|
export { Columns as C, HIDDEN_COLUMNS_STORAGE_KEY as H, useHiddenColumnStore as a, useHiddenColumns as u };
|
|
206
|
-
//# sourceMappingURL=Columns-
|
|
206
|
+
//# sourceMappingURL=Columns-2bdb8579.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Columns-2bdb8579.js","sources":["../src/components/Columns/constants.js","../src/components/Columns/utils.js","../src/components/Columns/useHiddenColumns.js","../src/components/Columns/Columns.jsx"],"sourcesContent":["export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\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 { 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 React, {\n useState,\n useImperativeHandle,\n forwardRef,\n useEffect,\n} from \"react\";\n\nimport i18next from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { identity } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport { useHiddenColumns } from \"./useHiddenColumns\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils\";\n\nconst Columns = forwardRef(\n (\n {\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n localStorageKey = \"\",\n initialValue = [],\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n onChange = identity,\n searchProps = {},\n ...dropdownProps\n },\n ref\n ) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n hiddenColumns = [],\n hideColumn,\n showColumn,\n getVisibleColumnData,\n onColumnDataChange,\n } = useHiddenColumns(localStorageKey, initialValue);\n\n useEffect(() => {\n onChange(getVisibleColumnData(columnData), hiddenColumns);\n }, [hiddenColumns]);\n\n useEffect(() => {\n onColumnDataChange(columnData);\n }, [columnData]);\n\n /**\n * @deprecated Use showColumn|hideColumn from useHiddenColumns\n */\n useImperativeHandle(ref, () => ({ hideColumn, showColumn }), []);\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n const columns = getHidableColumns(columnData);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n label={t(\"neetoMolecules.columns.columns\")}\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 <Typography\n className=\"neeto-ui-text-gray-600 px-4 py-2\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.columns.columns\")}\n </Typography>\n {isNotEmpty(filteredColumns) ? (\n filteredColumns.map(({ dataIndex, 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={dataIndex}\n >\n <Checkbox\n checked={!hiddenColumns.includes(dataIndex)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={dataIndex}\n label={title}\n name={dataIndex}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))\n ) : (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {!!actionBlock && (\n <>\n <Divider />\n {actionBlock}\n </>\n )}\n </div>\n </Menu>\n </Dropdown>\n );\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 key used to store data in local storage (required).\n */\n localStorageKey: PropTypes.string,\n /**\n * The list of columns that are hidden on initial render. This is the `dataIndex` attribute from columnData (optional).\n */\n initialValue: PropTypes.array,\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 * Handler function that is called when a checkbox is selected or unselected.\n */\n onChange: PropTypes.func,\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"],"names":["HIDDEN_COLUMNS_STORAGE_KEY","getHidableColumns","columnData","removeBy","isHidable","filterBySearchTerm","searchTerm","columns","filter","_ref","title","includes","trim","toLower","removeDeletedColumns","hiddenColumns","hiddenColumn","existsBy","dataIndex","useHiddenColumnStore","create","persist","name","useHiddenColumns","localStorageKey","initialValue","arguments","length","undefined","state","setHiddenColumns","setState","_defineProperty","useEffect","oldValue","getFromLocalStorage","removeFromLocalStorage","hideColumn","union","Array","isArray","showColumn","without","getVisibleColumnData","__","onColumnDataChange","isEmpty","newHiddenColumns","equals","Columns","forwardRef","ref","actionBlock","_ref$checkboxProps","checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$localStorageKey","_ref$initialValue","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$onChange","onChange","identity","_ref$searchProps","searchProps","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useHiddenColumns","_useHiddenColumns$hid","useImperativeHandle","handleChange","_ref2","_ref2$target","target","checked","handleSearch","_ref3","value","filteredColumns","React","createElement","_extends","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","label","position","onClose","className","Input","placeholder","prefix","Search","type","Typography","style","weight","isNotEmpty","map","_ref4","key","Label","htmlFor","Checkbox","id","Fragment","displayName"],"mappings":"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"}
|
package/dist/Columns.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { H as HIDDEN_COLUMNS_STORAGE_KEY, C as default, a as useHiddenColumnStore, u as useHiddenColumns } from './Columns-
|
|
1
|
+
export { H as HIDDEN_COLUMNS_STORAGE_KEY, C as default, a as useHiddenColumnStore, u as useHiddenColumns } from './Columns-2bdb8579.js';
|
|
2
2
|
import './extends-093996c9.js';
|
|
3
3
|
import './slicedToArray-b4278ecd.js';
|
|
4
4
|
import './objectWithoutProperties-a0edb288.js';
|
|
@@ -20,7 +20,7 @@ import './objectWithoutProperties-a0edb288.js';
|
|
|
20
20
|
import 'ramda';
|
|
21
21
|
import './defineProperty-549061a7.js';
|
|
22
22
|
import '@bigbinary/neeto-icons';
|
|
23
|
-
import './Columns-
|
|
23
|
+
import './Columns-2bdb8579.js';
|
|
24
24
|
import 'i18next';
|
|
25
25
|
import 'zustand';
|
|
26
26
|
import 'zustand/middleware';
|
package/dist/Settings.js
CHANGED
|
@@ -81,7 +81,7 @@ var Category = function Category(_ref) {
|
|
|
81
81
|
|
|
82
82
|
function ownKeys(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; }
|
|
83
83
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
84
|
-
var
|
|
84
|
+
var isTextMatching = function isTextMatching(label, searchTerm) {
|
|
85
85
|
return label.toLowerCase().includes(searchTerm.trim().toLowerCase());
|
|
86
86
|
};
|
|
87
87
|
var scrollIntoSettingCategory = function scrollIntoSettingCategory(activeCategory) {
|
|
@@ -98,10 +98,10 @@ var filterCategories = function filterCategories(_ref) {
|
|
|
98
98
|
var isSearchTermBlank = !searchTerm.trim();
|
|
99
99
|
var filteredCategories = isSearchTermBlank ? categories : categories.map(function (category) {
|
|
100
100
|
return _objectSpread(_objectSpread({}, category), {}, {
|
|
101
|
-
items: filterBy({
|
|
102
|
-
label
|
|
103
|
-
|
|
104
|
-
|
|
101
|
+
items: filterBy(function (_ref2) {
|
|
102
|
+
var label = _ref2.label,
|
|
103
|
+
description = _ref2.description;
|
|
104
|
+
return isTextMatching(label, searchTerm) || isTextMatching(description, searchTerm);
|
|
105
105
|
}, category.items)
|
|
106
106
|
});
|
|
107
107
|
});
|
package/dist/Settings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Settings.js","sources":["../src/components/Settings/constants.js","../src/components/Settings/Item.jsx","../src/components/Settings/Category.jsx","../src/components/Settings/utils.js","../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\"];\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n dataCy,\n className = \"\",\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col border p-6 no-underline outline-none transition-colors\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div data-testid={`settings-item-${joinHyphenCase(label)}`}>\n {Icon && <Icon className=\"neeto-ui-text-gray-600 mb-4\" size={32} />}\n <Typography\n className=\"mb-2\"\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport IntegrationCard from \"components/IntegrationCard\";\n\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationCard : Item;\n\n return (\n <div {...{ id }} className=\"flex flex-col py-6\">\n <Typography\n className=\"mb-6\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <div className=\"grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isLabelMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n { label: label => isLabelMatching(label, searchTerm) },\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({ isTitleHidden = false, categories = [] }) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={{\n className: \"w-72\",\n placeholder: t(\"neetoMolecules.settingsPage.placeholder.search\"),\n }}\n />\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full space-y-12\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","dataCy","_ref$className","className","otherProps","_objectWithoutProperties","_excluded","React","createElement","Link","_extends","to","classnames","omit","concat","joinHyphenCase","size","Typography","style","weight","memo","withRouter","Category","items","id","isIntegration","SettingsCard","IntegrationCard","component","map","item","key","isLabelMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","_objectSpread","filterBy","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","useEffect","classNames","Header","title","searchProps","placeholder","isEmpty","NoData","_ref2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Settings.js","sources":["../src/components/Settings/constants.js","../src/components/Settings/Item.jsx","../src/components/Settings/Category.jsx","../src/components/Settings/utils.js","../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\"];\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n dataCy,\n className = \"\",\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col border p-6 no-underline outline-none transition-colors\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div data-testid={`settings-item-${joinHyphenCase(label)}`}>\n {Icon && <Icon className=\"neeto-ui-text-gray-600 mb-4\" size={32} />}\n <Typography\n className=\"mb-2\"\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport IntegrationCard from \"components/IntegrationCard\";\n\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationCard : Item;\n\n return (\n <div {...{ id }} className=\"flex flex-col py-6\">\n <Typography\n className=\"mb-6\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <div className=\"grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({ isTitleHidden = false, categories = [] }) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={{\n className: \"w-72\",\n placeholder: t(\"neetoMolecules.settingsPage.placeholder.search\"),\n }}\n />\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full space-y-12\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","dataCy","_ref$className","className","otherProps","_objectWithoutProperties","_excluded","React","createElement","Link","_extends","to","classnames","omit","concat","joinHyphenCase","size","Typography","style","weight","memo","withRouter","Category","items","id","isIntegration","SettingsCard","IntegrationCard","component","map","item","key","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","_objectSpread","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","useEffect","classNames","Header","title","searchProps","placeholder","isEmpty","NoData"],"mappings":"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"}
|
package/dist/SubHeader.js
CHANGED
|
@@ -8,7 +8,7 @@ import { _ as _objectWithoutProperties } from './objectWithoutProperties-a0edb28
|
|
|
8
8
|
import { Column, Download, Filter } from '@bigbinary/neeto-icons';
|
|
9
9
|
import { Button } from '@bigbinary/neetoui';
|
|
10
10
|
import { useTranslation } from 'react-i18next';
|
|
11
|
-
import { u as useHiddenColumns, C as Columns$1 } from './Columns-
|
|
11
|
+
import { u as useHiddenColumns, C as Columns$1 } from './Columns-2bdb8579.js';
|
|
12
12
|
import { Filters } from '@bigbinary/neeto-filters-frontend';
|
|
13
13
|
import { n } from './inject-css-c86de496.js';
|
|
14
14
|
import './slicedToArray-b4278ecd.js';
|
package/dist/Taxonomy.js
CHANGED
|
@@ -32,7 +32,7 @@ import '@bigbinary/neeto-commons-frontend/react-utils/useQueryParams';
|
|
|
32
32
|
import '@bigbinary/neeto-commons-frontend/react-utils/useUpdateEffect';
|
|
33
33
|
import '@bigbinary/neeto-commons-frontend/utils/general';
|
|
34
34
|
import '@bigbinary/neeto-icons';
|
|
35
|
-
import './Columns-
|
|
35
|
+
import './Columns-2bdb8579.js';
|
|
36
36
|
import 'zustand';
|
|
37
37
|
import 'zustand/middleware';
|
|
38
38
|
import '@bigbinary/neeto-filters-frontend';
|
package/dist/cjs/CalendarView.js
CHANGED
|
@@ -18,7 +18,7 @@ var SubHeader = require('./SubHeader.js');
|
|
|
18
18
|
var i18next = require('i18next');
|
|
19
19
|
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
20
20
|
require('classnames');
|
|
21
|
-
require('./Columns-
|
|
21
|
+
require('./Columns-6b710238.js');
|
|
22
22
|
require('./inject-css-80a5faa3.js');
|
|
23
23
|
require('@bigbinary/neeto-commons-frontend/utils/general');
|
|
24
24
|
require('zustand');
|
|
@@ -193,7 +193,7 @@ var Columns = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
193
193
|
return /*#__PURE__*/React__default["default"].createElement(MenuItem, {
|
|
194
194
|
key: key
|
|
195
195
|
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Label, {
|
|
196
|
-
className: "neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2",
|
|
196
|
+
className: "neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2",
|
|
197
197
|
htmlFor: dataIndex
|
|
198
198
|
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Checkbox, _extends._extends({
|
|
199
199
|
checked: !hiddenColumns.includes(dataIndex),
|
|
@@ -213,4 +213,4 @@ exports.Columns = Columns;
|
|
|
213
213
|
exports.HIDDEN_COLUMNS_STORAGE_KEY = HIDDEN_COLUMNS_STORAGE_KEY;
|
|
214
214
|
exports.useHiddenColumnStore = useHiddenColumnStore;
|
|
215
215
|
exports.useHiddenColumns = useHiddenColumns;
|
|
216
|
-
//# sourceMappingURL=Columns-
|
|
216
|
+
//# sourceMappingURL=Columns-6b710238.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Columns-6b710238.js","sources":["../../src/components/Columns/constants.js","../../src/components/Columns/utils.js","../../src/components/Columns/useHiddenColumns.js","../../src/components/Columns/Columns.jsx"],"sourcesContent":["export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\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 { 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 React, {\n useState,\n useImperativeHandle,\n forwardRef,\n useEffect,\n} from \"react\";\n\nimport i18next from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { identity } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport { useHiddenColumns } from \"./useHiddenColumns\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils\";\n\nconst Columns = forwardRef(\n (\n {\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n localStorageKey = \"\",\n initialValue = [],\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n onChange = identity,\n searchProps = {},\n ...dropdownProps\n },\n ref\n ) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n hiddenColumns = [],\n hideColumn,\n showColumn,\n getVisibleColumnData,\n onColumnDataChange,\n } = useHiddenColumns(localStorageKey, initialValue);\n\n useEffect(() => {\n onChange(getVisibleColumnData(columnData), hiddenColumns);\n }, [hiddenColumns]);\n\n useEffect(() => {\n onColumnDataChange(columnData);\n }, [columnData]);\n\n /**\n * @deprecated Use showColumn|hideColumn from useHiddenColumns\n */\n useImperativeHandle(ref, () => ({ hideColumn, showColumn }), []);\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n const columns = getHidableColumns(columnData);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n label={t(\"neetoMolecules.columns.columns\")}\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 <Typography\n className=\"neeto-ui-text-gray-600 px-4 py-2\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.columns.columns\")}\n </Typography>\n {isNotEmpty(filteredColumns) ? (\n filteredColumns.map(({ dataIndex, 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={dataIndex}\n >\n <Checkbox\n checked={!hiddenColumns.includes(dataIndex)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={dataIndex}\n label={title}\n name={dataIndex}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))\n ) : (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {!!actionBlock && (\n <>\n <Divider />\n {actionBlock}\n </>\n )}\n </div>\n </Menu>\n </Dropdown>\n );\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 key used to store data in local storage (required).\n */\n localStorageKey: PropTypes.string,\n /**\n * The list of columns that are hidden on initial render. This is the `dataIndex` attribute from columnData (optional).\n */\n initialValue: PropTypes.array,\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 * Handler function that is called when a checkbox is selected or unselected.\n */\n onChange: PropTypes.func,\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"],"names":["HIDDEN_COLUMNS_STORAGE_KEY","getHidableColumns","columnData","removeBy","isHidable","filterBySearchTerm","searchTerm","columns","filter","_ref","title","includes","trim","toLower","removeDeletedColumns","hiddenColumns","hiddenColumn","existsBy","dataIndex","useHiddenColumnStore","create","persist","name","useHiddenColumns","localStorageKey","initialValue","arguments","length","undefined","state","setHiddenColumns","setState","_defineProperty","useEffect","oldValue","getFromLocalStorage","removeFromLocalStorage","hideColumn","union","Array","isArray","showColumn","without","getVisibleColumnData","__","onColumnDataChange","isEmpty","newHiddenColumns","equals","Columns","forwardRef","ref","actionBlock","_ref$checkboxProps","checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$localStorageKey","_ref$initialValue","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$onChange","onChange","identity","_ref$searchProps","searchProps","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useHiddenColumns","_useHiddenColumns$hid","useImperativeHandle","handleChange","_ref2","_ref2$target","target","checked","handleSearch","_ref3","value","filteredColumns","React","createElement","_extends","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","label","position","onClose","className","Input","placeholder","prefix","Search","type","Typography","style","weight","isNotEmpty","map","_ref4","key","Label","htmlFor","Checkbox","id","Fragment","displayName"],"mappings":"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"}
|
package/dist/cjs/Columns.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var Columns = require('./Columns-
|
|
5
|
+
var Columns = require('./Columns-6b710238.js');
|
|
6
6
|
require('./extends-1b35a664.js');
|
|
7
7
|
require('./slicedToArray-f320d9e7.js');
|
|
8
8
|
require('./objectWithoutProperties-2fed2d7d.js');
|
|
@@ -22,7 +22,7 @@ require('./objectWithoutProperties-2fed2d7d.js');
|
|
|
22
22
|
require('ramda');
|
|
23
23
|
require('./defineProperty-886ed289.js');
|
|
24
24
|
require('@bigbinary/neeto-icons');
|
|
25
|
-
require('./Columns-
|
|
25
|
+
require('./Columns-6b710238.js');
|
|
26
26
|
require('i18next');
|
|
27
27
|
require('zustand');
|
|
28
28
|
require('zustand/middleware');
|
package/dist/cjs/Settings.js
CHANGED
|
@@ -89,7 +89,7 @@ var Category = function Category(_ref) {
|
|
|
89
89
|
|
|
90
90
|
function ownKeys(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; }
|
|
91
91
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { defineProperty._defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
92
|
-
var
|
|
92
|
+
var isTextMatching = function isTextMatching(label, searchTerm) {
|
|
93
93
|
return label.toLowerCase().includes(searchTerm.trim().toLowerCase());
|
|
94
94
|
};
|
|
95
95
|
var scrollIntoSettingCategory = function scrollIntoSettingCategory(activeCategory) {
|
|
@@ -106,10 +106,10 @@ var filterCategories = function filterCategories(_ref) {
|
|
|
106
106
|
var isSearchTermBlank = !searchTerm.trim();
|
|
107
107
|
var filteredCategories = isSearchTermBlank ? categories : categories.map(function (category) {
|
|
108
108
|
return _objectSpread(_objectSpread({}, category), {}, {
|
|
109
|
-
items: neetoCist.filterBy({
|
|
110
|
-
label
|
|
111
|
-
|
|
112
|
-
|
|
109
|
+
items: neetoCist.filterBy(function (_ref2) {
|
|
110
|
+
var label = _ref2.label,
|
|
111
|
+
description = _ref2.description;
|
|
112
|
+
return isTextMatching(label, searchTerm) || isTextMatching(description, searchTerm);
|
|
113
113
|
}, category.items)
|
|
114
114
|
});
|
|
115
115
|
});
|
package/dist/cjs/Settings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Settings.js","sources":["../../src/components/Settings/constants.js","../../src/components/Settings/Item.jsx","../../src/components/Settings/Category.jsx","../../src/components/Settings/utils.js","../../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\"];\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n dataCy,\n className = \"\",\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col border p-6 no-underline outline-none transition-colors\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div data-testid={`settings-item-${joinHyphenCase(label)}`}>\n {Icon && <Icon className=\"neeto-ui-text-gray-600 mb-4\" size={32} />}\n <Typography\n className=\"mb-2\"\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport IntegrationCard from \"components/IntegrationCard\";\n\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationCard : Item;\n\n return (\n <div {...{ id }} className=\"flex flex-col py-6\">\n <Typography\n className=\"mb-6\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <div className=\"grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isLabelMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n { label: label => isLabelMatching(label, searchTerm) },\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({ isTitleHidden = false, categories = [] }) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={{\n className: \"w-72\",\n placeholder: t(\"neetoMolecules.settingsPage.placeholder.search\"),\n }}\n />\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full space-y-12\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","dataCy","_ref$className","className","otherProps","_objectWithoutProperties","_excluded","React","createElement","Link","_extends","to","classnames","omit","concat","joinHyphenCase","size","Typography","style","weight","memo","withRouter","Category","items","id","isIntegration","SettingsCard","IntegrationCard","component","map","item","key","isLabelMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","_objectSpread","filterBy","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","useEffect","classNames","Header","title","searchProps","placeholder","isEmpty","NoData","_ref2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Settings.js","sources":["../../src/components/Settings/constants.js","../../src/components/Settings/Item.jsx","../../src/components/Settings/Category.jsx","../../src/components/Settings/utils.js","../../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\"];\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n dataCy,\n className = \"\",\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col border p-6 no-underline outline-none transition-colors\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div data-testid={`settings-item-${joinHyphenCase(label)}`}>\n {Icon && <Icon className=\"neeto-ui-text-gray-600 mb-4\" size={32} />}\n <Typography\n className=\"mb-2\"\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport IntegrationCard from \"components/IntegrationCard\";\n\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationCard : Item;\n\n return (\n <div {...{ id }} className=\"flex flex-col py-6\">\n <Typography\n className=\"mb-6\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <div className=\"grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({ isTitleHidden = false, categories = [] }) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={{\n className: \"w-72\",\n placeholder: t(\"neetoMolecules.settingsPage.placeholder.search\"),\n }}\n />\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full space-y-12\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","dataCy","_ref$className","className","otherProps","_objectWithoutProperties","_excluded","React","createElement","Link","_extends","to","classnames","omit","concat","joinHyphenCase","size","Typography","style","weight","memo","withRouter","Category","items","id","isIntegration","SettingsCard","IntegrationCard","component","map","item","key","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","_objectSpread","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","useEffect","classNames","Header","title","searchProps","placeholder","isEmpty","NoData"],"mappings":"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"}
|
package/dist/cjs/SubHeader.js
CHANGED
|
@@ -10,7 +10,7 @@ var objectWithoutProperties = require('./objectWithoutProperties-2fed2d7d.js');
|
|
|
10
10
|
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
11
11
|
var neetoui = require('@bigbinary/neetoui');
|
|
12
12
|
var reactI18next = require('react-i18next');
|
|
13
|
-
var Columns$1 = require('./Columns-
|
|
13
|
+
var Columns$1 = require('./Columns-6b710238.js');
|
|
14
14
|
var neetoFiltersFrontend = require('@bigbinary/neeto-filters-frontend');
|
|
15
15
|
var injectCss = require('./inject-css-80a5faa3.js');
|
|
16
16
|
require('./slicedToArray-f320d9e7.js');
|
package/dist/cjs/Taxonomy.js
CHANGED
|
@@ -34,7 +34,7 @@ require('@bigbinary/neeto-commons-frontend/react-utils/useQueryParams');
|
|
|
34
34
|
require('@bigbinary/neeto-commons-frontend/react-utils/useUpdateEffect');
|
|
35
35
|
require('@bigbinary/neeto-commons-frontend/utils/general');
|
|
36
36
|
require('@bigbinary/neeto-icons');
|
|
37
|
-
require('./Columns-
|
|
37
|
+
require('./Columns-6b710238.js');
|
|
38
38
|
require('zustand');
|
|
39
39
|
require('zustand/middleware');
|
|
40
40
|
require('@bigbinary/neeto-filters-frontend');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "1.15.
|
|
3
|
+
"version": "1.15.7",
|
|
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>",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Columns-702d539a.js","sources":["../src/components/Columns/constants.js","../src/components/Columns/utils.js","../src/components/Columns/useHiddenColumns.js","../src/components/Columns/Columns.jsx"],"sourcesContent":["export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\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 { 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 React, {\n useState,\n useImperativeHandle,\n forwardRef,\n useEffect,\n} from \"react\";\n\nimport i18next from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { identity } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport { useHiddenColumns } from \"./useHiddenColumns\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils\";\n\nconst Columns = forwardRef(\n (\n {\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n localStorageKey = \"\",\n initialValue = [],\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n onChange = identity,\n searchProps = {},\n ...dropdownProps\n },\n ref\n ) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n hiddenColumns = [],\n hideColumn,\n showColumn,\n getVisibleColumnData,\n onColumnDataChange,\n } = useHiddenColumns(localStorageKey, initialValue);\n\n useEffect(() => {\n onChange(getVisibleColumnData(columnData), hiddenColumns);\n }, [hiddenColumns]);\n\n useEffect(() => {\n onColumnDataChange(columnData);\n }, [columnData]);\n\n /**\n * @deprecated Use showColumn|hideColumn from useHiddenColumns\n */\n useImperativeHandle(ref, () => ({ hideColumn, showColumn }), []);\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n const columns = getHidableColumns(columnData);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n label={t(\"neetoMolecules.columns.columns\")}\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 <Typography\n className=\"neeto-ui-text-gray-600 px-4 py-2\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.columns.columns\")}\n </Typography>\n {isNotEmpty(filteredColumns) ? (\n filteredColumns.map(({ dataIndex, key, title }) => (\n <MenuItem key={key}>\n <Label\n className=\"neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2\"\n htmlFor={dataIndex}\n >\n <Checkbox\n checked={!hiddenColumns.includes(dataIndex)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={dataIndex}\n label={title}\n name={dataIndex}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))\n ) : (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {!!actionBlock && (\n <>\n <Divider />\n {actionBlock}\n </>\n )}\n </div>\n </Menu>\n </Dropdown>\n );\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 key used to store data in local storage (required).\n */\n localStorageKey: PropTypes.string,\n /**\n * The list of columns that are hidden on initial render. This is the `dataIndex` attribute from columnData (optional).\n */\n initialValue: PropTypes.array,\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 * Handler function that is called when a checkbox is selected or unselected.\n */\n onChange: PropTypes.func,\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"],"names":["HIDDEN_COLUMNS_STORAGE_KEY","getHidableColumns","columnData","removeBy","isHidable","filterBySearchTerm","searchTerm","columns","filter","_ref","title","includes","trim","toLower","removeDeletedColumns","hiddenColumns","hiddenColumn","existsBy","dataIndex","useHiddenColumnStore","create","persist","name","useHiddenColumns","localStorageKey","initialValue","arguments","length","undefined","state","setHiddenColumns","setState","_defineProperty","useEffect","oldValue","getFromLocalStorage","removeFromLocalStorage","hideColumn","union","Array","isArray","showColumn","without","getVisibleColumnData","__","onColumnDataChange","isEmpty","newHiddenColumns","equals","Columns","forwardRef","ref","actionBlock","_ref$checkboxProps","checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$localStorageKey","_ref$initialValue","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$onChange","onChange","identity","_ref$searchProps","searchProps","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useHiddenColumns","_useHiddenColumns$hid","useImperativeHandle","handleChange","_ref2","_ref2$target","target","checked","handleSearch","_ref3","value","filteredColumns","React","createElement","_extends","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","label","position","onClose","className","Input","placeholder","prefix","Search","type","Typography","style","weight","isNotEmpty","map","_ref4","key","Label","htmlFor","Checkbox","id","Fragment","displayName"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Columns-069368e2.js","sources":["../../src/components/Columns/constants.js","../../src/components/Columns/utils.js","../../src/components/Columns/useHiddenColumns.js","../../src/components/Columns/Columns.jsx"],"sourcesContent":["export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\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 { 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 React, {\n useState,\n useImperativeHandle,\n forwardRef,\n useEffect,\n} from \"react\";\n\nimport i18next from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { identity } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport { useHiddenColumns } from \"./useHiddenColumns\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils\";\n\nconst Columns = forwardRef(\n (\n {\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n localStorageKey = \"\",\n initialValue = [],\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n onChange = identity,\n searchProps = {},\n ...dropdownProps\n },\n ref\n ) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n hiddenColumns = [],\n hideColumn,\n showColumn,\n getVisibleColumnData,\n onColumnDataChange,\n } = useHiddenColumns(localStorageKey, initialValue);\n\n useEffect(() => {\n onChange(getVisibleColumnData(columnData), hiddenColumns);\n }, [hiddenColumns]);\n\n useEffect(() => {\n onColumnDataChange(columnData);\n }, [columnData]);\n\n /**\n * @deprecated Use showColumn|hideColumn from useHiddenColumns\n */\n useImperativeHandle(ref, () => ({ hideColumn, showColumn }), []);\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n const columns = getHidableColumns(columnData);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n label={t(\"neetoMolecules.columns.columns\")}\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 <Typography\n className=\"neeto-ui-text-gray-600 px-4 py-2\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.columns.columns\")}\n </Typography>\n {isNotEmpty(filteredColumns) ? (\n filteredColumns.map(({ dataIndex, key, title }) => (\n <MenuItem key={key}>\n <Label\n className=\"neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2\"\n htmlFor={dataIndex}\n >\n <Checkbox\n checked={!hiddenColumns.includes(dataIndex)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={dataIndex}\n label={title}\n name={dataIndex}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))\n ) : (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {!!actionBlock && (\n <>\n <Divider />\n {actionBlock}\n </>\n )}\n </div>\n </Menu>\n </Dropdown>\n );\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 key used to store data in local storage (required).\n */\n localStorageKey: PropTypes.string,\n /**\n * The list of columns that are hidden on initial render. This is the `dataIndex` attribute from columnData (optional).\n */\n initialValue: PropTypes.array,\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 * Handler function that is called when a checkbox is selected or unselected.\n */\n onChange: PropTypes.func,\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"],"names":["HIDDEN_COLUMNS_STORAGE_KEY","getHidableColumns","columnData","removeBy","isHidable","filterBySearchTerm","searchTerm","columns","filter","_ref","title","includes","trim","toLower","removeDeletedColumns","hiddenColumns","hiddenColumn","existsBy","dataIndex","useHiddenColumnStore","create","persist","name","useHiddenColumns","localStorageKey","initialValue","arguments","length","undefined","state","setHiddenColumns","setState","_defineProperty","useEffect","oldValue","getFromLocalStorage","removeFromLocalStorage","hideColumn","union","Array","isArray","showColumn","without","getVisibleColumnData","__","onColumnDataChange","isEmpty","newHiddenColumns","equals","Columns","forwardRef","ref","actionBlock","_ref$checkboxProps","checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$localStorageKey","_ref$initialValue","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$onChange","onChange","identity","_ref$searchProps","searchProps","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useHiddenColumns","_useHiddenColumns$hid","useImperativeHandle","handleChange","_ref2","_ref2$target","target","checked","handleSearch","_ref3","value","filteredColumns","React","createElement","_extends","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","label","position","onClose","className","Input","placeholder","prefix","Search","type","Typography","style","weight","isNotEmpty","map","_ref4","key","Label","htmlFor","Checkbox","id","Fragment","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,0BAA0B,GAAG;;ACGnC,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,UAAU,EAAA;AAAA,EAAA,OACzCC,kBAAQ,CAAC;AAAEC,IAAAA,SAAS,EAAE,KAAA;GAAO,EAAEF,UAAU,CAAC,CAAA;AAAA,CAAA,CAAA;AAErC,IAAMG,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,UAAU,EAAEC,OAAO,EAAA;EAAA,OACpDC,YAAM,CACJ,UAAAC,IAAA,EAAA;AAAA,IAAA,IAAGC,KAAK,GAAAD,IAAA,CAALC,KAAK,CAAA;AAAA,IAAA,OAAOC,cAAQ,CAACC,UAAI,CAACC,aAAO,CAACP,UAAU,CAAC,CAAC,EAAEM,UAAI,CAACC,aAAO,CAACH,KAAK,CAAC,CAAC,CAAC,CAAA;AAAA,GAAA,EACxEH,OACF,CAAC,CAAA;AAAA,CAAA,CAAA;AAEI,IAAMO,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAIC,aAAa,EAAEb,UAAU,EAAA;AAAA,EAAA,OAC5Da,aAAa,CAACP,MAAM,CAAC,UAAAQ,YAAY,EAAA;AAAA,IAAA,OAC/BC,kBAAQ,CAAC;AAAEC,MAAAA,SAAS,EAAEF,YAAAA;KAAc,EAAEd,UAAU,CAAC,CAAA;AAAA,GACnD,CAAC,CAAA;AAAA,CAAA;;ACDH;AACA,IAAMiB,oBAAoB,GAAGC,cAAM,CACjCC,kBAAO,CAAC,YAAA;AAAA,EAAA,OAAO,EAAE,CAAA;AAAA,CAAC,EAAE;AAAEC,EAAAA,IAAI,EAAEtB,0BAAAA;AAA2B,CAAC,CAC1D,EAAC;AAED,IAAMuB,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,eAAe,EAAwB;AAAA,EAAA,IAAtBC,YAAY,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE,CAAA;AAC1D,EAAA,IAAMX,aAAa,GAAGI,oBAAoB,CAAC,UAAAU,KAAK,EAAA;IAAA,OAAIA,KAAK,CAACL,eAAe,CAAC,CAAA;GAAC,CAAA,CAAA;AAC3E,EAAA,IAAMM,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGvB,OAAO,EAAA;IAAA,OAC9BY,oBAAoB,CAACY,QAAQ,CAAAC,8BAAA,KAAIR,eAAe,EAAGjB,OAAO,CAAE,CAAC,CAAA;AAAA,GAAA,CAAA;;AAE/D;AACA0B,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAMC,QAAQ,GAAGC,2BAAmB,CAACX,eAAe,CAAC,CAAA;AACrD,IAAA,IAAIU,QAAQ,EAAE;MACZJ,gBAAgB,CAACI,QAAQ,CAAC,CAAA;MAC1BE,8BAAsB,CAACZ,eAAe,CAAC,CAAA;AACzC,KAAC,MAAM,IAAI,CAACT,aAAa,EAAE;MACzBe,gBAAgB,CAACL,YAAY,CAAC,CAAA;AAChC,KAAA;AACF,GAAC,EAAE,CAACD,eAAe,CAAC,CAAC,CAAA;AAErB,EAAA,IAAMa,UAAU,GAAG,SAAbA,UAAUA,CAAG9B,OAAO,EAAA;AAAA,IAAA,OACxBuB,gBAAgB,CACdQ,WAAK,CAACvB,aAAa,EAAEwB,KAAK,CAACC,OAAO,CAACjC,OAAO,CAAC,GAAGA,OAAO,GAAG,CAACA,OAAO,CAAC,CACnE,CAAC,CAAA;AAAA,GAAA,CAAA;AAEH,EAAA,IAAMkC,UAAU,GAAG,SAAbA,UAAUA,CAAGlC,OAAO,EAAA;AAAA,IAAA,OACxBuB,gBAAgB,CACdY,aAAO,CAACH,KAAK,CAACC,OAAO,CAACjC,OAAO,CAAC,GAAGA,OAAO,GAAG,CAACA,OAAO,CAAC,EAAEQ,aAAa,CACrE,CAAC,CAAA;AAAA,GAAA,CAAA;AAEH,EAAA,IAAM4B,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGzC,UAAU,EAAA;AAAA,IAAA,OACrCC,kBAAQ,CAAC;AAAEe,MAAAA,SAAS,EAAEP,cAAQ,CAACiC,QAAE,EAAE7B,aAAa,IAAI,EAAE,CAAA;KAAG,EAAEb,UAAU,CAAC,CAAA;AAAA,GAAA,CAAA;AAExE,EAAA,IAAM2C,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAG3C,UAAU,EAAI;AACvC,IAAA,IAAI4C,aAAO,CAAC5C,UAAU,CAAC,IAAI,CAACa,aAAa,EAAE,OAAA;AAC3C,IAAA,IAAMgC,gBAAgB,GAAGjC,oBAAoB,CAACC,aAAa,EAAEb,UAAU,CAAC,CAAA;AACxE,IAAA,IAAI,CAAC8C,YAAM,CAACD,gBAAgB,EAAEhC,aAAa,CAAC,EAAE;MAC5Ce,gBAAgB,CAACiB,gBAAgB,CAAC,CAAA;AACpC,KAAA;GACD,CAAA;EAED,OAAO;AACLhC,IAAAA,aAAa,EAAbA,aAAa;AACbsB,IAAAA,UAAU,EAAVA,UAAU;AACVI,IAAAA,UAAU,EAAVA,UAAU;AACVE,IAAAA,oBAAoB,EAApBA,oBAAoB;AACpBE,IAAAA,kBAAkB,EAAlBA,kBAAAA;GACD,CAAA;AACH;;;AC5CMI,IAAAA,OAAO,gBAAGC,gBAAU,CACxB,UAAAzC,IAAA,EAaE0C,GAAG,EACA;AAAA,EAAA,IAZDC,WAAW,GAAA3C,IAAA,CAAX2C,WAAW;IAAAC,kBAAA,GAAA5C,IAAA,CACX6C,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,kBAAA;IAAAE,eAAA,GAAA9C,IAAA,CAClBP,UAAU;AAAVA,IAAAA,UAAU,GAAAqD,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;IAAAC,iBAAA,GAAA/C,IAAA,CACfgD,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,iBAAA;IAAAE,oBAAA,GAAAjD,IAAA,CACpBe,eAAe;AAAfA,IAAAA,eAAe,GAAAkC,oBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,oBAAA;IAAAC,iBAAA,GAAAlD,IAAA,CACpBgB,YAAY;AAAZA,IAAAA,YAAY,GAAAkC,iBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,iBAAA;IAAAC,oBAAA,GAAAnD,IAAA,CACjBoD,eAAe;IAAfA,eAAe,GAAAD,oBAAA,KAAA,KAAA,CAAA,GAAGE,2BAAO,CAACC,CAAC,CAAC,kCAAkC,CAAC,GAAAH,oBAAA;IAAAI,aAAA,GAAAvD,IAAA,CAC/DwD,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAGE,KAAAA,CAAAA,GAAAA,cAAQ,GAAAF,aAAA;IAAAG,gBAAA,GAAA1D,IAAA,CACnB2D,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA;AACbE,IAAAA,aAAa,GAAAC,gDAAA,CAAA7D,IAAA,EAAA8D,SAAA,CAAA,CAAA;AAIlB,EAAA,IAAQC,OAAO,GAAqBC,gBAAQ,CAApCD,OAAO;IAAEE,IAAI,GAAeD,gBAAQ,CAA3BC,IAAI;IAAEC,QAAQ,GAAKF,gBAAQ,CAArBE,QAAQ,CAAA;AAC/B,EAAA,IAAAC,SAAA,GAAoCC,cAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,4BAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzCtE,IAAAA,UAAU,GAAAwE,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAChC,EAAA,IAAAG,eAAA,GAAcC,2BAAc,EAAE;IAAtBnB,CAAC,GAAAkB,eAAA,CAADlB,CAAC,CAAA;AAET,EAAA,IAAAoB,iBAAA,GAMI5D,gBAAgB,CAACC,eAAe,EAAEC,YAAY,CAAC;IAAA2D,qBAAA,GAAAD,iBAAA,CALjDpE,aAAa;AAAbA,IAAAA,aAAa,GAAAqE,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IAClB/C,UAAU,GAAA8C,iBAAA,CAAV9C,UAAU;IACVI,UAAU,GAAA0C,iBAAA,CAAV1C,UAAU;IACVE,oBAAoB,GAAAwC,iBAAA,CAApBxC,oBAAoB;IACpBE,kBAAkB,GAAAsC,iBAAA,CAAlBtC,kBAAkB,CAAA;AAGpBZ,EAAAA,eAAS,CAAC,YAAM;AACdgC,IAAAA,QAAQ,CAACtB,oBAAoB,CAACzC,UAAU,CAAC,EAAEa,aAAa,CAAC,CAAA;AAC3D,GAAC,EAAE,CAACA,aAAa,CAAC,CAAC,CAAA;AAEnBkB,EAAAA,eAAS,CAAC,YAAM;IACdY,kBAAkB,CAAC3C,UAAU,CAAC,CAAA;AAChC,GAAC,EAAE,CAACA,UAAU,CAAC,CAAC,CAAA;;AAEhB;AACJ;AACA;EACImF,yBAAmB,CAAClC,GAAG,EAAE,YAAA;IAAA,OAAO;AAAEd,MAAAA,UAAU,EAAVA,UAAU;AAAEI,MAAAA,UAAU,EAAVA,UAAAA;KAAY,CAAA;GAAC,EAAE,EAAE,CAAC,CAAA;AAEhE,EAAA,IAAM6C,YAAY,GAAG,SAAfA,YAAYA,CAAAC,KAAA,EAAiD;AAAA,IAAA,IAAAC,YAAA,GAAAD,KAAA,CAA3CE,MAAM;MAAUvE,SAAS,GAAAsE,YAAA,CAAflE,IAAI;MAAaoE,OAAO,GAAAF,YAAA,CAAPE,OAAO,CAAA;IACxD,IAAIA,OAAO,EAAEjD,UAAU,CAACvB,SAAS,CAAC,CAAC,KAC9BmB,UAAU,CAACnB,SAAS,CAAC,CAAA;GAC3B,CAAA;AACD,EAAA,IAAMyE,YAAY,GAAG,SAAfA,YAAYA,CAAAC,KAAA,EAAA;AAAA,IAAA,IAAgBC,KAAK,GAAAD,KAAA,CAAfH,MAAM,CAAII,KAAK,CAAA;IAAA,OAASb,aAAa,CAACa,KAAK,CAAC,CAAA;AAAA,GAAA,CAAA;AAEpE,EAAA,IAAMtF,OAAO,GAAGN,iBAAiB,CAACC,UAAU,CAAC,CAAA;AAC7C,EAAA,IAAM4F,eAAe,GAAGzF,kBAAkB,CAACC,UAAU,EAAEC,OAAO,CAAC,CAAA;AAE/D,EAAA,oBACEwF,yBAAA,CAAAC,aAAA,CAACvB,gBAAQ,EAAAwB,iBAAA,CAAA;IACPC,QAAQ,EAAEC,QAAQ,CAACC,IAAK;AACxBC,IAAAA,UAAU,EAAC,QAAQ;AACnBC,IAAAA,WAAW,EAAC,MAAM;AAClBC,IAAAA,aAAa,EAAE,KAAM;AACrBC,IAAAA,KAAK,EAAEzC,CAAC,CAAC,gCAAgC,CAAE;AAC3C0C,IAAAA,QAAQ,EAAC,YAAY;IACrBC,OAAO,EAAE,SAAAA,OAAA,GAAA;MAAA,OAAM1B,aAAa,CAAC,EAAE,CAAC,CAAA;AAAA,KAAA;GAC5BX,EAAAA,aAAa,CAEjB0B,eAAAA,yBAAA,CAAAC,aAAA,CAACtB,IAAI,EAAA,IAAA,eACHqB,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKW,IAAAA,SAAS,EAAC,oCAAA;GACZlD,EAAAA,YAAY,iBACXsC,yBAAA,CAAAC,aAAA,CAACY,aAAK,EAAAX,iBAAA,CAAA;AACJU,IAAAA,SAAS,EAAC,WAAW;AACrB,IAAA,SAAA,EAAQ,yBAAyB;AACjC,IAAA,aAAA,EAAY,yBAAyB;AACrCE,IAAAA,WAAW,EAAE9C,CAAC,CAAC,+BAA+B,CAAE;AAChD+C,IAAAA,MAAM,eAAEf,yBAAA,CAAAC,aAAA,CAACe,iBAAM,MAAE,CAAE;AACnBC,IAAAA,IAAI,EAAC,QAAQ;AACbnB,IAAAA,KAAK,EAAEvF,UAAW;AAClB2D,IAAAA,QAAQ,EAAE0B,YAAAA;GACNvB,EAAAA,WAAW,CAChB,CACF,eACD2B,yBAAA,CAAAC,aAAA,CAACiB,kBAAU,EAAA;AACTN,IAAAA,SAAS,EAAC,kCAAkC;AAC5CO,IAAAA,KAAK,EAAC,OAAO;AACbC,IAAAA,MAAM,EAAC,UAAA;AAAU,GAAA,EAEhBpD,CAAC,CAAC,gCAAgC,CACzB,CAAC,EACZqD,oBAAU,CAACtB,eAAe,CAAC,GAC1BA,eAAe,CAACuB,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGpG,SAAS,GAAAoG,KAAA,CAATpG,SAAS;MAAEqG,GAAG,GAAAD,KAAA,CAAHC,GAAG;MAAE7G,KAAK,GAAA4G,KAAA,CAAL5G,KAAK,CAAA;AAAA,IAAA,oBAC1CqF,yBAAA,CAAAC,aAAA,CAACrB,QAAQ,EAAA;AAAC4C,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,eACjBxB,yBAAA,CAAAC,aAAA,CAACwB,aAAK,EAAA;AACJb,MAAAA,SAAS,EAAC,8EAA8E;AACxFc,MAAAA,OAAO,EAAEvG,SAAAA;AAAU,KAAA,eAEnB6E,yBAAA,CAAAC,aAAA,CAAC0B,gBAAQ,EAAAzB,iBAAA,CAAA;AACPP,MAAAA,OAAO,EAAE,CAAC3E,aAAa,CAACJ,QAAQ,CAACO,SAAS,CAAE;AAC5C,MAAA,SAAA,EAAQ,2BAA2B;AACnCyG,MAAAA,EAAE,EAAEzG,SAAU;AACdsF,MAAAA,KAAK,EAAE9F,KAAM;AACbY,MAAAA,IAAI,EAAEJ,SAAU;AAChB+C,MAAAA,QAAQ,EAAEqB,YAAAA;AAAa,KAAA,EACnBhC,aAAa,CAClB,CACI,CACC,CAAC,CAAA;AAAA,GACZ,CAAC,gBAEFyC,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMW,IAAAA,SAAS,EAAC,oEAAA;GACb9C,EAAAA,eACG,CACP,EACA,CAAC,CAACT,WAAW,iBACZ2C,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAA6B,QAAA,EAAA,IAAA,eACE7B,yBAAA,CAAAC,aAAA,CAACxB,OAAO,EAAA,IAAE,CAAC,EACVpB,WACD,CAED,CACD,CACE,CAAC,CAAA;AAEf,CACF,EAAC;AAyCDH,OAAO,CAAC4E,WAAW,GAAG,SAAS;;;;;;;"}
|