@bigbinary/neeto-molecules 5.1.31 → 5.1.33
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/cjs/v2/Taxonomy.js +24 -19
- package/dist/cjs/v2/Taxonomy.js.map +1 -1
- package/dist/cjs/v2/ToggleFeatureCard.js +3 -3
- package/dist/cjs/v2/ToggleFeatureCard.js.map +1 -1
- package/dist/v2/Taxonomy.js +25 -20
- package/dist/v2/Taxonomy.js.map +1 -1
- package/dist/v2/ToggleFeatureCard.js +3 -3
- package/dist/v2/ToggleFeatureCard.js.map +1 -1
- package/package.json +1 -1
package/dist/cjs/v2/Taxonomy.js
CHANGED
|
@@ -21,7 +21,6 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
21
21
|
var v2_Container = require('./Container.js');
|
|
22
22
|
var v2_Header = require('./Header.js');
|
|
23
23
|
var v2_SubHeader = require('./SubHeader.js');
|
|
24
|
-
var v2_TableWrapper = require('./TableWrapper.js');
|
|
25
24
|
require('@babel/runtime/helpers/objectWithoutProperties');
|
|
26
25
|
require('classnames');
|
|
27
26
|
require('@bigbinary/neeto-commons-frontend/v2/react-utils');
|
|
@@ -157,21 +156,19 @@ var getColumnData = function getColumnData(_ref3) {
|
|
|
157
156
|
}];
|
|
158
157
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
159
158
|
className: "flex items-center justify-between gap-x-3",
|
|
160
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.
|
|
161
|
-
|
|
162
|
-
|
|
159
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
160
|
+
label: i18next.t("taxonomyDefaultLabels.".concat(values.keyName, ".singular")),
|
|
161
|
+
variant: "link",
|
|
162
|
+
onClick: function onClick() {
|
|
163
|
+
return handleEdit(values);
|
|
164
|
+
}
|
|
163
165
|
}), /*#__PURE__*/jsxRuntime.jsx(v2_MoreDropdown, {
|
|
164
166
|
menuItems: menuItems,
|
|
165
|
-
dropdownButtonProps: {
|
|
166
|
-
"data-testid": "nui-dropdown-icon-".concat(values.keyName),
|
|
167
|
-
className: "me-1 my-1"
|
|
168
|
-
},
|
|
169
167
|
dropdownProps: {
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
}
|
|
168
|
+
className: "w-max"
|
|
169
|
+
},
|
|
170
|
+
dropdownButtonProps: {
|
|
171
|
+
"data-testid": "nui-dropdown-icon-".concat(values.keyName)
|
|
175
172
|
}
|
|
176
173
|
})]
|
|
177
174
|
});
|
|
@@ -268,6 +265,7 @@ var EditPane = function EditPane(_ref) {
|
|
|
268
265
|
})
|
|
269
266
|
})
|
|
270
267
|
}), /*#__PURE__*/jsxRuntime.jsxs(formik.Form, {
|
|
268
|
+
className: "flex min-h-0 flex-1 flex-col gap-4",
|
|
271
269
|
formikProps: {
|
|
272
270
|
initialValues: initialValues,
|
|
273
271
|
validationSchema: VALIDATION_SCHEMA,
|
|
@@ -315,8 +313,9 @@ var LeftActionBlock = function LeftActionBlock(_ref) {
|
|
|
315
313
|
return !!totalCount && /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
316
314
|
children: selectedCount > 0 ? /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
317
315
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
318
|
-
className: "me-4
|
|
316
|
+
className: "me-4",
|
|
319
317
|
"data-testid": "item-count",
|
|
318
|
+
variant: "h6",
|
|
320
319
|
children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
|
|
321
320
|
i18nKey: "neetoMolecules.taxonomy.actionBlock.selectedTaxonomy",
|
|
322
321
|
values: {
|
|
@@ -330,6 +329,9 @@ var LeftActionBlock = function LeftActionBlock(_ref) {
|
|
|
330
329
|
}
|
|
331
330
|
})
|
|
332
331
|
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DropdownMenu, {
|
|
332
|
+
dropdownProps: {
|
|
333
|
+
className: "w-max"
|
|
334
|
+
},
|
|
333
335
|
customTarget: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
334
336
|
label: i18next.t("neetoMolecules.taxonomy.actionBlock.takeAction"),
|
|
335
337
|
variant: "secondary"
|
|
@@ -343,8 +345,9 @@ var LeftActionBlock = function LeftActionBlock(_ref) {
|
|
|
343
345
|
})
|
|
344
346
|
})]
|
|
345
347
|
}) : /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
346
|
-
className: "me-4
|
|
348
|
+
className: "me-4",
|
|
347
349
|
"data-testid": "item-count",
|
|
350
|
+
variant: "h6",
|
|
348
351
|
children: i18next.t("neetoMolecules.taxonomy.actionBlock.taxonomyWithCount", {
|
|
349
352
|
count: totalCount
|
|
350
353
|
})
|
|
@@ -434,6 +437,8 @@ var Taxonomy = function Taxonomy(_ref) {
|
|
|
434
437
|
});
|
|
435
438
|
var rowData = formatDataForTable(filteredTaxonomies);
|
|
436
439
|
return /*#__PURE__*/jsxRuntime.jsxs(v2_Container, {
|
|
440
|
+
isHeaderFixed: true,
|
|
441
|
+
className: "pb-10",
|
|
437
442
|
children: [/*#__PURE__*/jsxRuntime.jsx(v2_Header, {
|
|
438
443
|
breadcrumbs: breadcrumbs,
|
|
439
444
|
title: i18next.t("neetoMolecules.taxonomy.title"),
|
|
@@ -454,7 +459,7 @@ var Taxonomy = function Taxonomy(_ref) {
|
|
|
454
459
|
selectedCount: selectedRowIds.length,
|
|
455
460
|
totalCount: rowData.length
|
|
456
461
|
})
|
|
457
|
-
}), neetoCist.isNotEmpty(filteredTaxonomies) ? /*#__PURE__*/jsxRuntime.jsxs(
|
|
462
|
+
}), neetoCist.isNotEmpty(filteredTaxonomies) ? /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
458
463
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DataTable, {
|
|
459
464
|
enableRowSelection: true,
|
|
460
465
|
columns: columnData,
|
|
@@ -496,14 +501,14 @@ var Taxonomy = function Taxonomy(_ref) {
|
|
|
496
501
|
}), /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Dialog.Footer, {
|
|
497
502
|
className: "flex items-center gap-x-2",
|
|
498
503
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
499
|
-
label: i18next.t("neetoMolecules.common.actions.proceed"),
|
|
500
|
-
onClick: handleDelete
|
|
501
|
-
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
502
504
|
label: i18next.t("neetoMolecules.common.actions.cancel"),
|
|
503
505
|
variant: "ghost",
|
|
504
506
|
onClick: function onClick() {
|
|
505
507
|
return setIsResetModalOpen(false);
|
|
506
508
|
}
|
|
509
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
510
|
+
label: i18next.t("neetoMolecules.common.actions.proceed"),
|
|
511
|
+
onClick: handleDelete
|
|
507
512
|
})]
|
|
508
513
|
})]
|
|
509
514
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Taxonomy.js","sources":["../../../src/v2/components/Taxonomy/constants.js","../../../src/v2/components/Taxonomy/api.js","../../../src/v2/components/Taxonomy/useTaxonomyApi.js","../../../src/v2/components/Taxonomy/utils.jsx","../../../src/v2/components/Taxonomy/EditPane.jsx","../../../src/v2/components/Taxonomy/LeftActionBlock.jsx","../../../src/v2/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/v2/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 { Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"../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 id: \"defaultLabel\",\n header: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n cell: ({ row }) => {\n const values = row.original;\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 variant=\"body2\">\n {t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n </Typography>\n <MoreDropdown\n {...{ menuItems }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n className: \"me-1 my-1\",\n }}\n dropdownProps={{\n strategy: \"fixed\",\n placement: \"bottom-end\",\n appendTo: () => document.body,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n id: \"singularLabel\",\n accessorKey: \"singularLabel\",\n header: singularLabel,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [{ id: \"pluralLabel\", accessorKey: \"pluralLabel\", header: pluralLabel }]\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 { Sheet, Toastr } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { SINGULAR, PLURAL } from \"neetocommons/v2/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/v2/utils\";\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 <Sheet\n {...{ initialFocusRef, isOpen, onClose }}\n aria-describedby={undefined}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Sheet.Header>\n <Sheet.Title>\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 </Sheet.Title>\n </Sheet.Header>\n <Form\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center gap-x-2\"\n />\n </Sheet.Footer>\n </Form>\n </Sheet>\n );\n};\n\nexport default EditPane;\n","import { Button, DropdownMenu, Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) =>\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography className=\"me-4 font-semibold\" data-testid=\"item-count\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"text-muted-foreground\" />,\n }}\n />\n </Typography>\n <DropdownMenu\n customTarget={\n <Button\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n variant=\"secondary\"\n />\n }\n >\n <DropdownMenu.MenuItem\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu>\n </>\n ) : (\n <Typography className=\"me-4 font-semibold\" data-testid=\"item-count\">\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n );\n\nexport default LeftActionBlock;\n","import { useState } from \"react\";\n\nimport {\n Button,\n DataTable,\n Dialog,\n Toastr,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/v2/initializers\";\nimport PropTypes from \"prop-types\";\nimport { pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nimport Container from \"../Container\";\nimport Header from \"../Header\";\nimport SubHeader from \"../SubHeader\";\nimport TableWrapper from \"../TableWrapper\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n // Fall back to globalProps.taxonomies when the v2 i18n store hasn't been\n // initialized (e.g. Storybook skips i18n in initializeV2Application).\n // In production and in tests (via mock), taxonomies is populated and this\n // branch is never taken.\n const taxonomySource = isNotEmpty(taxonomies)\n ? taxonomies\n : globalProps.taxonomies;\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomySource);\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 const columnData = getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n });\n\n const rowData = formatDataForTable(filteredTaxonomies);\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={rowData.length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <TableWrapper>\n <DataTable\n enableRowSelection\n columns={columnData}\n data={rowData}\n getRowId={r => r.keyName}\n selectedRowKeys={selectedRowIds}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Dialog\n aria-describedby={undefined}\n isOpen={isResetModalOpen}\n onClose={() => setIsResetModalOpen(false)}\n >\n <Dialog.Header>\n <Dialog.Title>\n {t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n </Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n <Typography variant=\"body2\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n </Typography>\n </Dialog.Body>\n <Dialog.Footer className=\"flex items-center gap-x-2\">\n <Button\n label={t(\"neetoMolecules.common.actions.proceed\")}\n onClick={handleDelete}\n />\n <Button\n label={t(\"neetoMolecules.common.actions.cancel\")}\n variant=\"ghost\"\n onClick={() => setIsResetModalOpen(false)}\n />\n </Dialog.Footer>\n </Dialog>\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Typography variant=\"body2\">\n {t(\"neetoMolecules.taxonomy.noData\")}\n </Typography>\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n columnLabels: PropTypes.object,\n columnsToShow: PropTypes.object,\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default Taxonomy;\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","id","header","cell","_ref4","row","values","original","menuItems","key","onClick","_jsxs","className","children","_jsx","Typography","variant","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","placement","appendTo","document","body","_toConsumableArray","accessorKey","getFilteredTaxonomies","matchString","filteredArray","filter","_ref5","_ref6","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","Sheet","undefined","Header","Title","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","_Fragment","count","components","span","DropdownMenu","customTarget","Button","MenuItem","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState0","searchString","setSearchString","_useState1","_useState10","currentKeys","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","taxonomySource","isNotEmpty","hostTaxonomies","pick","_useState11","_useState12","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","columnData","rowData","Container","title","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","TableWrapper","DataTable","enableRowSelection","columns","getRowId","r","selectedRowKeys","onRowSelect","Dialog","what"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAAMA,wBAAwB,GAAG,kBAAkB;AAEnD,IAAMC,iBAAiB,GAAGC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AAClDC,EAAAA,aAAa,EAAEH,cAAG,CACfI,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CACPC,SAAC,CAAC,oEAAoE,CACxE,CAAC;AACHC,EAAAA,WAAW,EAAER,cAAG,CACbI,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CACPC,SAAC,CAAC,kEAAkE,CACtE;AACJ,CAAC,CAAC;AAEK,IAAME,eAAe,GAAG;AAAEC,EAAAA,OAAO,EAAE;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;AAAA,EAAA,OAChCC,KAAK,CAACC,KAAK,CAAA,EAAA,CAAAC,MAAA,CAAIC,yBAAe,EAAA,cAAA,CAAA,CAAAD,MAAA,CAAeJ,OAAO,CAAA,EAAIC,OAAO,CAAC;AAAA,CAAA;AAElE,IAAMK,WAAW,GAAG,SAAdA,WAAWA,CAAGL,OAAO,EAAA;AAAA,EAAA,OACzBC,KAAK,CAAA,QAAA,CAAO,CAAA,EAAA,CAAAE,MAAA,CAAIC,yBAAe,EAAA,0BAAA,CAAA,EAA4B;AACzDE,IAAAA,IAAI,EAAEN;AACR,GAAC,CAAC;AAAA,CAAA;AAEJ,IAAMO,aAAa,GAAG;AAAEV,EAAAA,MAAM,EAANA,MAAM;AAAEQ,EAAAA,WAAW,EAAXA;AAAY,CAAC;;;;ACP7C,IAAMG,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,OAAO,EAAA;EAAA,OAC/BC,sBAAW,CAAAC,eAAA,CAAA;IAAGC,UAAU,EAAEL,aAAa,CAACV;GAAM,EAAKY,OAAO,CAAE,CAAC;AAAA,CAAA;AAE/D,IAAMI,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAGJ,OAAO,EAAA;EAAA,OACtCC,sBAAW,CAAAC,eAAA,CAAA;IAAGC,UAAU,EAAEL,aAAa,CAACF;GAAW,EAAKI,OAAO,CAAE,CAAC;AAAA,CAAA;;ACD7D,IAAMK,WAAW,GAAG,SAAdA,WAAWA,CAAGC,KAAK,EAAA;AAAA,EAAA,OAAIC,oBAAU,CAACD,KAAK,CAACxB,IAAI,EAAE,CAAC;AAAA,CAAA;AAErD,IAAM0B,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,UAAU,EAAA;EAAA,OAC1CC,aAAO,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;IAAA,OAAO;AAC9CtB,MAAAA,OAAO,EAAPA,OAAO;AACPV,MAAAA,aAAa,EAAEkC,MAAM,CAAC,UAAU,CAAC;MACjC7B,WAAW,EAAE6B,MAAM,CAAC,QAAQ;KAC7B;AAAA,EAAA,CAAC,CAAC;AAAA,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;AAEnB,EAAA,IAAAC,qBAAA,GAGIJ,aAAa,CAFfK,cAAc;AAAEC,IAAAA,kBAAkB,GAAAF,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAAAG,qBAAA,GAEvCP,aAAa,CADfQ,YAAY;AAAEC,IAAAA,gBAAgB,GAAAF,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;AAGvC,EAAA,IAAAG,qBAAA,GAGIX,YAAY,CAFdY,QAAQ;IAAEjD,aAAa,GAAAgD,qBAAA,KAAA,MAAA,GAAG5C,SAAC,CAAC,uCAAuC,CAAC,GAAA4C,qBAAA;IAAAE,oBAAA,GAElEb,YAAY,CADdc,MAAM;IAAE9C,WAAW,GAAA6C,oBAAA,KAAA,MAAA,GAAG9C,SAAC,CAAC,qCAAqC,CAAC,GAAA8C,oBAAA;EAGhE,OAAA,CACE;AACEE,IAAAA,EAAE,EAAE,cAAc;AAClBC,IAAAA,MAAM,EAAEjD,SAAC,CAAC,sCAAsC,CAAC;AACjDkD,IAAAA,IAAI,EAAE,SAANA,IAAIA,CAAAC,KAAA,EAAe;AAAA,MAAA,IAAVC,GAAG,GAAAD,KAAA,CAAHC,GAAG;AACV,MAAA,IAAMC,MAAM,GAAGD,GAAG,CAACE,QAAQ;MAC3B,IAAMC,SAAS,GAAG,CAChB;AACEC,QAAAA,GAAG,EAAE,MAAM;AACXlC,QAAAA,KAAK,EAAEtB,SAAC,CAAC,oCAAoC,CAAC;QAC9CyD,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQtB,UAAU,CAACkB,MAAM,CAAC;AAAA,QAAA;AACnC,OAAC,EACD;AACEG,QAAAA,GAAG,EAAE,OAAO;AACZlC,QAAAA,KAAK,EAAEtB,SAAC,CAAC,+CAA+C,CAAC;AACzDyD,QAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;AACbrB,UAAAA,cAAc,CAAC,CAACiB,MAAM,CAAC/C,OAAO,CAAC,CAAC;UAChC+B,mBAAmB,CAAC,IAAI,CAAC;AAC3B,QAAA;AACF,OAAC,CACF;AAED,MAAA,oBACEqB,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,2CAA2C;QAAAC,QAAA,EAAA,cACxDC,cAAA,CAACC,qBAAU,EAAA;AAACC,UAAAA,OAAO,EAAC,OAAO;UAAAH,QAAA,EACxB5D,SAAC,CAAA,wBAAA,CAAAU,MAAA,CAA0B2C,MAAM,CAAC/C,OAAO,EAAA,WAAA,CAAW;AAAC,SAC5C,CAAC,eACbuD,cAAA,CAACG,eAAY,EAAA;AACLT,UAAAA,SAAS,EAATA,SAAS;AACfU,UAAAA,mBAAmB,EAAE;AACnB,YAAA,aAAa,uBAAAvD,MAAA,CAAuB2C,MAAM,CAAC/C,OAAO,CAAE;AACpDqD,YAAAA,SAAS,EAAE;WACX;AACFO,UAAAA,aAAa,EAAE;AACbC,YAAAA,QAAQ,EAAE,OAAO;AACjBC,YAAAA,SAAS,EAAE,YAAY;YACvBC,QAAQ,EAAE,SAAVA,QAAQA,GAAA;cAAA,OAAQC,QAAQ,CAACC,IAAI;AAAA,YAAA;AAC/B;AAAE,SACH,CAAC;AAAA,OACC,CAAC;AAEV,IAAA;AACF,GAAC,EAAA7D,MAAA,CAAA8D,kBAAA,CACGhC,kBAAkB,GAClB,CACE;AACEQ,IAAAA,EAAE,EAAE,eAAe;AACnByB,IAAAA,WAAW,EAAE,eAAe;AAC5BxB,IAAAA,MAAM,EAAErD;GACT,CACF,GACD,EAAE,CAAA,EAAA4E,kBAAA,CACF7B,gBAAgB,GAChB,CAAC;AAAEK,IAAAA,EAAE,EAAE,aAAa;AAAEyB,IAAAA,WAAW,EAAE,aAAa;AAAExB,IAAAA,MAAM,EAAEhD;GAAa,CAAC,GACxE,EAAE,CAAA,CAAA;AAEV,CAAC;AAEM,IAAMyE,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,WAAW,EAAElD,UAAU,EAAK;EAChE,IAAMmD,aAAa,GAAGlD,aAAO,CAACD,UAAU,CAAC,CAACoD,MAAM,CAAC,UAAAC,KAAA,EAAkB;AAAA,IAAA,IAAAC,KAAA,GAAAlD,cAAA,CAAAiD,KAAA,EAAA,CAAA,CAAA;AAAhBtB,MAAAA,GAAG,GAAAuB,KAAA,CAAA,CAAA,CAAA;AAAEC,MAAAA,KAAK,GAAAD,KAAA,CAAA,CAAA,CAAA;IAC3D,IAAME,YAAY,GAAGjF,SAAC,CAAA,wBAAA,CAAAU,MAAA,CAA0B8C,GAAG,cAAW,CAAC;AAC/D,IAAA,IAAM0B,cAAc,GAAA,CAAID,YAAY,CAAA,CAAAvE,MAAA,CAAA8D,kBAAA,CAAKW,MAAM,CAAC9B,MAAM,CAAC2B,KAAK,CAAC,CAAA,CAAC;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;AAAA,IAAA,CACvD,CAAC;AACH,EAAA,CAAC,CAAC;EAEF,OAAOE,eAAS,CAACZ,aAAa,CAAC;AACjC,CAAC;;;;ACtFD,IAAMa,QAAQ,GAAG,SAAXA,QAAQA,CAAApF,IAAA,EAMR;AAAA,EAAA,IALJ4B,YAAY,GAAA5B,IAAA,CAAZ4B,YAAY;IACZC,aAAa,GAAA7B,IAAA,CAAb6B,aAAa;IACbwD,aAAa,GAAArF,IAAA,CAAbqF,aAAa;IACbC,MAAM,GAAAtF,IAAA,CAANsF,MAAM;IACNC,OAAO,GAAAvF,IAAA,CAAPuF,OAAO;AAEP,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtB9F,CAAC,GAAA6F,eAAA,CAAD7F,CAAC;AACT,EAAA,IAAM+F,eAAe,GAAGC,YAAM,CAAC,IAAI,CAAC;AAEpC,EAAA,IAAAC,kBAAA,GAAmClF,iBAAiB,EAAE;IAAtCmF,cAAc,GAAAD,kBAAA,CAAtBE,MAAM;AAEd,EAAA,IAAA7D,qBAAA,GAGIJ,aAAa,CAFfK,cAAc;AAAE6D,IAAAA,sBAAsB,GAAA9D,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAAAG,qBAAA,GAE3CP,aAAa,CADfQ,YAAY;AAAE2D,IAAAA,oBAAoB,GAAA5D,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;AAG3C,EAAA,IAAAG,qBAAA,GAGIX,YAAY,CAFdY,QAAQ;IAAEjD,aAAa,GAAAgD,qBAAA,KAAA,MAAA,GAAG5C,CAAC,CAAC,uCAAuC,CAAC,GAAA4C,qBAAA;IAAAE,oBAAA,GAElEb,YAAY,CADdc,MAAM;IAAE9C,WAAW,GAAA6C,oBAAA,KAAA,MAAA,GAAG9C,CAAC,CAAC,qCAAqC,CAAC,GAAA8C,oBAAA;EAGhE,IAAMwD,YAAY,GAAG,SAAfA,YAAYA,CAAIjD,MAAM,EAAAzB,KAAA,EAAwB;AAAA,IAAA,IAApB2E,aAAa,GAAA3E,KAAA,CAAb2E,aAAa;AAC3C,IAAA,IAAQjG,OAAO,GAAiC+C,MAAM,CAA9C/C,OAAO;MAAEV,aAAa,GAAkByD,MAAM,CAArCzD,aAAa;MAAEK,WAAW,GAAKoD,MAAM,CAAtBpD,WAAW;AAE3C,IAAA,IAAMM,OAAO,GAAG;AACdiG,MAAAA,QAAQ,EAAE;AACRlG,QAAAA,OAAO,EAAPA,OAAO;AACPV,QAAAA,aAAa,EAAEyB,WAAW,CAACzB,aAAa,CAAC;QACzCK,WAAW,EAAEoB,WAAW,CAACpB,WAAW;AACtC;KACD;AAED,IAAA,IAAMe,OAAO,GAAG;AACdyF,MAAAA,SAAS,EAAE,SAAXA,SAASA,GAAQ;AACfC,QAAAA,2BAAqB,CAACxG,eAAe,CAACC,OAAO,EAAE;UAC7CqG,QAAQ,EAAEjG,OAAO,CAACiG;AACpB,SAAC,CAAC;AACFG,QAAAA,MAAM,CAACC,QAAQ,CAACC,MAAM,EAAE;MAC1B,CAAC;AACDC,MAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEC,KAAK,EAAA;AAAA,QAAA,OAAIC,iBAAM,CAACD,KAAK,CAACA,KAAK,CAAC;AAAA,MAAA,CAAA;MACrCE,SAAS,EAAE,SAAXA,SAASA,GAAA;QAAA,OAAQV,aAAa,CAAC,KAAK,CAAC;AAAA,MAAA;KACtC;AAEDL,IAAAA,cAAc,CAAC;AAAE5F,MAAAA,OAAO,EAAPA,OAAO;AAAEC,MAAAA,OAAO,EAAPA;KAAS,EAAES,OAAO,CAAC;EAC/C,CAAC;EAED,oBACE0C,eAAA,CAACwD,gBAAK,EAAA;AACEnB,IAAAA,eAAe,EAAfA,eAAe;AAAEJ,IAAAA,MAAM,EAANA,MAAM;AAAEC,IAAAA,OAAO,EAAPA,OAAO;AACtC,IAAA,kBAAA,EAAkBuB,SAAU;AAC5B,IAAA,aAAA,EAAY,oBAAoB;AAAAvD,IAAAA,QAAA,EAAA,cAEhCC,cAAA,CAACqD,gBAAK,CAACE,MAAM,EAAA;AAAAxD,MAAAA,QAAA,eACXC,cAAA,CAACqD,gBAAK,CAACG,KAAK,EAAA;QAAAzD,QAAA,eACVC,cAAA,CAACyD,kBAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,wCAAwC;AAChDlE,UAAAA,MAAM,EAAAnC,eAAA,CAAA;YACJsG,MAAM,EAAExH,CAAC,CAAA,wBAAA,CAAAU,MAAA,CACkBgF,aAAa,CAACpF,OAAO,EAAA,WAAA,CAChD;AAAC,WAAA,EACG8F,sBAAsB,IAAIC,oBAAoB,GAC9CoB,gBAAM,GACNC,kBAAQ;SAEf;OACU;AAAC,KACF,CAAC,eACfhE,eAAA,CAACiE,WAAI,EAAA;AACHC,MAAAA,WAAW,EAAE;AACXlC,QAAAA,aAAa,EAAbA,aAAa;AACbmC,QAAAA,gBAAgB,EAAErI,iBAAiB;AACnCsI,QAAAA,QAAQ,EAAExB;OACV;AAAA1C,MAAAA,QAAA,EAAA,cAEFC,cAAA,CAACqD,gBAAK,CAACa,IAAI,EAAA;AAAAnE,QAAAA,QAAA,eACTF,eAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,8BAA8B;AAAAC,UAAAA,QAAA,EAAA,CAC1CwC,sBAAsB,iBACrBvC,cAAA,CAACmE,YAAK,EAAA;YACJjI,QAAQ,EAAA,IAAA;AACR4D,YAAAA,SAAS,EAAC,QAAQ;AAClB,YAAA,aAAA,EAAY,+BAA+B;AAC3CrC,YAAAA,KAAK,EAAE1B,aAAc;AACrBqI,YAAAA,IAAI,EAAC,eAAe;AACpBC,YAAAA,GAAG,EAAEnC,eAAgB;AACrBoC,YAAAA,gBAAgB,EAAE5I;AAAyB,WAC5C,CACF,EACA8G,oBAAoB,iBACnBxC,cAAA,CAACmE,YAAK,EAAA;YACJjI,QAAQ,EAAA,IAAA;AACR4D,YAAAA,SAAS,EAAC,QAAQ;AAClB,YAAA,aAAA,EAAY,6BAA6B;AACzCrC,YAAAA,KAAK,EAAErB,WAAY;AACnBgI,YAAAA,IAAI,EAAC,aAAa;AAClBE,YAAAA,gBAAgB,EAAE5I;AAAyB,WAC5C,CACF;SACE;AAAC,OACI,CAAC,eACbsE,cAAA,CAACqD,gBAAK,CAACkB,MAAM,EAAA;QAAAxE,QAAA,eACXC,cAAA,CAACwE,kBAAW,EAAA;AACVC,UAAAA,iBAAiB,EAAE;AAAE7E,YAAAA,OAAO,EAAEmC,OAAO;AAAE2C,YAAAA,QAAQ,EAAE;WAAQ;AACzD5E,UAAAA,SAAS,EAAC;SACX;AAAC,OACU,CAAC;AAAA,KACX,CAAC;AAAA,GACF,CAAC;AAEZ,CAAC;;ACzHD,IAAM6E,eAAe,GAAG,SAAlBA,eAAeA,CAAAnI,IAAA,EAAA;AAAA,EAAA,IACnBoI,aAAa,GAAApI,IAAA,CAAboI,aAAa;IACbC,UAAU,GAAArI,IAAA,CAAVqI,UAAU;IACVrG,mBAAmB,GAAAhC,IAAA,CAAnBgC,mBAAmB;IACnBD,cAAc,GAAA/B,IAAA,CAAd+B,cAAc;IACduG,cAAc,GAAAtI,IAAA,CAAdsI,cAAc;AAAA,EAAA,OAEd,CAAC,CAACD,UAAU,iBACV7E,cAAA,CAAA+E,mBAAA,EAAA;AAAAhF,IAAAA,QAAA,EACG6E,aAAa,GAAG,CAAC,gBAChB/E,eAAA,CAAAkF,mBAAA,EAAA;MAAAhF,QAAA,EAAA,cACEC,cAAA,CAACC,qBAAU,EAAA;AAACH,QAAAA,SAAS,EAAC,oBAAoB;AAAC,QAAA,aAAA,EAAY,YAAY;QAAAC,QAAA,eACjEC,cAAA,CAACyD,kBAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,sDAAsD;AAC9DlE,UAAAA,MAAM,EAAE;AAAEwF,YAAAA,KAAK,EAAEJ,aAAa;AAAEC,YAAAA,UAAU,EAAVA;WAAa;AAC7CI,UAAAA,UAAU,EAAE;AACVC,YAAAA,IAAI,eAAElF,cAAA,CAAA,MAAA,EAAA;AAAMF,cAAAA,SAAS,EAAC;aAAyB;AACjD;SACD;AAAC,OACQ,CAAC,eACbE,cAAA,CAACmF,uBAAY,EAAA;QACXC,YAAY,eACVpF,cAAA,CAACqF,iBAAM,EAAA;AACL5H,UAAAA,KAAK,EAAEtB,SAAC,CAAC,gDAAgD,CAAE;AAC3D+D,UAAAA,OAAO,EAAC;AAAW,SACpB,CACF;AAAAH,QAAAA,QAAA,eAEDC,cAAA,CAACmF,uBAAY,CAACG,QAAQ,EAAA;AACpB1F,UAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;YACbrB,cAAc,CAACuG,cAAc,CAAC;YAC9BtG,mBAAmB,CAAC,IAAI,CAAC;UAC3B,CAAE;UAAAuB,QAAA,EAED5D,SAAC,CAAC,+CAA+C;SAC7B;AAAC,OACZ,CAAC;AAAA,KACf,CAAC,gBAEH6D,cAAA,CAACC,qBAAU,EAAA;AAACH,MAAAA,SAAS,EAAC,oBAAoB;AAAC,MAAA,aAAA,EAAY,YAAY;AAAAC,MAAAA,QAAA,EAChE5D,SAAC,CAAC,uDAAuD,EAAE;AAC1D6I,QAAAA,KAAK,EAAEH;OACR;KACS;AACb,GACD,CACH;AAAA,CAAA;;;;ACpBH,IAAMU,QAAQ,GAAG,SAAXA,QAAQA,CAAA/I,IAAA,EAKR;AAAA,EAAA,IAJJgJ,WAAW,GAAAhJ,IAAA,CAAXgJ,WAAW;IAAAC,iBAAA,GAAAjJ,IAAA,CACX4B,YAAY;AAAZA,IAAAA,YAAY,GAAAqH,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IAAAC,kBAAA,GAAAlJ,IAAA,CACjB6B,aAAa;AAAbA,IAAAA,aAAa,GAAAqH,kBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,kBAAA;IAAAC,qBAAA,GAAAnJ,IAAA,CAClBoJ,qBAAqB;AAArBA,IAAAA,qBAAqB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAE1B,EAAA,IAAAE,SAAA,GAAgDC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAA/H,cAAA,CAAA6H,SAAA,EAAA,CAAA,CAAA;AAAxDG,IAAAA,gBAAgB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEvH,IAAAA,mBAAmB,GAAAuH,UAAA,CAAA,CAAA,CAAA;AAC5C,EAAA,IAAAE,UAAA,GAA4DH,cAAQ,CAAC,KAAK,CAAC;IAAAI,UAAA,GAAAlI,cAAA,CAAAiI,UAAA,EAAA,CAAA,CAAA;AAApEE,IAAAA,sBAAsB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,yBAAyB,GAAAF,UAAA,CAAA,CAAA,CAAA;AACxD,EAAA,IAAAG,UAAA,GAA0CP,cAAQ,CAAC,EAAE,CAAC;IAAAQ,UAAA,GAAAtI,cAAA,CAAAqI,UAAA,EAAA,CAAA,CAAA;AAA/CxE,IAAAA,aAAa,GAAAyE,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,gBAAgB,GAAAD,UAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAAE,UAAA,GAA4CV,cAAQ,CAAC,EAAE,CAAC;IAAAW,UAAA,GAAAzI,cAAA,CAAAwI,UAAA,EAAA,CAAA,CAAA;AAAjD1B,IAAAA,cAAc,GAAA2B,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAAE,UAAA,GAAwCb,cAAQ,CAAC,EAAE,CAAC;IAAAc,UAAA,GAAA5I,cAAA,CAAA2I,UAAA,EAAA,CAAA,CAAA;AAA7CE,IAAAA,YAAY,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAAG,UAAA,GAAsCjB,cAAQ,CAAC,EAAE,CAAC;IAAAkB,WAAA,GAAAhJ,cAAA,CAAA+I,UAAA,EAAA,CAAA,CAAA;AAA3CE,IAAAA,WAAW,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEzI,IAAAA,cAAc,GAAAyI,WAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAAE,qBAAA,GAA0C3J,wBAAwB,EAAE;IAApD4J,qBAAqB,GAAAD,qBAAA,CAA7B5E,MAAM;AAEd,EAAA,IAAM8E,gBAAgB,GAAGC,UAAI,CAACC,wBAAW,CAAC1J,UAAU,CAAC;AACrD;AACA;AACA;AACA;EACA,IAAM2J,cAAc,GAAGC,oBAAU,CAAC5J,uBAAU,CAAC,GACzCA,uBAAU,GACV0J,wBAAW,CAAC1J,UAAU;AAC1B,EAAA,IAAM6J,cAAc,GAAGC,UAAI,CAACN,gBAAgB,EAAEG,cAAc,CAAC;AAE7D,EAAA,IAAAI,WAAA,GAAoD7B,cAAQ,CAAC2B,cAAc,CAAC;IAAAG,WAAA,GAAA5J,cAAA,CAAA2J,WAAA,EAAA,CAAA,CAAA;AAArEE,IAAAA,kBAAkB,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,qBAAqB,GAAAF,WAAA,CAAA,CAAA,CAAA;AAEhD,EAAA,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,GAAG,EAAA;IAAA,OAAItB,iBAAiB,CAACsB,GAAG,CAAC;AAAA,EAAA,CAAA;AAErD,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,GAAS;AACzB,IAAA,IAAMvL,OAAO,GAAG;AAAEwL,MAAAA,QAAQ,EAAEjB;KAAa;AAEzC,IAAA,IAAM9J,OAAO,GAAG;MACdyF,SAAS,EAAE,SAAXA,SAASA,GAAA;AAAA,QAAA,OAAQE,MAAM,CAACC,QAAQ,CAACC,MAAM,EAAE;AAAA,MAAA,CAAA;AACzCC,MAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEC,KAAK,EAAA;AAAA,QAAA,OAAIC,iBAAM,CAACD,KAAK,CAACA,KAAK,CAAC;AAAA,MAAA;KACtC;AAEDiE,IAAAA,qBAAqB,CAACzK,OAAO,EAAES,OAAO,CAAC;EACzC,CAAC;AAED,EAAA,IAAMmB,UAAU,GAAG,SAAbA,UAAUA,CAAGkB,MAAM,EAAI;IAC3B+G,gBAAgB,CAAC/G,MAAM,CAAC;IACxB4G,yBAAyB,CAAC,IAAI,CAAC;EACjC,CAAC;AAED,EAAA,IAAM+B,YAAY,GAAG,SAAfA,YAAYA,CAAGC,KAAK,EAAI;AAC5BtB,IAAAA,eAAe,CAACsB,KAAK,CAACC,MAAM,CAAClH,KAAK,CAAC;IACnC,IAAMmH,aAAa,GAAGzH,qBAAqB,CACzCuH,KAAK,CAACC,MAAM,CAAClH,KAAK,EAClBsG,cACF,CAAC;IACDK,qBAAqB,CAACQ,aAAa,CAAC;EACtC,CAAC;EAED,IAAMC,UAAU,GAAGrK,aAAa,CAAC;AAC/BE,IAAAA,YAAY,EAAZA,YAAY;AACZC,IAAAA,aAAa,EAAbA,aAAa;AACbC,IAAAA,UAAU,EAAVA,UAAU;AACVC,IAAAA,cAAc,EAAdA,cAAc;AACdC,IAAAA,mBAAmB,EAAnBA;AACF,GAAC,CAAC;AAEF,EAAA,IAAMgK,OAAO,GAAG7K,kBAAkB,CAACkK,kBAAkB,CAAC;EAEtD,oBACEhI,eAAA,CAAC4I,YAAS,EAAA;IAAA1I,QAAA,EAAA,cACRC,cAAA,CAACuD,SAAM,EAAA;AACCiC,MAAAA,WAAW,EAAXA,WAAW;AACjBkD,MAAAA,KAAK,EAAEvM,SAAC,CAAC,+BAA+B,CAAE;AAC1CwM,MAAAA,WAAW,EAAE;AACXC,QAAAA,QAAQ,EAAET,YAAY;AACtBhH,QAAAA,KAAK,EAAE0F,YAAY;QACnBgC,WAAW,EAAE1M,SAAC,CAAC,wCAAwC;OACvD;AACFyJ,MAAAA,qBAAqB,EAAAvI,aAAA,CAAA;AACnByL,QAAAA,WAAW,EAAE3M,SAAC,CAAC,qCAAqC,CAAC;QACrDuM,KAAK,EAAEvM,SAAC,CAAC,+BAA+B;AAAC,OAAA,EACtCyJ,qBAAqB;AACxB,KACH,CAAC,eACF5F,cAAA,CAAC+I,YAAS,EAAA;MACRC,eAAe,eACbhJ,cAAA,CAAC2E,eAAe,EAAA;AACRG,QAAAA,cAAc,EAAdA,cAAc;AAAEvG,QAAAA,cAAc,EAAdA,cAAc;AAAEC,QAAAA,mBAAmB,EAAnBA,mBAAmB;QACzDoG,aAAa,EAAEE,cAAc,CAACmE,MAAO;QACrCpE,UAAU,EAAE2D,OAAO,CAACS;OACrB;KAEJ,CAAC,EACDzB,oBAAU,CAACK,kBAAkB,CAAC,gBAC7BhI,eAAA,CAACqJ,eAAY,EAAA;MAAAnJ,QAAA,EAAA,cACXC,cAAA,CAACmJ,oBAAS,EAAA;QACRC,kBAAkB,EAAA,IAAA;AAClBC,QAAAA,OAAO,EAAEd,UAAW;AACpBvL,QAAAA,IAAI,EAAEwL,OAAQ;AACdc,QAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEC,CAAC,EAAA;UAAA,OAAIA,CAAC,CAAC9M,OAAO;QAAA,CAAC;AACzB+M,QAAAA,eAAe,EAAE1E,cAAe;AAChC2E,QAAAA,WAAW,EAAE1B;AAAgB,OAC9B,CAAC,eACF/H,cAAA,CAAC4B,QAAQ,EAAA;AACDxD,QAAAA,YAAY,EAAZA,YAAY;AAAEC,QAAAA,aAAa,EAAbA,aAAa;AAAEwD,QAAAA,aAAa,EAAbA,aAAa;AAChDC,QAAAA,MAAM,EAAEqE,sBAAuB;QAC/BpE,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQqE,yBAAyB,CAAC,KAAK,CAAC;AAAA,QAAA;AAAC,OACjD,CAAC,eACFvG,eAAA,CAAC6J,iBAAM,EAAA;AACL,QAAA,kBAAA,EAAkBpG,SAAU;AAC5BxB,QAAAA,MAAM,EAAEkE,gBAAiB;QACzBjE,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQvD,mBAAmB,CAAC,KAAK,CAAC;QAAA,CAAC;AAAAuB,QAAAA,QAAA,EAAA,cAE1CC,cAAA,CAAC0J,iBAAM,CAACnG,MAAM,EAAA;AAAAxD,UAAAA,QAAA,eACZC,cAAA,CAAC0J,iBAAM,CAAClG,KAAK,EAAA;YAAAzD,QAAA,EACV5D,SAAC,CAAC,0CAA0C;WACjC;AAAC,SACF,CAAC,eAChB6D,cAAA,CAAC0J,iBAAM,CAACxF,IAAI,EAAA;UAAAnE,QAAA,eACVC,cAAA,CAACC,qBAAU,EAAA;AAACC,YAAAA,OAAO,EAAC,OAAO;YAAAH,QAAA,eACzBC,cAAA,CAACyD,kBAAK,EAAA;AACJC,cAAAA,OAAO,EAAC,4CAA4C;AACpDlE,cAAAA,MAAM,EAAE;gBACNwF,KAAK,EAAEiC,WAAW,CAACgC,MAAM;gBACzBU,IAAI,EAAExN,SAAC,CAAA,wBAAA,CAAAU,MAAA,CAA0BoK,WAAW,CAAC,CAAC,CAAC,EAAA,WAAA,CAAW;AAC5D;aACD;WACS;AAAC,SACF,CAAC,eACdpH,eAAA,CAAC6J,iBAAM,CAACnF,MAAM,EAAA;AAACzE,UAAAA,SAAS,EAAC,2BAA2B;UAAAC,QAAA,EAAA,cAClDC,cAAA,CAACqF,iBAAM,EAAA;AACL5H,YAAAA,KAAK,EAAEtB,SAAC,CAAC,uCAAuC,CAAE;AAClDyD,YAAAA,OAAO,EAAEqI;AAAa,WACvB,CAAC,eACFjI,cAAA,CAACqF,iBAAM,EAAA;AACL5H,YAAAA,KAAK,EAAEtB,SAAC,CAAC,sCAAsC,CAAE;AACjD+D,YAAAA,OAAO,EAAC,OAAO;YACfN,OAAO,EAAE,SAATA,OAAOA,GAAA;cAAA,OAAQpB,mBAAmB,CAAC,KAAK,CAAC;AAAA,YAAA;AAAC,WAC3C,CAAC;AAAA,SACW,CAAC;AAAA,OACV,CAAC;KACG,CAAC,gBAEfwB,cAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,gDAAgD;MAAAC,QAAA,eAC7DC,cAAA,CAACC,qBAAU,EAAA;AAACC,QAAAA,OAAO,EAAC,OAAO;QAAAH,QAAA,EACxB5D,SAAC,CAAC,gCAAgC;OACzB;AAAC,KACV,CACN;AAAA,GACQ,CAAC;AAEhB;;;;"}
|
|
1
|
+
{"version":3,"file":"Taxonomy.js","sources":["../../../src/v2/components/Taxonomy/constants.js","../../../src/v2/components/Taxonomy/api.js","../../../src/v2/components/Taxonomy/useTaxonomyApi.js","../../../src/v2/components/Taxonomy/utils.jsx","../../../src/v2/components/Taxonomy/EditPane.jsx","../../../src/v2/components/Taxonomy/LeftActionBlock.jsx","../../../src/v2/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/v2/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 { Button } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"../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 id: \"defaultLabel\",\n header: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n cell: ({ row }) => {\n const values = row.original;\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 <Button\n label={t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n variant=\"link\"\n onClick={() => handleEdit(values)}\n />\n <MoreDropdown\n {...{ menuItems }}\n dropdownProps={{ className: \"w-max\" }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n id: \"singularLabel\",\n accessorKey: \"singularLabel\",\n header: singularLabel,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [{ id: \"pluralLabel\", accessorKey: \"pluralLabel\", header: pluralLabel }]\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 { Sheet, Toastr } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { SINGULAR, PLURAL } from \"neetocommons/v2/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/v2/utils\";\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 <Sheet\n {...{ initialFocusRef, isOpen, onClose }}\n aria-describedby={undefined}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Sheet.Header>\n <Sheet.Title>\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 </Sheet.Title>\n </Sheet.Header>\n <Form\n className=\"flex min-h-0 flex-1 flex-col gap-4\"\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center gap-x-2\"\n />\n </Sheet.Footer>\n </Form>\n </Sheet>\n );\n};\n\nexport default EditPane;\n","import { Button, DropdownMenu, Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) =>\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography className=\"me-4\" data-testid=\"item-count\" variant=\"h6\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"text-muted-foreground\" />,\n }}\n />\n </Typography>\n <DropdownMenu\n dropdownProps={{ className: \"w-max\" }}\n customTarget={\n <Button\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n variant=\"secondary\"\n />\n }\n >\n <DropdownMenu.MenuItem\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu>\n </>\n ) : (\n <Typography className=\"me-4\" data-testid=\"item-count\" variant=\"h6\">\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n );\n\nexport default LeftActionBlock;\n","import { useState } from \"react\";\n\nimport {\n Button,\n DataTable,\n Dialog,\n Toastr,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/v2/initializers\";\nimport PropTypes from \"prop-types\";\nimport { pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nimport Container from \"../Container\";\nimport Header from \"../Header\";\nimport SubHeader from \"../SubHeader\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n // Fall back to globalProps.taxonomies when the v2 i18n store hasn't been\n // initialized (e.g. Storybook skips i18n in initializeV2Application).\n // In production and in tests (via mock), taxonomies is populated and this\n // branch is never taken.\n const taxonomySource = isNotEmpty(taxonomies)\n ? taxonomies\n : globalProps.taxonomies;\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomySource);\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 const columnData = getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n });\n\n const rowData = formatDataForTable(filteredTaxonomies);\n\n return (\n <Container isHeaderFixed className=\"pb-10\">\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={rowData.length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <>\n <DataTable\n enableRowSelection\n columns={columnData}\n data={rowData}\n getRowId={r => r.keyName}\n selectedRowKeys={selectedRowIds}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Dialog\n aria-describedby={undefined}\n isOpen={isResetModalOpen}\n onClose={() => setIsResetModalOpen(false)}\n >\n <Dialog.Header>\n <Dialog.Title>\n {t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n </Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n <Typography variant=\"body2\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n </Typography>\n </Dialog.Body>\n <Dialog.Footer className=\"flex items-center gap-x-2\">\n <Button\n label={t(\"neetoMolecules.common.actions.cancel\")}\n variant=\"ghost\"\n onClick={() => setIsResetModalOpen(false)}\n />\n <Button\n label={t(\"neetoMolecules.common.actions.proceed\")}\n onClick={handleDelete}\n />\n </Dialog.Footer>\n </Dialog>\n </>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Typography variant=\"body2\">\n {t(\"neetoMolecules.taxonomy.noData\")}\n </Typography>\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n columnLabels: PropTypes.object,\n columnsToShow: PropTypes.object,\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default Taxonomy;\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","id","header","cell","_ref4","row","values","original","menuItems","key","onClick","_jsxs","className","children","_jsx","Button","variant","MoreDropdown","dropdownProps","dropdownButtonProps","_toConsumableArray","accessorKey","getFilteredTaxonomies","matchString","filteredArray","filter","_ref5","_ref6","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","Sheet","undefined","Header","Title","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","_Fragment","Typography","count","components","span","DropdownMenu","customTarget","MenuItem","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState0","searchString","setSearchString","_useState1","_useState10","currentKeys","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","taxonomySource","isNotEmpty","hostTaxonomies","pick","_useState11","_useState12","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","columnData","rowData","Container","isHeaderFixed","title","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","DataTable","enableRowSelection","columns","getRowId","r","selectedRowKeys","onRowSelect","Dialog","what"],"mappings":"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"}
|
|
@@ -137,10 +137,10 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
137
137
|
id: id,
|
|
138
138
|
"data-testid": "feature-card-container",
|
|
139
139
|
ref: cardRef,
|
|
140
|
-
className: classnames("
|
|
141
|
-
"border p-4": isCardStyleEnabled
|
|
140
|
+
className: classnames("flex flex-col gap-y-2 rounded-lg", {
|
|
141
|
+
"bg-card text-card-foreground border p-4": isCardStyleEnabled
|
|
142
142
|
}, {
|
|
143
|
-
"border-border": !shouldHighlight
|
|
143
|
+
"border-border": isCardStyleEnabled && !shouldHighlight
|
|
144
144
|
}, {
|
|
145
145
|
"border-primary ring-primary ring-1": shouldHighlight
|
|
146
146
|
}, className),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleFeatureCard.js","sources":["../../../src/v2/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../../../src/v2/components/ToggleFeatureCard/ToolTipSwitch.jsx","../../../src/v2/components/ToggleFeatureCard/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nconst useScrollIntoView = ({ elementId, trigger }) => {\n useEffect(() => {\n if (!trigger) return;\n document.getElementById(elementId)?.scrollIntoView();\n }, [trigger]);\n};\n\nexport default useScrollIntoView;\n","import { Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { Switch as FormikSwitch } from \"@bigbinary/neeto-atoms/formik\";\nimport { isPresent } from \"neetocist\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataTestid,\n tooltipProps = {},\n ...otherProps\n}) => {\n const { enabledSwitchText, disabledSwitchText, ...neetoAtomsTooltipProps } =\n tooltipProps;\n\n const tooltipContent = enabledCondition\n ? enabledSwitchText\n : disabledSwitchText;\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={!tooltipContent}\n position=\"top\"\n {...neetoAtomsTooltipProps}\n >\n <span>\n <FormikSwitch\n disabled={isDisabled}\n data-testid={\n isPresent(switchDataTestid)\n ? switchDataTestid\n : \"toggle-feature-card-switch\"\n }\n {...{ name, ...otherProps }}\n />\n </span>\n </Tooltip>\n );\n};\n\nexport default TooltipSwitch;\n","import { useRef, useState, useEffect } from \"react\";\n\nimport { Button, Label, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Input } from \"@bigbinary/neeto-atoms/formik\";\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { X } from \"lucide-react\";\nimport { isPresent, slugify } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/v2/react-utils/useOnClickOutside\";\nimport useHotkeys from \"neetohotkeys\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZES } from \"./constants\";\nimport useScrollIntoView from \"./hooks/useScrollIntoView\";\nimport TooltipSwitch from \"./ToolTipSwitch\";\n\nconst ToggleFeatureCard = ({\n isCardStyleEnabled = true,\n title = \"\",\n description = null,\n switchName = \"switch\",\n titleDataTestid = \"\",\n switchDataTestid = \"\",\n descriptionDataTestid = \"\",\n isDisabled = false,\n children = null,\n inputProps,\n switchProps = {},\n editButtonProps = {},\n className = \"\",\n}) => {\n const { t } = useTranslation();\n const cardRef = useRef();\n const id = slugify(title);\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { setFieldValue, values, submitCount, errors, initialValues } =\n useFormikContext();\n\n useEffect(() => {\n if (!(submitCount >= 1 && isEmpty(errors))) return;\n setIsEditing(false);\n }, [submitCount]);\n\n useEffect(() => {\n if (isEmpty(errors)) return;\n setIsEditing(true);\n }, [values, errors]);\n\n const [shouldHighlight, setShouldHighlight] = useState(\n location.hash.split(\"#\")[1] === id\n );\n\n const hasInput = values?.[switchName] && inputProps?.name;\n const enabledCondition = values?.[switchName];\n\n const handleInputReset = () => {\n setIsEditing(false);\n hasInput &&\n setFieldValue(inputProps?.name, initialValues?.[inputProps?.name]);\n };\n\n useOnClickOutside(cardRef, () => setShouldHighlight(false));\n\n useScrollIntoView({ elementId: id, trigger: shouldHighlight });\n\n const inputRef = useHotkeys(\"enter\", () => setIsEditing(false), {\n mode: \"scoped\",\n });\n\n return (\n <div\n {...{ id }}\n data-testid=\"feature-card-container\"\n ref={cardRef}\n className={classnames(\n \"bg-card text-card-foreground flex flex-col gap-y-2 rounded-lg\",\n { \"border p-4\": isCardStyleEnabled },\n { \"border-border\": !shouldHighlight },\n { \"border-primary ring-primary ring-1\": shouldHighlight },\n className\n )}\n >\n <Label className=\"flex flex-row items-center gap-2\">\n <TooltipSwitch\n {...{\n enabledCondition,\n isDisabled,\n switchDataTestid,\n ...switchProps,\n }}\n name={switchName}\n />\n <Typography\n as=\"span\"\n className=\"leading-snug\"\n variant=\"h6\"\n data-testid={\n isPresent(titleDataTestid)\n ? titleDataTestid\n : \"toggle-feature-card-title\"\n }\n >\n {title}\n </Typography>\n </Label>\n <Typography\n className=\"mb-4 whitespace-pre-line\"\n variant=\"body2\"\n data-testid={\n isPresent(descriptionDataTestid)\n ? descriptionDataTestid\n : \"toggle-feature-card-description\"\n }\n >\n {description}\n </Typography>\n {hasInput && !isEditing && (\n <div className=\"m-0 flex flex-row items-center gap-x-2\">\n {inputProps?.display}\n <Button\n label={t(\"neetoMolecules.common.actions.edit\")}\n size=\"sm\"\n type=\"button\"\n variant=\"link\"\n data-testid={\n isPresent(inputProps?.editButtonDataTestid)\n ? inputProps?.editButtonDataTestid\n : \"toggle-feature-card-input-display-edit\"\n }\n onClick={() => setIsEditing(true)}\n {...editButtonProps}\n />\n </div>\n )}\n {hasInput && isEditing && (\n <Input\n autoFocus\n label={inputProps?.label}\n name={inputProps?.name}\n placeholder={inputProps?.placeholder}\n ref={inputRef}\n size=\"medium\"\n data-testid={\n isPresent(inputProps?.dataTestid)\n ? inputProps?.dataTestid\n : \"toggle-feature-card-input-field\"\n }\n suffix={\n <Button\n data-testid=\"toggle-feature-card-input-reset\"\n icon={X}\n size=\"sm\"\n type=\"button\"\n variant=\"ghost\"\n onClick={handleInputReset}\n />\n }\n {...inputProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nToggleFeatureCard.propTypes = {\n /**\n * The title that will be displayed for the card.\n */\n title: PropTypes.string,\n /**\n * The descripton text for the particular feature or setting.\n */\n description: PropTypes.string,\n /**\n * The formik name of the feature or setting to be toggled. eg:\n {switchName: \"enableEmails\"}.\n */\n switchName: PropTypes.string,\n /**\n * Can be used to disable the toggle switch conditionally.\n */\n isDisabled: PropTypes.bool,\n /**\n * Can be used to enable the card appearance.\n */\n isCardStyleEnabled: PropTypes.bool,\n /**\n * Custom child components to be displayed in the card.\n */\n children: PropTypes.node,\n /**\n * Can be used to add an input field for a setting or a feature.\n For example, `Enable email notifications` card can have an email input field.\n */\n inputProps: PropTypes.shape({\n name: PropTypes.string,\n display: PropTypes.node,\n label: PropTypes.string,\n editButtonTooltip: PropTypes.string,\n editButtonDataTestid: PropTypes.string,\n placeholder: PropTypes.string,\n dataTestid: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n nakedInput: PropTypes.bool,\n size: PropTypes.oneOf(Object.values(SIZES)),\n type: PropTypes.string,\n maxLength: PropTypes.number,\n contentSize: PropTypes.number,\n unlimitedChars: PropTypes.bool,\n }),\n /**\n * Can be used to add props to the switch component.\n */\n switchProps: PropTypes.shape({\n onChange: PropTypes.func,\n className: PropTypes.string,\n checked: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n enabledSwitchText: PropTypes.string,\n disabledSwitchText: PropTypes.string,\n }),\n }),\n /**\n * Can be used to add props to the edit button component.\n */\n editButtonProps: PropTypes.shape({\n onClick: PropTypes.func,\n className: PropTypes.string,\n style: PropTypes.string,\n size: PropTypes.string,\n type: PropTypes.string,\n tooltipProps: PropTypes.object,\n }),\n /**\n * To specify external classnames as overrides to the ToggleFeatureCard wrapper.\n */\n className: PropTypes.string,\n};\n\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","TooltipSwitch","enabledCondition","_ref$name","name","_ref$isDisabled","isDisabled","switchDataTestid","_ref$tooltipProps","tooltipProps","otherProps","_objectWithoutProperties","_excluded","enabledSwitchText","disabledSwitchText","neetoAtomsTooltipProps","_excluded2","tooltipContent","_jsx","Tooltip","_objectSpread","content","disabled","position","children","FormikSwitch","isPresent","ToggleFeatureCard","_ref$isCardStyleEnabl","isCardStyleEnabled","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataTestid","titleDataTestid","_ref$switchDataTestid","_ref$descriptionDataT","descriptionDataTestid","_ref$children","inputProps","_ref$switchProps","switchProps","_ref$editButtonProps","editButtonProps","_ref$className","className","_useTranslation","useTranslation","t","cardRef","useRef","id","slugify","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_useFormikContext","useFormikContext","setFieldValue","values","submitCount","errors","initialValues","isEmpty","_useState3","location","hash","split","_useState4","shouldHighlight","setShouldHighlight","hasInput","handleInputReset","useOnClickOutside","inputRef","useHotkeys","mode","_jsxs","ref","classnames","Label","Typography","as","variant","display","Button","label","size","type","editButtonDataTestid","onClick","Input","autoFocus","placeholder","dataTestid","suffix","icon","X"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ToggleFeatureCard.js","sources":["../../../src/v2/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../../../src/v2/components/ToggleFeatureCard/ToolTipSwitch.jsx","../../../src/v2/components/ToggleFeatureCard/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nconst useScrollIntoView = ({ elementId, trigger }) => {\n useEffect(() => {\n if (!trigger) return;\n document.getElementById(elementId)?.scrollIntoView();\n }, [trigger]);\n};\n\nexport default useScrollIntoView;\n","import { Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { Switch as FormikSwitch } from \"@bigbinary/neeto-atoms/formik\";\nimport { isPresent } from \"neetocist\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataTestid,\n tooltipProps = {},\n ...otherProps\n}) => {\n const { enabledSwitchText, disabledSwitchText, ...neetoAtomsTooltipProps } =\n tooltipProps;\n\n const tooltipContent = enabledCondition\n ? enabledSwitchText\n : disabledSwitchText;\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={!tooltipContent}\n position=\"top\"\n {...neetoAtomsTooltipProps}\n >\n <span>\n <FormikSwitch\n disabled={isDisabled}\n data-testid={\n isPresent(switchDataTestid)\n ? switchDataTestid\n : \"toggle-feature-card-switch\"\n }\n {...{ name, ...otherProps }}\n />\n </span>\n </Tooltip>\n );\n};\n\nexport default TooltipSwitch;\n","import { useRef, useState, useEffect } from \"react\";\n\nimport { Button, Label, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Input } from \"@bigbinary/neeto-atoms/formik\";\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { X } from \"lucide-react\";\nimport { isPresent, slugify } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/v2/react-utils/useOnClickOutside\";\nimport useHotkeys from \"neetohotkeys\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZES } from \"./constants\";\nimport useScrollIntoView from \"./hooks/useScrollIntoView\";\nimport TooltipSwitch from \"./ToolTipSwitch\";\n\nconst ToggleFeatureCard = ({\n isCardStyleEnabled = true,\n title = \"\",\n description = null,\n switchName = \"switch\",\n titleDataTestid = \"\",\n switchDataTestid = \"\",\n descriptionDataTestid = \"\",\n isDisabled = false,\n children = null,\n inputProps,\n switchProps = {},\n editButtonProps = {},\n className = \"\",\n}) => {\n const { t } = useTranslation();\n const cardRef = useRef();\n const id = slugify(title);\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { setFieldValue, values, submitCount, errors, initialValues } =\n useFormikContext();\n\n useEffect(() => {\n if (!(submitCount >= 1 && isEmpty(errors))) return;\n setIsEditing(false);\n }, [submitCount]);\n\n useEffect(() => {\n if (isEmpty(errors)) return;\n setIsEditing(true);\n }, [values, errors]);\n\n const [shouldHighlight, setShouldHighlight] = useState(\n location.hash.split(\"#\")[1] === id\n );\n\n const hasInput = values?.[switchName] && inputProps?.name;\n const enabledCondition = values?.[switchName];\n\n const handleInputReset = () => {\n setIsEditing(false);\n hasInput &&\n setFieldValue(inputProps?.name, initialValues?.[inputProps?.name]);\n };\n\n useOnClickOutside(cardRef, () => setShouldHighlight(false));\n\n useScrollIntoView({ elementId: id, trigger: shouldHighlight });\n\n const inputRef = useHotkeys(\"enter\", () => setIsEditing(false), {\n mode: \"scoped\",\n });\n\n return (\n <div\n {...{ id }}\n data-testid=\"feature-card-container\"\n ref={cardRef}\n className={classnames(\n \"flex flex-col gap-y-2 rounded-lg\",\n { \"bg-card text-card-foreground border p-4\": isCardStyleEnabled },\n { \"border-border\": isCardStyleEnabled && !shouldHighlight },\n { \"border-primary ring-primary ring-1\": shouldHighlight },\n className\n )}\n >\n <Label className=\"flex flex-row items-center gap-2\">\n <TooltipSwitch\n {...{\n enabledCondition,\n isDisabled,\n switchDataTestid,\n ...switchProps,\n }}\n name={switchName}\n />\n <Typography\n as=\"span\"\n className=\"leading-snug\"\n variant=\"h6\"\n data-testid={\n isPresent(titleDataTestid)\n ? titleDataTestid\n : \"toggle-feature-card-title\"\n }\n >\n {title}\n </Typography>\n </Label>\n <Typography\n className=\"mb-4 whitespace-pre-line\"\n variant=\"body2\"\n data-testid={\n isPresent(descriptionDataTestid)\n ? descriptionDataTestid\n : \"toggle-feature-card-description\"\n }\n >\n {description}\n </Typography>\n {hasInput && !isEditing && (\n <div className=\"m-0 flex flex-row items-center gap-x-2\">\n {inputProps?.display}\n <Button\n label={t(\"neetoMolecules.common.actions.edit\")}\n size=\"sm\"\n type=\"button\"\n variant=\"link\"\n data-testid={\n isPresent(inputProps?.editButtonDataTestid)\n ? inputProps?.editButtonDataTestid\n : \"toggle-feature-card-input-display-edit\"\n }\n onClick={() => setIsEditing(true)}\n {...editButtonProps}\n />\n </div>\n )}\n {hasInput && isEditing && (\n <Input\n autoFocus\n label={inputProps?.label}\n name={inputProps?.name}\n placeholder={inputProps?.placeholder}\n ref={inputRef}\n size=\"medium\"\n data-testid={\n isPresent(inputProps?.dataTestid)\n ? inputProps?.dataTestid\n : \"toggle-feature-card-input-field\"\n }\n suffix={\n <Button\n data-testid=\"toggle-feature-card-input-reset\"\n icon={X}\n size=\"sm\"\n type=\"button\"\n variant=\"ghost\"\n onClick={handleInputReset}\n />\n }\n {...inputProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nToggleFeatureCard.propTypes = {\n /**\n * The title that will be displayed for the card.\n */\n title: PropTypes.string,\n /**\n * The descripton text for the particular feature or setting.\n */\n description: PropTypes.string,\n /**\n * The formik name of the feature or setting to be toggled. eg:\n {switchName: \"enableEmails\"}.\n */\n switchName: PropTypes.string,\n /**\n * Can be used to disable the toggle switch conditionally.\n */\n isDisabled: PropTypes.bool,\n /**\n * Can be used to enable the card appearance.\n */\n isCardStyleEnabled: PropTypes.bool,\n /**\n * Custom child components to be displayed in the card.\n */\n children: PropTypes.node,\n /**\n * Can be used to add an input field for a setting or a feature.\n For example, `Enable email notifications` card can have an email input field.\n */\n inputProps: PropTypes.shape({\n name: PropTypes.string,\n display: PropTypes.node,\n label: PropTypes.string,\n editButtonTooltip: PropTypes.string,\n editButtonDataTestid: PropTypes.string,\n placeholder: PropTypes.string,\n dataTestid: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n nakedInput: PropTypes.bool,\n size: PropTypes.oneOf(Object.values(SIZES)),\n type: PropTypes.string,\n maxLength: PropTypes.number,\n contentSize: PropTypes.number,\n unlimitedChars: PropTypes.bool,\n }),\n /**\n * Can be used to add props to the switch component.\n */\n switchProps: PropTypes.shape({\n onChange: PropTypes.func,\n className: PropTypes.string,\n checked: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n enabledSwitchText: PropTypes.string,\n disabledSwitchText: PropTypes.string,\n }),\n }),\n /**\n * Can be used to add props to the edit button component.\n */\n editButtonProps: PropTypes.shape({\n onClick: PropTypes.func,\n className: PropTypes.string,\n style: PropTypes.string,\n size: PropTypes.string,\n type: PropTypes.string,\n tooltipProps: PropTypes.object,\n }),\n /**\n * To specify external classnames as overrides to the ToggleFeatureCard wrapper.\n */\n className: PropTypes.string,\n};\n\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","TooltipSwitch","enabledCondition","_ref$name","name","_ref$isDisabled","isDisabled","switchDataTestid","_ref$tooltipProps","tooltipProps","otherProps","_objectWithoutProperties","_excluded","enabledSwitchText","disabledSwitchText","neetoAtomsTooltipProps","_excluded2","tooltipContent","_jsx","Tooltip","_objectSpread","content","disabled","position","children","FormikSwitch","isPresent","ToggleFeatureCard","_ref$isCardStyleEnabl","isCardStyleEnabled","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataTestid","titleDataTestid","_ref$switchDataTestid","_ref$descriptionDataT","descriptionDataTestid","_ref$children","inputProps","_ref$switchProps","switchProps","_ref$editButtonProps","editButtonProps","_ref$className","className","_useTranslation","useTranslation","t","cardRef","useRef","id","slugify","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_useFormikContext","useFormikContext","setFieldValue","values","submitCount","errors","initialValues","isEmpty","_useState3","location","hash","split","_useState4","shouldHighlight","setShouldHighlight","hasInput","handleInputReset","useOnClickOutside","inputRef","useHotkeys","mode","_jsxs","ref","classnames","Label","Typography","as","variant","display","Button","label","size","type","editButtonDataTestid","onClick","Input","autoFocus","placeholder","dataTestid","suffix","icon","X"],"mappings":"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"}
|
package/dist/v2/Taxonomy.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
3
3
|
import { useRef, useState } from 'react';
|
|
4
|
-
import {
|
|
4
|
+
import { Button, Sheet, Toastr, Typography, DropdownMenu, DataTable, Dialog } from '@bigbinary/neeto-atoms';
|
|
5
5
|
import { t } from 'i18next';
|
|
6
6
|
import { capitalize, isNotEmpty } from '@bigbinary/neeto-cist';
|
|
7
7
|
import { globalProps, taxonomies } from '@bigbinary/neeto-commons-frontend/v2/initializers';
|
|
@@ -19,7 +19,6 @@ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
|
19
19
|
import Container from './Container.js';
|
|
20
20
|
import Header from './Header.js';
|
|
21
21
|
import SubHeader from './SubHeader.js';
|
|
22
|
-
import TableWrapper from './TableWrapper.js';
|
|
23
22
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
24
23
|
import 'classnames';
|
|
25
24
|
import '@bigbinary/neeto-commons-frontend/v2/react-utils';
|
|
@@ -136,21 +135,19 @@ var getColumnData = function getColumnData(_ref3) {
|
|
|
136
135
|
}];
|
|
137
136
|
return /*#__PURE__*/jsxs("div", {
|
|
138
137
|
className: "flex items-center justify-between gap-x-3",
|
|
139
|
-
children: [/*#__PURE__*/jsx(
|
|
140
|
-
|
|
141
|
-
|
|
138
|
+
children: [/*#__PURE__*/jsx(Button, {
|
|
139
|
+
label: t("taxonomyDefaultLabels.".concat(values.keyName, ".singular")),
|
|
140
|
+
variant: "link",
|
|
141
|
+
onClick: function onClick() {
|
|
142
|
+
return handleEdit(values);
|
|
143
|
+
}
|
|
142
144
|
}), /*#__PURE__*/jsx(MoreDropdown, {
|
|
143
145
|
menuItems: menuItems,
|
|
144
|
-
dropdownButtonProps: {
|
|
145
|
-
"data-testid": "nui-dropdown-icon-".concat(values.keyName),
|
|
146
|
-
className: "me-1 my-1"
|
|
147
|
-
},
|
|
148
146
|
dropdownProps: {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
147
|
+
className: "w-max"
|
|
148
|
+
},
|
|
149
|
+
dropdownButtonProps: {
|
|
150
|
+
"data-testid": "nui-dropdown-icon-".concat(values.keyName)
|
|
154
151
|
}
|
|
155
152
|
})]
|
|
156
153
|
});
|
|
@@ -247,6 +244,7 @@ var EditPane = function EditPane(_ref) {
|
|
|
247
244
|
})
|
|
248
245
|
})
|
|
249
246
|
}), /*#__PURE__*/jsxs(Form, {
|
|
247
|
+
className: "flex min-h-0 flex-1 flex-col gap-4",
|
|
250
248
|
formikProps: {
|
|
251
249
|
initialValues: initialValues,
|
|
252
250
|
validationSchema: VALIDATION_SCHEMA,
|
|
@@ -294,8 +292,9 @@ var LeftActionBlock = function LeftActionBlock(_ref) {
|
|
|
294
292
|
return !!totalCount && /*#__PURE__*/jsx(Fragment, {
|
|
295
293
|
children: selectedCount > 0 ? /*#__PURE__*/jsxs(Fragment, {
|
|
296
294
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
297
|
-
className: "me-4
|
|
295
|
+
className: "me-4",
|
|
298
296
|
"data-testid": "item-count",
|
|
297
|
+
variant: "h6",
|
|
299
298
|
children: /*#__PURE__*/jsx(Trans, {
|
|
300
299
|
i18nKey: "neetoMolecules.taxonomy.actionBlock.selectedTaxonomy",
|
|
301
300
|
values: {
|
|
@@ -309,6 +308,9 @@ var LeftActionBlock = function LeftActionBlock(_ref) {
|
|
|
309
308
|
}
|
|
310
309
|
})
|
|
311
310
|
}), /*#__PURE__*/jsx(DropdownMenu, {
|
|
311
|
+
dropdownProps: {
|
|
312
|
+
className: "w-max"
|
|
313
|
+
},
|
|
312
314
|
customTarget: /*#__PURE__*/jsx(Button, {
|
|
313
315
|
label: t("neetoMolecules.taxonomy.actionBlock.takeAction"),
|
|
314
316
|
variant: "secondary"
|
|
@@ -322,8 +324,9 @@ var LeftActionBlock = function LeftActionBlock(_ref) {
|
|
|
322
324
|
})
|
|
323
325
|
})]
|
|
324
326
|
}) : /*#__PURE__*/jsx(Typography, {
|
|
325
|
-
className: "me-4
|
|
327
|
+
className: "me-4",
|
|
326
328
|
"data-testid": "item-count",
|
|
329
|
+
variant: "h6",
|
|
327
330
|
children: t("neetoMolecules.taxonomy.actionBlock.taxonomyWithCount", {
|
|
328
331
|
count: totalCount
|
|
329
332
|
})
|
|
@@ -413,6 +416,8 @@ var Taxonomy = function Taxonomy(_ref) {
|
|
|
413
416
|
});
|
|
414
417
|
var rowData = formatDataForTable(filteredTaxonomies);
|
|
415
418
|
return /*#__PURE__*/jsxs(Container, {
|
|
419
|
+
isHeaderFixed: true,
|
|
420
|
+
className: "pb-10",
|
|
416
421
|
children: [/*#__PURE__*/jsx(Header, {
|
|
417
422
|
breadcrumbs: breadcrumbs,
|
|
418
423
|
title: t("neetoMolecules.taxonomy.title"),
|
|
@@ -433,7 +438,7 @@ var Taxonomy = function Taxonomy(_ref) {
|
|
|
433
438
|
selectedCount: selectedRowIds.length,
|
|
434
439
|
totalCount: rowData.length
|
|
435
440
|
})
|
|
436
|
-
}), isNotEmpty(filteredTaxonomies) ? /*#__PURE__*/jsxs(
|
|
441
|
+
}), isNotEmpty(filteredTaxonomies) ? /*#__PURE__*/jsxs(Fragment, {
|
|
437
442
|
children: [/*#__PURE__*/jsx(DataTable, {
|
|
438
443
|
enableRowSelection: true,
|
|
439
444
|
columns: columnData,
|
|
@@ -475,14 +480,14 @@ var Taxonomy = function Taxonomy(_ref) {
|
|
|
475
480
|
}), /*#__PURE__*/jsxs(Dialog.Footer, {
|
|
476
481
|
className: "flex items-center gap-x-2",
|
|
477
482
|
children: [/*#__PURE__*/jsx(Button, {
|
|
478
|
-
label: t("neetoMolecules.common.actions.proceed"),
|
|
479
|
-
onClick: handleDelete
|
|
480
|
-
}), /*#__PURE__*/jsx(Button, {
|
|
481
483
|
label: t("neetoMolecules.common.actions.cancel"),
|
|
482
484
|
variant: "ghost",
|
|
483
485
|
onClick: function onClick() {
|
|
484
486
|
return setIsResetModalOpen(false);
|
|
485
487
|
}
|
|
488
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
489
|
+
label: t("neetoMolecules.common.actions.proceed"),
|
|
490
|
+
onClick: handleDelete
|
|
486
491
|
})]
|
|
487
492
|
})]
|
|
488
493
|
})]
|
package/dist/v2/Taxonomy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Taxonomy.js","sources":["../../src/v2/components/Taxonomy/constants.js","../../src/v2/components/Taxonomy/api.js","../../src/v2/components/Taxonomy/useTaxonomyApi.js","../../src/v2/components/Taxonomy/utils.jsx","../../src/v2/components/Taxonomy/EditPane.jsx","../../src/v2/components/Taxonomy/LeftActionBlock.jsx","../../src/v2/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/v2/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 { Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"../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 id: \"defaultLabel\",\n header: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n cell: ({ row }) => {\n const values = row.original;\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 variant=\"body2\">\n {t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n </Typography>\n <MoreDropdown\n {...{ menuItems }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n className: \"me-1 my-1\",\n }}\n dropdownProps={{\n strategy: \"fixed\",\n placement: \"bottom-end\",\n appendTo: () => document.body,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n id: \"singularLabel\",\n accessorKey: \"singularLabel\",\n header: singularLabel,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [{ id: \"pluralLabel\", accessorKey: \"pluralLabel\", header: pluralLabel }]\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 { Sheet, Toastr } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { SINGULAR, PLURAL } from \"neetocommons/v2/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/v2/utils\";\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 <Sheet\n {...{ initialFocusRef, isOpen, onClose }}\n aria-describedby={undefined}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Sheet.Header>\n <Sheet.Title>\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 </Sheet.Title>\n </Sheet.Header>\n <Form\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center gap-x-2\"\n />\n </Sheet.Footer>\n </Form>\n </Sheet>\n );\n};\n\nexport default EditPane;\n","import { Button, DropdownMenu, Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) =>\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography className=\"me-4 font-semibold\" data-testid=\"item-count\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"text-muted-foreground\" />,\n }}\n />\n </Typography>\n <DropdownMenu\n customTarget={\n <Button\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n variant=\"secondary\"\n />\n }\n >\n <DropdownMenu.MenuItem\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu>\n </>\n ) : (\n <Typography className=\"me-4 font-semibold\" data-testid=\"item-count\">\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n );\n\nexport default LeftActionBlock;\n","import { useState } from \"react\";\n\nimport {\n Button,\n DataTable,\n Dialog,\n Toastr,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/v2/initializers\";\nimport PropTypes from \"prop-types\";\nimport { pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nimport Container from \"../Container\";\nimport Header from \"../Header\";\nimport SubHeader from \"../SubHeader\";\nimport TableWrapper from \"../TableWrapper\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n // Fall back to globalProps.taxonomies when the v2 i18n store hasn't been\n // initialized (e.g. Storybook skips i18n in initializeV2Application).\n // In production and in tests (via mock), taxonomies is populated and this\n // branch is never taken.\n const taxonomySource = isNotEmpty(taxonomies)\n ? taxonomies\n : globalProps.taxonomies;\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomySource);\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 const columnData = getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n });\n\n const rowData = formatDataForTable(filteredTaxonomies);\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={rowData.length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <TableWrapper>\n <DataTable\n enableRowSelection\n columns={columnData}\n data={rowData}\n getRowId={r => r.keyName}\n selectedRowKeys={selectedRowIds}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Dialog\n aria-describedby={undefined}\n isOpen={isResetModalOpen}\n onClose={() => setIsResetModalOpen(false)}\n >\n <Dialog.Header>\n <Dialog.Title>\n {t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n </Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n <Typography variant=\"body2\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n </Typography>\n </Dialog.Body>\n <Dialog.Footer className=\"flex items-center gap-x-2\">\n <Button\n label={t(\"neetoMolecules.common.actions.proceed\")}\n onClick={handleDelete}\n />\n <Button\n label={t(\"neetoMolecules.common.actions.cancel\")}\n variant=\"ghost\"\n onClick={() => setIsResetModalOpen(false)}\n />\n </Dialog.Footer>\n </Dialog>\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Typography variant=\"body2\">\n {t(\"neetoMolecules.taxonomy.noData\")}\n </Typography>\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n columnLabels: PropTypes.object,\n columnsToShow: PropTypes.object,\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default Taxonomy;\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","id","header","cell","_ref4","row","values","original","menuItems","key","onClick","_jsxs","className","children","_jsx","Typography","variant","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","placement","appendTo","document","body","_toConsumableArray","accessorKey","getFilteredTaxonomies","matchString","filteredArray","filter","_ref5","_ref6","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","Sheet","undefined","Header","Title","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","_Fragment","count","components","span","DropdownMenu","customTarget","Button","MenuItem","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState0","searchString","setSearchString","_useState1","_useState10","currentKeys","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","taxonomySource","isNotEmpty","hostTaxonomies","pick","_useState11","_useState12","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","columnData","rowData","Container","title","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","TableWrapper","DataTable","enableRowSelection","columns","getRowId","r","selectedRowKeys","onRowSelect","Dialog","what"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Taxonomy.js","sources":["../../src/v2/components/Taxonomy/constants.js","../../src/v2/components/Taxonomy/api.js","../../src/v2/components/Taxonomy/useTaxonomyApi.js","../../src/v2/components/Taxonomy/utils.jsx","../../src/v2/components/Taxonomy/EditPane.jsx","../../src/v2/components/Taxonomy/LeftActionBlock.jsx","../../src/v2/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/v2/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 { Button } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"../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 id: \"defaultLabel\",\n header: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n cell: ({ row }) => {\n const values = row.original;\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 <Button\n label={t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n variant=\"link\"\n onClick={() => handleEdit(values)}\n />\n <MoreDropdown\n {...{ menuItems }}\n dropdownProps={{ className: \"w-max\" }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n id: \"singularLabel\",\n accessorKey: \"singularLabel\",\n header: singularLabel,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [{ id: \"pluralLabel\", accessorKey: \"pluralLabel\", header: pluralLabel }]\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 { Sheet, Toastr } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { SINGULAR, PLURAL } from \"neetocommons/v2/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/v2/utils\";\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 <Sheet\n {...{ initialFocusRef, isOpen, onClose }}\n aria-describedby={undefined}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Sheet.Header>\n <Sheet.Title>\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 </Sheet.Title>\n </Sheet.Header>\n <Form\n className=\"flex min-h-0 flex-1 flex-col gap-4\"\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center gap-x-2\"\n />\n </Sheet.Footer>\n </Form>\n </Sheet>\n );\n};\n\nexport default EditPane;\n","import { Button, DropdownMenu, Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) =>\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography className=\"me-4\" data-testid=\"item-count\" variant=\"h6\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"text-muted-foreground\" />,\n }}\n />\n </Typography>\n <DropdownMenu\n dropdownProps={{ className: \"w-max\" }}\n customTarget={\n <Button\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n variant=\"secondary\"\n />\n }\n >\n <DropdownMenu.MenuItem\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu>\n </>\n ) : (\n <Typography className=\"me-4\" data-testid=\"item-count\" variant=\"h6\">\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n );\n\nexport default LeftActionBlock;\n","import { useState } from \"react\";\n\nimport {\n Button,\n DataTable,\n Dialog,\n Toastr,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/v2/initializers\";\nimport PropTypes from \"prop-types\";\nimport { pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nimport Container from \"../Container\";\nimport Header from \"../Header\";\nimport SubHeader from \"../SubHeader\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n // Fall back to globalProps.taxonomies when the v2 i18n store hasn't been\n // initialized (e.g. Storybook skips i18n in initializeV2Application).\n // In production and in tests (via mock), taxonomies is populated and this\n // branch is never taken.\n const taxonomySource = isNotEmpty(taxonomies)\n ? taxonomies\n : globalProps.taxonomies;\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomySource);\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 const columnData = getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n });\n\n const rowData = formatDataForTable(filteredTaxonomies);\n\n return (\n <Container isHeaderFixed className=\"pb-10\">\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={rowData.length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <>\n <DataTable\n enableRowSelection\n columns={columnData}\n data={rowData}\n getRowId={r => r.keyName}\n selectedRowKeys={selectedRowIds}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Dialog\n aria-describedby={undefined}\n isOpen={isResetModalOpen}\n onClose={() => setIsResetModalOpen(false)}\n >\n <Dialog.Header>\n <Dialog.Title>\n {t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n </Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n <Typography variant=\"body2\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n </Typography>\n </Dialog.Body>\n <Dialog.Footer className=\"flex items-center gap-x-2\">\n <Button\n label={t(\"neetoMolecules.common.actions.cancel\")}\n variant=\"ghost\"\n onClick={() => setIsResetModalOpen(false)}\n />\n <Button\n label={t(\"neetoMolecules.common.actions.proceed\")}\n onClick={handleDelete}\n />\n </Dialog.Footer>\n </Dialog>\n </>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Typography variant=\"body2\">\n {t(\"neetoMolecules.taxonomy.noData\")}\n </Typography>\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n columnLabels: PropTypes.object,\n columnsToShow: PropTypes.object,\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default Taxonomy;\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","id","header","cell","_ref4","row","values","original","menuItems","key","onClick","_jsxs","className","children","_jsx","Button","variant","MoreDropdown","dropdownProps","dropdownButtonProps","_toConsumableArray","accessorKey","getFilteredTaxonomies","matchString","filteredArray","filter","_ref5","_ref6","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","Sheet","undefined","Header","Title","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","_Fragment","Typography","count","components","span","DropdownMenu","customTarget","MenuItem","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState0","searchString","setSearchString","_useState1","_useState10","currentKeys","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","taxonomySource","isNotEmpty","hostTaxonomies","pick","_useState11","_useState12","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","columnData","rowData","Container","isHeaderFixed","title","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","DataTable","enableRowSelection","columns","getRowId","r","selectedRowKeys","onRowSelect","Dialog","what"],"mappings":"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"}
|
|
@@ -135,10 +135,10 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
135
135
|
id: id,
|
|
136
136
|
"data-testid": "feature-card-container",
|
|
137
137
|
ref: cardRef,
|
|
138
|
-
className: classnames("
|
|
139
|
-
"border p-4": isCardStyleEnabled
|
|
138
|
+
className: classnames("flex flex-col gap-y-2 rounded-lg", {
|
|
139
|
+
"bg-card text-card-foreground border p-4": isCardStyleEnabled
|
|
140
140
|
}, {
|
|
141
|
-
"border-border": !shouldHighlight
|
|
141
|
+
"border-border": isCardStyleEnabled && !shouldHighlight
|
|
142
142
|
}, {
|
|
143
143
|
"border-primary ring-primary ring-1": shouldHighlight
|
|
144
144
|
}, className),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleFeatureCard.js","sources":["../../src/v2/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../../src/v2/components/ToggleFeatureCard/ToolTipSwitch.jsx","../../src/v2/components/ToggleFeatureCard/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nconst useScrollIntoView = ({ elementId, trigger }) => {\n useEffect(() => {\n if (!trigger) return;\n document.getElementById(elementId)?.scrollIntoView();\n }, [trigger]);\n};\n\nexport default useScrollIntoView;\n","import { Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { Switch as FormikSwitch } from \"@bigbinary/neeto-atoms/formik\";\nimport { isPresent } from \"neetocist\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataTestid,\n tooltipProps = {},\n ...otherProps\n}) => {\n const { enabledSwitchText, disabledSwitchText, ...neetoAtomsTooltipProps } =\n tooltipProps;\n\n const tooltipContent = enabledCondition\n ? enabledSwitchText\n : disabledSwitchText;\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={!tooltipContent}\n position=\"top\"\n {...neetoAtomsTooltipProps}\n >\n <span>\n <FormikSwitch\n disabled={isDisabled}\n data-testid={\n isPresent(switchDataTestid)\n ? switchDataTestid\n : \"toggle-feature-card-switch\"\n }\n {...{ name, ...otherProps }}\n />\n </span>\n </Tooltip>\n );\n};\n\nexport default TooltipSwitch;\n","import { useRef, useState, useEffect } from \"react\";\n\nimport { Button, Label, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Input } from \"@bigbinary/neeto-atoms/formik\";\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { X } from \"lucide-react\";\nimport { isPresent, slugify } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/v2/react-utils/useOnClickOutside\";\nimport useHotkeys from \"neetohotkeys\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZES } from \"./constants\";\nimport useScrollIntoView from \"./hooks/useScrollIntoView\";\nimport TooltipSwitch from \"./ToolTipSwitch\";\n\nconst ToggleFeatureCard = ({\n isCardStyleEnabled = true,\n title = \"\",\n description = null,\n switchName = \"switch\",\n titleDataTestid = \"\",\n switchDataTestid = \"\",\n descriptionDataTestid = \"\",\n isDisabled = false,\n children = null,\n inputProps,\n switchProps = {},\n editButtonProps = {},\n className = \"\",\n}) => {\n const { t } = useTranslation();\n const cardRef = useRef();\n const id = slugify(title);\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { setFieldValue, values, submitCount, errors, initialValues } =\n useFormikContext();\n\n useEffect(() => {\n if (!(submitCount >= 1 && isEmpty(errors))) return;\n setIsEditing(false);\n }, [submitCount]);\n\n useEffect(() => {\n if (isEmpty(errors)) return;\n setIsEditing(true);\n }, [values, errors]);\n\n const [shouldHighlight, setShouldHighlight] = useState(\n location.hash.split(\"#\")[1] === id\n );\n\n const hasInput = values?.[switchName] && inputProps?.name;\n const enabledCondition = values?.[switchName];\n\n const handleInputReset = () => {\n setIsEditing(false);\n hasInput &&\n setFieldValue(inputProps?.name, initialValues?.[inputProps?.name]);\n };\n\n useOnClickOutside(cardRef, () => setShouldHighlight(false));\n\n useScrollIntoView({ elementId: id, trigger: shouldHighlight });\n\n const inputRef = useHotkeys(\"enter\", () => setIsEditing(false), {\n mode: \"scoped\",\n });\n\n return (\n <div\n {...{ id }}\n data-testid=\"feature-card-container\"\n ref={cardRef}\n className={classnames(\n \"bg-card text-card-foreground flex flex-col gap-y-2 rounded-lg\",\n { \"border p-4\": isCardStyleEnabled },\n { \"border-border\": !shouldHighlight },\n { \"border-primary ring-primary ring-1\": shouldHighlight },\n className\n )}\n >\n <Label className=\"flex flex-row items-center gap-2\">\n <TooltipSwitch\n {...{\n enabledCondition,\n isDisabled,\n switchDataTestid,\n ...switchProps,\n }}\n name={switchName}\n />\n <Typography\n as=\"span\"\n className=\"leading-snug\"\n variant=\"h6\"\n data-testid={\n isPresent(titleDataTestid)\n ? titleDataTestid\n : \"toggle-feature-card-title\"\n }\n >\n {title}\n </Typography>\n </Label>\n <Typography\n className=\"mb-4 whitespace-pre-line\"\n variant=\"body2\"\n data-testid={\n isPresent(descriptionDataTestid)\n ? descriptionDataTestid\n : \"toggle-feature-card-description\"\n }\n >\n {description}\n </Typography>\n {hasInput && !isEditing && (\n <div className=\"m-0 flex flex-row items-center gap-x-2\">\n {inputProps?.display}\n <Button\n label={t(\"neetoMolecules.common.actions.edit\")}\n size=\"sm\"\n type=\"button\"\n variant=\"link\"\n data-testid={\n isPresent(inputProps?.editButtonDataTestid)\n ? inputProps?.editButtonDataTestid\n : \"toggle-feature-card-input-display-edit\"\n }\n onClick={() => setIsEditing(true)}\n {...editButtonProps}\n />\n </div>\n )}\n {hasInput && isEditing && (\n <Input\n autoFocus\n label={inputProps?.label}\n name={inputProps?.name}\n placeholder={inputProps?.placeholder}\n ref={inputRef}\n size=\"medium\"\n data-testid={\n isPresent(inputProps?.dataTestid)\n ? inputProps?.dataTestid\n : \"toggle-feature-card-input-field\"\n }\n suffix={\n <Button\n data-testid=\"toggle-feature-card-input-reset\"\n icon={X}\n size=\"sm\"\n type=\"button\"\n variant=\"ghost\"\n onClick={handleInputReset}\n />\n }\n {...inputProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nToggleFeatureCard.propTypes = {\n /**\n * The title that will be displayed for the card.\n */\n title: PropTypes.string,\n /**\n * The descripton text for the particular feature or setting.\n */\n description: PropTypes.string,\n /**\n * The formik name of the feature or setting to be toggled. eg:\n {switchName: \"enableEmails\"}.\n */\n switchName: PropTypes.string,\n /**\n * Can be used to disable the toggle switch conditionally.\n */\n isDisabled: PropTypes.bool,\n /**\n * Can be used to enable the card appearance.\n */\n isCardStyleEnabled: PropTypes.bool,\n /**\n * Custom child components to be displayed in the card.\n */\n children: PropTypes.node,\n /**\n * Can be used to add an input field for a setting or a feature.\n For example, `Enable email notifications` card can have an email input field.\n */\n inputProps: PropTypes.shape({\n name: PropTypes.string,\n display: PropTypes.node,\n label: PropTypes.string,\n editButtonTooltip: PropTypes.string,\n editButtonDataTestid: PropTypes.string,\n placeholder: PropTypes.string,\n dataTestid: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n nakedInput: PropTypes.bool,\n size: PropTypes.oneOf(Object.values(SIZES)),\n type: PropTypes.string,\n maxLength: PropTypes.number,\n contentSize: PropTypes.number,\n unlimitedChars: PropTypes.bool,\n }),\n /**\n * Can be used to add props to the switch component.\n */\n switchProps: PropTypes.shape({\n onChange: PropTypes.func,\n className: PropTypes.string,\n checked: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n enabledSwitchText: PropTypes.string,\n disabledSwitchText: PropTypes.string,\n }),\n }),\n /**\n * Can be used to add props to the edit button component.\n */\n editButtonProps: PropTypes.shape({\n onClick: PropTypes.func,\n className: PropTypes.string,\n style: PropTypes.string,\n size: PropTypes.string,\n type: PropTypes.string,\n tooltipProps: PropTypes.object,\n }),\n /**\n * To specify external classnames as overrides to the ToggleFeatureCard wrapper.\n */\n className: PropTypes.string,\n};\n\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","TooltipSwitch","enabledCondition","_ref$name","name","_ref$isDisabled","isDisabled","switchDataTestid","_ref$tooltipProps","tooltipProps","otherProps","_objectWithoutProperties","_excluded","enabledSwitchText","disabledSwitchText","neetoAtomsTooltipProps","_excluded2","tooltipContent","_jsx","Tooltip","_objectSpread","content","disabled","position","children","FormikSwitch","isPresent","ToggleFeatureCard","_ref$isCardStyleEnabl","isCardStyleEnabled","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataTestid","titleDataTestid","_ref$switchDataTestid","_ref$descriptionDataT","descriptionDataTestid","_ref$children","inputProps","_ref$switchProps","switchProps","_ref$editButtonProps","editButtonProps","_ref$className","className","_useTranslation","useTranslation","t","cardRef","useRef","id","slugify","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_useFormikContext","useFormikContext","setFieldValue","values","submitCount","errors","initialValues","isEmpty","_useState3","location","hash","split","_useState4","shouldHighlight","setShouldHighlight","hasInput","handleInputReset","useOnClickOutside","inputRef","useHotkeys","mode","_jsxs","ref","classnames","Label","Typography","as","variant","display","Button","label","size","type","editButtonDataTestid","onClick","Input","autoFocus","placeholder","dataTestid","suffix","icon","X"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ToggleFeatureCard.js","sources":["../../src/v2/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../../src/v2/components/ToggleFeatureCard/ToolTipSwitch.jsx","../../src/v2/components/ToggleFeatureCard/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nconst useScrollIntoView = ({ elementId, trigger }) => {\n useEffect(() => {\n if (!trigger) return;\n document.getElementById(elementId)?.scrollIntoView();\n }, [trigger]);\n};\n\nexport default useScrollIntoView;\n","import { Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { Switch as FormikSwitch } from \"@bigbinary/neeto-atoms/formik\";\nimport { isPresent } from \"neetocist\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataTestid,\n tooltipProps = {},\n ...otherProps\n}) => {\n const { enabledSwitchText, disabledSwitchText, ...neetoAtomsTooltipProps } =\n tooltipProps;\n\n const tooltipContent = enabledCondition\n ? enabledSwitchText\n : disabledSwitchText;\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={!tooltipContent}\n position=\"top\"\n {...neetoAtomsTooltipProps}\n >\n <span>\n <FormikSwitch\n disabled={isDisabled}\n data-testid={\n isPresent(switchDataTestid)\n ? switchDataTestid\n : \"toggle-feature-card-switch\"\n }\n {...{ name, ...otherProps }}\n />\n </span>\n </Tooltip>\n );\n};\n\nexport default TooltipSwitch;\n","import { useRef, useState, useEffect } from \"react\";\n\nimport { Button, Label, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Input } from \"@bigbinary/neeto-atoms/formik\";\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { X } from \"lucide-react\";\nimport { isPresent, slugify } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/v2/react-utils/useOnClickOutside\";\nimport useHotkeys from \"neetohotkeys\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZES } from \"./constants\";\nimport useScrollIntoView from \"./hooks/useScrollIntoView\";\nimport TooltipSwitch from \"./ToolTipSwitch\";\n\nconst ToggleFeatureCard = ({\n isCardStyleEnabled = true,\n title = \"\",\n description = null,\n switchName = \"switch\",\n titleDataTestid = \"\",\n switchDataTestid = \"\",\n descriptionDataTestid = \"\",\n isDisabled = false,\n children = null,\n inputProps,\n switchProps = {},\n editButtonProps = {},\n className = \"\",\n}) => {\n const { t } = useTranslation();\n const cardRef = useRef();\n const id = slugify(title);\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { setFieldValue, values, submitCount, errors, initialValues } =\n useFormikContext();\n\n useEffect(() => {\n if (!(submitCount >= 1 && isEmpty(errors))) return;\n setIsEditing(false);\n }, [submitCount]);\n\n useEffect(() => {\n if (isEmpty(errors)) return;\n setIsEditing(true);\n }, [values, errors]);\n\n const [shouldHighlight, setShouldHighlight] = useState(\n location.hash.split(\"#\")[1] === id\n );\n\n const hasInput = values?.[switchName] && inputProps?.name;\n const enabledCondition = values?.[switchName];\n\n const handleInputReset = () => {\n setIsEditing(false);\n hasInput &&\n setFieldValue(inputProps?.name, initialValues?.[inputProps?.name]);\n };\n\n useOnClickOutside(cardRef, () => setShouldHighlight(false));\n\n useScrollIntoView({ elementId: id, trigger: shouldHighlight });\n\n const inputRef = useHotkeys(\"enter\", () => setIsEditing(false), {\n mode: \"scoped\",\n });\n\n return (\n <div\n {...{ id }}\n data-testid=\"feature-card-container\"\n ref={cardRef}\n className={classnames(\n \"flex flex-col gap-y-2 rounded-lg\",\n { \"bg-card text-card-foreground border p-4\": isCardStyleEnabled },\n { \"border-border\": isCardStyleEnabled && !shouldHighlight },\n { \"border-primary ring-primary ring-1\": shouldHighlight },\n className\n )}\n >\n <Label className=\"flex flex-row items-center gap-2\">\n <TooltipSwitch\n {...{\n enabledCondition,\n isDisabled,\n switchDataTestid,\n ...switchProps,\n }}\n name={switchName}\n />\n <Typography\n as=\"span\"\n className=\"leading-snug\"\n variant=\"h6\"\n data-testid={\n isPresent(titleDataTestid)\n ? titleDataTestid\n : \"toggle-feature-card-title\"\n }\n >\n {title}\n </Typography>\n </Label>\n <Typography\n className=\"mb-4 whitespace-pre-line\"\n variant=\"body2\"\n data-testid={\n isPresent(descriptionDataTestid)\n ? descriptionDataTestid\n : \"toggle-feature-card-description\"\n }\n >\n {description}\n </Typography>\n {hasInput && !isEditing && (\n <div className=\"m-0 flex flex-row items-center gap-x-2\">\n {inputProps?.display}\n <Button\n label={t(\"neetoMolecules.common.actions.edit\")}\n size=\"sm\"\n type=\"button\"\n variant=\"link\"\n data-testid={\n isPresent(inputProps?.editButtonDataTestid)\n ? inputProps?.editButtonDataTestid\n : \"toggle-feature-card-input-display-edit\"\n }\n onClick={() => setIsEditing(true)}\n {...editButtonProps}\n />\n </div>\n )}\n {hasInput && isEditing && (\n <Input\n autoFocus\n label={inputProps?.label}\n name={inputProps?.name}\n placeholder={inputProps?.placeholder}\n ref={inputRef}\n size=\"medium\"\n data-testid={\n isPresent(inputProps?.dataTestid)\n ? inputProps?.dataTestid\n : \"toggle-feature-card-input-field\"\n }\n suffix={\n <Button\n data-testid=\"toggle-feature-card-input-reset\"\n icon={X}\n size=\"sm\"\n type=\"button\"\n variant=\"ghost\"\n onClick={handleInputReset}\n />\n }\n {...inputProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nToggleFeatureCard.propTypes = {\n /**\n * The title that will be displayed for the card.\n */\n title: PropTypes.string,\n /**\n * The descripton text for the particular feature or setting.\n */\n description: PropTypes.string,\n /**\n * The formik name of the feature or setting to be toggled. eg:\n {switchName: \"enableEmails\"}.\n */\n switchName: PropTypes.string,\n /**\n * Can be used to disable the toggle switch conditionally.\n */\n isDisabled: PropTypes.bool,\n /**\n * Can be used to enable the card appearance.\n */\n isCardStyleEnabled: PropTypes.bool,\n /**\n * Custom child components to be displayed in the card.\n */\n children: PropTypes.node,\n /**\n * Can be used to add an input field for a setting or a feature.\n For example, `Enable email notifications` card can have an email input field.\n */\n inputProps: PropTypes.shape({\n name: PropTypes.string,\n display: PropTypes.node,\n label: PropTypes.string,\n editButtonTooltip: PropTypes.string,\n editButtonDataTestid: PropTypes.string,\n placeholder: PropTypes.string,\n dataTestid: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n nakedInput: PropTypes.bool,\n size: PropTypes.oneOf(Object.values(SIZES)),\n type: PropTypes.string,\n maxLength: PropTypes.number,\n contentSize: PropTypes.number,\n unlimitedChars: PropTypes.bool,\n }),\n /**\n * Can be used to add props to the switch component.\n */\n switchProps: PropTypes.shape({\n onChange: PropTypes.func,\n className: PropTypes.string,\n checked: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n enabledSwitchText: PropTypes.string,\n disabledSwitchText: PropTypes.string,\n }),\n }),\n /**\n * Can be used to add props to the edit button component.\n */\n editButtonProps: PropTypes.shape({\n onClick: PropTypes.func,\n className: PropTypes.string,\n style: PropTypes.string,\n size: PropTypes.string,\n type: PropTypes.string,\n tooltipProps: PropTypes.object,\n }),\n /**\n * To specify external classnames as overrides to the ToggleFeatureCard wrapper.\n */\n className: PropTypes.string,\n};\n\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","TooltipSwitch","enabledCondition","_ref$name","name","_ref$isDisabled","isDisabled","switchDataTestid","_ref$tooltipProps","tooltipProps","otherProps","_objectWithoutProperties","_excluded","enabledSwitchText","disabledSwitchText","neetoAtomsTooltipProps","_excluded2","tooltipContent","_jsx","Tooltip","_objectSpread","content","disabled","position","children","FormikSwitch","isPresent","ToggleFeatureCard","_ref$isCardStyleEnabl","isCardStyleEnabled","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataTestid","titleDataTestid","_ref$switchDataTestid","_ref$descriptionDataT","descriptionDataTestid","_ref$children","inputProps","_ref$switchProps","switchProps","_ref$editButtonProps","editButtonProps","_ref$className","className","_useTranslation","useTranslation","t","cardRef","useRef","id","slugify","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_useFormikContext","useFormikContext","setFieldValue","values","submitCount","errors","initialValues","isEmpty","_useState3","location","hash","split","_useState4","shouldHighlight","setShouldHighlight","hasInput","handleInputReset","useOnClickOutside","inputRef","useHotkeys","mode","_jsxs","ref","classnames","Label","Typography","as","variant","display","Button","label","size","type","editButtonDataTestid","onClick","Input","autoFocus","placeholder","dataTestid","suffix","icon","X"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.33",
|
|
4
4
|
"description": "A package of reusable molecular components for neeto products.",
|
|
5
5
|
"repository": "git@github.com:bigbinary/neeto-molecules.git",
|
|
6
6
|
"author": "Amaljith K <amaljith.k@bigbinary.com>",
|