@bigbinary/neeto-molecules 3.4.0 → 3.4.2
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/CustomDomainDashboard.js +3 -0
- package/dist/CustomDomainDashboard.js.map +1 -1
- package/dist/Header.js +10 -5
- package/dist/Header.js.map +1 -1
- package/dist/Settings.js +4 -1
- package/dist/Settings.js.map +1 -1
- package/dist/Taxonomy.js +22 -11
- package/dist/Taxonomy.js.map +1 -1
- package/dist/cjs/CustomDomainDashboard.js +3 -0
- package/dist/cjs/CustomDomainDashboard.js.map +1 -1
- package/dist/cjs/Header.js +10 -5
- package/dist/cjs/Header.js.map +1 -1
- package/dist/cjs/Settings.js +4 -1
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/Taxonomy.js +23 -12
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/package.json +1 -1
- package/src/translations/en.json +1 -0
- package/types/Header.d.ts +2 -1
- package/types/Taxonomy.d.ts +2 -0
package/dist/Taxonomy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Taxonomy.js","sources":["../src/components/Taxonomy/constants.js","../src/components/Taxonomy/api.js","../src/components/Taxonomy/useTaxonomyApi.js","../src/components/Taxonomy/utils.jsx","../src/components/Taxonomy/EditPane.jsx","../src/components/Taxonomy/LeftActionBlock.jsx","../src/components/Taxonomy/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const LABEL_REJECT_CHARS_REGEX = /[^a-zA-Z\\d\\s_-]+/;\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n singularLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.singularLabelRequired\")\n ),\n pluralLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.pluralLabelRequired\")\n ),\n});\n\nexport const TAXONOMY_EVENTS = { UPDATED: \"taxonomy_updated\" };\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/constants\";\n\nconst update = ({ keyName, payload }) =>\n axios.patch(`${BASE_API_V1_URL}/taxonomies/${keyName}`, payload);\n\nconst bulkDestroy = payload =>\n axios.delete(`${BASE_API_V1_URL}/taxonomies/bulk_destroy`, {\n data: payload,\n });\n\nconst taxonomiesApi = { update, bulkDestroy };\n\nexport default taxonomiesApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport taxonomiesApi from \"./api\";\n\nconst useUpdateTaxonomy = options =>\n useMutation({ mutationFn: taxonomiesApi.update, ...options });\n\nconst useBulkDestroyTaxonomies = options =>\n useMutation({ mutationFn: taxonomiesApi.bulkDestroy, ...options });\n\nexport { useUpdateTaxonomy, useBulkDestroyTaxonomies };\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nexport const formatLabel = label => capitalize(label.trim());\n\nexport const formatDataForTable = taxonomies =>\n toPairs(taxonomies).map(([keyName, labels]) => ({\n keyName,\n singularLabel: labels[\"singular\"],\n pluralLabel: labels[\"plural\"],\n }));\n\nexport const getColumnData = ({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n}) => {\n const {\n singularColumn: showSingularColumn = true,\n pluralColumn: showPluralColumn = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n return [\n {\n title: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n dataIndex: \"default\",\n key: \"defaultLabel\",\n width: 400,\n render: (_, values) => {\n const menuItems = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => handleEdit(values),\n },\n {\n key: \"reset\",\n label: t(\"neetoMolecules.common.actions.resetToDefaults\"),\n onClick: () => {\n setCurrentKeys([values.keyName]);\n setIsResetModalOpen(true);\n },\n },\n ];\n\n return (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">\n {t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n </Typography>\n <MoreDropdown\n {...{ menuItems }}\n dropdownProps={{ strategy: \"fixed\" }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n title: singularLabel,\n dataIndex: \"singularLabel\",\n key: \"singularLabel\",\n width: 300,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [\n {\n title: pluralLabel,\n dataIndex: \"pluralLabel\",\n key: \"pluralLabel\",\n width: 300,\n },\n ]\n : []),\n ];\n};\n\nexport const getFilteredTaxonomies = (matchString, taxonomies) => {\n const filteredArray = toPairs(taxonomies).filter(([key, value]) => {\n const defaultLabel = t(`taxonomyDefaultLabels.${key}.singular`);\n const valuesToSearch = [defaultLabel, ...Object.values(value)];\n\n return valuesToSearch.some(str =>\n str.toLowerCase().includes(matchString.toLowerCase())\n );\n });\n\n return fromPairs(filteredArray);\n};\n","import { useRef } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/utils\";\nimport { Pane, Toastr, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n LABEL_REJECT_CHARS_REGEX,\n TAXONOMY_EVENTS,\n VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { useUpdateTaxonomy } from \"./useTaxonomyApi\";\nimport { formatLabel } from \"./utils\";\n\nconst EditPane = ({\n columnLabels,\n columnsToShow,\n initialValues,\n isOpen,\n onClose,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const { mutate: updateTaxonomy } = useUpdateTaxonomy();\n\n const {\n singularColumn: showSingularInputField = true,\n pluralColumn: showPluralInputField = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n const handleSubmit = (values, { setSubmitting }) => {\n const { keyName, singularLabel, pluralLabel } = values;\n\n const payload = {\n taxonomy: {\n keyName,\n singularLabel: formatLabel(singularLabel),\n pluralLabel: formatLabel(pluralLabel),\n },\n };\n\n const options = {\n onSuccess: () => {\n captureAnalyticsEvent(TAXONOMY_EVENTS.UPDATED, {\n taxonomy: payload.taxonomy,\n });\n window.location.reload();\n },\n onError: error => Toastr.error(error),\n onSettled: () => setSubmitting(false),\n };\n\n updateTaxonomy({ keyName, payload }, options);\n };\n\n return (\n <Pane\n {...{ initialFocusRef, isOpen, onClose }}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.editPane.title\"\n values={{\n entity: t(\n `taxonomyDefaultLabels.${initialValues.keyName}.singular`\n ),\n ...(showSingularInputField && showPluralInputField\n ? PLURAL\n : SINGULAR),\n }}\n />\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-cy=\"taxonomy-singular-input-field\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-cy=\"taxonomy-plural-input-field\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center space-x-2\"\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default EditPane;\n","import { t } from \"i18next\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n return (\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography\n className=\"mr-4 font-semibold\"\n component=\"h4\"\n data-cy=\"item-count\"\n >\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"neeto-ui-text-gray-600\" />,\n }}\n />\n </Typography>\n <Dropdown\n buttonStyle=\"secondary\"\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n >\n <Menu>\n <MenuItem.Button\n style=\"secondary\"\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </>\n ) : (\n <Typography\n className=\"mr-4 font-semibold\"\n component=\"h4\"\n data-cy=\"item-count\"\n >\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n )\n );\n};\n\nexport default LeftActionBlock;\n","import { useState, useEffect } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/initializers\";\nimport withTitle from \"neetocommons/react-utils/withTitle\";\nimport { Alert, NoData, Table, Toastr } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop, pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nconst Taxonomy = ({ breadcrumbs, columnLabels = {}, columnsToShow = {} }) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n const [isMobileScreen, setIsMobileScreen] = useState(false);\n\n const isLargerScreen = () => window.innerWidth > 1024;\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomies);\n\n const [filteredTaxonomies, setFilteredTaxonomies] = useState(hostTaxonomies);\n\n const handleRowSelect = ids => setSelectedRowIds(ids);\n\n const handleDelete = () => {\n const payload = { keyNames: currentKeys };\n\n const options = {\n onSuccess: () => window.location.reload(),\n onError: error => Toastr.error(error),\n };\n\n bulkDestroyTaxonomies(payload, options);\n };\n\n const handleEdit = values => {\n setInitialValues(values);\n setIsEditTaxonomyPaneOpen(true);\n };\n\n const handleSearch = event => {\n setSearchString(event.target.value);\n const newTaxonomies = getFilteredTaxonomies(\n event.target.value,\n hostTaxonomies\n );\n setFilteredTaxonomies(newTaxonomies);\n };\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) setIsMobileScreen(false);\n else setIsMobileScreen(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs }}\n size={isMobileScreen ? \"small\" : \"large\"}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={Object.entries(filteredTaxonomies).length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <TableWrapper>\n <Table\n fixedHeight\n rowSelection\n allowRowClick={false}\n rowData={formatDataForTable(filteredTaxonomies)}\n rowKey={prop(\"keyName\")}\n scroll={{ x: 0 }}\n selectedRowKeys={selectedRowIds}\n tableLayout=\"fixed\"\n columnData={getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n })}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Alert\n isOpen={isResetModalOpen}\n submitButtonLabel={t(\"neetoMolecules.common.actions.proceed\")}\n title={t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n }\n onClose={() => setIsResetModalOpen(false)}\n onSubmit={handleDelete}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.taxonomy.noData\")} />\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n /**\n * To show breadcrumbs. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n};\n\nexport default withTitle(Taxonomy, t(\"neetoMolecules.taxonomy.browserTitle\"));\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","title","dataIndex","key","width","render","_","values","menuItems","onClick","_jsxs","className","children","_jsx","Typography","style","MoreDropdown","dropdownProps","strategy","dropdownButtonProps","_toConsumableArray","getFilteredTaxonomies","matchString","filteredArray","filter","_ref4","_ref5","value","defaultLabel","valuesToSearch","Object","some","str","toLowerCase","includes","fromPairs","EditPane","initialValues","isOpen","onClose","_useTranslation","useTranslation","initialFocusRef","useRef","_useUpdateTaxonomy","updateTaxonomy","mutate","showSingularInputField","showPluralInputField","handleSubmit","setSubmitting","taxonomy","onSuccess","captureAnalyticsEvent","window","location","reload","onError","error","Toastr","onSettled","Pane","Header","weight","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","Menu","Dropdown","MenuItem","_Fragment","component","count","components","span","buttonStyle","Button","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState10","searchString","setSearchString","_useState11","_useState12","currentKeys","_useState13","_useState14","isMobileScreen","setIsMobileScreen","isLargerScreen","innerWidth","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","hostTaxonomies","pick","_useState15","_useState16","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","useEffect","handleResize","addEventListener","removeEventListener","Container","size","searchProps","onChange","placeholder","SubHeader","leftActionBlock","length","entries","isNotEmpty","TableWrapper","Table","fixedHeight","rowSelection","allowRowClick","rowData","rowKey","prop","scroll","x","selectedRowKeys","tableLayout","columnData","onRowSelect","Alert","submitButtonLabel","message","what","NoData","withTitle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAAMA,wBAAwB,GAAG,kBAAkB,CAAA;AAEnD,IAAMC,iBAAiB,GAAGC,GAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AAClDC,EAAAA,aAAa,EAAEH,GAAG,CACfI,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CACPC,CAAC,CAAC,oEAAoE,CACxE,CAAC;AACHC,EAAAA,WAAW,EAAER,GAAG,CACbI,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CACPC,CAAC,CAAC,kEAAkE,CACtE,CAAA;AACJ,CAAC,CAAC,CAAA;AAEK,IAAME,eAAe,GAAG;AAAEC,EAAAA,OAAO,EAAE,kBAAA;AAAmB,CAAC;;ACjB9D,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,OAAO,GAAAF,IAAA,CAAPE,OAAO,CAAA;AAAA,EAAA,OAChCC,KAAK,CAACC,KAAK,CAAA,EAAA,CAAAC,MAAA,CAAIC,eAAe,EAAA,cAAA,CAAA,CAAAD,MAAA,CAAeJ,OAAO,CAAA,EAAIC,OAAO,CAAC,CAAA;AAAA,CAAA,CAAA;AAElE,IAAMK,WAAW,GAAG,SAAdA,WAAWA,CAAGL,OAAO,EAAA;AAAA,EAAA,OACzBC,KAAK,CAAO,QAAA,CAAA,CAAA,EAAA,CAAAE,MAAA,CAAIC,eAAe,EAA4B,0BAAA,CAAA,EAAA;AACzDE,IAAAA,IAAI,EAAEN,OAAAA;AACR,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAEJ,IAAMO,aAAa,GAAG;AAAEV,EAAAA,MAAM,EAANA,MAAM;AAAEQ,EAAAA,WAAW,EAAXA,WAAAA;AAAY,CAAC;;;;ACP7C,IAAMG,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,OAAO,EAAA;EAAA,OAC/BC,WAAW,CAAAC,eAAA,CAAA;IAAGC,UAAU,EAAEL,aAAa,CAACV,MAAAA;GAAWY,EAAAA,OAAO,CAAE,CAAC,CAAA;AAAA,CAAA,CAAA;AAE/D,IAAMI,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAGJ,OAAO,EAAA;EAAA,OACtCC,WAAW,CAAAC,eAAA,CAAA;IAAGC,UAAU,EAAEL,aAAa,CAACF,WAAAA;GAAgBI,EAAAA,OAAO,CAAE,CAAC,CAAA;AAAA,CAAA;;ACD7D,IAAMK,WAAW,GAAG,SAAdA,WAAWA,CAAGC,KAAK,EAAA;AAAA,EAAA,OAAIC,UAAU,CAACD,KAAK,CAACxB,IAAI,EAAE,CAAC,CAAA;AAAA,CAAA,CAAA;AAErD,IAAM0B,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,UAAU,EAAA;EAAA,OAC1CC,OAAO,CAACD,UAAU,CAAC,CAACE,GAAG,CAAC,UAAAtB,IAAA,EAAA;AAAA,IAAA,IAAAuB,KAAA,GAAAC,cAAA,CAAAxB,IAAA,EAAA,CAAA,CAAA;AAAEC,MAAAA,OAAO,GAAAsB,KAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,MAAM,GAAAF,KAAA,CAAA,CAAA,CAAA,CAAA;IAAA,OAAO;AAC9CtB,MAAAA,OAAO,EAAPA,OAAO;AACPV,MAAAA,aAAa,EAAEkC,MAAM,CAAC,UAAU,CAAC;MACjC7B,WAAW,EAAE6B,MAAM,CAAC,QAAQ,CAAA;KAC7B,CAAA;AAAA,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAEE,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,KAAA,EAMpB;AAAA,EAAA,IALJC,YAAY,GAAAD,KAAA,CAAZC,YAAY;IACZC,aAAa,GAAAF,KAAA,CAAbE,aAAa;IACbC,UAAU,GAAAH,KAAA,CAAVG,UAAU;IACVC,cAAc,GAAAJ,KAAA,CAAdI,cAAc;IACdC,mBAAmB,GAAAL,KAAA,CAAnBK,mBAAmB,CAAA;AAEnB,EAAA,IAAAC,qBAAA,GAGIJ,aAAa,CAFfK,cAAc;AAAEC,IAAAA,kBAAkB,GAAAF,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;IAAAG,qBAAA,GAEvCP,aAAa,CADfQ,YAAY;AAAEC,IAAAA,gBAAgB,GAAAF,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA,CAAA;AAGvC,EAAA,IAAAG,qBAAA,GAGIX,YAAY,CAFdY,QAAQ;IAAEjD,aAAa,GAAAgD,qBAAA,KAAG5C,KAAAA,CAAAA,GAAAA,CAAC,CAAC,uCAAuC,CAAC,GAAA4C,qBAAA;IAAAE,oBAAA,GAElEb,YAAY,CADdc,MAAM;IAAE9C,WAAW,GAAA6C,oBAAA,KAAG9C,KAAAA,CAAAA,GAAAA,CAAC,CAAC,qCAAqC,CAAC,GAAA8C,oBAAA,CAAA;EAGhE,OACE,CAAA;AACEE,IAAAA,KAAK,EAAEhD,CAAC,CAAC,sCAAsC,CAAC;AAChDiD,IAAAA,SAAS,EAAE,SAAS;AACpBC,IAAAA,GAAG,EAAE,cAAc;AACnBC,IAAAA,KAAK,EAAE,GAAG;AACVC,IAAAA,MAAM,EAAE,SAAAA,MAAAA,CAACC,CAAC,EAAEC,MAAM,EAAK;MACrB,IAAMC,SAAS,GAAG,CAChB;AACEL,QAAAA,GAAG,EAAE,MAAM;AACX5B,QAAAA,KAAK,EAAEtB,CAAC,CAAC,oCAAoC,CAAC;QAC9CwD,OAAO,EAAE,SAAAA,OAAA,GAAA;UAAA,OAAMrB,UAAU,CAACmB,MAAM,CAAC,CAAA;AAAA,SAAA;AACnC,OAAC,EACD;AACEJ,QAAAA,GAAG,EAAE,OAAO;AACZ5B,QAAAA,KAAK,EAAEtB,CAAC,CAAC,+CAA+C,CAAC;QACzDwD,OAAO,EAAE,SAAAA,OAAAA,GAAM;AACbpB,UAAAA,cAAc,CAAC,CAACkB,MAAM,CAAChD,OAAO,CAAC,CAAC,CAAA;UAChC+B,mBAAmB,CAAC,IAAI,CAAC,CAAA;AAC3B,SAAA;AACF,OAAC,CACF,CAAA;AAED,MAAA,oBACEoB,IAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,2CAA2C;QAAAC,QAAA,EAAA,cACxDC,GAAA,CAACC,UAAU,EAAA;AAACC,UAAAA,KAAK,EAAC,OAAO;UAAAH,QAAA,EACtB3D,CAAC,CAAAU,wBAAAA,CAAAA,MAAA,CAA0B4C,MAAM,CAAChD,OAAO,EAAW,WAAA,CAAA,CAAA;AAAC,SAC5C,CAAC,eACbsD,GAAA,CAACG,YAAY,EAAA;AACLR,UAAAA,SAAS,EAATA,SAAS;AACfS,UAAAA,aAAa,EAAE;AAAEC,YAAAA,QAAQ,EAAE,OAAA;WAAU;AACrCC,UAAAA,mBAAmB,EAAE;AACnB,YAAA,aAAa,EAAAxD,oBAAAA,CAAAA,MAAA,CAAuB4C,MAAM,CAAChD,OAAO,CAAA;AACpD,WAAA;AAAE,SACH,CAAC,CAAA;AAAA,OACC,CAAC,CAAA;AAEV,KAAA;AACF,GAAC,EAAAI,MAAA,CAAAyD,kBAAA,CACG3B,kBAAkB,GAClB,CACE;AACEQ,IAAAA,KAAK,EAAEpD,aAAa;AACpBqD,IAAAA,SAAS,EAAE,eAAe;AAC1BC,IAAAA,GAAG,EAAE,eAAe;AACpBC,IAAAA,KAAK,EAAE,GAAA;GACR,CACF,GACD,EAAE,CAAA,EAAAgB,kBAAA,CACFxB,gBAAgB,GAChB,CACE;AACEK,IAAAA,KAAK,EAAE/C,WAAW;AAClBgD,IAAAA,SAAS,EAAE,aAAa;AACxBC,IAAAA,GAAG,EAAE,aAAa;AAClBC,IAAAA,KAAK,EAAE,GAAA;GACR,CACF,GACD,EAAE,CAAA,CAAA,CAAA;AAEV,CAAC,CAAA;AAEM,IAAMiB,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,WAAW,EAAE5C,UAAU,EAAK;EAChE,IAAM6C,aAAa,GAAG5C,OAAO,CAACD,UAAU,CAAC,CAAC8C,MAAM,CAAC,UAAAC,KAAA,EAAkB;AAAA,IAAA,IAAAC,KAAA,GAAA5C,cAAA,CAAA2C,KAAA,EAAA,CAAA,CAAA;AAAhBtB,MAAAA,GAAG,GAAAuB,KAAA,CAAA,CAAA,CAAA;AAAEC,MAAAA,KAAK,GAAAD,KAAA,CAAA,CAAA,CAAA,CAAA;IAC3D,IAAME,YAAY,GAAG3E,CAAC,CAAA,wBAAA,CAAAU,MAAA,CAA0BwC,GAAG,cAAW,CAAC,CAAA;AAC/D,IAAA,IAAM0B,cAAc,GAAA,CAAID,YAAY,CAAA,CAAAjE,MAAA,CAAAyD,kBAAA,CAAKU,MAAM,CAACvB,MAAM,CAACoB,KAAK,CAAC,CAAC,CAAA,CAAA;AAE9D,IAAA,OAAOE,cAAc,CAACE,IAAI,CAAC,UAAAC,GAAG,EAAA;AAAA,MAAA,OAC5BA,GAAG,CAACC,WAAW,EAAE,CAACC,QAAQ,CAACZ,WAAW,CAACW,WAAW,EAAE,CAAC,CAAA;AAAA,KACvD,CAAC,CAAA;AACH,GAAC,CAAC,CAAA;EAEF,OAAOE,SAAS,CAACZ,aAAa,CAAC,CAAA;AACjC,CAAC;;;;AC1FD,IAAMa,QAAQ,GAAG,SAAXA,QAAQA,CAAA9E,IAAA,EAMR;AAAA,EAAA,IALJ4B,YAAY,GAAA5B,IAAA,CAAZ4B,YAAY;IACZC,aAAa,GAAA7B,IAAA,CAAb6B,aAAa;IACbkD,aAAa,GAAA/E,IAAA,CAAb+E,aAAa;IACbC,MAAM,GAAAhF,IAAA,CAANgF,MAAM;IACNC,OAAO,GAAAjF,IAAA,CAAPiF,OAAO,CAAA;AAEP,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBxF,CAAC,GAAAuF,eAAA,CAADvF,CAAC,CAAA;AACT,EAAA,IAAMyF,eAAe,GAAGC,MAAM,CAAC,IAAI,CAAC,CAAA;AAEpC,EAAA,IAAAC,kBAAA,GAAmC5E,iBAAiB,EAAE;IAAtC6E,cAAc,GAAAD,kBAAA,CAAtBE,MAAM,CAAA;AAEd,EAAA,IAAAvD,qBAAA,GAGIJ,aAAa,CAFfK,cAAc;AAAEuD,IAAAA,sBAAsB,GAAAxD,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;IAAAG,qBAAA,GAE3CP,aAAa,CADfQ,YAAY;AAAEqD,IAAAA,oBAAoB,GAAAtD,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA,CAAA;AAG3C,EAAA,IAAAG,qBAAA,GAGIX,YAAY,CAFdY,QAAQ;IAAEjD,aAAa,GAAAgD,qBAAA,KAAG5C,KAAAA,CAAAA,GAAAA,CAAC,CAAC,uCAAuC,CAAC,GAAA4C,qBAAA;IAAAE,oBAAA,GAElEb,YAAY,CADdc,MAAM;IAAE9C,WAAW,GAAA6C,oBAAA,KAAG9C,KAAAA,CAAAA,GAAAA,CAAC,CAAC,qCAAqC,CAAC,GAAA8C,oBAAA,CAAA;EAGhE,IAAMkD,YAAY,GAAG,SAAfA,YAAYA,CAAI1C,MAAM,EAAA1B,KAAA,EAAwB;AAAA,IAAA,IAApBqE,aAAa,GAAArE,KAAA,CAAbqE,aAAa,CAAA;AAC3C,IAAA,IAAQ3F,OAAO,GAAiCgD,MAAM,CAA9ChD,OAAO;MAAEV,aAAa,GAAkB0D,MAAM,CAArC1D,aAAa;MAAEK,WAAW,GAAKqD,MAAM,CAAtBrD,WAAW,CAAA;AAE3C,IAAA,IAAMM,OAAO,GAAG;AACd2F,MAAAA,QAAQ,EAAE;AACR5F,QAAAA,OAAO,EAAPA,OAAO;AACPV,QAAAA,aAAa,EAAEyB,WAAW,CAACzB,aAAa,CAAC;QACzCK,WAAW,EAAEoB,WAAW,CAACpB,WAAW,CAAA;AACtC,OAAA;KACD,CAAA;AAED,IAAA,IAAMe,OAAO,GAAG;MACdmF,SAAS,EAAE,SAAAA,SAAAA,GAAM;AACfC,QAAAA,qBAAqB,CAAClG,eAAe,CAACC,OAAO,EAAE;UAC7C+F,QAAQ,EAAE3F,OAAO,CAAC2F,QAAAA;AACpB,SAAC,CAAC,CAAA;AACFG,QAAAA,MAAM,CAACC,QAAQ,CAACC,MAAM,EAAE,CAAA;OACzB;MACDC,OAAO,EAAE,SAAAA,OAAAA,CAAAC,KAAK,EAAA;AAAA,QAAA,OAAIC,MAAM,CAACD,KAAK,CAACA,KAAK,CAAC,CAAA;AAAA,OAAA;MACrCE,SAAS,EAAE,SAAAA,SAAA,GAAA;QAAA,OAAMV,aAAa,CAAC,KAAK,CAAC,CAAA;AAAA,OAAA;KACtC,CAAA;AAEDL,IAAAA,cAAc,CAAC;AAAEtF,MAAAA,OAAO,EAAPA,OAAO;AAAEC,MAAAA,OAAO,EAAPA,OAAAA;KAAS,EAAES,OAAO,CAAC,CAAA;GAC9C,CAAA;EAED,oBACEyC,IAAA,CAACmD,IAAI,EAAA;AACGnB,IAAAA,eAAe,EAAfA,eAAe;AAAEJ,IAAAA,MAAM,EAANA,MAAM;AAAEC,IAAAA,OAAO,EAAPA,OAAO;AACtC,IAAA,aAAA,EAAY,oBAAoB;AAAA3B,IAAAA,QAAA,EAEhCC,cAAAA,GAAA,CAACgD,IAAI,CAACC,MAAM,EAAA;MAAAlD,QAAA,eACVC,GAAA,CAACC,UAAU,EAAA;AAACC,QAAAA,KAAK,EAAC,IAAI;AAACgD,QAAAA,MAAM,EAAC,UAAU;QAAAnD,QAAA,eACtCC,GAAA,CAACmD,KAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,wCAAwC;AAChD1D,UAAAA,MAAM,EAAApC,aAAA,CAAA;YACJ+F,MAAM,EAAEjH,CAAC,CAAAU,wBAAAA,CAAAA,MAAA,CACkB0E,aAAa,CAAC9E,OAAO,EAChD,WAAA,CAAA,CAAA;AAAC,WAAA,EACGwF,sBAAsB,IAAIC,oBAAoB,GAC9CmB,MAAM,GACNC,QAAQ,CAAA;SAEf,CAAA;OACS,CAAA;AAAC,KACF,CAAC,eACd1D,IAAA,CAAC2D,IAAI,EAAA;AACHC,MAAAA,WAAW,EAAE;AACXjC,QAAAA,aAAa,EAAbA,aAAa;AACbkC,QAAAA,gBAAgB,EAAE9H,iBAAiB;AACnC+H,QAAAA,QAAQ,EAAEvB,YAAAA;OACV;AAAArC,MAAAA,QAAA,EAEFC,cAAAA,GAAA,CAACgD,IAAI,CAACY,IAAI,EAAA;AAAA7D,QAAAA,QAAA,eACRF,IAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,kBAAkB;AAAAC,UAAAA,QAAA,EAC9BmC,CAAAA,sBAAsB,iBACrBlC,GAAA,CAAC6D,KAAK,EAAA;YACJ1H,QAAQ,EAAA,IAAA;AACR2D,YAAAA,SAAS,EAAC,QAAQ;AAClB,YAAA,SAAA,EAAQ,+BAA+B;AACvC,YAAA,aAAA,EAAY,+BAA+B;AAC3CpC,YAAAA,KAAK,EAAE1B,aAAc;AACrB8H,YAAAA,IAAI,EAAC,eAAe;AACpBC,YAAAA,GAAG,EAAElC,eAAgB;AACrBmC,YAAAA,gBAAgB,EAAErI,wBAAAA;AAAyB,WAC5C,CACF,EACAwG,oBAAoB,iBACnBnC,GAAA,CAAC6D,KAAK,EAAA;YACJ1H,QAAQ,EAAA,IAAA;AACR2D,YAAAA,SAAS,EAAC,QAAQ;AAClB,YAAA,SAAA,EAAQ,6BAA6B;AACrC,YAAA,aAAA,EAAY,6BAA6B;AACzCpC,YAAAA,KAAK,EAAErB,WAAY;AACnByH,YAAAA,IAAI,EAAC,aAAa;AAClBE,YAAAA,gBAAgB,EAAErI,wBAAAA;AAAyB,WAC5C,CACF,CAAA;SACE,CAAA;AAAC,OACG,CAAC,eACZqE,GAAA,CAACgD,IAAI,CAACiB,MAAM,EAAA;QAAAlE,QAAA,eACVC,GAAA,CAACkE,WAAW,EAAA;AACVC,UAAAA,iBAAiB,EAAE;AAAEvE,YAAAA,OAAO,EAAE8B,OAAO;AAAE0C,YAAAA,QAAQ,EAAE,KAAA;WAAQ;AACzDtE,UAAAA,SAAS,EAAC,6BAAA;SACX,CAAA;AAAC,OACS,CAAC,CAAA;AAAA,KACV,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEX,CAAC;;AC1HD,IAAMuE,eAAe,GAAG,SAAlBA,eAAeA,CAAA5H,IAAA,EAMf;AAAA,EAAA,IALJ6H,aAAa,GAAA7H,IAAA,CAAb6H,aAAa;IACbC,UAAU,GAAA9H,IAAA,CAAV8H,UAAU;IACV9F,mBAAmB,GAAAhC,IAAA,CAAnBgC,mBAAmB;IACnBD,cAAc,GAAA/B,IAAA,CAAd+B,cAAc;IACdgG,cAAc,GAAA/H,IAAA,CAAd+H,cAAc,CAAA;AAEd,EAAA,IAAQC,IAAI,GAAeC,QAAQ,CAA3BD,IAAI;IAAEE,QAAQ,GAAKD,QAAQ,CAArBC,QAAQ,CAAA;AAEtB,EAAA,OACE,CAAC,CAACJ,UAAU,iBACVvE,GAAA,CAAA4E,QAAA,EAAA;AAAA7E,IAAAA,QAAA,EACGuE,aAAa,GAAG,CAAC,gBAChBzE,IAAA,CAAA+E,QAAA,EAAA;MAAA7E,QAAA,EAAA,cACEC,GAAA,CAACC,UAAU,EAAA;AACTH,QAAAA,SAAS,EAAC,oBAAoB;AAC9B+E,QAAAA,SAAS,EAAC,IAAI;AACd,QAAA,SAAA,EAAQ,YAAY;QAAA9E,QAAA,eAEpBC,GAAA,CAACmD,KAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,sDAAsD;AAC9D1D,UAAAA,MAAM,EAAE;AAAEoF,YAAAA,KAAK,EAAER,aAAa;AAAEC,YAAAA,UAAU,EAAVA,UAAAA;WAAa;AAC7CQ,UAAAA,UAAU,EAAE;AACVC,YAAAA,IAAI,eAAEhF,GAAA,CAAA,MAAA,EAAA;AAAMF,cAAAA,SAAS,EAAC,wBAAA;aAA0B,CAAA;AAClD,WAAA;SACD,CAAA;AAAC,OACQ,CAAC,eACbE,GAAA,CAAC0E,QAAQ,EAAA;AACPO,QAAAA,WAAW,EAAC,WAAW;AACvBvH,QAAAA,KAAK,EAAEtB,CAAC,CAAC,gDAAgD,CAAE;QAAA2D,QAAA,eAE3DC,GAAA,CAACyE,IAAI,EAAA;AAAA1E,UAAAA,QAAA,eACHC,GAAA,CAAC2E,QAAQ,CAACO,MAAM,EAAA;AACdhF,YAAAA,KAAK,EAAC,WAAW;YACjBN,OAAO,EAAE,SAAAA,OAAAA,GAAM;cACbpB,cAAc,CAACgG,cAAc,CAAC,CAAA;cAC9B/F,mBAAmB,CAAC,IAAI,CAAC,CAAA;aACzB;YAAAsB,QAAA,EAED3D,CAAC,CAAC,+CAA+C,CAAA;WACnC,CAAA;SACb,CAAA;AAAC,OACC,CAAC,CAAA;AAAA,KACX,CAAC,gBAEH4D,GAAA,CAACC,UAAU,EAAA;AACTH,MAAAA,SAAS,EAAC,oBAAoB;AAC9B+E,MAAAA,SAAS,EAAC,IAAI;AACd,MAAA,SAAA,EAAQ,YAAY;AAAA9E,MAAAA,QAAA,EAEnB3D,CAAC,CAAC,uDAAuD,EAAE;AAC1D0I,QAAAA,KAAK,EAAEP,UAAAA;OACR,CAAA;KACS,CAAA;AACb,GACD,CACH,CAAA;AAEL,CAAC;;ACrCD,IAAMY,QAAQ,GAAG,SAAXA,QAAQA,CAAA1I,IAAA,EAA+D;AAAA,EAAA,IAAzD2I,WAAW,GAAA3I,IAAA,CAAX2I,WAAW;IAAAC,iBAAA,GAAA5I,IAAA,CAAE4B,YAAY;AAAZA,IAAAA,YAAY,GAAAgH,iBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,iBAAA;IAAAC,kBAAA,GAAA7I,IAAA,CAAE6B,aAAa;AAAbA,IAAAA,aAAa,GAAAgH,kBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,kBAAA,CAAA;AACpE,EAAA,IAAAC,SAAA,GAAgDC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAxH,cAAA,CAAAsH,SAAA,EAAA,CAAA,CAAA;AAAxDG,IAAAA,gBAAgB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEhH,IAAAA,mBAAmB,GAAAgH,UAAA,CAAA,CAAA,CAAA,CAAA;AAC5C,EAAA,IAAAE,UAAA,GAA4DH,QAAQ,CAAC,KAAK,CAAC;IAAAI,UAAA,GAAA3H,cAAA,CAAA0H,UAAA,EAAA,CAAA,CAAA;AAApEE,IAAAA,sBAAsB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,yBAAyB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AACxD,EAAA,IAAAG,UAAA,GAA0CP,QAAQ,CAAC,EAAE,CAAC;IAAAQ,UAAA,GAAA/H,cAAA,CAAA8H,UAAA,EAAA,CAAA,CAAA;AAA/CvE,IAAAA,aAAa,GAAAwE,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,gBAAgB,GAAAD,UAAA,CAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAAE,UAAA,GAA4CV,QAAQ,CAAC,EAAE,CAAC;IAAAW,UAAA,GAAAlI,cAAA,CAAAiI,UAAA,EAAA,CAAA,CAAA;AAAjD1B,IAAAA,cAAc,GAAA2B,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAAE,UAAA,GAAwCb,QAAQ,CAAC,EAAE,CAAC;IAAAc,WAAA,GAAArI,cAAA,CAAAoI,UAAA,EAAA,CAAA,CAAA;AAA7CE,IAAAA,YAAY,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,WAAA,CAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAAG,WAAA,GAAsCjB,QAAQ,CAAC,EAAE,CAAC;IAAAkB,WAAA,GAAAzI,cAAA,CAAAwI,WAAA,EAAA,CAAA,CAAA;AAA3CE,IAAAA,WAAW,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAElI,IAAAA,cAAc,GAAAkI,WAAA,CAAA,CAAA,CAAA,CAAA;AAClC,EAAA,IAAAE,WAAA,GAA4CpB,QAAQ,CAAC,KAAK,CAAC;IAAAqB,WAAA,GAAA5I,cAAA,CAAA2I,WAAA,EAAA,CAAA,CAAA;AAApDE,IAAAA,cAAc,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,iBAAiB,GAAAF,WAAA,CAAA,CAAA,CAAA,CAAA;AAExC,EAAA,IAAMG,cAAc,GAAG,SAAjBA,cAAcA,GAAA;AAAA,IAAA,OAASvE,MAAM,CAACwE,UAAU,GAAG,IAAI,CAAA;AAAA,GAAA,CAAA;AAErD,EAAA,IAAAC,qBAAA,GAA0C1J,wBAAwB,EAAE;IAApD2J,qBAAqB,GAAAD,qBAAA,CAA7BjF,MAAM,CAAA;AAEd,EAAA,IAAMmF,gBAAgB,GAAGC,IAAI,CAACC,WAAW,CAACzJ,UAAU,CAAC,CAAA;AACrD,EAAA,IAAM0J,cAAc,GAAGC,IAAI,CAACJ,gBAAgB,EAAEvJ,UAAU,CAAC,CAAA;AAEzD,EAAA,IAAA4J,WAAA,GAAoDjC,QAAQ,CAAC+B,cAAc,CAAC;IAAAG,WAAA,GAAAzJ,cAAA,CAAAwJ,WAAA,EAAA,CAAA,CAAA;AAArEE,IAAAA,kBAAkB,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,qBAAqB,GAAAF,WAAA,CAAA,CAAA,CAAA,CAAA;AAEhD,EAAA,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,GAAG,EAAA;IAAA,OAAI1B,iBAAiB,CAAC0B,GAAG,CAAC,CAAA;AAAA,GAAA,CAAA;AAErD,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,GAAS;AACzB,IAAA,IAAMpL,OAAO,GAAG;AAAEqL,MAAAA,QAAQ,EAAErB,WAAAA;KAAa,CAAA;AAEzC,IAAA,IAAMvJ,OAAO,GAAG;MACdmF,SAAS,EAAE,SAAAA,SAAA,GAAA;AAAA,QAAA,OAAME,MAAM,CAACC,QAAQ,CAACC,MAAM,EAAE,CAAA;AAAA,OAAA;MACzCC,OAAO,EAAE,SAAAA,OAAAA,CAAAC,KAAK,EAAA;AAAA,QAAA,OAAIC,MAAM,CAACD,KAAK,CAACA,KAAK,CAAC,CAAA;AAAA,OAAA;KACtC,CAAA;AAEDsE,IAAAA,qBAAqB,CAACxK,OAAO,EAAES,OAAO,CAAC,CAAA;GACxC,CAAA;AAED,EAAA,IAAMmB,UAAU,GAAG,SAAbA,UAAUA,CAAGmB,MAAM,EAAI;IAC3BuG,gBAAgB,CAACvG,MAAM,CAAC,CAAA;IACxBoG,yBAAyB,CAAC,IAAI,CAAC,CAAA;GAChC,CAAA;AAED,EAAA,IAAMmC,YAAY,GAAG,SAAfA,YAAYA,CAAGC,KAAK,EAAI;AAC5B1B,IAAAA,eAAe,CAAC0B,KAAK,CAACC,MAAM,CAACrH,KAAK,CAAC,CAAA;IACnC,IAAMsH,aAAa,GAAG5H,qBAAqB,CACzC0H,KAAK,CAACC,MAAM,CAACrH,KAAK,EAClByG,cACF,CAAC,CAAA;IACDK,qBAAqB,CAACQ,aAAa,CAAC,CAAA;GACrC,CAAA;AAEDC,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,GAAS;AACzB,MAAA,IAAItB,cAAc,EAAE,EAAED,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAC1CA,iBAAiB,CAAC,IAAI,CAAC,CAAA;KAC7B,CAAA;AACDtE,IAAAA,MAAM,CAAC8F,gBAAgB,CAAC,QAAQ,EAAED,YAAY,CAAC,CAAA;IAE/C,OAAO,YAAA;AAAA,MAAA,OAAM7F,MAAM,CAAC+F,mBAAmB,CAAC,QAAQ,EAAEF,YAAY,CAAC,CAAA;AAAA,KAAA,CAAA;GAChE,EAAE,EAAE,CAAC,CAAA;EAEN,oBACEzI,IAAA,CAAC4I,SAAS,EAAA;IAAA1I,QAAA,EAAA,cACRC,GAAA,CAACiD,MAAM,EAAA;AACCmC,MAAAA,WAAW,EAAXA,WAAW;AACjBsD,MAAAA,IAAI,EAAE5B,cAAc,GAAG,OAAO,GAAG,OAAQ;AACzC1H,MAAAA,KAAK,EAAEhD,CAAC,CAAC,+BAA+B,CAAE;AAC1CuM,MAAAA,WAAW,EAAE;AACXC,QAAAA,QAAQ,EAAEX,YAAY;AACtBnH,QAAAA,KAAK,EAAEyF,YAAY;QACnBsC,WAAW,EAAEzM,CAAC,CAAC,wCAAwC,CAAA;AACzD,OAAA;AAAE,KACH,CAAC,eACF4D,GAAA,CAAC8I,SAAS,EAAA;MACRC,eAAe,eACb/I,GAAA,CAACqE,eAAe,EAAA;AACRG,QAAAA,cAAc,EAAdA,cAAc;AAAEhG,QAAAA,cAAc,EAAdA,cAAc;AAAEC,QAAAA,mBAAmB,EAAnBA,mBAAmB;QACzD6F,aAAa,EAAEE,cAAc,CAACwE,MAAO;AACrCzE,QAAAA,UAAU,EAAEtD,MAAM,CAACgI,OAAO,CAACtB,kBAAkB,CAAC,CAACqB,MAAAA;OAChD,CAAA;KAEJ,CAAC,EACDE,UAAU,CAACvB,kBAAkB,CAAC,gBAC7B9H,IAAA,CAACsJ,YAAY,EAAA;MAAApJ,QAAA,EAAA,cACXC,GAAA,CAACoJ,KAAK,EAAA;QACJC,WAAW,EAAA,IAAA;QACXC,YAAY,EAAA,IAAA;AACZC,QAAAA,aAAa,EAAE,KAAM;AACrBC,QAAAA,OAAO,EAAE5L,kBAAkB,CAAC+J,kBAAkB,CAAE;AAChD8B,QAAAA,MAAM,EAAEC,IAAI,CAAC,SAAS,CAAE;AACxBC,QAAAA,MAAM,EAAE;AAAEC,UAAAA,CAAC,EAAE,CAAA;SAAI;AACjBC,QAAAA,eAAe,EAAErF,cAAe;AAChCsF,QAAAA,WAAW,EAAC,OAAO;QACnBC,UAAU,EAAE5L,aAAa,CAAC;AACxBE,UAAAA,YAAY,EAAZA,YAAY;AACZC,UAAAA,aAAa,EAAbA,aAAa;AACbC,UAAAA,UAAU,EAAVA,UAAU;AACVC,UAAAA,cAAc,EAAdA,cAAc;AACdC,UAAAA,mBAAmB,EAAnBA,mBAAAA;AACF,SAAC,CAAE;AACHuL,QAAAA,WAAW,EAAEnC,eAAAA;AAAgB,OAC9B,CAAC,eACF7H,GAAA,CAACuB,QAAQ,EAAA;AACDlD,QAAAA,YAAY,EAAZA,YAAY;AAAEC,QAAAA,aAAa,EAAbA,aAAa;AAAEkD,QAAAA,aAAa,EAAbA,aAAa;AAChDC,QAAAA,MAAM,EAAEoE,sBAAuB;QAC/BnE,OAAO,EAAE,SAAAA,OAAA,GAAA;UAAA,OAAMoE,yBAAyB,CAAC,KAAK,CAAC,CAAA;AAAA,SAAA;AAAC,OACjD,CAAC,eACF9F,GAAA,CAACiK,KAAK,EAAA;AACJxI,QAAAA,MAAM,EAAEiE,gBAAiB;AACzBwE,QAAAA,iBAAiB,EAAE9N,CAAC,CAAC,uCAAuC,CAAE;AAC9DgD,QAAAA,KAAK,EAAEhD,CAAC,CAAC,0CAA0C,CAAE;QACrD+N,OAAO,eACLnK,GAAA,CAACmD,KAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,4CAA4C;AACpD1D,UAAAA,MAAM,EAAE;YACNoF,KAAK,EAAE6B,WAAW,CAACqC,MAAM;YACzBoB,IAAI,EAAEhO,CAAC,CAAAU,wBAAAA,CAAAA,MAAA,CAA0B6J,WAAW,CAAC,CAAC,CAAC,EAAW,WAAA,CAAA,CAAA;AAC5D,WAAA;AAAE,SACH,CACF;QACDjF,OAAO,EAAE,SAAAA,OAAA,GAAA;UAAA,OAAMjD,mBAAmB,CAAC,KAAK,CAAC,CAAA;SAAC;AAC1CkF,QAAAA,QAAQ,EAAEoE,YAAAA;AAAa,OACxB,CAAC,CAAA;KACU,CAAC,gBAEf/H,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,gDAAgD;MAAAC,QAAA,eAC7DC,GAAA,CAACqK,MAAM,EAAA;QAACjL,KAAK,EAAEhD,CAAC,CAAC,gCAAgC,CAAA;OAAI,CAAA;AAAC,KACnD,CACN,CAAA;AAAA,GACQ,CAAC,CAAA;AAEhB,CAAC,CAAA;AAcD,YAAekO,SAAS,CAACnF,QAAQ,EAAE/I,CAAC,CAAC,sCAAsC,CAAC,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"Taxonomy.js","sources":["../src/components/Taxonomy/constants.js","../src/components/Taxonomy/api.js","../src/components/Taxonomy/useTaxonomyApi.js","../src/components/Taxonomy/utils.jsx","../src/components/Taxonomy/EditPane.jsx","../src/components/Taxonomy/LeftActionBlock.jsx","../src/components/Taxonomy/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const LABEL_REJECT_CHARS_REGEX = /[^a-zA-Z\\d\\s_-]+/;\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n singularLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.singularLabelRequired\")\n ),\n pluralLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.pluralLabelRequired\")\n ),\n});\n\nexport const TAXONOMY_EVENTS = { UPDATED: \"taxonomy_updated\" };\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/constants\";\n\nconst update = ({ keyName, payload }) =>\n axios.patch(`${BASE_API_V1_URL}/taxonomies/${keyName}`, payload);\n\nconst bulkDestroy = payload =>\n axios.delete(`${BASE_API_V1_URL}/taxonomies/bulk_destroy`, {\n data: payload,\n });\n\nconst taxonomiesApi = { update, bulkDestroy };\n\nexport default taxonomiesApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport taxonomiesApi from \"./api\";\n\nconst useUpdateTaxonomy = options =>\n useMutation({ mutationFn: taxonomiesApi.update, ...options });\n\nconst useBulkDestroyTaxonomies = options =>\n useMutation({ mutationFn: taxonomiesApi.bulkDestroy, ...options });\n\nexport { useUpdateTaxonomy, useBulkDestroyTaxonomies };\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nexport const formatLabel = label => capitalize(label.trim());\n\nexport const formatDataForTable = taxonomies =>\n toPairs(taxonomies).map(([keyName, labels]) => ({\n keyName,\n singularLabel: labels[\"singular\"],\n pluralLabel: labels[\"plural\"],\n }));\n\nexport const getColumnData = ({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n}) => {\n const {\n singularColumn: showSingularColumn = true,\n pluralColumn: showPluralColumn = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n return [\n {\n title: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n dataIndex: \"default\",\n key: \"defaultLabel\",\n width: 400,\n render: (_, values) => {\n const menuItems = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => handleEdit(values),\n },\n {\n key: \"reset\",\n label: t(\"neetoMolecules.common.actions.resetToDefaults\"),\n onClick: () => {\n setCurrentKeys([values.keyName]);\n setIsResetModalOpen(true);\n },\n },\n ];\n\n return (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">\n {t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n </Typography>\n <MoreDropdown\n {...{ menuItems }}\n dropdownProps={{ strategy: \"fixed\" }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n title: singularLabel,\n dataIndex: \"singularLabel\",\n key: \"singularLabel\",\n width: 300,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [\n {\n title: pluralLabel,\n dataIndex: \"pluralLabel\",\n key: \"pluralLabel\",\n width: 300,\n },\n ]\n : []),\n ];\n};\n\nexport const getFilteredTaxonomies = (matchString, taxonomies) => {\n const filteredArray = toPairs(taxonomies).filter(([key, value]) => {\n const defaultLabel = t(`taxonomyDefaultLabels.${key}.singular`);\n const valuesToSearch = [defaultLabel, ...Object.values(value)];\n\n return valuesToSearch.some(str =>\n str.toLowerCase().includes(matchString.toLowerCase())\n );\n });\n\n return fromPairs(filteredArray);\n};\n","import { useRef } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/utils\";\nimport { Pane, Toastr, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n LABEL_REJECT_CHARS_REGEX,\n TAXONOMY_EVENTS,\n VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { useUpdateTaxonomy } from \"./useTaxonomyApi\";\nimport { formatLabel } from \"./utils\";\n\nconst EditPane = ({\n columnLabels,\n columnsToShow,\n initialValues,\n isOpen,\n onClose,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const { mutate: updateTaxonomy } = useUpdateTaxonomy();\n\n const {\n singularColumn: showSingularInputField = true,\n pluralColumn: showPluralInputField = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n const handleSubmit = (values, { setSubmitting }) => {\n const { keyName, singularLabel, pluralLabel } = values;\n\n const payload = {\n taxonomy: {\n keyName,\n singularLabel: formatLabel(singularLabel),\n pluralLabel: formatLabel(pluralLabel),\n },\n };\n\n const options = {\n onSuccess: () => {\n captureAnalyticsEvent(TAXONOMY_EVENTS.UPDATED, {\n taxonomy: payload.taxonomy,\n });\n window.location.reload();\n },\n onError: error => Toastr.error(error),\n onSettled: () => setSubmitting(false),\n };\n\n updateTaxonomy({ keyName, payload }, options);\n };\n\n return (\n <Pane\n {...{ initialFocusRef, isOpen, onClose }}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.editPane.title\"\n values={{\n entity: t(\n `taxonomyDefaultLabels.${initialValues.keyName}.singular`\n ),\n ...(showSingularInputField && showPluralInputField\n ? PLURAL\n : SINGULAR),\n }}\n />\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-cy=\"taxonomy-singular-input-field\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-cy=\"taxonomy-plural-input-field\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center space-x-2\"\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default EditPane;\n","import { t } from \"i18next\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n return (\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography\n className=\"mr-4 font-semibold\"\n component=\"h4\"\n data-cy=\"item-count\"\n >\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"neeto-ui-text-gray-600\" />,\n }}\n />\n </Typography>\n <Dropdown\n buttonStyle=\"secondary\"\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n >\n <Menu>\n <MenuItem.Button\n style=\"secondary\"\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </>\n ) : (\n <Typography\n className=\"mr-4 font-semibold\"\n component=\"h4\"\n data-cy=\"item-count\"\n >\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n )\n );\n};\n\nexport default LeftActionBlock;\n","import { useState, useEffect } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/initializers\";\nimport withTitle from \"neetocommons/react-utils/withTitle\";\nimport { Alert, NoData, Table, Toastr } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop, pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n const [isMobileScreen, setIsMobileScreen] = useState(false);\n\n const isLargerScreen = () => window.innerWidth > 1024;\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomies);\n\n const [filteredTaxonomies, setFilteredTaxonomies] = useState(hostTaxonomies);\n\n const handleRowSelect = ids => setSelectedRowIds(ids);\n\n const handleDelete = () => {\n const payload = { keyNames: currentKeys };\n\n const options = {\n onSuccess: () => window.location.reload(),\n onError: error => Toastr.error(error),\n };\n\n bulkDestroyTaxonomies(payload, options);\n };\n\n const handleEdit = values => {\n setInitialValues(values);\n setIsEditTaxonomyPaneOpen(true);\n };\n\n const handleSearch = event => {\n setSearchString(event.target.value);\n const newTaxonomies = getFilteredTaxonomies(\n event.target.value,\n hostTaxonomies\n );\n setFilteredTaxonomies(newTaxonomies);\n };\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) setIsMobileScreen(false);\n else setIsMobileScreen(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs }}\n size={isMobileScreen ? \"small\" : \"large\"}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={Object.entries(filteredTaxonomies).length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <TableWrapper>\n <Table\n fixedHeight\n rowSelection\n allowRowClick={false}\n rowData={formatDataForTable(filteredTaxonomies)}\n rowKey={prop(\"keyName\")}\n scroll={{ x: 0 }}\n selectedRowKeys={selectedRowIds}\n tableLayout=\"fixed\"\n columnData={getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n })}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Alert\n isOpen={isResetModalOpen}\n submitButtonLabel={t(\"neetoMolecules.common.actions.proceed\")}\n title={t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n }\n onClose={() => setIsResetModalOpen(false)}\n onSubmit={handleDelete}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.taxonomy.noData\")} />\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n /**\n * To show breadcrumbs. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n /**\n * To provide custom column labels for the table.\n */\n columnLabels: PropTypes.object,\n /**\n * To show/hide columns in the table.\n */\n columnsToShow: PropTypes.object,\n /**\n * Props to be passed to the help popover in the title.\n */\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default withTitle(Taxonomy, t(\"neetoMolecules.taxonomy.browserTitle\"));\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","title","dataIndex","key","width","render","_","values","menuItems","onClick","_jsxs","className","children","_jsx","Typography","style","MoreDropdown","dropdownProps","strategy","dropdownButtonProps","_toConsumableArray","getFilteredTaxonomies","matchString","filteredArray","filter","_ref4","_ref5","value","defaultLabel","valuesToSearch","Object","some","str","toLowerCase","includes","fromPairs","EditPane","initialValues","isOpen","onClose","_useTranslation","useTranslation","initialFocusRef","useRef","_useUpdateTaxonomy","updateTaxonomy","mutate","showSingularInputField","showPluralInputField","handleSubmit","setSubmitting","taxonomy","onSuccess","captureAnalyticsEvent","window","location","reload","onError","error","Toastr","onSettled","Pane","Header","weight","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","Menu","Dropdown","MenuItem","_Fragment","component","count","components","span","buttonStyle","Button","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState10","searchString","setSearchString","_useState11","_useState12","currentKeys","_useState13","_useState14","isMobileScreen","setIsMobileScreen","isLargerScreen","innerWidth","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","hostTaxonomies","pick","_useState15","_useState16","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","useEffect","handleResize","addEventListener","removeEventListener","Container","size","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","entries","isNotEmpty","TableWrapper","Table","fixedHeight","rowSelection","allowRowClick","rowData","rowKey","prop","scroll","x","selectedRowKeys","tableLayout","columnData","onRowSelect","Alert","submitButtonLabel","message","what","NoData","withTitle"],"mappings":"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"}
|
|
@@ -58,6 +58,9 @@ require('@bigbinary/neeto-icons/Check');
|
|
|
58
58
|
require('@bigbinary/neetoui/Toastr');
|
|
59
59
|
require('./Breadcrumbs.js');
|
|
60
60
|
require('react-router-dom');
|
|
61
|
+
require('./HelpPopover.js');
|
|
62
|
+
require('@bigbinary/neeto-icons/Help');
|
|
63
|
+
require('@bigbinary/neetoui/Popover');
|
|
61
64
|
require('./Search.js');
|
|
62
65
|
require('@bigbinary/neeto-commons-frontend/react-utils/useFuncDebounce');
|
|
63
66
|
require('@bigbinary/neeto-commons-frontend/react-utils/useQueryParams');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomDomainDashboard.js","sources":["../../src/components/CustomDomainDashboard/Header.jsx","../../src/components/CustomDomainDashboard/Manage/TagBlock.jsx","../../src/components/CustomDomainDashboard/utils.jsx","../../src/components/CustomDomainDashboard/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Button } from \"neetoui\";\n\nimport NeetoHeader from \"components/Header\";\n\nconst Header = withT(\n ({\n t,\n setIsPaneOpen,\n searchTerm,\n setSearchTerm,\n headerProps,\n isFiltersVisible,\n }) => (\n <NeetoHeader\n data-testid=\"custom-domain-header\"\n title={t(\"neetoMolecules.customDomain.customDomain\", PLURAL)}\n actionBlock={\n <Button\n data-cy=\"add-new-custom-domain-button\"\n label={t(\"neetoMolecules.customDomain.addNew\")}\n onClick={() => setIsPaneOpen(true)}\n />\n }\n searchProps={\n isFiltersVisible && {\n value: searchTerm,\n onChange: withEventTargetValue(setSearchTerm),\n placeholder: t(\"neetoMolecules.customDomain.search\"),\n \"data-cy\": \"custom-domain-search-field\",\n className: \"w-56\",\n }\n }\n {...headerProps}\n />\n )\n);\n\nexport default memo(Header);\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { snakeToCamelCase } from \"neetocist\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst TagBlock = ({ status, stacked = false }) => {\n const { t } = useTranslation();\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n const camelCasedStatus = snakeToCamelCase(status || \"\");\n\n return (\n <div\n className={classnames(\"flex gap-2\", {\n \"flex-col items-start\": stacked,\n })}\n >\n {status === \"failed\" ? (\n <Tag\n label={t(`neetoMolecules.customDomain.status.${camelCasedStatus}`)}\n style=\"danger\"\n />\n ) : (\n <>\n <Tag\n data-cy={`${hyphenize(status)}-tag-container`}\n style={isDomainValidated ? \"success\" : \"warning\"}\n label={t(\n `neetoMolecules.customDomain.status.domain.${camelCasedStatus}`\n )}\n />\n {isDomainValidated && (\n <div\n className={classnames(\"flex items-center justify-between gap-2\", {\n \"w-full\": stacked,\n })}\n >\n <Tag\n data-cy={`${hyphenize(status)}-tag-container`}\n style={status === \"active\" ? \"success\" : \"warning\"}\n label={t(\n `neetoMolecules.customDomain.status.cname.${camelCasedStatus}`\n )}\n />\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nexport default memo(TagBlock);\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Button } from \"neetoui\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport TagBlock from \"./Manage/TagBlock\";\n\nexport const renderColumnData = (enableManagePane, enableDeleteAlert) => [\n {\n title: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n dataIndex: \"hostname\",\n key: \"hostname\",\n width: \"60%\",\n render: (hostName, customDomain) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n data-cy=\"hostname-button\"\n label={hostName}\n style=\"link\"\n onClick={() => enableManagePane(customDomain)}\n />\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${customDomain.id}`,\n }}\n dropdownProps={{\n position: \"bottom-end\",\n strategy: \"fixed\",\n autoWidth: true,\n }}\n menuItems={[\n {\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => enableManagePane(customDomain),\n key: \"edit-custom-domain-button\",\n },\n {\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => enableDeleteAlert(customDomain),\n key: \"delete-custom-domain\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoMolecules.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: status => <TagBlock {...{ status }} />,\n width: \"40%\",\n },\n];\n","import { useState } from \"react\";\n\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport useDebounce from \"neetocommons/react-utils/useDebounce\";\nimport { Table, Typography, NoData, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport PageLoader from \"components/PageLoader\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport Header from \"./Header\";\nimport Manage from \"./Manage\";\nimport {\n useFetchCustomDomains,\n useDeleteCustomDomain,\n} from \"./useCustomDomainApi\";\nimport { renderColumnData } from \"./utils\";\n\nconst CustomDomainDashboard = ({ headerProps, url, onCreate }) => {\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [isPaneOpen, setIsPaneOpen] = useState(false);\n const [customDomain, setCustomDomain] = useState({});\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { t } = useTranslation();\n const debouncedSearchTerm = useDebounce(searchTerm, 500);\n\n const { data: data, isLoading } = useFetchCustomDomains({\n url,\n params: { searchTerm: debouncedSearchTerm },\n });\n\n const isFiltersVisible =\n isNotEmpty(data?.customDomains) || isPresent(searchTerm);\n\n const { mutate: deleteCustomDomain, isPending: isDeleting } =\n useDeleteCustomDomain(url, {\n onSettled: () => {\n setIsAlertOpen(false);\n setCustomDomain({});\n },\n });\n\n const enableManagePane = customDomain => {\n setCustomDomain(customDomain);\n setIsPaneOpen(true);\n };\n\n const enableDeleteAlert = customDomain => {\n setCustomDomain(customDomain);\n setIsAlertOpen(true);\n };\n\n const disableManagePane = () => {\n setIsPaneOpen(false);\n setCustomDomain({});\n };\n\n const disableDeleteAlert = () => {\n setIsAlertOpen(false);\n setCustomDomain({});\n };\n\n return (\n <>\n <Container>\n <Header\n {...{\n headerProps,\n isFiltersVisible,\n searchTerm,\n setIsPaneOpen,\n setSearchTerm,\n }}\n />\n {isLoading && (\n <div className=\"h-screen w-full\">\n <PageLoader />\n </div>\n )}\n {!isLoading && (\n <>\n <SubHeader\n leftActionBlock={\n !!data?.customDomains?.length && (\n <Typography\n className=\"neeto-ui-gray-800 font-semibold\"\n component=\"h4\"\n >\n {t(\"neetoMolecules.customDomain.customDomainWithCount\", {\n count: data?.customDomains?.length,\n })}\n </Typography>\n )\n }\n />\n {isNotEmpty(data?.customDomains) ? (\n <TableWrapper>\n <Table\n fixedHeight\n allowRowClick={false}\n rowData={data?.customDomains}\n rowSelection={false}\n columnData={renderColumnData(\n enableManagePane,\n enableDeleteAlert\n )}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"neetoMolecules.customDomain.notFound\")}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.customDomain.learnMoreMessage\"\n components={{\n button: (\n <Button\n href=\"https://help.neetosite.com/p/a-95ad5b03\"\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n primaryButtonProps={{\n label: t(\"neetoMolecules.customDomain.addNew\"),\n onClick: () => setIsPaneOpen(true),\n }}\n />\n </div>\n )}\n </>\n )}\n </Container>\n <Manage\n {...{ customDomain, onCreate, setCustomDomain, url }}\n hasOne={false}\n isOpen={isPaneOpen}\n onClose={disableManagePane}\n />\n <DeleteAlert\n hostname={customDomain?.hostname}\n isOpen={isAlertOpen}\n isSubmitting={isDeleting}\n onClose={disableDeleteAlert}\n onSubmit={() => deleteCustomDomain(customDomain?.id)}\n />\n </>\n );\n};\n\nCustomDomainDashboard.propTypes = {\n /**\n * The props to be passed to the `CustomDomain` page header. Accepts all props that can be passed to the `Header` component.\n */\n headerProps: PropTypes.object,\n /**\n * API path to manage custom domain records.\n */\n url: PropTypes.string,\n /**\n * Callback function will be invoked with new domain values after successfully creating the domain.\n */\n onCreate: PropTypes.func,\n};\n\nexport default CustomDomainDashboard;\n"],"names":["Header","withT","_ref","t","setIsPaneOpen","searchTerm","setSearchTerm","headerProps","isFiltersVisible","_jsx","NeetoHeader","_objectSpread","title","PLURAL","actionBlock","Button","label","onClick","searchProps","value","onChange","withEventTargetValue","placeholder","className","memo","TagBlock","status","_ref$stacked","stacked","_useTranslation","useTranslation","isDomainValidated","camelCasedStatus","snakeToCamelCase","classnames","children","Tag","concat","style","_jsxs","_Fragment","hyphenize","renderColumnData","enableManagePane","enableDeleteAlert","SINGULAR","dataIndex","key","width","render","hostName","customDomain","MoreDropdown","dropdownButtonProps","id","dropdownProps","position","strategy","autoWidth","menuItems","CustomDomainDashboard","_data$customDomains","_data$customDomains2","url","onCreate","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","isPaneOpen","_useState5","_useState6","setCustomDomain","_useState7","_useState8","isAlertOpen","setIsAlertOpen","debouncedSearchTerm","useDebounce","_useFetchCustomDomain","useFetchCustomDomains","params","data","isLoading","isNotEmpty","customDomains","isPresent","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","isPending","disableManagePane","disableDeleteAlert","Container","PageLoader","SubHeader","leftActionBlock","length","Typography","component","count","TableWrapper","Table","fixedHeight","allowRowClick","rowData","rowSelection","columnData","NoData","helpText","Trans","i18nKey","components","button","href","target","primaryButtonProps","Manage","hasOne","isOpen","onClose","DeleteAlert","hostname","isSubmitting","onSubmit"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CustomDomainDashboard.js","sources":["../../src/components/CustomDomainDashboard/Header.jsx","../../src/components/CustomDomainDashboard/Manage/TagBlock.jsx","../../src/components/CustomDomainDashboard/utils.jsx","../../src/components/CustomDomainDashboard/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Button } from \"neetoui\";\n\nimport NeetoHeader from \"components/Header\";\n\nconst Header = withT(\n ({\n t,\n setIsPaneOpen,\n searchTerm,\n setSearchTerm,\n headerProps,\n isFiltersVisible,\n }) => (\n <NeetoHeader\n data-testid=\"custom-domain-header\"\n title={t(\"neetoMolecules.customDomain.customDomain\", PLURAL)}\n actionBlock={\n <Button\n data-cy=\"add-new-custom-domain-button\"\n label={t(\"neetoMolecules.customDomain.addNew\")}\n onClick={() => setIsPaneOpen(true)}\n />\n }\n searchProps={\n isFiltersVisible && {\n value: searchTerm,\n onChange: withEventTargetValue(setSearchTerm),\n placeholder: t(\"neetoMolecules.customDomain.search\"),\n \"data-cy\": \"custom-domain-search-field\",\n className: \"w-56\",\n }\n }\n {...headerProps}\n />\n )\n);\n\nexport default memo(Header);\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { snakeToCamelCase } from \"neetocist\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst TagBlock = ({ status, stacked = false }) => {\n const { t } = useTranslation();\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n const camelCasedStatus = snakeToCamelCase(status || \"\");\n\n return (\n <div\n className={classnames(\"flex gap-2\", {\n \"flex-col items-start\": stacked,\n })}\n >\n {status === \"failed\" ? (\n <Tag\n label={t(`neetoMolecules.customDomain.status.${camelCasedStatus}`)}\n style=\"danger\"\n />\n ) : (\n <>\n <Tag\n data-cy={`${hyphenize(status)}-tag-container`}\n style={isDomainValidated ? \"success\" : \"warning\"}\n label={t(\n `neetoMolecules.customDomain.status.domain.${camelCasedStatus}`\n )}\n />\n {isDomainValidated && (\n <div\n className={classnames(\"flex items-center justify-between gap-2\", {\n \"w-full\": stacked,\n })}\n >\n <Tag\n data-cy={`${hyphenize(status)}-tag-container`}\n style={status === \"active\" ? \"success\" : \"warning\"}\n label={t(\n `neetoMolecules.customDomain.status.cname.${camelCasedStatus}`\n )}\n />\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nexport default memo(TagBlock);\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Button } from \"neetoui\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport TagBlock from \"./Manage/TagBlock\";\n\nexport const renderColumnData = (enableManagePane, enableDeleteAlert) => [\n {\n title: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n dataIndex: \"hostname\",\n key: \"hostname\",\n width: \"60%\",\n render: (hostName, customDomain) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n data-cy=\"hostname-button\"\n label={hostName}\n style=\"link\"\n onClick={() => enableManagePane(customDomain)}\n />\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${customDomain.id}`,\n }}\n dropdownProps={{\n position: \"bottom-end\",\n strategy: \"fixed\",\n autoWidth: true,\n }}\n menuItems={[\n {\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => enableManagePane(customDomain),\n key: \"edit-custom-domain-button\",\n },\n {\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => enableDeleteAlert(customDomain),\n key: \"delete-custom-domain\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoMolecules.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: status => <TagBlock {...{ status }} />,\n width: \"40%\",\n },\n];\n","import { useState } from \"react\";\n\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport useDebounce from \"neetocommons/react-utils/useDebounce\";\nimport { Table, Typography, NoData, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport PageLoader from \"components/PageLoader\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport Header from \"./Header\";\nimport Manage from \"./Manage\";\nimport {\n useFetchCustomDomains,\n useDeleteCustomDomain,\n} from \"./useCustomDomainApi\";\nimport { renderColumnData } from \"./utils\";\n\nconst CustomDomainDashboard = ({ headerProps, url, onCreate }) => {\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [isPaneOpen, setIsPaneOpen] = useState(false);\n const [customDomain, setCustomDomain] = useState({});\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { t } = useTranslation();\n const debouncedSearchTerm = useDebounce(searchTerm, 500);\n\n const { data: data, isLoading } = useFetchCustomDomains({\n url,\n params: { searchTerm: debouncedSearchTerm },\n });\n\n const isFiltersVisible =\n isNotEmpty(data?.customDomains) || isPresent(searchTerm);\n\n const { mutate: deleteCustomDomain, isPending: isDeleting } =\n useDeleteCustomDomain(url, {\n onSettled: () => {\n setIsAlertOpen(false);\n setCustomDomain({});\n },\n });\n\n const enableManagePane = customDomain => {\n setCustomDomain(customDomain);\n setIsPaneOpen(true);\n };\n\n const enableDeleteAlert = customDomain => {\n setCustomDomain(customDomain);\n setIsAlertOpen(true);\n };\n\n const disableManagePane = () => {\n setIsPaneOpen(false);\n setCustomDomain({});\n };\n\n const disableDeleteAlert = () => {\n setIsAlertOpen(false);\n setCustomDomain({});\n };\n\n return (\n <>\n <Container>\n <Header\n {...{\n headerProps,\n isFiltersVisible,\n searchTerm,\n setIsPaneOpen,\n setSearchTerm,\n }}\n />\n {isLoading && (\n <div className=\"h-screen w-full\">\n <PageLoader />\n </div>\n )}\n {!isLoading && (\n <>\n <SubHeader\n leftActionBlock={\n !!data?.customDomains?.length && (\n <Typography\n className=\"neeto-ui-gray-800 font-semibold\"\n component=\"h4\"\n >\n {t(\"neetoMolecules.customDomain.customDomainWithCount\", {\n count: data?.customDomains?.length,\n })}\n </Typography>\n )\n }\n />\n {isNotEmpty(data?.customDomains) ? (\n <TableWrapper>\n <Table\n fixedHeight\n allowRowClick={false}\n rowData={data?.customDomains}\n rowSelection={false}\n columnData={renderColumnData(\n enableManagePane,\n enableDeleteAlert\n )}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"neetoMolecules.customDomain.notFound\")}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.customDomain.learnMoreMessage\"\n components={{\n button: (\n <Button\n href=\"https://help.neetosite.com/p/a-95ad5b03\"\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n primaryButtonProps={{\n label: t(\"neetoMolecules.customDomain.addNew\"),\n onClick: () => setIsPaneOpen(true),\n }}\n />\n </div>\n )}\n </>\n )}\n </Container>\n <Manage\n {...{ customDomain, onCreate, setCustomDomain, url }}\n hasOne={false}\n isOpen={isPaneOpen}\n onClose={disableManagePane}\n />\n <DeleteAlert\n hostname={customDomain?.hostname}\n isOpen={isAlertOpen}\n isSubmitting={isDeleting}\n onClose={disableDeleteAlert}\n onSubmit={() => deleteCustomDomain(customDomain?.id)}\n />\n </>\n );\n};\n\nCustomDomainDashboard.propTypes = {\n /**\n * The props to be passed to the `CustomDomain` page header. Accepts all props that can be passed to the `Header` component.\n */\n headerProps: PropTypes.object,\n /**\n * API path to manage custom domain records.\n */\n url: PropTypes.string,\n /**\n * Callback function will be invoked with new domain values after successfully creating the domain.\n */\n onCreate: PropTypes.func,\n};\n\nexport default CustomDomainDashboard;\n"],"names":["Header","withT","_ref","t","setIsPaneOpen","searchTerm","setSearchTerm","headerProps","isFiltersVisible","_jsx","NeetoHeader","_objectSpread","title","PLURAL","actionBlock","Button","label","onClick","searchProps","value","onChange","withEventTargetValue","placeholder","className","memo","TagBlock","status","_ref$stacked","stacked","_useTranslation","useTranslation","isDomainValidated","camelCasedStatus","snakeToCamelCase","classnames","children","Tag","concat","style","_jsxs","_Fragment","hyphenize","renderColumnData","enableManagePane","enableDeleteAlert","SINGULAR","dataIndex","key","width","render","hostName","customDomain","MoreDropdown","dropdownButtonProps","id","dropdownProps","position","strategy","autoWidth","menuItems","CustomDomainDashboard","_data$customDomains","_data$customDomains2","url","onCreate","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","isPaneOpen","_useState5","_useState6","setCustomDomain","_useState7","_useState8","isAlertOpen","setIsAlertOpen","debouncedSearchTerm","useDebounce","_useFetchCustomDomain","useFetchCustomDomains","params","data","isLoading","isNotEmpty","customDomains","isPresent","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","isPending","disableManagePane","disableDeleteAlert","Container","PageLoader","SubHeader","leftActionBlock","length","Typography","component","count","TableWrapper","Table","fixedHeight","allowRowClick","rowData","rowSelection","columnData","NoData","helpText","Trans","i18nKey","components","button","href","target","primaryButtonProps","Manage","hasOne","isOpen","onClose","DeleteAlert","hostname","isSubmitting","onSubmit"],"mappings":"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"}
|
package/dist/cjs/Header.js
CHANGED
|
@@ -1,25 +1,28 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
3
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
4
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var classnames = require('classnames');
|
|
7
7
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
8
8
|
var Typography = require('@bigbinary/neetoui/Typography');
|
|
9
9
|
var Breadcrumbs = require('./Breadcrumbs.js');
|
|
10
|
+
var HelpPopover = require('./HelpPopover.js');
|
|
10
11
|
var MoreDropdown = require('./MoreDropdown.js');
|
|
11
12
|
var Search = require('./Search.js');
|
|
12
13
|
var injectCss = require('./inject-css-80a5faa3.js');
|
|
13
14
|
var jsxRuntime = require('react/jsx-runtime');
|
|
14
15
|
require('@bigbinary/neeto-commons-frontend/utils/general');
|
|
15
16
|
require('react-router-dom');
|
|
17
|
+
require('@bigbinary/neeto-icons/Help');
|
|
18
|
+
require('@bigbinary/neetoui/Button');
|
|
19
|
+
require('@bigbinary/neetoui/Popover');
|
|
20
|
+
require('react-i18next');
|
|
16
21
|
require('@bigbinary/neeto-icons/MenuHorizontal');
|
|
17
22
|
require('@bigbinary/neeto-icons/MenuVertical');
|
|
18
|
-
require('@bigbinary/neetoui/Button');
|
|
19
23
|
require('@bigbinary/neetoui/Dropdown');
|
|
20
24
|
require('@bigbinary/neetoui/Tooltip');
|
|
21
25
|
require('ramda');
|
|
22
|
-
require('react-i18next');
|
|
23
26
|
require('@babel/runtime/helpers/slicedToArray');
|
|
24
27
|
require('@bigbinary/neeto-commons-frontend/react-utils/useFuncDebounce');
|
|
25
28
|
require('@bigbinary/neeto-commons-frontend/react-utils/useQueryParams');
|
|
@@ -30,8 +33,8 @@ require('@bigbinary/neeto-commons-frontend/utils');
|
|
|
30
33
|
|
|
31
34
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
32
35
|
|
|
33
|
-
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
34
36
|
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
37
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
35
38
|
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
36
39
|
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
37
40
|
|
|
@@ -54,6 +57,8 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
54
57
|
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__default["default"](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; }
|
|
55
58
|
var Header = function Header(_ref) {
|
|
56
59
|
var title = _ref.title,
|
|
60
|
+
_ref$titleHelpPopover = _ref.titleHelpPopoverProps,
|
|
61
|
+
titleHelpPopoverProps = _ref$titleHelpPopover === void 0 ? {} : _ref$titleHelpPopover,
|
|
57
62
|
searchProps = _ref.searchProps,
|
|
58
63
|
_ref$className = _ref.className,
|
|
59
64
|
className = _ref$className === void 0 ? "" : _ref$className,
|
|
@@ -104,7 +109,7 @@ var Header = function Header(_ref) {
|
|
|
104
109
|
style: "h2",
|
|
105
110
|
weight: "semibold",
|
|
106
111
|
children: title
|
|
107
|
-
}), renderDropdown(function (_ref2) {
|
|
112
|
+
}), neetoCist.isPresent(titleHelpPopoverProps) && /*#__PURE__*/jsxRuntime.jsx(HelpPopover, _objectSpread({}, titleHelpPopoverProps)), renderDropdown(function (_ref2) {
|
|
108
113
|
var _ref2$dropdownButtonP = _ref2.dropdownButtonProps,
|
|
109
114
|
dropdownButtonProps = _ref2$dropdownButtonP === void 0 ? {} : _ref2$dropdownButtonP,
|
|
110
115
|
dropdownProps = _objectWithoutProperties__default["default"](_ref2, _excluded);
|
package/dist/cjs/Header.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sources":["../../src/components/Header/constants.js","../../src/components/Header/index.jsx"],"sourcesContent":["const SIZES = { nano: \"nano\", small: \"small\", large: \"large\" };\n\nconst DROPDOWN_BUTTON_SIZES = {\n nano: \"small\",\n small: \"medium\",\n large: \"large\",\n};\n\nexport { SIZES, DROPDOWN_BUTTON_SIZES };\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { noop, isNotEmpty } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Breadcrumbs from \"components/Breadcrumbs\";\nimport MoreDropdown from \"components/MoreDropdown\";\nimport Search from \"components/Search\";\n\nimport { DROPDOWN_BUTTON_SIZES, SIZES } from \"./constants\";\nimport \"./header.scss\";\n\nconst Header = ({\n title,\n searchProps,\n className = \"\",\n actionBlock,\n breadcrumbs = [],\n renderDropdown = noop,\n size = \"large\",\n \"data-testid\": dataTestId = \"neeto-molecules-header\",\n}) => {\n const headerRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!headerRef.current) return;\n const height = headerRef.current.offsetHeight;\n document.body.style.setProperty(\n \"--neeto-molecules-effective-header-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 data-cy=\"neeto-molecules-header\"\n data-testid={dataTestId}\n ref={headerRef}\n className={classnames([\n \"neeto-molecules-header\",\n {\n \"neeto-molecules-header--has-breadcrumbs\": isNotEmpty(breadcrumbs),\n \"neeto-molecules-header--large\": size === SIZES.large,\n \"neeto-molecules-header--small\": size === SIZES.small,\n \"neeto-molecules-header--nano\": size === SIZES.nano,\n },\n className,\n ])}\n >\n <div className=\"neeto-molecules-header__left\">\n <div className=\"neeto-molecules-header__left-data-wrap\">\n {isNotEmpty(breadcrumbs) && <Breadcrumbs {...{ breadcrumbs }} />}\n <div className=\"neeto-molecules-header__page-title\">\n <Typography\n data-cy=\"main-header\"\n data-test-id=\"main-header\"\n lineHeight=\"tight\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n {renderDropdown(\n ({ dropdownButtonProps = {}, ...dropdownProps }) => (\n <MoreDropdown\n dropdownButtonProps={{\n size: DROPDOWN_BUTTON_SIZES[size],\n ...dropdownButtonProps,\n }}\n {...dropdownProps}\n />\n )\n )}\n </div>\n </div>\n </div>\n <div className=\"neeto-molecules-header__right\">\n {searchProps && (\n <Search\n enableUrlSync\n className={classnames([\n \"neeto-molecules-header__search-input\",\n searchProps.className,\n ])}\n {...searchProps}\n />\n )}\n {actionBlock && (\n <div className=\"neeto-molecules-header__action-block\">\n {actionBlock}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nHeader.propTypes = {\n /**\n * To set a title in the Header section.\n */\n title: PropTypes.node,\n /**\n * To specify additional class names.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the right side of the Header section.\n */\n\n actionBlock: PropTypes.node,\n /**\n * To add **Search** molecule to the subheader section.\n */\n searchProps: PropTypes.object,\n /**\n * To show breadcrumbs in the Header section. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n /**\n * A function to render the Dropdown next to the title. It provides the MoreDropdown component as argument.\n */\n renderDropdown: PropTypes.func,\n /**\n * To specify size of the Header.\n *\n * `large` - Default size. To be used in index pages.\n *\n * `small` - To be used in inner pages.\n *\n * `nano` - To be used in inner pages with menubar.\n */\n size: PropTypes.oneOf([\"nano\", \"small\", \"large\"]),\n};\n\nexport default Header;\n"],"names":["SIZES","nano","small","large","DROPDOWN_BUTTON_SIZES","Header","_ref","title","searchProps","_ref$className","className","actionBlock","_ref$breadcrumbs","breadcrumbs","_ref$renderDropdown","renderDropdown","noop","_ref$size","size","_ref$dataTestid","dataTestId","headerRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","style","setProperty","concat","window","addEventListener","removeEventListener","_jsxs","ref","classnames","isNotEmpty","children","_jsx","Breadcrumbs","Typography","lineHeight","weight","_ref2","_ref2$dropdownButtonP","dropdownButtonProps","dropdownProps","_objectWithoutProperties","_excluded","MoreDropdown","
|
|
1
|
+
{"version":3,"file":"Header.js","sources":["../../src/components/Header/constants.js","../../src/components/Header/index.jsx"],"sourcesContent":["const SIZES = { nano: \"nano\", small: \"small\", large: \"large\" };\n\nconst DROPDOWN_BUTTON_SIZES = {\n nano: \"small\",\n small: \"medium\",\n large: \"large\",\n};\n\nexport { SIZES, DROPDOWN_BUTTON_SIZES };\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { noop, isNotEmpty, isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Breadcrumbs from \"components/Breadcrumbs\";\nimport HelpPopover from \"components/HelpPopover\";\nimport MoreDropdown from \"components/MoreDropdown\";\nimport Search from \"components/Search\";\n\nimport { DROPDOWN_BUTTON_SIZES, SIZES } from \"./constants\";\nimport \"./header.scss\";\n\nconst Header = ({\n title,\n titleHelpPopoverProps = {},\n searchProps,\n className = \"\",\n actionBlock,\n breadcrumbs = [],\n renderDropdown = noop,\n size = \"large\",\n \"data-testid\": dataTestId = \"neeto-molecules-header\",\n}) => {\n const headerRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!headerRef.current) return;\n const height = headerRef.current.offsetHeight;\n document.body.style.setProperty(\n \"--neeto-molecules-effective-header-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 data-cy=\"neeto-molecules-header\"\n data-testid={dataTestId}\n ref={headerRef}\n className={classnames([\n \"neeto-molecules-header\",\n {\n \"neeto-molecules-header--has-breadcrumbs\": isNotEmpty(breadcrumbs),\n \"neeto-molecules-header--large\": size === SIZES.large,\n \"neeto-molecules-header--small\": size === SIZES.small,\n \"neeto-molecules-header--nano\": size === SIZES.nano,\n },\n className,\n ])}\n >\n <div className=\"neeto-molecules-header__left\">\n <div className=\"neeto-molecules-header__left-data-wrap\">\n {isNotEmpty(breadcrumbs) && <Breadcrumbs {...{ breadcrumbs }} />}\n <div className=\"neeto-molecules-header__page-title\">\n <Typography\n data-cy=\"main-header\"\n data-test-id=\"main-header\"\n lineHeight=\"tight\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n {isPresent(titleHelpPopoverProps) && (\n <HelpPopover {...titleHelpPopoverProps} />\n )}\n {renderDropdown(\n ({ dropdownButtonProps = {}, ...dropdownProps }) => (\n <MoreDropdown\n dropdownButtonProps={{\n size: DROPDOWN_BUTTON_SIZES[size],\n ...dropdownButtonProps,\n }}\n {...dropdownProps}\n />\n )\n )}\n </div>\n </div>\n </div>\n <div className=\"neeto-molecules-header__right\">\n {searchProps && (\n <Search\n enableUrlSync\n className={classnames([\n \"neeto-molecules-header__search-input\",\n searchProps.className,\n ])}\n {...searchProps}\n />\n )}\n {actionBlock && (\n <div className=\"neeto-molecules-header__action-block\">\n {actionBlock}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nHeader.propTypes = {\n /**\n * To set a title in the Header section.\n */\n title: PropTypes.node,\n /**\n * To set props for the HelpPopover component in the title.\n */\n titleHelpPopoverProps: PropTypes.object,\n /**\n * To specify additional class names.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the right side of the Header section.\n */\n\n actionBlock: PropTypes.node,\n /**\n * To add **Search** molecule to the subheader section.\n */\n searchProps: PropTypes.object,\n /**\n * To show breadcrumbs in the Header section. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n /**\n * A function to render the Dropdown next to the title. It provides the MoreDropdown component as argument.\n */\n renderDropdown: PropTypes.func,\n /**\n * To specify size of the Header.\n *\n * `large` - Default size. To be used in index pages.\n *\n * `small` - To be used in inner pages.\n *\n * `nano` - To be used in inner pages with menubar.\n */\n size: PropTypes.oneOf([\"nano\", \"small\", \"large\"]),\n};\n\nexport default Header;\n"],"names":["SIZES","nano","small","large","DROPDOWN_BUTTON_SIZES","Header","_ref","title","_ref$titleHelpPopover","titleHelpPopoverProps","searchProps","_ref$className","className","actionBlock","_ref$breadcrumbs","breadcrumbs","_ref$renderDropdown","renderDropdown","noop","_ref$size","size","_ref$dataTestid","dataTestId","headerRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","style","setProperty","concat","window","addEventListener","removeEventListener","_jsxs","ref","classnames","isNotEmpty","children","_jsx","Breadcrumbs","Typography","lineHeight","weight","isPresent","HelpPopover","_objectSpread","_ref2","_ref2$dropdownButtonP","dropdownButtonProps","dropdownProps","_objectWithoutProperties","_excluded","MoreDropdown","Search","enableUrlSync"],"mappings":"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"}
|
package/dist/cjs/Settings.js
CHANGED
|
@@ -19,10 +19,13 @@ var reactRouterDom = require('react-router-dom');
|
|
|
19
19
|
var jsxRuntime = require('react/jsx-runtime');
|
|
20
20
|
require('./Breadcrumbs.js');
|
|
21
21
|
require('./inject-css-80a5faa3.js');
|
|
22
|
+
require('./HelpPopover.js');
|
|
23
|
+
require('@bigbinary/neeto-icons/Help');
|
|
24
|
+
require('@bigbinary/neetoui/Button');
|
|
25
|
+
require('@bigbinary/neetoui/Popover');
|
|
22
26
|
require('./MoreDropdown.js');
|
|
23
27
|
require('@bigbinary/neeto-icons/MenuHorizontal');
|
|
24
28
|
require('@bigbinary/neeto-icons/MenuVertical');
|
|
25
|
-
require('@bigbinary/neetoui/Button');
|
|
26
29
|
require('@bigbinary/neetoui/Dropdown');
|
|
27
30
|
require('@bigbinary/neetoui/Tooltip');
|
|
28
31
|
require('./Search.js');
|
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/IntegrationItem.jsx","../../src/components/Settings/Category.jsx","../../src/components/Settings/utils.js","../../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import { 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 children,\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex cursor-pointer flex-col space-y-4 border p-6 no-underline outline-none transition-transform duration-300 ease-in-out hover:-translate-y-1\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div\n data-cy={`settings-item-${joinHyphenCase(label)}`}\n data-testid={`settings-item-${joinHyphenCase(label)}`}\n >\n <div className=\"mb-2 flex items-center gap-4\">\n {Icon && <Icon className=\"neeto-ui-text-gray-600\" size={32} />}\n <Typography\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n </div>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataCy={`${hyphenate(label).replace(/\\./g, \"-\")}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-cy=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default memo(IntegrationItem);\n","import classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n const isLabelPresent = isPresent(label);\n\n return (\n <div\n {...{ id }}\n className={classNames(\"flex flex-col\", { \"mb-7\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6 mt-2\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n )}\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 { 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 = ({\n isTitleHidden = false,\n isSearchHidden = false,\n title,\n categories = [],\n}) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n const isHeaderVisible = !isSearchHidden || !isTitleHidden;\n\n const headerTitle = title ?? t(\"neetoMolecules.settingsPage.title\");\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 {isHeaderVisible && (\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && headerTitle}\n searchProps={\n isSearchHidden\n ? null\n : {\n className: \"w-72\",\n placeholder: t(\n \"neetoMolecules.settingsPage.placeholder.search\"\n ),\n }\n }\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\">\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 * This can be used to customize the title.\n */\n title: propTypes.string,\n /**\n * Whether to hide the search bar or not.\n */\n isSearchHidden: 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","children","otherProps","_objectWithoutProperties","_excluded","_jsxs","Link","_objectSpread","to","classnames","omit","concat","joinHyphenCase","_jsx","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","hyphenate","replace","Tag","Check","Category","items","id","isIntegration","SettingsCard","isLabelPresent","isPresent","classNames","component","map","item","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_ref$isSearchHidden","isSearchHidden","title","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","isHeaderVisible","headerTitle","useEffect","Header","searchProps","placeholder","isEmpty","NoData","_createElement","key"],"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/IntegrationItem.jsx","../../src/components/Settings/Category.jsx","../../src/components/Settings/utils.js","../../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import { 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 children,\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex cursor-pointer flex-col space-y-4 border p-6 no-underline outline-none transition-transform duration-300 ease-in-out hover:-translate-y-1\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div\n data-cy={`settings-item-${joinHyphenCase(label)}`}\n data-testid={`settings-item-${joinHyphenCase(label)}`}\n >\n <div className=\"mb-2 flex items-center gap-4\">\n {Icon && <Icon className=\"neeto-ui-text-gray-600\" size={32} />}\n <Typography\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n </div>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataCy={`${hyphenate(label).replace(/\\./g, \"-\")}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-cy=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default memo(IntegrationItem);\n","import classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n const isLabelPresent = isPresent(label);\n\n return (\n <div\n {...{ id }}\n className={classNames(\"flex flex-col\", { \"mb-7\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6 mt-2\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n )}\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 { 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 = ({\n isTitleHidden = false,\n isSearchHidden = false,\n title,\n categories = [],\n}) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n const isHeaderVisible = !isSearchHidden || !isTitleHidden;\n\n const headerTitle = title ?? t(\"neetoMolecules.settingsPage.title\");\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 {isHeaderVisible && (\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && headerTitle}\n searchProps={\n isSearchHidden\n ? null\n : {\n className: \"w-72\",\n placeholder: t(\n \"neetoMolecules.settingsPage.placeholder.search\"\n ),\n }\n }\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\">\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 * This can be used to customize the title.\n */\n title: propTypes.string,\n /**\n * Whether to hide the search bar or not.\n */\n isSearchHidden: 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","children","otherProps","_objectWithoutProperties","_excluded","_jsxs","Link","_objectSpread","to","classnames","omit","concat","joinHyphenCase","_jsx","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","hyphenate","replace","Tag","Check","Category","items","id","isIntegration","SettingsCard","isLabelPresent","isPresent","classNames","component","map","item","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_ref$isSearchHidden","isSearchHidden","title","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","isHeaderVisible","headerTitle","useEffect","Header","searchProps","placeholder","isEmpty","NoData","_createElement","key"],"mappings":"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"}
|