@bigbinary/neeto-tags-frontend 2.2.27 → 2.2.29

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/.ready CHANGED
@@ -1 +1 @@
1
- Built at 2026-05-19T11:01:32.652Z
1
+ Built at 2026-06-15T06:41:07.687Z
@@ -10,8 +10,8 @@ var neetoAtoms = require('@bigbinary/neeto-atoms');
10
10
  var neetoCist = require('@bigbinary/neeto-cist');
11
11
  var constants = require('@bigbinary/neeto-commons-frontend/v2/constants');
12
12
  var reactUtils = require('@bigbinary/neeto-commons-frontend/v2/react-utils');
13
- var FiltersBar = require('@bigbinary/neeto-filters-frontend/Bar');
14
- var utils = require('@bigbinary/neeto-filters-frontend/utils');
13
+ var FiltersBar = require('@bigbinary/neeto-filters-frontend/v2/Bar');
14
+ var utils = require('@bigbinary/neeto-filters-frontend/v2/utils');
15
15
  var Container = require('@bigbinary/neeto-molecules/v2/Container');
16
16
  var SubHeader = require('@bigbinary/neeto-molecules/v2/SubHeader');
17
17
  var ramda = require('ramda');
@@ -388,6 +388,7 @@ var Dashboard = function Dashboard(_ref) {
388
388
  var showFilters = neetoCist.isPresent(neetoFilters) || (data === null || data === void 0 ? void 0 : data.totalCount) > 0;
389
389
  return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
390
390
  children: [/*#__PURE__*/jsxRuntime.jsxs(Container, {
391
+ className: "pb-10",
391
392
  children: [/*#__PURE__*/jsxRuntime.jsx(DashboardHeader, {
392
393
  breadcrumbs: breadcrumbs,
393
394
  data: data,
@@ -404,7 +405,7 @@ var Dashboard = function Dashboard(_ref) {
404
405
  className: "mb-4",
405
406
  leftActionBlock: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
406
407
  "data-testid": "neeto-tags-filtered-tags-count-text",
407
- variant: "h5",
408
+ variant: "h6",
408
409
  weight: "semibold",
409
410
  children: t("neetoTags.helper.tagWithCount", {
410
411
  count: (data === null || data === void 0 ? void 0 : data.totalCount) || 0,
@@ -1 +1 @@
1
- {"version":3,"file":"NeetoTags.js","sources":["../../../app/javascript/src/v2/components/Dashboard/Header.jsx","../../../app/javascript/src/v2/components/Dashboard/utils.jsx","../../../app/javascript/src/v2/components/Dashboard/Table.jsx","../../../app/javascript/src/v2/components/Menu.jsx","../../../app/javascript/src/v2/components/Dashboard/index.jsx","../../../app/javascript/src/v2/components/Merge/constants.js","../../../app/javascript/src/v2/components/Merge/utils.js","../../../app/javascript/src/v2/components/Merge/List.jsx","../../../app/javascript/src/v2/components/Merge/MergeAlert.jsx","../../../app/javascript/src/v2/components/Merge/index.jsx","../../../app/javascript/src/v2/components/utils.js","../../../app/javascript/src/v2/components/index.jsx","../../../app/javascript/src/v2/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { PLURAL, SINGULAR } from \"neetocommons/v2/constants\";\nimport { handleMetaClick, useFuncDebounce } from \"neetocommons/v2/react-utils\";\nimport Header from \"neetomolecules/v2/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"v2/common/constants\";\n\nconst DashboardHeader = ({\n breadcrumbs,\n title,\n tagsMergable = false,\n setPaneType,\n setSelectedTag,\n goToFirstPage = noop,\n tagsPath = \"\",\n data,\n showFilters = true,\n titleHelpPopoverProps,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const resetPage = useFuncDebounce(() => goToFirstPage());\n\n return (\n <Header\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={title || t(\"neetoTags.common.tag\", PLURAL)}\n actionBlock={\n <>\n {tagsMergable && (\n <Button\n data-testid=\"neeto-tags-merge-tags-button\"\n disabled={data?.tags.length < PLURAL.count}\n label={t(\"neetoTags.common.mergeTag\", PLURAL)}\n variant=\"secondary\"\n onClick={handleMetaClick(history, `${tagsPath}/merge`)}\n />\n )}\n <Button\n data-testid=\"add-new-tag-button\"\n label={t(\"neetoTags.common.addNewTag\", SINGULAR)}\n onClick={() => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n }}\n />\n </>\n }\n searchProps={\n showFilters && {\n \"data-testid\": \"neeto-tags-search-text-input-field\",\n onChange: resetPage,\n placeholder: t(\"neetoTags.placeholder.searchTags\"),\n }\n }\n />\n );\n};\n\nexport default DashboardHeader;\n","import {\n Typography,\n Badge,\n DropdownMenu,\n Button,\n} from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { Ellipsis } from \"lucide-react\";\nimport { noop } from \"neetocist\";\n\nimport { TAG_STYLE_TO_BADGE_VARIANT } from \"v2/common/constants\";\n\nconst renderDropdownButton = ({\n handleEdit = noop,\n handleDelete = noop,\n tag = {},\n}) => (\n <div onClick={e => e.stopPropagation()}>\n <DropdownMenu\n customTarget={<Button icon={Ellipsis} variant=\"ghost\" />}\n position=\"bottom-end\"\n >\n <DropdownMenu.MenuItem\n data-testid=\"tags-edit-button\"\n onClick={() => handleEdit(tag)}\n >\n {t(\"neetoTags.button.edit\")}\n </DropdownMenu.MenuItem>\n <DropdownMenu.MenuItem\n data-testid=\"tags-delete-button\"\n onClick={() => handleDelete(tag)}\n >\n {t(\"neetoTags.button.delete\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu>\n </div>\n);\n\nexport const renderColumnData = (handleEdit, handleDelete, columns = []) => [\n {\n header: t(\"neetoTags.common.name\"),\n accessorKey: \"name\",\n id: \"name\",\n size: 300,\n cell: ({ row }) => {\n const { name, style } = row.original;\n\n return (\n <div className=\"flex items-center justify-between gap-2\">\n <Badge\n label={name}\n variant={TAG_STYLE_TO_BADGE_VARIANT[style] || \"secondary\"}\n />\n {renderDropdownButton({\n handleEdit,\n handleDelete,\n tag: row.original,\n })}\n </div>\n );\n },\n },\n {\n header: t(\"neetoTags.common.description\"),\n accessorKey: \"description\",\n id: \"description\",\n size: 400,\n cell: ({ getValue }) => (\n <Typography className=\"whitespace-normal\">{getValue()}</Typography>\n ),\n },\n ...columns,\n];\n","import { DataTable, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { Tags } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderColumnData } from \"./utils\";\n\nconst Table = ({\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n noDataProps,\n}) => {\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (!isLoading && !data?.tags?.length) {\n return (\n <div\n className=\"flex h-full w-full items-center justify-center\"\n data-testid=\"empty-state-container\"\n >\n <Empty\n {...{ ...noDataProps, primaryButtonProps }}\n icon={Tags}\n title={t(\"neetoTags.title.noTagsToShow\")}\n />\n </div>\n );\n }\n\n const handleSortingChange = updater => {\n const currentSorting = filters.sortBy\n ? [{ id: filters.sortBy, desc: filters.orderBy === \"desc\" }]\n : [];\n\n const newSorting =\n typeof updater === \"function\" ? updater(currentSorting) : updater;\n\n const sort = newSorting[0];\n handleOnChange(\n { current: filters.page },\n undefined,\n sort\n ? { field: sort.id, order: sort.desc ? \"desc\" : \"asc\" }\n : { field: \"\", order: \"\" }\n );\n };\n\n const handlePageChange = page => {\n handleOnChange({ current: page }, undefined, {\n field: filters.sortBy,\n order: filters.orderBy,\n });\n };\n\n return (\n <DataTable\n allowRowClick={!!onTagRowClick}\n columns={renderColumnData(handleEdit, handleDelete, tagType.columns)}\n currentPage={filters.page}\n data={data?.tags || []}\n enableColumnFreeze={false}\n enableColumnReorder={false}\n enableColumnResize={false}\n enableURLPagination={false}\n enableURLSort={false}\n pageSize={filters.pageSize}\n totalCount={data?.totalCount}\n onPageChange={handlePageChange}\n onSortingChange={handleSortingChange}\n onRowClick={\n onTagRowClick\n ? (event, record, rowIndex) =>\n onTagRowClick({ event, tag: record, rowIndex })\n : undefined\n }\n />\n );\n};\n\nexport default Table;\n","import { Tabs } from \"@bigbinary/neeto-atoms\";\n\nconst Menu = ({ tagTypes, tagType, setTagType }) => (\n <Tabs\n className=\"mb-6\"\n value={String(tagType.id)}\n onValueChange={id => {\n const selected = Object.values(tagTypes).find(\n tag => String(tag.id) === id\n );\n if (selected) setTagType(selected);\n }}\n >\n <Tabs.List>\n {Object.values(tagTypes).map(tag => (\n <Tabs.Item key={tag.id} value={String(tag.id)}>\n {tag.label}\n </Tabs.Item>\n ))}\n </Tabs.List>\n </Tabs>\n);\n\nexport default Menu;\n","import { useState } from \"react\";\n\nimport { Alert, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, SINGULAR } from \"neetocommons/v2/constants\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { showThumbsUpToastr, buildUrl } from \"neetocommons/v2/utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters\";\nimport Container from \"neetomolecules/v2/Container\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"v2/common/constants\";\nimport { useDeleteTag, useFetchTags } from \"v2/hooks/useTagsApi\";\n\nimport { DEFAULT_FILTERS, NEETO_FILTERS } from \"./constants\";\nimport DashboardHeader from \"./Header\";\nimport ManageTags from \"./ManageTags\";\nimport Table from \"./Table\";\n\nimport Menu from \"../Menu\";\n\nconst Dashboard = ({\n breadcrumbs,\n title,\n createTags,\n deleteTags,\n displayMenu,\n onTagRowClick,\n tagsMergable = false,\n tagsPath,\n tagType,\n updateTags,\n setTagType,\n tagTypes,\n noDataProps = {},\n titleHelpPopoverProps = {},\n}) => {\n const history = useHistory();\n const queryParams = useQueryParams();\n const { searchTerm = \"\" } = queryParams;\n\n const searchKeywordProps = {\n node: \"name\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [selectedTag, setSelectedTag] = useState(null);\n const [paneType, setPaneType] = useState(null);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [filters, setFilters] = useState(DEFAULT_FILTERS);\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [neetoFilters, setNeetoFilters] = useState(\n buildFiltersFromURL([...NEETO_FILTERS, searchKeywordProps])\n );\n\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n neetoFilters,\n ...filters,\n });\n\n const { t } = useTranslation();\n\n const primaryButtonProps = {\n \"data-testid\": \"add-new-tag-button\",\n label: t(\"neetoTags.common.addNewTag\", SINGULAR),\n onClick: () => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n },\n };\n\n const handleEdit = tag => {\n setSelectedTag(tag);\n setPaneType(PANE_TYPES.EDIT);\n };\n\n const handleDelete = tag => {\n setSelectedTag(tag);\n setIsDeleteAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setIsDeleteAlertOpen(false);\n setSelectedTag(null);\n };\n\n const handleOnChange = (\n { current: page },\n _,\n { field: sortBy, order: orderBy }\n ) => setFilters(mergeLeft({ page, sortBy: orderBy && sortBy, orderBy }));\n\n const { mutate, isPending: isDeletingTag } = useDeleteTag();\n\n const handleConfirmDelete = () => {\n const payload = { url: tagType.url, id: selectedTag?.id };\n const isNotDeleting = !isDeletingTag && isDeleteAlertOpen;\n isNotDeleting &&\n mutate(payload, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n if (data?.tags?.length === 1) {\n setFilters(mergeLeft({ page: filters.page - 1 }));\n }\n deleteTags?.onSuccess?.callback();\n // @ts-ignore\n showThumbsUpToastr();\n },\n });\n };\n\n const handleFiltersChange = filters => {\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page: DEFAULT_PAGE_INDEX }, queryParams)\n )\n );\n setNeetoFilters(filters);\n };\n\n const resetPage = () => setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }));\n\n const showFilters = isPresent(neetoFilters) || data?.totalCount > 0;\n\n return (\n <>\n <Container>\n <DashboardHeader\n {...{\n breadcrumbs,\n data,\n displayMenu,\n setPaneType,\n setSelectedTag,\n showFilters,\n tagsMergable,\n tagsPath,\n title,\n titleHelpPopoverProps,\n }}\n goToFirstPage={resetPage}\n />\n {showFilters && (\n <SubHeader\n className=\"mb-4\"\n leftActionBlock={\n <Typography\n data-testid=\"neeto-tags-filtered-tags-count-text\"\n variant=\"h5\"\n weight=\"semibold\"\n >\n {t(\"neetoTags.helper.tagWithCount\", {\n count: data?.totalCount || 0,\n type: tagType?.label || \"\",\n })}\n </Typography>\n }\n rightActionBlock={\n <SubHeader.RightBlock\n filterProps={{\n columns: NEETO_FILTERS,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleFiltersChange,\n keyword: searchKeywordProps,\n }}\n />\n }\n />\n )}\n <FiltersBar\n columns={NEETO_FILTERS}\n isOpen={isFiltersPaneOpen}\n keyword={searchKeywordProps}\n onChange={handleFiltersChange}\n />\n {displayMenu && <Menu {...{ setTagType, tagType, tagTypes }} />}\n <Table\n {...{\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n noDataProps,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n }}\n />\n </Container>\n <ManageTags\n {...{ createTags, tagType, updateTags }}\n goToFirstPage={resetPage}\n tag={selectedTag}\n type={paneType}\n onClose={() => setPaneType(null)}\n />\n <Alert\n cancelButtonLabel={t(\"neetoTags.button.cancel\")}\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeletingTag}\n submitButtonLabel={t(\"neetoTags.button.delete\")}\n title={t(\"neetoTags.alert.title.deleteTag\")}\n message={\n <Trans\n i18nKey=\"neetoTags.alert.message.deleteTag_\"\n values={{ name: selectedTag?.name }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleConfirmDelete}\n />\n </>\n );\n};\n\nexport default Dashboard;\n","import { t } from \"i18next\";\n\nexport const NO_DATA_PRIMARY_BUTTON_PROPS = {\n \"data-testid\": \"neeto-tags-go-back-button\",\n size: \"sm\",\n label: t(\"neetoTags.button.goBack\"),\n};\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport { pluck } from \"ramda\";\n\nexport const getListType = ({\n destinationTags = [],\n isSource = false,\n sourceTags = [],\n}) =>\n isSource\n ? {\n label: t(\"neetoTags.title.selectSourceTag\", SINGULAR),\n value: \"source\",\n tagIds: pluck(\"id\", sourceTags),\n counterTagIds: pluck(\"id\", destinationTags),\n }\n : {\n label: t(\"neetoTags.title.selectDestinationTag\", SINGULAR),\n value: \"destination\",\n tagIds: pluck(\"id\", destinationTags),\n counterTagIds: pluck(\"id\", sourceTags),\n };\n\nexport const orderBySourceTags = (tags, sourceTags) => {\n const withoutSourceTags = tags.filter(tag =>\n sourceTags.every(sourceTag => sourceTag.id !== tag.id)\n );\n\n return [...sourceTags, ...withoutSourceTags];\n};\n","import { useMemo, useState } from \"react\";\n\nimport { Empty, Input, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { Check, Search, Tags } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getListType, orderBySourceTags } from \"./utils\";\n\nconst List = ({\n isSource = false,\n destinationTags = [],\n onSelect,\n sourceTags = [],\n tagList = [],\n}) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n const listType = useMemo(\n () => getListType({ destinationTags, isSource, sourceTags }),\n [isSource, sourceTags, destinationTags]\n );\n\n const filteredTags = orderBySourceTags(tagList, sourceTags).filter(tag =>\n tag?.name?.toLowerCase()?.includes(searchTerm.toLowerCase().trim())\n );\n\n return (\n <div className=\"flex w-[48%] flex-col rounded-lg border border-border p-3 md:p-4 lg:p-6\">\n <Typography className=\"mb-3\" variant=\"h4\">\n {listType.label}\n </Typography>\n <Input\n className=\"shrink-0\"\n data-testid={`neeto-tags-merge-${listType.value}-search-text-input-field`}\n placeholder={t(\"neetoTags.placeholder.searchTags\")}\n prefix={<Search />}\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n />\n <div\n className=\"mt-3 flex grow flex-col gap-2 overflow-y-auto md:mt-4\"\n data-testid={`neeto-tags-merge-${listType.value}-tags-list`}\n >\n {filteredTags.length === 0 && (\n <Empty\n className=\"m-auto\"\n icon={Tags}\n title={t(\"neetoTags.title.noTagsFound\")}\n />\n )}\n {filteredTags.map(tag => {\n const selectedTagIds = listType.tagIds.includes(tag.id);\n const selectedCounterTags = listType.counterTagIds.includes(tag.id);\n\n return (\n <div\n data-testid={`neeto-tags-merge-${listType.value}-tags`}\n key={tag.id}\n className={classNames(\n \"flex cursor-pointer items-center justify-between rounded-lg border border-transparent p-2\",\n {\n \"bg-muted border-primary\": selectedTagIds,\n \"hover:bg-muted/50\": !selectedTagIds,\n \"cursor-not-allowed bg-muted/30 text-muted-foreground\":\n selectedCounterTags,\n }\n )}\n onClick={() =>\n !selectedCounterTags && onSelect(tag, listType.value)\n }\n >\n <span>{tag.name}</span>\n {selectedTagIds && <Check size={18} />}\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default List;\n","import { Dialog, Button } from \"@bigbinary/neeto-atoms\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport pluralize from \"pluralize\";\nimport { pluck } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nconst MergeAlert = withT(\n ({\n t,\n destinationTags = [],\n handleSubmit,\n isSubmitting = false,\n setShowModal,\n showModal = false,\n sourceTags = [],\n tagType = \"\",\n }) => (\n <Dialog isOpen={showModal} onClose={() => setShowModal(false)}>\n <Dialog.Header>\n <Dialog.Title>{t(\"neetoTags.common.mergeTag\", PLURAL)}</Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n <Trans\n i18nKey=\"neetoTags.helper.mergeTagsMessage\"\n values={{\n count: sourceTags.length,\n sourceTags: pluck(\"name\", sourceTags),\n destinationTag: pluck(\"name\", destinationTags),\n entities: pluralize(tagType.label.toLowerCase()),\n }}\n />\n </Dialog.Body>\n <Dialog.Footer className=\"space-x-2\">\n <Button\n data-testid=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n variant=\"outline\"\n onClick={() => setShowModal(false)}\n />\n <Button\n data-testid=\"neeto-tags-merge-proceed-button\"\n disabled={isSubmitting}\n label={t(\"neetoTags.button.proceed\")}\n loading={isSubmitting}\n onClick={handleSubmit}\n />\n </Dialog.Footer>\n </Dialog>\n )\n);\n\nexport default MergeAlert;\n","/* eslint-disable @bigbinary/neeto/no-missing-localization */\nimport { useState, useMemo } from \"react\";\n\nimport { Button, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { Merge as MergeIcon, Tags } from \"lucide-react\";\nimport { removeById, existsById } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTags, useMergeTags } from \"v2/hooks/useTagsApi\";\n\nimport { NO_DATA_PRIMARY_BUTTON_PROPS } from \"./constants\";\nimport List from \"./List\";\nimport MergeAlert from \"./MergeAlert\";\n\nconst Merge = ({ breadcrumbs, mergeTags, tagsPath, tagType }) => {\n const [sourceTags, setSourceTags] = useState([]);\n const [destinationTags, setDestinationTags] = useState([]);\n const [isModalOpen, setIsModalOpen] = useState(false);\n const isMergeButtonDisabled = isEmpty(sourceTags) || isEmpty(destinationTags);\n const { t } = useTranslation();\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n skipPagination: true,\n });\n\n const { mutate, isPending: isSubmitting } = useMergeTags();\n const primaryButtonProps = { ...NO_DATA_PRIMARY_BUTTON_PROPS, to: tagsPath };\n\n const updatedBreadcrumbs = useMemo(\n () => [...breadcrumbs, { text: t(\"neetoTags.common.mergeTag\", PLURAL) }],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [breadcrumbs]\n );\n\n const getTagState = type => ({\n tags: type === \"source\" ? sourceTags : destinationTags,\n setTags: type === \"source\" ? setSourceTags : setDestinationTags,\n });\n\n const handleOnTagSelect = (tag, type) => {\n const { tags, setTags } = getTagState(type);\n const isTagPresent = existsById(tag.id, tags);\n let filteredTags = type === \"source\" ? [...tags, tag] : [tag];\n if (isTagPresent) {\n filteredTags = removeById(tag.id, tags);\n }\n setTags(filteredTags);\n };\n\n const handleSubmit = () => {\n const payload = {\n tags: {\n primary_id: pluck(\"id\", destinationTags),\n secondary_id: pluck(\"id\", sourceTags),\n },\n };\n\n mutate(\n { url: tagType.url, payload },\n {\n onSuccess: () => {\n setDestinationTags([]);\n setSourceTags([]);\n mergeTags?.onSuccess?.callback();\n setIsModalOpen(false);\n },\n }\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container>\n <Header\n breadcrumbs={updatedBreadcrumbs}\n title={t(\"neetoTags.common.mergeTag\", PLURAL)}\n actionBlock={\n <>\n <Button\n data-testid=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n to={tagsPath}\n variant=\"secondary\"\n />\n <Button\n data-testid=\"neeto-tags-merge-button\"\n disabled={isMergeButtonDisabled}\n label={t(\"neetoTags.button.merge\")}\n onClick={() => {\n setIsModalOpen(true);\n }}\n />\n </>\n }\n />\n {!data?.tags?.length ? (\n <div\n className=\"flex h-full w-full items-center justify-center\"\n data-testid=\"empty-state-container\"\n >\n <Empty\n {...{ primaryButtonProps }}\n icon={Tags}\n title={t(\"neetoTags.noTagsToShow\")}\n />\n </div>\n ) : (\n <div className=\"flex min-h-0 w-full grow flex-row justify-between pb-6\">\n <List\n {...{ destinationTags, sourceTags }}\n isSource\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n <MergeIcon\n className=\"mx-1 self-center text-muted-foreground md:mx-4 lg:mx-6\"\n size={24}\n />\n <List\n {...{ destinationTags, sourceTags }}\n isSource={false}\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n </div>\n )}\n <MergeAlert\n {...{\n destinationTags,\n handleSubmit,\n isSubmitting,\n sourceTags,\n tagType,\n }}\n setShowModal={setIsModalOpen}\n showModal={isModalOpen}\n />\n </Container>\n );\n};\n\nexport default Merge;\n","import { getQueryParams } from \"neetocommons/v2/utils\";\n\nimport Dashboard from \"./Dashboard\";\nimport Merge from \"./Merge\";\n\nexport { refetchTags } from \"v2/hooks/useTagsApi\";\n\nexport const getCurrentTagType = (tagTypes = []) => {\n const { view: tagLabel } = getQueryParams();\n const requiredTagType = tagTypes.find(\n tagType => tagType?.label?.toLowerCase() === tagLabel\n );\n\n return requiredTagType || tagTypes[0];\n};\n\nexport const createRoutes = path => [\n { component: Merge, exact: true, path: `${path}/merge` },\n { component: Dashboard, exact: true, path: path || \"\" },\n];\n","import { useState } from \"react\";\n\nimport { Switch, Route } from \"react-router-dom\";\n\nimport { createRoutes, getCurrentTagType } from \"./utils\";\n\nconst Tags = ({ config }) => {\n const { tagTypes, displayMenu = true } = config;\n\n const [tagType, setTagType] = useState(getCurrentTagType(tagTypes));\n\n const routes = createRoutes(config.tagsPath);\n\n return (\n <Switch>\n {routes.map(({ exact, path, component: Component }) => (\n <Route {...{ exact, path }} key={path}>\n <Component {...{ ...config, displayMenu, setTagType, tagType }} />\n </Route>\n ))}\n </Switch>\n );\n};\n\nexport default Tags;\n","import Tags from \"./components\";\n\nconst App = ({ config }) => <Tags {...{ config }} />;\n\nexport default App;\n"],"names":["DashboardHeader","_ref","breadcrumbs","title","_ref$tagsMergable","tagsMergable","setPaneType","setSelectedTag","_ref$goToFirstPage","goToFirstPage","noop","_ref$tagsPath","tagsPath","data","_ref$showFilters","showFilters","titleHelpPopoverProps","_useTranslation","useTranslation","t","history","useHistory","resetPage","useFuncDebounce","_jsx","Header","PLURAL","actionBlock","_jsxs","_Fragment","children","Button","disabled","tags","length","count","label","variant","onClick","handleMetaClick","concat","SINGULAR","PANE_TYPES","CREATE","searchProps","onChange","placeholder","renderDropdownButton","_ref$handleEdit","handleEdit","_ref$handleDelete","handleDelete","_ref$tag","tag","e","stopPropagation","DropdownMenu","customTarget","icon","Ellipsis","position","MenuItem","renderColumnData","columns","arguments","undefined","header","accessorKey","id","size","cell","_ref2","row","_row$original","original","name","style","className","Badge","TAG_STYLE_TO_BADGE_VARIANT","_ref3","getValue","Typography","_toConsumableArray","Table","_data$tags","filters","handleOnChange","isLoading","onTagRowClick","primaryButtonProps","tagType","noDataProps","Spinner","Empty","_objectSpread","Tags","handleSortingChange","updater","currentSorting","sortBy","desc","orderBy","newSorting","sort","current","page","field","order","handlePageChange","DataTable","allowRowClick","currentPage","enableColumnFreeze","enableColumnReorder","enableColumnResize","enableURLPagination","enableURLSort","pageSize","totalCount","onPageChange","onSortingChange","onRowClick","event","record","rowIndex","Menu","tagTypes","setTagType","Tabs","value","String","onValueChange","selected","Object","values","find","List","map","Item","Dashboard","createTags","deleteTags","displayMenu","updateTags","_ref$noDataProps","_ref$titleHelpPopover","queryParams","useQueryParams","_queryParams$searchTe","searchTerm","searchKeywordProps","node","key","_useState","useState","_useState2","_slicedToArray","selectedTag","_useState3","_useState4","paneType","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","DEFAULT_FILTERS","_useState8","setFilters","_useState9","_useState10","isFiltersPaneOpen","setIsFiltersPaneOpen","_useState11","buildFiltersFromURL","NEETO_FILTERS","_useState12","neetoFilters","setNeetoFilters","_useFetchTags","useFetchTags","url","EDIT","handleAlertClose","_","mergeLeft","_useDeleteTag","useDeleteTag","mutate","isDeletingTag","isPending","handleConfirmDelete","payload","isNotDeleting","onSuccess","_deleteTags$onSuccess","callback","showThumbsUpToastr","handleFiltersChange","push","buildUrl","window","location","pathname","DEFAULT_PAGE_INDEX","isPresent","Container","SubHeader","leftActionBlock","weight","type","rightActionBlock","RightBlock","filterProps","isOpen","setIsOpen","keyword","FiltersBar","ManageTags","onClose","Alert","cancelButtonLabel","isSubmitting","submitButtonLabel","message","Trans","i18nKey","onSubmit","NO_DATA_PRIMARY_BUTTON_PROPS","getListType","_ref$destinationTags","destinationTags","_ref$isSource","isSource","_ref$sourceTags","sourceTags","tagIds","pluck","counterTagIds","orderBySourceTags","withoutSourceTags","filter","every","sourceTag","onSelect","_ref$tagList","tagList","setSearchTerm","listType","useMemo","filteredTags","_tag$name","toLowerCase","includes","trim","Input","prefix","Search","target","selectedTagIds","selectedCounterTags","classNames","Check","MergeAlert","withT","handleSubmit","_ref$isSubmitting","setShowModal","_ref$showModal","showModal","_ref$tagType","Dialog","Title","Body","destinationTag","entities","pluralize","Footer","loading","Merge","mergeTags","setSourceTags","setDestinationTags","isModalOpen","setIsModalOpen","isMergeButtonDisabled","isEmpty","skipPagination","_useMergeTags","useMergeTags","to","updatedBreadcrumbs","text","getTagState","setTags","handleOnTagSelect","_getTagState","isTagPresent","existsById","removeById","primary_id","secondary_id","_mergeTags$onSuccess","MergeIcon","getCurrentTagType","_getQueryParams","getQueryParams","tagLabel","view","requiredTagType","_tagType$label","createRoutes","path","component","exact","config","_config$displayMenu","routes","Switch","Component","_createElement","Route","App"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAMA,eAAe,GAAG,SAAlBA,eAAeA,CAAAC,IAAA,EAWf;AAAA,EAAA,IAVJC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IACXC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAAC,iBAAA,GAAAH,IAAA,CACLI,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,iBAAA;IACpBE,WAAW,GAAAL,IAAA,CAAXK,WAAW;IACXC,cAAc,GAAAN,IAAA,CAAdM,cAAc;IAAAC,kBAAA,GAAAP,IAAA,CACdQ,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAA,MAAA,GAAGE,cAAI,GAAAF,kBAAA;IAAAG,aAAA,GAAAV,IAAA,CACpBW,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,aAAA;IACbE,IAAI,GAAAZ,IAAA,CAAJY,IAAI;IAAAC,gBAAA,GAAAb,IAAA,CACJc,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,gBAAA;IAClBE,qBAAqB,GAAAf,IAAA,CAArBe,qBAAqB;AAErB,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AACT,EAAA,IAAMC,OAAO,GAAGC,yBAAU,EAAE;EAC5B,IAAMC,SAAS,GAAGC,0BAAe,CAAC,YAAA;IAAA,OAAMd,aAAa,EAAE;EAAA,CAAA,CAAC;EAExD,oBACEe,cAAA,CAACC,MAAM,EAAA;AACCvB,IAAAA,WAAW,EAAXA,WAAW;AAAEc,IAAAA,qBAAqB,EAArBA,qBAAqB;IACxCb,KAAK,EAAEA,KAAK,IAAIgB,CAAC,CAAC,sBAAsB,EAAEO,gBAAM,CAAE;IAClDC,WAAW,eACTC,eAAA,CAAAC,mBAAA,EAAA;AAAAC,MAAAA,QAAA,EAAA,CACGzB,YAAY,iBACXmB,cAAA,CAACO,iBAAM,EAAA;AACL,QAAA,aAAA,EAAY,8BAA8B;AAC1CC,QAAAA,QAAQ,EAAE,CAAAnB,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJA,IAAI,CAAEoB,IAAI,CAACC,MAAM,IAAGR,gBAAM,CAACS,KAAM;AAC3CC,QAAAA,KAAK,EAAEjB,CAAC,CAAC,2BAA2B,EAAEO,gBAAM,CAAE;AAC9CW,QAAAA,OAAO,EAAC,WAAW;QACnBC,OAAO,EAAEC,0BAAe,CAACnB,OAAO,KAAAoB,MAAA,CAAK5B,QAAQ,EAAA,QAAA,CAAQ;AAAE,OACxD,CACF,eACDY,cAAA,CAACO,iBAAM,EAAA;AACL,QAAA,aAAA,EAAY,oBAAoB;AAChCK,QAAAA,KAAK,EAAEjB,CAAC,CAAC,4BAA4B,EAAEsB,kBAAQ,CAAE;AACjDH,QAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;UACb/B,cAAc,CAAC,IAAI,CAAC;AACpBD,UAAAA,WAAW,CAACoC,sBAAU,CAACC,MAAM,CAAC;AAChC,QAAA;AAAE,OACH,CAAC;AAAA,KACF,CACH;IACDC,WAAW,EACT7B,WAAW,IAAI;AACb,MAAA,aAAa,EAAE,oCAAoC;AACnD8B,MAAAA,QAAQ,EAAEvB,SAAS;MACnBwB,WAAW,EAAE3B,CAAC,CAAC,kCAAkC;AACnD;AACD,GACF,CAAC;AAEN,CAAC;;AChDD,IAAM4B,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA9C,IAAA,EAAA;AAAA,EAAA,IAAA+C,eAAA,GAAA/C,IAAA,CACxBgD,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAGtC,cAAI,GAAAsC,eAAA;IAAAE,iBAAA,GAAAjD,IAAA,CACjBkD,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAGxC,cAAI,GAAAwC,iBAAA;IAAAE,QAAA,GAAAnD,IAAA,CACnBoD,GAAG;AAAHA,IAAAA,GAAG,GAAAD,QAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,QAAA;AAAA,EAAA,oBAER5B,cAAA,CAAA,KAAA,EAAA;AAAKc,IAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEgB,CAAC,EAAA;AAAA,MAAA,OAAIA,CAAC,CAACC,eAAe,EAAE;IAAA,CAAC;IAAAzB,QAAA,eACrCF,eAAA,CAAC4B,uBAAY,EAAA;MACXC,YAAY,eAAEjC,cAAA,CAACO,iBAAM,EAAA;AAAC2B,QAAAA,IAAI,EAAEC,oBAAS;AAACtB,QAAAA,OAAO,EAAC;AAAO,OAAE,CAAE;AACzDuB,MAAAA,QAAQ,EAAC,YAAY;AAAA9B,MAAAA,QAAA,EAAA,cAErBN,cAAA,CAACgC,uBAAY,CAACK,QAAQ,EAAA;AACpB,QAAA,aAAA,EAAY,kBAAkB;QAC9BvB,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQW,UAAU,CAACI,GAAG,CAAC;QAAA,CAAC;QAAAvB,QAAA,EAE9BX,SAAC,CAAC,uBAAuB;AAAC,OACN,CAAC,eACxBK,cAAA,CAACgC,uBAAY,CAACK,QAAQ,EAAA;AACpB,QAAA,aAAA,EAAY,oBAAoB;QAChCvB,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQa,YAAY,CAACE,GAAG,CAAC;QAAA,CAAC;QAAAvB,QAAA,EAEhCX,SAAC,CAAC,yBAAyB;AAAC,OACR,CAAC;KACZ;AAAC,GACZ,CAAC;AAAA,CACP;AAEM,IAAM2C,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIb,UAAU,EAAEE,YAAY,EAAA;AAAA,EAAA,IAAEY,OAAO,GAAAC,SAAA,CAAA9B,MAAA,GAAA,CAAA,IAAA8B,SAAA,CAAA,CAAA,CAAA,KAAAC,SAAA,GAAAD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;EAAA,OAAA,CACrE;AACEE,IAAAA,MAAM,EAAE/C,SAAC,CAAC,uBAAuB,CAAC;AAClCgD,IAAAA,WAAW,EAAE,MAAM;AACnBC,IAAAA,EAAE,EAAE,MAAM;AACVC,IAAAA,IAAI,EAAE,GAAG;AACTC,IAAAA,IAAI,EAAE,SAANA,IAAIA,CAAAC,KAAA,EAAe;AAAA,MAAA,IAAVC,GAAG,GAAAD,KAAA,CAAHC,GAAG;AACV,MAAA,IAAAC,aAAA,GAAwBD,GAAG,CAACE,QAAQ;QAA5BC,IAAI,GAAAF,aAAA,CAAJE,IAAI;QAAEC,KAAK,GAAAH,aAAA,CAALG,KAAK;AAEnB,MAAA,oBACEhD,eAAA,CAAA,KAAA,EAAA;AAAKiD,QAAAA,SAAS,EAAC,yCAAyC;QAAA/C,QAAA,EAAA,cACtDN,cAAA,CAACsD,gBAAK,EAAA;AACJ1C,UAAAA,KAAK,EAAEuC,IAAK;AACZtC,UAAAA,OAAO,EAAE0C,sCAA0B,CAACH,KAAK,CAAC,IAAI;SAC/C,CAAC,EACD7B,oBAAoB,CAAC;AACpBE,UAAAA,UAAU,EAAVA,UAAU;AACVE,UAAAA,YAAY,EAAZA,YAAY;UACZE,GAAG,EAAEmB,GAAG,CAACE;AACX,SAAC,CAAC;AAAA,OACC,CAAC;AAEV,IAAA;AACF,GAAC,EACD;AACER,IAAAA,MAAM,EAAE/C,SAAC,CAAC,8BAA8B,CAAC;AACzCgD,IAAAA,WAAW,EAAE,aAAa;AAC1BC,IAAAA,EAAE,EAAE,aAAa;AACjBC,IAAAA,IAAI,EAAE,GAAG;AACTC,IAAAA,IAAI,EAAE,SAANA,IAAIA,CAAAU,KAAA,EAAA;AAAA,MAAA,IAAKC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;MAAA,oBACfzD,cAAA,CAAC0D,qBAAU,EAAA;AAACL,QAAAA,SAAS,EAAC,mBAAmB;QAAA/C,QAAA,EAAEmD,QAAQ;AAAE,OAAa,CAAC;AAAA,IAAA;AAEvE,GAAC,CAAA,CAAAzC,MAAA,CAAA2C,kBAAA,CACEpB,OAAO,CAAA,CAAA;AAAA,CACX;;;;AClED,IAAMqB,KAAK,GAAG,SAARA,KAAKA,CAAAnF,IAAA,EAWL;AAAA,EAAA,IAAAoF,UAAA;AAAA,EAAA,IAVJxE,IAAI,GAAAZ,IAAA,CAAJY,IAAI;IACJyE,OAAO,GAAArF,IAAA,CAAPqF,OAAO;IACPnC,YAAY,GAAAlD,IAAA,CAAZkD,YAAY;IACZF,UAAU,GAAAhD,IAAA,CAAVgD,UAAU;IACVsC,cAAc,GAAAtF,IAAA,CAAdsF,cAAc;IACdC,SAAS,GAAAvF,IAAA,CAATuF,SAAS;IACTC,aAAa,GAAAxF,IAAA,CAAbwF,aAAa;IACbC,kBAAkB,GAAAzF,IAAA,CAAlByF,kBAAkB;IAClBC,OAAO,GAAA1F,IAAA,CAAP0F,OAAO;IACPC,WAAW,GAAA3F,IAAA,CAAX2F,WAAW;AAEX,EAAA,IAAA3E,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAIqE,SAAS,EAAE;AACb,IAAA,oBACEhE,cAAA,CAAA,KAAA,EAAA;AAAKqD,MAAAA,SAAS,EAAC,gDAAgD;AAAA/C,MAAAA,QAAA,eAC7DN,cAAA,CAACqE,kBAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;AAEA,EAAA,IAAI,CAACL,SAAS,IAAI,EAAC3E,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,IAAA,CAAAwE,UAAA,GAAJxE,IAAI,CAAEoB,IAAI,MAAA,IAAA,IAAAoD,UAAA,eAAVA,UAAA,CAAYnD,MAAM,CAAA,EAAE;AACrC,IAAA,oBACEV,cAAA,CAAA,KAAA,EAAA;AACEqD,MAAAA,SAAS,EAAC,gDAAgD;AAC1D,MAAA,aAAA,EAAY,uBAAuB;AAAA/C,MAAAA,QAAA,eAEnCN,cAAA,CAACsE,gBAAK,EAAAC,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAAA,eAAA,CAAAA,eAAA,KACKH,WAAW,CAAA,EAAA,EAAA,EAAA;AAAEF,QAAAA,kBAAkB,EAAlBA;AAAkB,OAAA,CAAA,CAAA,EAAA,EAAA,EAAA;AACxChC,QAAAA,IAAI,EAAEsC,gBAAK;QACX7F,KAAK,EAAEgB,CAAC,CAAC,8BAA8B;OAAE,CAC1C;AAAC,KACC,CAAC;AAEV,EAAA;AAEA,EAAA,IAAM8E,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,OAAO,EAAI;AACrC,IAAA,IAAMC,cAAc,GAAGb,OAAO,CAACc,MAAM,GACjC,CAAC;MAAEhC,EAAE,EAAEkB,OAAO,CAACc,MAAM;AAAEC,MAAAA,IAAI,EAAEf,OAAO,CAACgB,OAAO,KAAK;KAAQ,CAAC,GAC1D,EAAE;AAEN,IAAA,IAAMC,UAAU,GACd,OAAOL,OAAO,KAAK,UAAU,GAAGA,OAAO,CAACC,cAAc,CAAC,GAAGD,OAAO;AAEnE,IAAA,IAAMM,IAAI,GAAGD,UAAU,CAAC,CAAC,CAAC;AAC1BhB,IAAAA,cAAc,CACZ;MAAEkB,OAAO,EAAEnB,OAAO,CAACoB;AAAK,KAAC,EACzBzC,SAAS,EACTuC,IAAI,GACA;MAAEG,KAAK,EAAEH,IAAI,CAACpC,EAAE;AAAEwC,MAAAA,KAAK,EAAEJ,IAAI,CAACH,IAAI,GAAG,MAAM,GAAG;AAAM,KAAC,GACrD;AAAEM,MAAAA,KAAK,EAAE,EAAE;AAAEC,MAAAA,KAAK,EAAE;AAAG,KAC7B,CAAC;EACH,CAAC;AAED,EAAA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGH,IAAI,EAAI;AAC/BnB,IAAAA,cAAc,CAAC;AAAEkB,MAAAA,OAAO,EAAEC;KAAM,EAAEzC,SAAS,EAAE;MAC3C0C,KAAK,EAAErB,OAAO,CAACc,MAAM;MACrBQ,KAAK,EAAEtB,OAAO,CAACgB;AACjB,KAAC,CAAC;EACJ,CAAC;EAED,oBACE9E,cAAA,CAACsF,oBAAS,EAAA;IACRC,aAAa,EAAE,CAAC,CAACtB,aAAc;IAC/B1B,OAAO,EAAED,gBAAgB,CAACb,UAAU,EAAEE,YAAY,EAAEwC,OAAO,CAAC5B,OAAO,CAAE;IACrEiD,WAAW,EAAE1B,OAAO,CAACoB,IAAK;IAC1B7F,IAAI,EAAE,CAAAA,IAAI,KAAA,IAAA,IAAJA,IAAI,uBAAJA,IAAI,CAAEoB,IAAI,KAAI,EAAG;AACvBgF,IAAAA,kBAAkB,EAAE,KAAM;AAC1BC,IAAAA,mBAAmB,EAAE,KAAM;AAC3BC,IAAAA,kBAAkB,EAAE,KAAM;AAC1BC,IAAAA,mBAAmB,EAAE,KAAM;AAC3BC,IAAAA,aAAa,EAAE,KAAM;IACrBC,QAAQ,EAAEhC,OAAO,CAACgC,QAAS;AAC3BC,IAAAA,UAAU,EAAE1G,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJA,IAAI,CAAE0G,UAAW;AAC7BC,IAAAA,YAAY,EAAEX,gBAAiB;AAC/BY,IAAAA,eAAe,EAAExB,mBAAoB;IACrCyB,UAAU,EACRjC,aAAa,GACT,UAACkC,KAAK,EAAEC,MAAM,EAAEC,QAAQ,EAAA;AAAA,MAAA,OACtBpC,aAAa,CAAC;AAAEkC,QAAAA,KAAK,EAALA,KAAK;AAAEtE,QAAAA,GAAG,EAAEuE,MAAM;AAAEC,QAAAA,QAAQ,EAARA;AAAS,OAAC,CAAC;IAAA,CAAA,GACjD5D;AACL,GACF,CAAC;AAEN,CAAC;;ACzFD,IAAM6D,IAAI,GAAG,SAAPA,IAAIA,CAAA7H,IAAA,EAAA;AAAA,EAAA,IAAM8H,QAAQ,GAAA9H,IAAA,CAAR8H,QAAQ;IAAEpC,OAAO,GAAA1F,IAAA,CAAP0F,OAAO;IAAEqC,UAAU,GAAA/H,IAAA,CAAV+H,UAAU;EAAA,oBAC3CxG,cAAA,CAACyG,eAAI,EAAA;AACHpD,IAAAA,SAAS,EAAC,MAAM;AAChBqD,IAAAA,KAAK,EAAEC,MAAM,CAACxC,OAAO,CAACvB,EAAE,CAAE;AAC1BgE,IAAAA,aAAa,EAAE,SAAfA,aAAaA,CAAEhE,EAAE,EAAI;AACnB,MAAA,IAAMiE,QAAQ,GAAGC,MAAM,CAACC,MAAM,CAACR,QAAQ,CAAC,CAACS,IAAI,CAC3C,UAAAnF,GAAG,EAAA;AAAA,QAAA,OAAI8E,MAAM,CAAC9E,GAAG,CAACe,EAAE,CAAC,KAAKA,EAAE;AAAA,MAAA,CAC9B,CAAC;AACD,MAAA,IAAIiE,QAAQ,EAAEL,UAAU,CAACK,QAAQ,CAAC;IACpC,CAAE;AAAAvG,IAAAA,QAAA,eAEFN,cAAA,CAACyG,eAAI,CAACQ,IAAI,EAAA;MAAA3G,QAAA,EACPwG,MAAM,CAACC,MAAM,CAACR,QAAQ,CAAC,CAACW,GAAG,CAAC,UAAArF,GAAG,EAAA;AAAA,QAAA,oBAC9B7B,cAAA,CAACyG,eAAI,CAACU,IAAI,EAAA;AAAcT,UAAAA,KAAK,EAAEC,MAAM,CAAC9E,GAAG,CAACe,EAAE,CAAE;UAAAtC,QAAA,EAC3CuB,GAAG,CAACjB;SAAK,EADIiB,GAAG,CAACe,EAET,CAAC;MAAA,CACb;KACQ;AAAC,GACR,CAAC;AAAA,CACR;;;;ACGD,IAAMwE,SAAS,GAAG,SAAZA,SAASA,CAAA3I,IAAA,EAeT;AAAA,EAAA,IAdJC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IACXC,KAAK,GAAAF,IAAA,CAALE,KAAK;IACL0I,UAAU,GAAA5I,IAAA,CAAV4I,UAAU;IACVC,UAAU,GAAA7I,IAAA,CAAV6I,UAAU;IACVC,WAAW,GAAA9I,IAAA,CAAX8I,WAAW;IACXtD,aAAa,GAAAxF,IAAA,CAAbwF,aAAa;IAAArF,iBAAA,GAAAH,IAAA,CACbI,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,iBAAA;IACpBQ,QAAQ,GAAAX,IAAA,CAARW,QAAQ;IACR+E,OAAO,GAAA1F,IAAA,CAAP0F,OAAO;IACPqD,UAAU,GAAA/I,IAAA,CAAV+I,UAAU;IACVhB,UAAU,GAAA/H,IAAA,CAAV+H,UAAU;IACVD,QAAQ,GAAA9H,IAAA,CAAR8H,QAAQ;IAAAkB,gBAAA,GAAAhJ,IAAA,CACR2F,WAAW;AAAXA,IAAAA,WAAW,GAAAqD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAAAC,qBAAA,GAAAjJ,IAAA,CAChBe,qBAAqB;AAArBA,IAAAA,qBAAqB,GAAAkI,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAE1B,EAAA,IAAM9H,OAAO,GAAGC,yBAAU,EAAE;AAC5B,EAAA,IAAM8H,WAAW,GAAGC,yBAAc,EAAE;AACpC,EAAA,IAAAC,qBAAA,GAA4BF,WAAW,CAA/BG,UAAU;AAAVA,IAAAA,UAAU,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAEvB,EAAA,IAAME,kBAAkB,GAAG;AACzBC,IAAAA,IAAI,EAAE,MAAM;AACZtB,IAAAA,KAAK,EAAEoB,UAAU;AACjBG,IAAAA,GAAG,EAAE;GACN;AAED,EAAA,IAAAC,SAAA,GAAsCC,cAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA7CI,IAAAA,WAAW,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAErJ,IAAAA,cAAc,GAAAqJ,UAAA,CAAA,CAAA,CAAA;AAClC,EAAA,IAAAG,UAAA,GAAgCJ,cAAQ,CAAC,IAAI,CAAC;IAAAK,UAAA,GAAAH,cAAA,CAAAE,UAAA,EAAA,CAAA,CAAA;AAAvCE,IAAAA,QAAQ,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAE1J,IAAAA,WAAW,GAAA0J,UAAA,CAAA,CAAA,CAAA;AAC5B,EAAA,IAAAE,UAAA,GAAkDP,cAAQ,CAAC,KAAK,CAAC;IAAAQ,UAAA,GAAAN,cAAA,CAAAK,UAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAG,UAAA,GAA8BX,cAAQ,CAACY,6BAAe,CAAC;IAAAC,UAAA,GAAAX,cAAA,CAAAS,UAAA,EAAA,CAAA,CAAA;AAAhDhF,IAAAA,OAAO,GAAAkF,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,UAAU,GAAAD,UAAA,CAAA,CAAA,CAAA;AAC1B,EAAA,IAAAE,UAAA,GAAkDf,cAAQ,CAAC,KAAK,CAAC;IAAAgB,WAAA,GAAAd,cAAA,CAAAa,UAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,iBAAiB,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,oBAAoB,GAAAF,WAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAG,WAAA,GAAwCnB,cAAQ,CAC9CoB,yBAAmB,CAAA,EAAA,CAAAvI,MAAA,CAAA2C,kBAAA,CAAK6F,2BAAa,CAAA,EAAA,CAAEzB,kBAAkB,CAAA,CAAC,CAC5D,CAAC;IAAA0B,WAAA,GAAApB,cAAA,CAAAiB,WAAA,EAAA,CAAA,CAAA;AAFMI,IAAAA,YAAY,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,WAAA,CAAA,CAAA,CAAA;AAIpC,EAAA,IAAAG,aAAA,GAA4BC,0BAAY,CAAAtF,eAAA,CAAA;MACtCuF,GAAG,EAAE3F,OAAO,CAAC2F,GAAG;AAChBJ,MAAAA,YAAY,EAAZA;KAAY,EACT5F,OAAO,CACX,CAAC;IAJMzE,IAAI,GAAAuK,aAAA,CAAJvK,IAAI;IAAE2E,SAAS,GAAA4F,aAAA,CAAT5F,SAAS;AAMvB,EAAA,IAAAvE,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMuE,kBAAkB,GAAG;AACzB,IAAA,aAAa,EAAE,oBAAoB;AACnCtD,IAAAA,KAAK,EAAEjB,CAAC,CAAC,4BAA4B,EAAEsB,kBAAQ,CAAC;AAChDH,IAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;MACb/B,cAAc,CAAC,IAAI,CAAC;AACpBD,MAAAA,WAAW,CAACoC,sBAAU,CAACC,MAAM,CAAC;AAChC,IAAA;GACD;AAED,EAAA,IAAMM,UAAU,GAAG,SAAbA,UAAUA,CAAGI,GAAG,EAAI;IACxB9C,cAAc,CAAC8C,GAAG,CAAC;AACnB/C,IAAAA,WAAW,CAACoC,sBAAU,CAAC6I,IAAI,CAAC;EAC9B,CAAC;AAED,EAAA,IAAMpI,YAAY,GAAG,SAAfA,YAAYA,CAAGE,GAAG,EAAI;IAC1B9C,cAAc,CAAC8C,GAAG,CAAC;IACnBgH,oBAAoB,CAAC,IAAI,CAAC;EAC5B,CAAC;AAED,EAAA,IAAMmB,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAS;IAC7BnB,oBAAoB,CAAC,KAAK,CAAC;IAC3B9J,cAAc,CAAC,IAAI,CAAC;EACtB,CAAC;EAED,IAAMgF,cAAc,GAAG,SAAjBA,cAAcA,CAAAhB,KAAA,EAElBkH,CAAC,EAAAzG,KAAA,EAAA;AAAA,IAAA,IADU0B,IAAI,GAAAnC,KAAA,CAAbkC,OAAO;AAAA,IAAA,IAEAL,MAAM,GAAApB,KAAA,CAAb2B,KAAK;MAAiBL,OAAO,GAAAtB,KAAA,CAAd4B,KAAK;IAAA,OACnB6D,UAAU,CAACiB,eAAS,CAAC;AAAEhF,MAAAA,IAAI,EAAJA,IAAI;MAAEN,MAAM,EAAEE,OAAO,IAAIF,MAAM;AAAEE,MAAAA,OAAO,EAAPA;AAAQ,KAAC,CAAC,CAAC;AAAA,EAAA,CAAA;AAExE,EAAA,IAAAqF,aAAA,GAA6CC,0BAAY,EAAE;IAAnDC,MAAM,GAAAF,aAAA,CAANE,MAAM;IAAaC,aAAa,GAAAH,aAAA,CAAxBI,SAAS;AAEzB,EAAA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAS;AAChC,IAAA,IAAMC,OAAO,GAAG;MAAEX,GAAG,EAAE3F,OAAO,CAAC2F,GAAG;AAAElH,MAAAA,EAAE,EAAE0F,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAE1F;KAAI;AACzD,IAAA,IAAM8H,aAAa,GAAG,CAACJ,aAAa,IAAI1B,iBAAiB;AACzD8B,IAAAA,aAAa,IACXL,MAAM,CAACI,OAAO,EAAE;AACdE,MAAAA,SAAS,EAAE,SAAXA,SAASA,GAAQ;QAAA,IAAA9G,UAAA,EAAA+G,qBAAA;QACf/B,oBAAoB,CAAC,KAAK,CAAC;AAC3B,QAAA,IAAI,CAAAxJ,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,IAAA,CAAAwE,UAAA,GAAJxE,IAAI,CAAEoB,IAAI,MAAA,IAAA,IAAAoD,UAAA,KAAA,MAAA,GAAA,MAAA,GAAVA,UAAA,CAAYnD,MAAM,MAAK,CAAC,EAAE;UAC5BuI,UAAU,CAACiB,eAAS,CAAC;AAAEhF,YAAAA,IAAI,EAAEpB,OAAO,CAACoB,IAAI,GAAG;AAAE,WAAC,CAAC,CAAC;AACnD,QAAA;AACAoC,QAAAA,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAA,MAAA,IAAA,CAAAsD,qBAAA,GAAVtD,UAAU,CAAEqD,SAAS,MAAA,IAAA,IAAAC,qBAAA,KAAA,MAAA,IAArBA,qBAAA,CAAuBC,QAAQ,EAAE;AACjC;AACAC,QAAAA,0BAAkB,EAAE;AACtB,MAAA;AACF,KAAC,CAAC;EACN,CAAC;AAED,EAAA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGjH,OAAO,EAAI;AACrClE,IAAAA,OAAO,CAACoL,IAAI,CACVC,gBAAQ,CACNC,MAAM,CAACC,QAAQ,CAACC,QAAQ,EACxBlB,eAAS,CAAC;AAAEhF,MAAAA,IAAI,EAAEmG;AAAmB,KAAC,EAAE1D,WAAW,CACrD,CACF,CAAC;IACDgC,eAAe,CAAC7F,OAAO,CAAC;EAC1B,CAAC;AAED,EAAA,IAAMhE,SAAS,GAAG,SAAZA,SAASA,GAAA;IAAA,OAASmJ,UAAU,CAACiB,eAAS,CAAC;AAAEhF,MAAAA,IAAI,EAAEmG;AAAmB,KAAC,CAAC,CAAC;AAAA,EAAA,CAAA;AAE3E,EAAA,IAAM9L,WAAW,GAAG+L,mBAAS,CAAC5B,YAAY,CAAC,IAAI,CAAArK,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJA,IAAI,CAAE0G,UAAU,IAAG,CAAC;EAEnE,oBACE3F,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,cACEF,eAAA,CAACmL,SAAS,EAAA;MAAAjL,QAAA,EAAA,cACRN,cAAA,CAACxB,eAAe,EAAA;AAEZE,QAAAA,WAAW,EAAXA,WAAW;AACXW,QAAAA,IAAI,EAAJA,IAAI;AACJkI,QAAAA,WAAW,EAAXA,WAAW;AACXzI,QAAAA,WAAW,EAAXA,WAAW;AACXC,QAAAA,cAAc,EAAdA,cAAc;AACdQ,QAAAA,WAAW,EAAXA,WAAW;AACXV,QAAAA,YAAY,EAAZA,YAAY;AACZO,QAAAA,QAAQ,EAARA,QAAQ;AACRT,QAAAA,KAAK,EAALA,KAAK;AACLa,QAAAA,qBAAqB,EAArBA,qBAAqB;AAEvBP,QAAAA,aAAa,EAAEa;AAAU,OAC1B,CAAC,EACDP,WAAW,iBACVS,cAAA,CAACwL,SAAS,EAAA;AACRnI,QAAAA,SAAS,EAAC,MAAM;QAChBoI,eAAe,eACbzL,cAAA,CAAC0D,qBAAU,EAAA;AACT,UAAA,aAAA,EAAY,qCAAqC;AACjD7C,UAAAA,OAAO,EAAC,IAAI;AACZ6K,UAAAA,MAAM,EAAC,UAAU;AAAApL,UAAAA,QAAA,EAEhBX,CAAC,CAAC,+BAA+B,EAAE;YAClCgB,KAAK,EAAE,CAAAtB,IAAI,KAAA,IAAA,IAAJA,IAAI,uBAAJA,IAAI,CAAE0G,UAAU,KAAI,CAAC;YAC5B4F,IAAI,EAAE,CAAAxH,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,MAAA,GAAA,MAAA,GAAPA,OAAO,CAAEvD,KAAK,KAAI;WACzB;AAAC,SACQ,CACb;AACDgL,QAAAA,gBAAgB,eACd5L,cAAA,CAACwL,SAAS,CAACK,UAAU,EAAA;AACnBC,UAAAA,WAAW,EAAE;AACXvJ,YAAAA,OAAO,EAAEiH,2BAAa;AACtBuC,YAAAA,MAAM,EAAE3C,iBAAiB;AACzB4C,YAAAA,SAAS,EAAE3C,oBAAoB;AAC/BhI,YAAAA,QAAQ,EAAE0J,mBAAmB;AAC7BkB,YAAAA,OAAO,EAAElE;AACX;SACD;AACF,OACF,CACF,eACD/H,cAAA,CAACkM,UAAU,EAAA;AACT3J,QAAAA,OAAO,EAAEiH,2BAAc;AACvBuC,QAAAA,MAAM,EAAE3C,iBAAkB;AAC1B6C,QAAAA,OAAO,EAAElE,kBAAmB;AAC5B1G,QAAAA,QAAQ,EAAE0J;AAAoB,OAC/B,CAAC,EACDxD,WAAW,iBAAIvH,cAAA,CAACsG,IAAI,EAAA;AAAOE,QAAAA,UAAU,EAAVA,UAAU;AAAErC,QAAAA,OAAO,EAAPA,OAAO;AAAEoC,QAAAA,QAAQ,EAARA;AAAQ,OAAK,CAAC,eAC/DvG,cAAA,CAAC4D,KAAK,EAAA;AAEFvE,QAAAA,IAAI,EAAJA,IAAI;AACJyE,QAAAA,OAAO,EAAPA,OAAO;AACPnC,QAAAA,YAAY,EAAZA,YAAY;AACZF,QAAAA,UAAU,EAAVA,UAAU;AACVsC,QAAAA,cAAc,EAAdA,cAAc;AACdC,QAAAA,SAAS,EAATA,SAAS;AACTI,QAAAA,WAAW,EAAXA,WAAW;AACXH,QAAAA,aAAa,EAAbA,aAAa;AACbC,QAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBC,QAAAA,OAAO,EAAPA;AAAO,OAEV,CAAC;AAAA,KACO,CAAC,eACZnE,cAAA,CAACmM,wBAAU,EAAA;AACH9E,MAAAA,UAAU,EAAVA,UAAU;AAAElD,MAAAA,OAAO,EAAPA,OAAO;AAAEqD,MAAAA,UAAU,EAAVA,UAAU;AACrCvI,MAAAA,aAAa,EAAEa,SAAU;AACzB+B,MAAAA,GAAG,EAAEyG,WAAY;AACjBqD,MAAAA,IAAI,EAAElD,QAAS;MACf2D,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQtN,WAAW,CAAC,IAAI,CAAC;AAAA,MAAA;AAAC,KAClC,CAAC,eACFkB,cAAA,CAACqM,gBAAK,EAAA;AACJC,MAAAA,iBAAiB,EAAE3M,CAAC,CAAC,yBAAyB,CAAE;AAChDoM,MAAAA,MAAM,EAAEnD,iBAAkB;AAC1B2D,MAAAA,YAAY,EAAEjC,aAAc;AAC5BkC,MAAAA,iBAAiB,EAAE7M,CAAC,CAAC,yBAAyB,CAAE;AAChDhB,MAAAA,KAAK,EAAEgB,CAAC,CAAC,iCAAiC,CAAE;MAC5C8M,OAAO,eACLzM,cAAA,CAAC0M,kBAAK,EAAA;AACJC,QAAAA,OAAO,EAAC,oCAAoC;AAC5C5F,QAAAA,MAAM,EAAE;AAAE5D,UAAAA,IAAI,EAAEmF,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAEnF;AAAK;AAAE,OACrC,CACF;AACDiJ,MAAAA,OAAO,EAAEpC,gBAAiB;AAC1B4C,MAAAA,QAAQ,EAAEpC;AAAoB,KAC/B,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;AC5NM,IAAMqC,4BAA4B,GAAG;AAC1C,EAAA,aAAa,EAAE,2BAA2B;AAC1ChK,EAAAA,IAAI,EAAE,IAAI;EACVjC,KAAK,EAAEjB,SAAC,CAAC,yBAAyB;AACpC,CAAC;;ACFM,IAAMmN,WAAW,GAAG,SAAdA,WAAWA,CAAArO,IAAA,EAAA;AAAA,EAAA,IAAAsO,oBAAA,GAAAtO,IAAA,CACtBuO,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAE,aAAA,GAAAxO,IAAA,CACpByO,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,aAAA;IAAAE,eAAA,GAAA1O,IAAA,CAChB2O,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,eAAA;AAAA,EAAA,OAEfD,QAAQ,GACJ;AACEtM,IAAAA,KAAK,EAAEjB,SAAC,CAAC,iCAAiC,EAAEsB,kBAAQ,CAAC;AACrDyF,IAAAA,KAAK,EAAE,QAAQ;AACf2G,IAAAA,MAAM,EAAEC,WAAK,CAAC,IAAI,EAAEF,UAAU,CAAC;AAC/BG,IAAAA,aAAa,EAAED,WAAK,CAAC,IAAI,EAAEN,eAAe;AAC5C,GAAC,GACD;AACEpM,IAAAA,KAAK,EAAEjB,SAAC,CAAC,sCAAsC,EAAEsB,kBAAQ,CAAC;AAC1DyF,IAAAA,KAAK,EAAE,aAAa;AACpB2G,IAAAA,MAAM,EAAEC,WAAK,CAAC,IAAI,EAAEN,eAAe,CAAC;AACpCO,IAAAA,aAAa,EAAED,WAAK,CAAC,IAAI,EAAEF,UAAU;GACtC;AAAA,CAAA;AAEA,IAAMI,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAI/M,IAAI,EAAE2M,UAAU,EAAK;AACrD,EAAA,IAAMK,iBAAiB,GAAGhN,IAAI,CAACiN,MAAM,CAAC,UAAA7L,GAAG,EAAA;AAAA,IAAA,OACvCuL,UAAU,CAACO,KAAK,CAAC,UAAAC,SAAS,EAAA;AAAA,MAAA,OAAIA,SAAS,CAAChL,EAAE,KAAKf,GAAG,CAACe,EAAE;IAAA,CAAA,CAAC;AAAA,EAAA,CACxD,CAAC;EAED,OAAA,EAAA,CAAA5B,MAAA,CAAA2C,kBAAA,CAAWyJ,UAAU,CAAA,EAAAzJ,kBAAA,CAAK8J,iBAAiB,CAAA,CAAA;AAC7C,CAAC;;ACpBD,IAAMxG,IAAI,GAAG,SAAPA,IAAIA,CAAAxI,IAAA,EAMJ;AAAA,EAAA,IAAAwO,aAAA,GAAAxO,IAAA,CALJyO,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,aAAA;IAAAF,oBAAA,GAAAtO,IAAA,CAChBuO,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;IACpBc,QAAQ,GAAApP,IAAA,CAARoP,QAAQ;IAAAV,eAAA,GAAA1O,IAAA,CACR2O,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,eAAA;IAAAW,YAAA,GAAArP,IAAA,CACfsP,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;AAEZ,EAAA,IAAArO,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AACT,EAAA,IAAAuI,SAAA,GAAoCC,cAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzCJ,IAAAA,UAAU,GAAAM,UAAA,CAAA,CAAA,CAAA;AAAE4F,IAAAA,aAAa,GAAA5F,UAAA,CAAA,CAAA,CAAA;EAChC,IAAM6F,QAAQ,GAAGC,aAAO,CACtB,YAAA;AAAA,IAAA,OAAMpB,WAAW,CAAC;AAAEE,MAAAA,eAAe,EAAfA,eAAe;AAAEE,MAAAA,QAAQ,EAARA,QAAQ;AAAEE,MAAAA,UAAU,EAAVA;AAAW,KAAC,CAAC;AAAA,EAAA,CAAA,EAC5D,CAACF,QAAQ,EAAEE,UAAU,EAAEJ,eAAe,CACxC,CAAC;AAED,EAAA,IAAMmB,YAAY,GAAGX,iBAAiB,CAACO,OAAO,EAAEX,UAAU,CAAC,CAACM,MAAM,CAAC,UAAA7L,GAAG,EAAA;AAAA,IAAA,IAAAuM,SAAA;AAAA,IAAA,OACpEvM,GAAG,KAAA,IAAA,IAAHA,GAAG,KAAA,MAAA,IAAA,CAAAuM,SAAA,GAAHvM,GAAG,CAAEsB,IAAI,cAAAiL,SAAA,KAAA,MAAA,IAAA,CAAAA,SAAA,GAATA,SAAA,CAAWC,WAAW,EAAE,cAAAD,SAAA,KAAA,MAAA,GAAA,MAAA,GAAxBA,SAAA,CAA0BE,QAAQ,CAACxG,UAAU,CAACuG,WAAW,EAAE,CAACE,IAAI,EAAE,CAAC;AAAA,EAAA,CACrE,CAAC;AAED,EAAA,oBACEnO,eAAA,CAAA,KAAA,EAAA;AAAKiD,IAAAA,SAAS,EAAC,yEAAyE;IAAA/C,QAAA,EAAA,cACtFN,cAAA,CAAC0D,qBAAU,EAAA;AAACL,MAAAA,SAAS,EAAC,MAAM;AAACxC,MAAAA,OAAO,EAAC,IAAI;MAAAP,QAAA,EACtC2N,QAAQ,CAACrN;AAAK,KACL,CAAC,eACbZ,cAAA,CAACwO,gBAAK,EAAA;AACJnL,MAAAA,SAAS,EAAC,UAAU;AACpB,MAAA,aAAA,EAAA,mBAAA,CAAArC,MAAA,CAAiCiN,QAAQ,CAACvH,KAAK,EAAA,0BAAA,CAA2B;AAC1EpF,MAAAA,WAAW,EAAE3B,CAAC,CAAC,kCAAkC,CAAE;AACnD8O,MAAAA,MAAM,eAAEzO,cAAA,CAAC0O,kBAAM,IAAE,CAAE;AACnBhI,MAAAA,KAAK,EAAEoB,UAAW;AAClBzG,MAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAES,CAAC,EAAA;AAAA,QAAA,OAAIkM,aAAa,CAAClM,CAAC,CAAC6M,MAAM,CAACjI,KAAK,CAAC;AAAA,MAAA;KAC7C,CAAC,eACFtG,eAAA,CAAA,KAAA,EAAA;AACEiD,MAAAA,SAAS,EAAC,uDAAuD;AACjE,MAAA,aAAA,EAAA,mBAAA,CAAArC,MAAA,CAAiCiN,QAAQ,CAACvH,KAAK,EAAA,YAAA,CAAa;MAAApG,QAAA,EAAA,CAE3D6N,YAAY,CAACzN,MAAM,KAAK,CAAC,iBACxBV,cAAA,CAACsE,gBAAK,EAAA;AACJjB,QAAAA,SAAS,EAAC,QAAQ;AAClBnB,QAAAA,IAAI,EAAEsC,gBAAK;QACX7F,KAAK,EAAEgB,CAAC,CAAC,6BAA6B;OACvC,CACF,EACAwO,YAAY,CAACjH,GAAG,CAAC,UAAArF,GAAG,EAAI;QACvB,IAAM+M,cAAc,GAAGX,QAAQ,CAACZ,MAAM,CAACiB,QAAQ,CAACzM,GAAG,CAACe,EAAE,CAAC;QACvD,IAAMiM,mBAAmB,GAAGZ,QAAQ,CAACV,aAAa,CAACe,QAAQ,CAACzM,GAAG,CAACe,EAAE,CAAC;AAEnE,QAAA,oBACExC,eAAA,CAAA,KAAA,EAAA;AACE,UAAA,aAAA,EAAA,mBAAA,CAAAY,MAAA,CAAiCiN,QAAQ,CAACvH,KAAK,EAAA,OAAA,CAAQ;AAEvDrD,UAAAA,SAAS,EAAEyL,UAAU,CACnB,2FAA2F,EAC3F;AACE,YAAA,yBAAyB,EAAEF,cAAc;YACzC,mBAAmB,EAAE,CAACA,cAAc;AACpC,YAAA,sDAAsD,EACpDC;AACJ,WACF,CAAE;UACF/N,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OACL,CAAC+N,mBAAmB,IAAIhB,QAAQ,CAAChM,GAAG,EAAEoM,QAAQ,CAACvH,KAAK,CAAC;UAAA,CACtD;AAAApG,UAAAA,QAAA,gBAEDN,cAAA,CAAA,MAAA,EAAA;YAAAM,QAAA,EAAOuB,GAAG,CAACsB;AAAI,WAAO,CAAC,EACtByL,cAAc,iBAAI5O,cAAA,CAAC+O,iBAAK,EAAA;AAAClM,YAAAA,IAAI,EAAE;AAAG,WAAE,CAAC;SAAA,EAfjChB,GAAG,CAACe,EAgBN,CAAC;AAEV,MAAA,CAAC,CAAC;AAAA,KACC,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;;ACzED,IAAMoM,UAAU,GAAGC,gBAAK,CACtB,UAAAxQ,IAAA,EAAA;AAAA,EAAA,IACEkB,CAAC,GAAAlB,IAAA,CAADkB,CAAC;IAAAoN,oBAAA,GAAAtO,IAAA,CACDuO,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;IACpBmC,YAAY,GAAAzQ,IAAA,CAAZyQ,YAAY;IAAAC,iBAAA,GAAA1Q,IAAA,CACZ8N,YAAY;AAAZA,IAAAA,YAAY,GAAA4C,iBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,iBAAA;IACpBC,YAAY,GAAA3Q,IAAA,CAAZ2Q,YAAY;IAAAC,cAAA,GAAA5Q,IAAA,CACZ6Q,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,cAAA;IAAAlC,eAAA,GAAA1O,IAAA,CACjB2O,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,eAAA;IAAAoC,YAAA,GAAA9Q,IAAA,CACf0F,OAAO;AAAPA,IAAAA,OAAO,GAAAoL,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;EAAA,oBAEZnP,eAAA,CAACoP,iBAAM,EAAA;AAACzD,IAAAA,MAAM,EAAEuD,SAAU;IAAClD,OAAO,EAAE,SAATA,OAAOA,GAAA;MAAA,OAAQgD,YAAY,CAAC,KAAK,CAAC;IAAA,CAAC;AAAA9O,IAAAA,QAAA,EAAA,cAC5DN,cAAA,CAACwP,iBAAM,CAACvP,MAAM,EAAA;AAAAK,MAAAA,QAAA,eACZN,cAAA,CAACwP,iBAAM,CAACC,KAAK,EAAA;AAAAnP,QAAAA,QAAA,EAAEX,CAAC,CAAC,2BAA2B,EAAEO,gBAAM;OAAgB;AAAC,KACxD,CAAC,eAChBF,cAAA,CAACwP,iBAAM,CAACE,IAAI,EAAA;MAAApP,QAAA,eACVN,cAAA,CAAC0M,kBAAK,EAAA;AACJC,QAAAA,OAAO,EAAC,mCAAmC;AAC3C5F,QAAAA,MAAM,EAAE;UACNpG,KAAK,EAAEyM,UAAU,CAAC1M,MAAM;AACxB0M,UAAAA,UAAU,EAAEE,WAAK,CAAC,MAAM,EAAEF,UAAU,CAAC;AACrCuC,UAAAA,cAAc,EAAErC,WAAK,CAAC,MAAM,EAAEN,eAAe,CAAC;UAC9C4C,QAAQ,EAAEC,mBAAS,CAAC1L,OAAO,CAACvD,KAAK,CAACyN,WAAW,EAAE;AACjD;OACD;AAAC,KACS,CAAC,eACdjO,eAAA,CAACoP,iBAAM,CAACM,MAAM,EAAA;AAACzM,MAAAA,SAAS,EAAC,WAAW;MAAA/C,QAAA,EAAA,cAClCN,cAAA,CAACO,iBAAM,EAAA;AACL,QAAA,aAAA,EAAY,gCAAgC;AAC5CK,QAAAA,KAAK,EAAEjB,CAAC,CAAC,yBAAyB,CAAE;AACpCkB,QAAAA,OAAO,EAAC,SAAS;QACjBC,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQsO,YAAY,CAAC,KAAK,CAAC;AAAA,QAAA;AAAC,OACpC,CAAC,eACFpP,cAAA,CAACO,iBAAM,EAAA;AACL,QAAA,aAAA,EAAY,iCAAiC;AAC7CC,QAAAA,QAAQ,EAAE+L,YAAa;AACvB3L,QAAAA,KAAK,EAAEjB,CAAC,CAAC,0BAA0B,CAAE;AACrCoQ,QAAAA,OAAO,EAAExD,YAAa;AACtBzL,QAAAA,OAAO,EAAEoO;AAAa,OACvB,CAAC;AAAA,KACW,CAAC;AAAA,GACV,CAAC;AAAA,CAEb,CAAC;;;;AChCD,IAAMc,KAAK,GAAG,SAARA,KAAKA,CAAAvR,IAAA,EAAsD;AAAA,EAAA,IAAAoF,UAAA;AAAA,EAAA,IAAhDnF,WAAW,GAAAD,IAAA,CAAXC,WAAW;IAAEuR,SAAS,GAAAxR,IAAA,CAATwR,SAAS;IAAE7Q,QAAQ,GAAAX,IAAA,CAARW,QAAQ;IAAE+E,OAAO,GAAA1F,IAAA,CAAP0F,OAAO;AACxD,EAAA,IAAA+D,SAAA,GAAoCC,cAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzCkF,IAAAA,UAAU,GAAAhF,UAAA,CAAA,CAAA,CAAA;AAAE8H,IAAAA,aAAa,GAAA9H,UAAA,CAAA,CAAA,CAAA;AAChC,EAAA,IAAAG,UAAA,GAA8CJ,cAAQ,CAAC,EAAE,CAAC;IAAAK,UAAA,GAAAH,cAAA,CAAAE,UAAA,EAAA,CAAA,CAAA;AAAnDyE,IAAAA,eAAe,GAAAxE,UAAA,CAAA,CAAA,CAAA;AAAE2H,IAAAA,kBAAkB,GAAA3H,UAAA,CAAA,CAAA,CAAA;AAC1C,EAAA,IAAAE,UAAA,GAAsCP,cAAQ,CAAC,KAAK,CAAC;IAAAQ,UAAA,GAAAN,cAAA,CAAAK,UAAA,EAAA,CAAA,CAAA;AAA9C0H,IAAAA,WAAW,GAAAzH,UAAA,CAAA,CAAA,CAAA;AAAE0H,IAAAA,cAAc,GAAA1H,UAAA,CAAA,CAAA,CAAA;EAClC,IAAM2H,qBAAqB,GAAGC,aAAO,CAACnD,UAAU,CAAC,IAAImD,aAAO,CAACvD,eAAe,CAAC;AAC7E,EAAA,IAAAvN,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EACT,IAAAiK,aAAA,GAA4BC,0BAAY,CAAC;MACvCC,GAAG,EAAE3F,OAAO,CAAC2F,GAAG;AAChB0G,MAAAA,cAAc,EAAE;AAClB,KAAC,CAAC;IAHMnR,IAAI,GAAAuK,aAAA,CAAJvK,IAAI;IAAE2E,SAAS,GAAA4F,aAAA,CAAT5F,SAAS;AAKvB,EAAA,IAAAyM,aAAA,GAA4CC,0BAAY,EAAE;IAAlDrG,MAAM,GAAAoG,aAAA,CAANpG,MAAM;IAAakC,YAAY,GAAAkE,aAAA,CAAvBlG,SAAS;AACzB,EAAA,IAAMrG,kBAAkB,GAAAK,eAAA,CAAAA,eAAA,KAAQsI,4BAA4B,CAAA,EAAA,EAAA,EAAA;AAAE8D,IAAAA,EAAE,EAAEvR;GAAQ,CAAE;EAE5E,IAAMwR,kBAAkB,GAAG1C,aAAO,CAChC,YAAA;AAAA,IAAA,OAAA,EAAA,CAAAlN,MAAA,CAAA2C,kBAAA,CAAUjF,WAAW,CAAA,EAAA,CAAE;AAAEmS,MAAAA,IAAI,EAAElR,CAAC,CAAC,2BAA2B,EAAEO,gBAAM;KAAG,CAAA,CAAA;EAAA,CAAC;AACxE;EACA,CAACxB,WAAW,CACd,CAAC;AAED,EAAA,IAAMoS,WAAW,GAAG,SAAdA,WAAWA,CAAGnF,IAAI,EAAA;IAAA,OAAK;AAC3BlL,MAAAA,IAAI,EAAEkL,IAAI,KAAK,QAAQ,GAAGyB,UAAU,GAAGJ,eAAe;AACtD+D,MAAAA,OAAO,EAAEpF,IAAI,KAAK,QAAQ,GAAGuE,aAAa,GAAGC;KAC9C;EAAA,CAAC;EAEF,IAAMa,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAInP,GAAG,EAAE8J,IAAI,EAAK;AACvC,IAAA,IAAAsF,YAAA,GAA0BH,WAAW,CAACnF,IAAI,CAAC;MAAnClL,IAAI,GAAAwQ,YAAA,CAAJxQ,IAAI;MAAEsQ,OAAO,GAAAE,YAAA,CAAPF,OAAO;IACrB,IAAMG,YAAY,GAAGC,oBAAU,CAACtP,GAAG,CAACe,EAAE,EAAEnC,IAAI,CAAC;AAC7C,IAAA,IAAI0N,YAAY,GAAGxC,IAAI,KAAK,QAAQ,MAAA3K,MAAA,CAAA2C,kBAAA,CAAOlD,IAAI,CAAA,EAAA,CAAEoB,GAAG,CAAA,CAAA,GAAI,CAACA,GAAG,CAAC;AAC7D,IAAA,IAAIqP,YAAY,EAAE;MAChB/C,YAAY,GAAGiD,oBAAU,CAACvP,GAAG,CAACe,EAAE,EAAEnC,IAAI,CAAC;AACzC,IAAA;IACAsQ,OAAO,CAAC5C,YAAY,CAAC;EACvB,CAAC;AAED,EAAA,IAAMe,YAAY,GAAG,SAAfA,YAAYA,GAAS;AACzB,IAAA,IAAMzE,OAAO,GAAG;AACdhK,MAAAA,IAAI,EAAE;AACJ4Q,QAAAA,UAAU,EAAE/D,WAAK,CAAC,IAAI,EAAEN,eAAe,CAAC;AACxCsE,QAAAA,YAAY,EAAEhE,WAAK,CAAC,IAAI,EAAEF,UAAU;AACtC;KACD;AAED/C,IAAAA,MAAM,CACJ;MAAEP,GAAG,EAAE3F,OAAO,CAAC2F,GAAG;AAAEW,MAAAA,OAAO,EAAPA;AAAQ,KAAC,EAC7B;AACEE,MAAAA,SAAS,EAAE,SAAXA,SAASA,GAAQ;AAAA,QAAA,IAAA4G,oBAAA;QACfpB,kBAAkB,CAAC,EAAE,CAAC;QACtBD,aAAa,CAAC,EAAE,CAAC;AACjBD,QAAAA,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,IAAA,CAAAsB,oBAAA,GAATtB,SAAS,CAAEtF,SAAS,MAAA,IAAA,IAAA4G,oBAAA,KAAA,MAAA,IAApBA,oBAAA,CAAsB1G,QAAQ,EAAE;QAChCwF,cAAc,CAAC,KAAK,CAAC;AACvB,MAAA;AACF,KACF,CAAC;EACH,CAAC;AAED,EAAA,IAAIrM,SAAS,EAAE;AACb,IAAA,oBACEhE,cAAA,CAAA,KAAA,EAAA;AAAKqD,MAAAA,SAAS,EAAC,gDAAgD;AAAA/C,MAAAA,QAAA,eAC7DN,cAAA,CAACqE,kBAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;EAEA,oBACEjE,eAAA,CAACmL,SAAS,EAAA;IAAAjL,QAAA,EAAA,cACRN,cAAA,CAACC,MAAM,EAAA;AACLvB,MAAAA,WAAW,EAAEkS,kBAAmB;AAChCjS,MAAAA,KAAK,EAAEgB,CAAC,CAAC,2BAA2B,EAAEO,gBAAM,CAAE;MAC9CC,WAAW,eACTC,eAAA,CAAAC,mBAAA,EAAA;QAAAC,QAAA,EAAA,cACEN,cAAA,CAACO,iBAAM,EAAA;AACL,UAAA,aAAA,EAAY,gCAAgC;AAC5CK,UAAAA,KAAK,EAAEjB,CAAC,CAAC,yBAAyB,CAAE;AACpCgR,UAAAA,EAAE,EAAEvR,QAAS;AACbyB,UAAAA,OAAO,EAAC;AAAW,SACpB,CAAC,eACFb,cAAA,CAACO,iBAAM,EAAA;AACL,UAAA,aAAA,EAAY,yBAAyB;AACrCC,UAAAA,QAAQ,EAAE8P,qBAAsB;AAChC1P,UAAAA,KAAK,EAAEjB,CAAC,CAAC,wBAAwB,CAAE;AACnCmB,UAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;YACbuP,cAAc,CAAC,IAAI,CAAC;AACtB,UAAA;AAAE,SACH,CAAC;OACF;AACH,KACF,CAAC,EACD,EAAChR,IAAI,KAAA,IAAA,IAAJA,IAAI,gBAAAwE,UAAA,GAAJxE,IAAI,CAAEoB,IAAI,cAAAoD,UAAA,KAAA,MAAA,IAAVA,UAAA,CAAYnD,MAAM,iBAClBV,cAAA,CAAA,KAAA,EAAA;AACEqD,MAAAA,SAAS,EAAC,gDAAgD;AAC1D,MAAA,aAAA,EAAY,uBAAuB;MAAA/C,QAAA,eAEnCN,cAAA,CAACsE,gBAAK,EAAA;AACEJ,QAAAA,kBAAkB,EAAlBA,kBAAkB;AACxBhC,QAAAA,IAAI,EAAEsC,gBAAK;QACX7F,KAAK,EAAEgB,CAAC,CAAC,wBAAwB;OAClC;KACE,CAAC,gBAENS,eAAA,CAAA,KAAA,EAAA;AAAKiD,MAAAA,SAAS,EAAC,wDAAwD;MAAA/C,QAAA,EAAA,cACrEN,cAAA,CAACiH,IAAI,EAAA;AACG+F,QAAAA,eAAe,EAAfA,eAAe;AAAEI,QAAAA,UAAU,EAAVA,UAAU;QACjCF,QAAQ,EAAA,IAAA;AACRa,QAAAA,OAAO,EAAE1O,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJA,IAAI,CAAEoB,IAAK;AACpBoN,QAAAA,QAAQ,EAAEmD;AAAkB,OAC7B,CAAC,eACFhR,cAAA,CAACwR,iBAAS,EAAA;AACRnO,QAAAA,SAAS,EAAC,wDAAwD;AAClER,QAAAA,IAAI,EAAE;AAAG,OACV,CAAC,eACF7C,cAAA,CAACiH,IAAI,EAAA;AACG+F,QAAAA,eAAe,EAAfA,eAAe;AAAEI,QAAAA,UAAU,EAAVA,UAAU;AACjCF,QAAAA,QAAQ,EAAE,KAAM;AAChBa,QAAAA,OAAO,EAAE1O,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJA,IAAI,CAAEoB,IAAK;AACpBoN,QAAAA,QAAQ,EAAEmD;AAAkB,OAC7B,CAAC;AAAA,KACC,CACN,eACDhR,cAAA,CAACgP,UAAU,EAAA;AAEPhC,MAAAA,eAAe,EAAfA,eAAe;AACfkC,MAAAA,YAAY,EAAZA,YAAY;AACZ3C,MAAAA,YAAY,EAAZA,YAAY;AACZa,MAAAA,UAAU,EAAVA,UAAU;AACVjJ,MAAAA,OAAO,EAAPA,OAAO;AAETiL,MAAAA,YAAY,EAAEiB,cAAe;AAC7Bf,MAAAA,SAAS,EAAEc;AAAY,KACxB,CAAC;AAAA,GACO,CAAC;AAEhB,CAAC;;AC/IM,IAAMqB,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAsB;AAAA,EAAA,IAAlBlL,QAAQ,GAAA/D,SAAA,CAAA9B,MAAA,GAAA,CAAA,IAAA8B,SAAA,CAAA,CAAA,CAAA,KAAAC,SAAA,GAAAD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;AAC7C,EAAA,IAAAkP,eAAA,GAA2BC,sBAAc,EAAE;IAA7BC,QAAQ,GAAAF,eAAA,CAAdG,IAAI;AACZ,EAAA,IAAMC,eAAe,GAAGvL,QAAQ,CAACS,IAAI,CACnC,UAAA7C,OAAO,EAAA;AAAA,IAAA,IAAA4N,cAAA;AAAA,IAAA,OAAI,CAAA5N,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,MAAA,IAAA,CAAA4N,cAAA,GAAP5N,OAAO,CAAEvD,KAAK,MAAA,IAAA,IAAAmR,cAAA,uBAAdA,cAAA,CAAgB1D,WAAW,EAAE,MAAKuD,QAAQ;AAAA,EAAA,CACvD,CAAC;AAED,EAAA,OAAOE,eAAe,IAAIvL,QAAQ,CAAC,CAAC,CAAC;AACvC,CAAC;AAEM,IAAMyL,YAAY,GAAG,SAAfA,YAAYA,CAAGC,IAAI,EAAA;AAAA,EAAA,OAAI,CAClC;AAAEC,IAAAA,SAAS,EAAElC,KAAK;AAAEmC,IAAAA,KAAK,EAAE,IAAI;IAAEF,IAAI,EAAA,EAAA,CAAAjR,MAAA,CAAKiR,IAAI,EAAA,QAAA;AAAS,GAAC,EACxD;AAAEC,IAAAA,SAAS,EAAE9K,SAAS;AAAE+K,IAAAA,KAAK,EAAE,IAAI;IAAEF,IAAI,EAAEA,IAAI,IAAI;AAAG,GAAC,CACxD;AAAA,CAAA;;;;ACbD,IAAMzN,IAAI,GAAG,SAAPA,IAAIA,CAAA/F,IAAA,EAAmB;AAAA,EAAA,IAAb2T,MAAM,GAAA3T,IAAA,CAAN2T,MAAM;AACpB,EAAA,IAAQ7L,QAAQ,GAAyB6L,MAAM,CAAvC7L,QAAQ;IAAA8L,mBAAA,GAAyBD,MAAM,CAA7B7K,WAAW;AAAXA,IAAAA,WAAW,GAAA8K,mBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,mBAAA;EAEpC,IAAAnK,SAAA,GAA8BC,cAAQ,CAACsJ,iBAAiB,CAAClL,QAAQ,CAAC,CAAC;IAAA6B,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA5D/D,IAAAA,OAAO,GAAAiE,UAAA,CAAA,CAAA,CAAA;AAAE5B,IAAAA,UAAU,GAAA4B,UAAA,CAAA,CAAA,CAAA;AAE1B,EAAA,IAAMkK,MAAM,GAAGN,YAAY,CAACI,MAAM,CAAChT,QAAQ,CAAC;EAE5C,oBACEY,cAAA,CAACuS,qBAAM,EAAA;AAAAjS,IAAAA,QAAA,EACJgS,MAAM,CAACpL,GAAG,CAAC,UAAAnE,KAAA,EAAA;AAAA,MAAA,IAAGoP,KAAK,GAAApP,KAAA,CAALoP,KAAK;QAAEF,IAAI,GAAAlP,KAAA,CAAJkP,IAAI;QAAaO,SAAS,GAAAzP,KAAA,CAApBmP,SAAS;MAAA,oBACnCO,mBAAA,CAACC,oBAAK,EAAA;AAAOP,QAAAA,KAAK,EAALA,KAAK;AAAEF,QAAAA,IAAI,EAAJA,IAAI;AAAIhK,QAAAA,GAAG,EAAEgK;OAAK,eACpCjS,cAAA,CAACwS,SAAS,EAAAjO,aAAA,KAAAA,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAU6N,MAAM,CAAA,EAAA,EAAA,EAAA;AAAE7K,QAAAA,WAAW,EAAXA,WAAW;AAAEf,QAAAA,UAAU,EAAVA,UAAU;AAAErC,QAAAA,OAAO,EAAPA;AAAO,OAAA,CAAA,CAAK,CAC5D,CAAC;IAAA,CACT;AAAC,GACI,CAAC;AAEb,CAAC;;ACpBD,IAAMwO,GAAG,GAAG,SAANA,GAAGA,CAAAlU,IAAA,EAAA;AAAA,EAAA,IAAM2T,MAAM,GAAA3T,IAAA,CAAN2T,MAAM;EAAA,oBAAOpS,cAAA,CAACwE,IAAI,EAAA;AAAO4N,IAAAA,MAAM,EAANA;AAAM,GAAK,CAAC;AAAA;;;;"}
1
+ {"version":3,"file":"NeetoTags.js","sources":["../../../app/javascript/src/v2/components/Dashboard/Header.jsx","../../../app/javascript/src/v2/components/Dashboard/utils.jsx","../../../app/javascript/src/v2/components/Dashboard/Table.jsx","../../../app/javascript/src/v2/components/Menu.jsx","../../../app/javascript/src/v2/components/Dashboard/index.jsx","../../../app/javascript/src/v2/components/Merge/constants.js","../../../app/javascript/src/v2/components/Merge/utils.js","../../../app/javascript/src/v2/components/Merge/List.jsx","../../../app/javascript/src/v2/components/Merge/MergeAlert.jsx","../../../app/javascript/src/v2/components/Merge/index.jsx","../../../app/javascript/src/v2/components/utils.js","../../../app/javascript/src/v2/components/index.jsx","../../../app/javascript/src/v2/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { PLURAL, SINGULAR } from \"neetocommons/v2/constants\";\nimport { handleMetaClick, useFuncDebounce } from \"neetocommons/v2/react-utils\";\nimport Header from \"neetomolecules/v2/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"v2/common/constants\";\n\nconst DashboardHeader = ({\n breadcrumbs,\n title,\n tagsMergable = false,\n setPaneType,\n setSelectedTag,\n goToFirstPage = noop,\n tagsPath = \"\",\n data,\n showFilters = true,\n titleHelpPopoverProps,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const resetPage = useFuncDebounce(() => goToFirstPage());\n\n return (\n <Header\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={title || t(\"neetoTags.common.tag\", PLURAL)}\n actionBlock={\n <>\n {tagsMergable && (\n <Button\n data-testid=\"neeto-tags-merge-tags-button\"\n disabled={data?.tags.length < PLURAL.count}\n label={t(\"neetoTags.common.mergeTag\", PLURAL)}\n variant=\"secondary\"\n onClick={handleMetaClick(history, `${tagsPath}/merge`)}\n />\n )}\n <Button\n data-testid=\"add-new-tag-button\"\n label={t(\"neetoTags.common.addNewTag\", SINGULAR)}\n onClick={() => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n }}\n />\n </>\n }\n searchProps={\n showFilters && {\n \"data-testid\": \"neeto-tags-search-text-input-field\",\n onChange: resetPage,\n placeholder: t(\"neetoTags.placeholder.searchTags\"),\n }\n }\n />\n );\n};\n\nexport default DashboardHeader;\n","import {\n Typography,\n Badge,\n DropdownMenu,\n Button,\n} from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { Ellipsis } from \"lucide-react\";\nimport { noop } from \"neetocist\";\n\nimport { TAG_STYLE_TO_BADGE_VARIANT } from \"v2/common/constants\";\n\nconst renderDropdownButton = ({\n handleEdit = noop,\n handleDelete = noop,\n tag = {},\n}) => (\n <div onClick={e => e.stopPropagation()}>\n <DropdownMenu\n customTarget={<Button icon={Ellipsis} variant=\"ghost\" />}\n position=\"bottom-end\"\n >\n <DropdownMenu.MenuItem\n data-testid=\"tags-edit-button\"\n onClick={() => handleEdit(tag)}\n >\n {t(\"neetoTags.button.edit\")}\n </DropdownMenu.MenuItem>\n <DropdownMenu.MenuItem\n data-testid=\"tags-delete-button\"\n onClick={() => handleDelete(tag)}\n >\n {t(\"neetoTags.button.delete\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu>\n </div>\n);\n\nexport const renderColumnData = (handleEdit, handleDelete, columns = []) => [\n {\n header: t(\"neetoTags.common.name\"),\n accessorKey: \"name\",\n id: \"name\",\n size: 300,\n cell: ({ row }) => {\n const { name, style } = row.original;\n\n return (\n <div className=\"flex items-center justify-between gap-2\">\n <Badge\n label={name}\n variant={TAG_STYLE_TO_BADGE_VARIANT[style] || \"secondary\"}\n />\n {renderDropdownButton({\n handleEdit,\n handleDelete,\n tag: row.original,\n })}\n </div>\n );\n },\n },\n {\n header: t(\"neetoTags.common.description\"),\n accessorKey: \"description\",\n id: \"description\",\n size: 400,\n cell: ({ getValue }) => (\n <Typography className=\"whitespace-normal\">{getValue()}</Typography>\n ),\n },\n ...columns,\n];\n","import { DataTable, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { Tags } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderColumnData } from \"./utils\";\n\nconst Table = ({\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n noDataProps,\n}) => {\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (!isLoading && !data?.tags?.length) {\n return (\n <div\n className=\"flex h-full w-full items-center justify-center\"\n data-testid=\"empty-state-container\"\n >\n <Empty\n {...{ ...noDataProps, primaryButtonProps }}\n icon={Tags}\n title={t(\"neetoTags.title.noTagsToShow\")}\n />\n </div>\n );\n }\n\n const handleSortingChange = updater => {\n const currentSorting = filters.sortBy\n ? [{ id: filters.sortBy, desc: filters.orderBy === \"desc\" }]\n : [];\n\n const newSorting =\n typeof updater === \"function\" ? updater(currentSorting) : updater;\n\n const sort = newSorting[0];\n handleOnChange(\n { current: filters.page },\n undefined,\n sort\n ? { field: sort.id, order: sort.desc ? \"desc\" : \"asc\" }\n : { field: \"\", order: \"\" }\n );\n };\n\n const handlePageChange = page => {\n handleOnChange({ current: page }, undefined, {\n field: filters.sortBy,\n order: filters.orderBy,\n });\n };\n\n return (\n <DataTable\n allowRowClick={!!onTagRowClick}\n columns={renderColumnData(handleEdit, handleDelete, tagType.columns)}\n currentPage={filters.page}\n data={data?.tags || []}\n enableColumnFreeze={false}\n enableColumnReorder={false}\n enableColumnResize={false}\n enableURLPagination={false}\n enableURLSort={false}\n pageSize={filters.pageSize}\n totalCount={data?.totalCount}\n onPageChange={handlePageChange}\n onSortingChange={handleSortingChange}\n onRowClick={\n onTagRowClick\n ? (event, record, rowIndex) =>\n onTagRowClick({ event, tag: record, rowIndex })\n : undefined\n }\n />\n );\n};\n\nexport default Table;\n","import { Tabs } from \"@bigbinary/neeto-atoms\";\n\nconst Menu = ({ tagTypes, tagType, setTagType }) => (\n <Tabs\n className=\"mb-6\"\n value={String(tagType.id)}\n onValueChange={id => {\n const selected = Object.values(tagTypes).find(\n tag => String(tag.id) === id\n );\n if (selected) setTagType(selected);\n }}\n >\n <Tabs.List>\n {Object.values(tagTypes).map(tag => (\n <Tabs.Item key={tag.id} value={String(tag.id)}>\n {tag.label}\n </Tabs.Item>\n ))}\n </Tabs.List>\n </Tabs>\n);\n\nexport default Menu;\n","import { useState } from \"react\";\n\nimport { Alert, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, SINGULAR } from \"neetocommons/v2/constants\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { showThumbsUpToastr, buildUrl } from \"neetocommons/v2/utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters/v2\";\nimport Container from \"neetomolecules/v2/Container\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"v2/common/constants\";\nimport { useDeleteTag, useFetchTags } from \"v2/hooks/useTagsApi\";\n\nimport { DEFAULT_FILTERS, NEETO_FILTERS } from \"./constants\";\nimport DashboardHeader from \"./Header\";\nimport ManageTags from \"./ManageTags\";\nimport Table from \"./Table\";\n\nimport Menu from \"../Menu\";\n\nconst Dashboard = ({\n breadcrumbs,\n title,\n createTags,\n deleteTags,\n displayMenu,\n onTagRowClick,\n tagsMergable = false,\n tagsPath,\n tagType,\n updateTags,\n setTagType,\n tagTypes,\n noDataProps = {},\n titleHelpPopoverProps = {},\n}) => {\n const history = useHistory();\n const queryParams = useQueryParams();\n const { searchTerm = \"\" } = queryParams;\n\n const searchKeywordProps = {\n node: \"name\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [selectedTag, setSelectedTag] = useState(null);\n const [paneType, setPaneType] = useState(null);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [filters, setFilters] = useState(DEFAULT_FILTERS);\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [neetoFilters, setNeetoFilters] = useState(\n buildFiltersFromURL([...NEETO_FILTERS, searchKeywordProps])\n );\n\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n neetoFilters,\n ...filters,\n });\n\n const { t } = useTranslation();\n\n const primaryButtonProps = {\n \"data-testid\": \"add-new-tag-button\",\n label: t(\"neetoTags.common.addNewTag\", SINGULAR),\n onClick: () => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n },\n };\n\n const handleEdit = tag => {\n setSelectedTag(tag);\n setPaneType(PANE_TYPES.EDIT);\n };\n\n const handleDelete = tag => {\n setSelectedTag(tag);\n setIsDeleteAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setIsDeleteAlertOpen(false);\n setSelectedTag(null);\n };\n\n const handleOnChange = (\n { current: page },\n _,\n { field: sortBy, order: orderBy }\n ) => setFilters(mergeLeft({ page, sortBy: orderBy && sortBy, orderBy }));\n\n const { mutate, isPending: isDeletingTag } = useDeleteTag();\n\n const handleConfirmDelete = () => {\n const payload = { url: tagType.url, id: selectedTag?.id };\n const isNotDeleting = !isDeletingTag && isDeleteAlertOpen;\n isNotDeleting &&\n mutate(payload, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n if (data?.tags?.length === 1) {\n setFilters(mergeLeft({ page: filters.page - 1 }));\n }\n deleteTags?.onSuccess?.callback();\n // @ts-ignore\n showThumbsUpToastr();\n },\n });\n };\n\n const handleFiltersChange = filters => {\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page: DEFAULT_PAGE_INDEX }, queryParams)\n )\n );\n setNeetoFilters(filters);\n };\n\n const resetPage = () => setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }));\n\n const showFilters = isPresent(neetoFilters) || data?.totalCount > 0;\n\n return (\n <>\n <Container className=\"pb-10\">\n <DashboardHeader\n {...{\n breadcrumbs,\n data,\n displayMenu,\n setPaneType,\n setSelectedTag,\n showFilters,\n tagsMergable,\n tagsPath,\n title,\n titleHelpPopoverProps,\n }}\n goToFirstPage={resetPage}\n />\n {showFilters && (\n <SubHeader\n className=\"mb-4\"\n leftActionBlock={\n <Typography\n data-testid=\"neeto-tags-filtered-tags-count-text\"\n variant=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoTags.helper.tagWithCount\", {\n count: data?.totalCount || 0,\n type: tagType?.label || \"\",\n })}\n </Typography>\n }\n rightActionBlock={\n <SubHeader.RightBlock\n filterProps={{\n columns: NEETO_FILTERS,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleFiltersChange,\n keyword: searchKeywordProps,\n }}\n />\n }\n />\n )}\n <FiltersBar\n columns={NEETO_FILTERS}\n isOpen={isFiltersPaneOpen}\n keyword={searchKeywordProps}\n onChange={handleFiltersChange}\n />\n {displayMenu && <Menu {...{ setTagType, tagType, tagTypes }} />}\n <Table\n {...{\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n noDataProps,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n }}\n />\n </Container>\n <ManageTags\n {...{ createTags, tagType, updateTags }}\n goToFirstPage={resetPage}\n tag={selectedTag}\n type={paneType}\n onClose={() => setPaneType(null)}\n />\n <Alert\n cancelButtonLabel={t(\"neetoTags.button.cancel\")}\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeletingTag}\n submitButtonLabel={t(\"neetoTags.button.delete\")}\n title={t(\"neetoTags.alert.title.deleteTag\")}\n message={\n <Trans\n i18nKey=\"neetoTags.alert.message.deleteTag_\"\n values={{ name: selectedTag?.name }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleConfirmDelete}\n />\n </>\n );\n};\n\nexport default Dashboard;\n","import { t } from \"i18next\";\n\nexport const NO_DATA_PRIMARY_BUTTON_PROPS = {\n \"data-testid\": \"neeto-tags-go-back-button\",\n size: \"sm\",\n label: t(\"neetoTags.button.goBack\"),\n};\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport { pluck } from \"ramda\";\n\nexport const getListType = ({\n destinationTags = [],\n isSource = false,\n sourceTags = [],\n}) =>\n isSource\n ? {\n label: t(\"neetoTags.title.selectSourceTag\", SINGULAR),\n value: \"source\",\n tagIds: pluck(\"id\", sourceTags),\n counterTagIds: pluck(\"id\", destinationTags),\n }\n : {\n label: t(\"neetoTags.title.selectDestinationTag\", SINGULAR),\n value: \"destination\",\n tagIds: pluck(\"id\", destinationTags),\n counterTagIds: pluck(\"id\", sourceTags),\n };\n\nexport const orderBySourceTags = (tags, sourceTags) => {\n const withoutSourceTags = tags.filter(tag =>\n sourceTags.every(sourceTag => sourceTag.id !== tag.id)\n );\n\n return [...sourceTags, ...withoutSourceTags];\n};\n","import { useMemo, useState } from \"react\";\n\nimport { Empty, Input, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { Check, Search, Tags } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getListType, orderBySourceTags } from \"./utils\";\n\nconst List = ({\n isSource = false,\n destinationTags = [],\n onSelect,\n sourceTags = [],\n tagList = [],\n}) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n const listType = useMemo(\n () => getListType({ destinationTags, isSource, sourceTags }),\n [isSource, sourceTags, destinationTags]\n );\n\n const filteredTags = orderBySourceTags(tagList, sourceTags).filter(tag =>\n tag?.name?.toLowerCase()?.includes(searchTerm.toLowerCase().trim())\n );\n\n return (\n <div className=\"flex w-[48%] flex-col rounded-lg border border-border p-3 md:p-4 lg:p-6\">\n <Typography className=\"mb-3\" variant=\"h4\">\n {listType.label}\n </Typography>\n <Input\n className=\"shrink-0\"\n data-testid={`neeto-tags-merge-${listType.value}-search-text-input-field`}\n placeholder={t(\"neetoTags.placeholder.searchTags\")}\n prefix={<Search />}\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n />\n <div\n className=\"mt-3 flex grow flex-col gap-2 overflow-y-auto md:mt-4\"\n data-testid={`neeto-tags-merge-${listType.value}-tags-list`}\n >\n {filteredTags.length === 0 && (\n <Empty\n className=\"m-auto\"\n icon={Tags}\n title={t(\"neetoTags.title.noTagsFound\")}\n />\n )}\n {filteredTags.map(tag => {\n const selectedTagIds = listType.tagIds.includes(tag.id);\n const selectedCounterTags = listType.counterTagIds.includes(tag.id);\n\n return (\n <div\n data-testid={`neeto-tags-merge-${listType.value}-tags`}\n key={tag.id}\n className={classNames(\n \"flex cursor-pointer items-center justify-between rounded-lg border border-transparent p-2\",\n {\n \"bg-muted border-primary\": selectedTagIds,\n \"hover:bg-muted/50\": !selectedTagIds,\n \"cursor-not-allowed bg-muted/30 text-muted-foreground\":\n selectedCounterTags,\n }\n )}\n onClick={() =>\n !selectedCounterTags && onSelect(tag, listType.value)\n }\n >\n <span>{tag.name}</span>\n {selectedTagIds && <Check size={18} />}\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default List;\n","import { Dialog, Button } from \"@bigbinary/neeto-atoms\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport pluralize from \"pluralize\";\nimport { pluck } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nconst MergeAlert = withT(\n ({\n t,\n destinationTags = [],\n handleSubmit,\n isSubmitting = false,\n setShowModal,\n showModal = false,\n sourceTags = [],\n tagType = \"\",\n }) => (\n <Dialog isOpen={showModal} onClose={() => setShowModal(false)}>\n <Dialog.Header>\n <Dialog.Title>{t(\"neetoTags.common.mergeTag\", PLURAL)}</Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n <Trans\n i18nKey=\"neetoTags.helper.mergeTagsMessage\"\n values={{\n count: sourceTags.length,\n sourceTags: pluck(\"name\", sourceTags),\n destinationTag: pluck(\"name\", destinationTags),\n entities: pluralize(tagType.label.toLowerCase()),\n }}\n />\n </Dialog.Body>\n <Dialog.Footer className=\"space-x-2\">\n <Button\n data-testid=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n variant=\"outline\"\n onClick={() => setShowModal(false)}\n />\n <Button\n data-testid=\"neeto-tags-merge-proceed-button\"\n disabled={isSubmitting}\n label={t(\"neetoTags.button.proceed\")}\n loading={isSubmitting}\n onClick={handleSubmit}\n />\n </Dialog.Footer>\n </Dialog>\n )\n);\n\nexport default MergeAlert;\n","/* eslint-disable @bigbinary/neeto/no-missing-localization */\nimport { useState, useMemo } from \"react\";\n\nimport { Button, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { Merge as MergeIcon, Tags } from \"lucide-react\";\nimport { removeById, existsById } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTags, useMergeTags } from \"v2/hooks/useTagsApi\";\n\nimport { NO_DATA_PRIMARY_BUTTON_PROPS } from \"./constants\";\nimport List from \"./List\";\nimport MergeAlert from \"./MergeAlert\";\n\nconst Merge = ({ breadcrumbs, mergeTags, tagsPath, tagType }) => {\n const [sourceTags, setSourceTags] = useState([]);\n const [destinationTags, setDestinationTags] = useState([]);\n const [isModalOpen, setIsModalOpen] = useState(false);\n const isMergeButtonDisabled = isEmpty(sourceTags) || isEmpty(destinationTags);\n const { t } = useTranslation();\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n skipPagination: true,\n });\n\n const { mutate, isPending: isSubmitting } = useMergeTags();\n const primaryButtonProps = { ...NO_DATA_PRIMARY_BUTTON_PROPS, to: tagsPath };\n\n const updatedBreadcrumbs = useMemo(\n () => [...breadcrumbs, { text: t(\"neetoTags.common.mergeTag\", PLURAL) }],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [breadcrumbs]\n );\n\n const getTagState = type => ({\n tags: type === \"source\" ? sourceTags : destinationTags,\n setTags: type === \"source\" ? setSourceTags : setDestinationTags,\n });\n\n const handleOnTagSelect = (tag, type) => {\n const { tags, setTags } = getTagState(type);\n const isTagPresent = existsById(tag.id, tags);\n let filteredTags = type === \"source\" ? [...tags, tag] : [tag];\n if (isTagPresent) {\n filteredTags = removeById(tag.id, tags);\n }\n setTags(filteredTags);\n };\n\n const handleSubmit = () => {\n const payload = {\n tags: {\n primary_id: pluck(\"id\", destinationTags),\n secondary_id: pluck(\"id\", sourceTags),\n },\n };\n\n mutate(\n { url: tagType.url, payload },\n {\n onSuccess: () => {\n setDestinationTags([]);\n setSourceTags([]);\n mergeTags?.onSuccess?.callback();\n setIsModalOpen(false);\n },\n }\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container>\n <Header\n breadcrumbs={updatedBreadcrumbs}\n title={t(\"neetoTags.common.mergeTag\", PLURAL)}\n actionBlock={\n <>\n <Button\n data-testid=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n to={tagsPath}\n variant=\"secondary\"\n />\n <Button\n data-testid=\"neeto-tags-merge-button\"\n disabled={isMergeButtonDisabled}\n label={t(\"neetoTags.button.merge\")}\n onClick={() => {\n setIsModalOpen(true);\n }}\n />\n </>\n }\n />\n {!data?.tags?.length ? (\n <div\n className=\"flex h-full w-full items-center justify-center\"\n data-testid=\"empty-state-container\"\n >\n <Empty\n {...{ primaryButtonProps }}\n icon={Tags}\n title={t(\"neetoTags.noTagsToShow\")}\n />\n </div>\n ) : (\n <div className=\"flex min-h-0 w-full grow flex-row justify-between pb-6\">\n <List\n {...{ destinationTags, sourceTags }}\n isSource\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n <MergeIcon\n className=\"mx-1 self-center text-muted-foreground md:mx-4 lg:mx-6\"\n size={24}\n />\n <List\n {...{ destinationTags, sourceTags }}\n isSource={false}\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n </div>\n )}\n <MergeAlert\n {...{\n destinationTags,\n handleSubmit,\n isSubmitting,\n sourceTags,\n tagType,\n }}\n setShowModal={setIsModalOpen}\n showModal={isModalOpen}\n />\n </Container>\n );\n};\n\nexport default Merge;\n","import { getQueryParams } from \"neetocommons/v2/utils\";\n\nimport Dashboard from \"./Dashboard\";\nimport Merge from \"./Merge\";\n\nexport { refetchTags } from \"v2/hooks/useTagsApi\";\n\nexport const getCurrentTagType = (tagTypes = []) => {\n const { view: tagLabel } = getQueryParams();\n const requiredTagType = tagTypes.find(\n tagType => tagType?.label?.toLowerCase() === tagLabel\n );\n\n return requiredTagType || tagTypes[0];\n};\n\nexport const createRoutes = path => [\n { component: Merge, exact: true, path: `${path}/merge` },\n { component: Dashboard, exact: true, path: path || \"\" },\n];\n","import { useState } from \"react\";\n\nimport { Switch, Route } from \"react-router-dom\";\n\nimport { createRoutes, getCurrentTagType } from \"./utils\";\n\nconst Tags = ({ config }) => {\n const { tagTypes, displayMenu = true } = config;\n\n const [tagType, setTagType] = useState(getCurrentTagType(tagTypes));\n\n const routes = createRoutes(config.tagsPath);\n\n return (\n <Switch>\n {routes.map(({ exact, path, component: Component }) => (\n <Route {...{ exact, path }} key={path}>\n <Component {...{ ...config, displayMenu, setTagType, tagType }} />\n </Route>\n ))}\n </Switch>\n );\n};\n\nexport default Tags;\n","import Tags from \"./components\";\n\nconst App = ({ config }) => <Tags {...{ config }} />;\n\nexport default App;\n"],"names":["DashboardHeader","_ref","breadcrumbs","title","_ref$tagsMergable","tagsMergable","setPaneType","setSelectedTag","_ref$goToFirstPage","goToFirstPage","noop","_ref$tagsPath","tagsPath","data","_ref$showFilters","showFilters","titleHelpPopoverProps","_useTranslation","useTranslation","t","history","useHistory","resetPage","useFuncDebounce","_jsx","Header","PLURAL","actionBlock","_jsxs","_Fragment","children","Button","disabled","tags","length","count","label","variant","onClick","handleMetaClick","concat","SINGULAR","PANE_TYPES","CREATE","searchProps","onChange","placeholder","renderDropdownButton","_ref$handleEdit","handleEdit","_ref$handleDelete","handleDelete","_ref$tag","tag","e","stopPropagation","DropdownMenu","customTarget","icon","Ellipsis","position","MenuItem","renderColumnData","columns","arguments","undefined","header","accessorKey","id","size","cell","_ref2","row","_row$original","original","name","style","className","Badge","TAG_STYLE_TO_BADGE_VARIANT","_ref3","getValue","Typography","_toConsumableArray","Table","_data$tags","filters","handleOnChange","isLoading","onTagRowClick","primaryButtonProps","tagType","noDataProps","Spinner","Empty","_objectSpread","Tags","handleSortingChange","updater","currentSorting","sortBy","desc","orderBy","newSorting","sort","current","page","field","order","handlePageChange","DataTable","allowRowClick","currentPage","enableColumnFreeze","enableColumnReorder","enableColumnResize","enableURLPagination","enableURLSort","pageSize","totalCount","onPageChange","onSortingChange","onRowClick","event","record","rowIndex","Menu","tagTypes","setTagType","Tabs","value","String","onValueChange","selected","Object","values","find","List","map","Item","Dashboard","createTags","deleteTags","displayMenu","updateTags","_ref$noDataProps","_ref$titleHelpPopover","queryParams","useQueryParams","_queryParams$searchTe","searchTerm","searchKeywordProps","node","key","_useState","useState","_useState2","_slicedToArray","selectedTag","_useState3","_useState4","paneType","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","DEFAULT_FILTERS","_useState8","setFilters","_useState9","_useState10","isFiltersPaneOpen","setIsFiltersPaneOpen","_useState11","buildFiltersFromURL","NEETO_FILTERS","_useState12","neetoFilters","setNeetoFilters","_useFetchTags","useFetchTags","url","EDIT","handleAlertClose","_","mergeLeft","_useDeleteTag","useDeleteTag","mutate","isDeletingTag","isPending","handleConfirmDelete","payload","isNotDeleting","onSuccess","_deleteTags$onSuccess","callback","showThumbsUpToastr","handleFiltersChange","push","buildUrl","window","location","pathname","DEFAULT_PAGE_INDEX","isPresent","Container","SubHeader","leftActionBlock","weight","type","rightActionBlock","RightBlock","filterProps","isOpen","setIsOpen","keyword","FiltersBar","ManageTags","onClose","Alert","cancelButtonLabel","isSubmitting","submitButtonLabel","message","Trans","i18nKey","onSubmit","NO_DATA_PRIMARY_BUTTON_PROPS","getListType","_ref$destinationTags","destinationTags","_ref$isSource","isSource","_ref$sourceTags","sourceTags","tagIds","pluck","counterTagIds","orderBySourceTags","withoutSourceTags","filter","every","sourceTag","onSelect","_ref$tagList","tagList","setSearchTerm","listType","useMemo","filteredTags","_tag$name","toLowerCase","includes","trim","Input","prefix","Search","target","selectedTagIds","selectedCounterTags","classNames","Check","MergeAlert","withT","handleSubmit","_ref$isSubmitting","setShowModal","_ref$showModal","showModal","_ref$tagType","Dialog","Title","Body","destinationTag","entities","pluralize","Footer","loading","Merge","mergeTags","setSourceTags","setDestinationTags","isModalOpen","setIsModalOpen","isMergeButtonDisabled","isEmpty","skipPagination","_useMergeTags","useMergeTags","to","updatedBreadcrumbs","text","getTagState","setTags","handleOnTagSelect","_getTagState","isTagPresent","existsById","removeById","primary_id","secondary_id","_mergeTags$onSuccess","MergeIcon","getCurrentTagType","_getQueryParams","getQueryParams","tagLabel","view","requiredTagType","_tagType$label","createRoutes","path","component","exact","config","_config$displayMenu","routes","Switch","Component","_createElement","Route","App"],"mappings":"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"}
@@ -13,8 +13,8 @@ require('@bigbinary/neeto-atoms');
13
13
  require('@bigbinary/neeto-cist');
14
14
  require('@bigbinary/neeto-commons-frontend/v2/constants');
15
15
  require('@bigbinary/neeto-commons-frontend/v2/react-utils');
16
- require('@bigbinary/neeto-filters-frontend/Bar');
17
- require('@bigbinary/neeto-filters-frontend/utils');
16
+ require('@bigbinary/neeto-filters-frontend/v2/Bar');
17
+ require('@bigbinary/neeto-filters-frontend/v2/utils');
18
18
  require('@bigbinary/neeto-molecules/v2/Container');
19
19
  require('@bigbinary/neeto-molecules/v2/SubHeader');
20
20
  require('ramda');
@@ -8,8 +8,8 @@ import { Button, Badge, Typography, DropdownMenu, Spinner, Empty, DataTable, Tab
8
8
  import { noop, isPresent, existsById, removeById } from '@bigbinary/neeto-cist';
9
9
  import { PLURAL, SINGULAR, DEFAULT_PAGE_INDEX } from '@bigbinary/neeto-commons-frontend/v2/constants';
10
10
  import { useFuncDebounce, handleMetaClick, useQueryParams, withT } from '@bigbinary/neeto-commons-frontend/v2/react-utils';
11
- import FiltersBar from '@bigbinary/neeto-filters-frontend/Bar';
12
- import { buildFiltersFromURL } from '@bigbinary/neeto-filters-frontend/utils';
11
+ import FiltersBar from '@bigbinary/neeto-filters-frontend/v2/Bar';
12
+ import { buildFiltersFromURL } from '@bigbinary/neeto-filters-frontend/v2/utils';
13
13
  import Container from '@bigbinary/neeto-molecules/v2/Container';
14
14
  import SubHeader from '@bigbinary/neeto-molecules/v2/SubHeader';
15
15
  import { mergeLeft, pluck, isEmpty } from 'ramda';
@@ -386,6 +386,7 @@ var Dashboard = function Dashboard(_ref) {
386
386
  var showFilters = isPresent(neetoFilters) || (data === null || data === void 0 ? void 0 : data.totalCount) > 0;
387
387
  return /*#__PURE__*/jsxs(Fragment, {
388
388
  children: [/*#__PURE__*/jsxs(Container, {
389
+ className: "pb-10",
389
390
  children: [/*#__PURE__*/jsx(DashboardHeader, {
390
391
  breadcrumbs: breadcrumbs,
391
392
  data: data,
@@ -402,7 +403,7 @@ var Dashboard = function Dashboard(_ref) {
402
403
  className: "mb-4",
403
404
  leftActionBlock: /*#__PURE__*/jsx(Typography, {
404
405
  "data-testid": "neeto-tags-filtered-tags-count-text",
405
- variant: "h5",
406
+ variant: "h6",
406
407
  weight: "semibold",
407
408
  children: t("neetoTags.helper.tagWithCount", {
408
409
  count: (data === null || data === void 0 ? void 0 : data.totalCount) || 0,
@@ -1 +1 @@
1
- {"version":3,"file":"NeetoTags.js","sources":["../../app/javascript/src/v2/components/Dashboard/Header.jsx","../../app/javascript/src/v2/components/Dashboard/utils.jsx","../../app/javascript/src/v2/components/Dashboard/Table.jsx","../../app/javascript/src/v2/components/Menu.jsx","../../app/javascript/src/v2/components/Dashboard/index.jsx","../../app/javascript/src/v2/components/Merge/constants.js","../../app/javascript/src/v2/components/Merge/utils.js","../../app/javascript/src/v2/components/Merge/List.jsx","../../app/javascript/src/v2/components/Merge/MergeAlert.jsx","../../app/javascript/src/v2/components/Merge/index.jsx","../../app/javascript/src/v2/components/utils.js","../../app/javascript/src/v2/components/index.jsx","../../app/javascript/src/v2/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { PLURAL, SINGULAR } from \"neetocommons/v2/constants\";\nimport { handleMetaClick, useFuncDebounce } from \"neetocommons/v2/react-utils\";\nimport Header from \"neetomolecules/v2/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"v2/common/constants\";\n\nconst DashboardHeader = ({\n breadcrumbs,\n title,\n tagsMergable = false,\n setPaneType,\n setSelectedTag,\n goToFirstPage = noop,\n tagsPath = \"\",\n data,\n showFilters = true,\n titleHelpPopoverProps,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const resetPage = useFuncDebounce(() => goToFirstPage());\n\n return (\n <Header\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={title || t(\"neetoTags.common.tag\", PLURAL)}\n actionBlock={\n <>\n {tagsMergable && (\n <Button\n data-testid=\"neeto-tags-merge-tags-button\"\n disabled={data?.tags.length < PLURAL.count}\n label={t(\"neetoTags.common.mergeTag\", PLURAL)}\n variant=\"secondary\"\n onClick={handleMetaClick(history, `${tagsPath}/merge`)}\n />\n )}\n <Button\n data-testid=\"add-new-tag-button\"\n label={t(\"neetoTags.common.addNewTag\", SINGULAR)}\n onClick={() => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n }}\n />\n </>\n }\n searchProps={\n showFilters && {\n \"data-testid\": \"neeto-tags-search-text-input-field\",\n onChange: resetPage,\n placeholder: t(\"neetoTags.placeholder.searchTags\"),\n }\n }\n />\n );\n};\n\nexport default DashboardHeader;\n","import {\n Typography,\n Badge,\n DropdownMenu,\n Button,\n} from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { Ellipsis } from \"lucide-react\";\nimport { noop } from \"neetocist\";\n\nimport { TAG_STYLE_TO_BADGE_VARIANT } from \"v2/common/constants\";\n\nconst renderDropdownButton = ({\n handleEdit = noop,\n handleDelete = noop,\n tag = {},\n}) => (\n <div onClick={e => e.stopPropagation()}>\n <DropdownMenu\n customTarget={<Button icon={Ellipsis} variant=\"ghost\" />}\n position=\"bottom-end\"\n >\n <DropdownMenu.MenuItem\n data-testid=\"tags-edit-button\"\n onClick={() => handleEdit(tag)}\n >\n {t(\"neetoTags.button.edit\")}\n </DropdownMenu.MenuItem>\n <DropdownMenu.MenuItem\n data-testid=\"tags-delete-button\"\n onClick={() => handleDelete(tag)}\n >\n {t(\"neetoTags.button.delete\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu>\n </div>\n);\n\nexport const renderColumnData = (handleEdit, handleDelete, columns = []) => [\n {\n header: t(\"neetoTags.common.name\"),\n accessorKey: \"name\",\n id: \"name\",\n size: 300,\n cell: ({ row }) => {\n const { name, style } = row.original;\n\n return (\n <div className=\"flex items-center justify-between gap-2\">\n <Badge\n label={name}\n variant={TAG_STYLE_TO_BADGE_VARIANT[style] || \"secondary\"}\n />\n {renderDropdownButton({\n handleEdit,\n handleDelete,\n tag: row.original,\n })}\n </div>\n );\n },\n },\n {\n header: t(\"neetoTags.common.description\"),\n accessorKey: \"description\",\n id: \"description\",\n size: 400,\n cell: ({ getValue }) => (\n <Typography className=\"whitespace-normal\">{getValue()}</Typography>\n ),\n },\n ...columns,\n];\n","import { DataTable, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { Tags } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderColumnData } from \"./utils\";\n\nconst Table = ({\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n noDataProps,\n}) => {\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (!isLoading && !data?.tags?.length) {\n return (\n <div\n className=\"flex h-full w-full items-center justify-center\"\n data-testid=\"empty-state-container\"\n >\n <Empty\n {...{ ...noDataProps, primaryButtonProps }}\n icon={Tags}\n title={t(\"neetoTags.title.noTagsToShow\")}\n />\n </div>\n );\n }\n\n const handleSortingChange = updater => {\n const currentSorting = filters.sortBy\n ? [{ id: filters.sortBy, desc: filters.orderBy === \"desc\" }]\n : [];\n\n const newSorting =\n typeof updater === \"function\" ? updater(currentSorting) : updater;\n\n const sort = newSorting[0];\n handleOnChange(\n { current: filters.page },\n undefined,\n sort\n ? { field: sort.id, order: sort.desc ? \"desc\" : \"asc\" }\n : { field: \"\", order: \"\" }\n );\n };\n\n const handlePageChange = page => {\n handleOnChange({ current: page }, undefined, {\n field: filters.sortBy,\n order: filters.orderBy,\n });\n };\n\n return (\n <DataTable\n allowRowClick={!!onTagRowClick}\n columns={renderColumnData(handleEdit, handleDelete, tagType.columns)}\n currentPage={filters.page}\n data={data?.tags || []}\n enableColumnFreeze={false}\n enableColumnReorder={false}\n enableColumnResize={false}\n enableURLPagination={false}\n enableURLSort={false}\n pageSize={filters.pageSize}\n totalCount={data?.totalCount}\n onPageChange={handlePageChange}\n onSortingChange={handleSortingChange}\n onRowClick={\n onTagRowClick\n ? (event, record, rowIndex) =>\n onTagRowClick({ event, tag: record, rowIndex })\n : undefined\n }\n />\n );\n};\n\nexport default Table;\n","import { Tabs } from \"@bigbinary/neeto-atoms\";\n\nconst Menu = ({ tagTypes, tagType, setTagType }) => (\n <Tabs\n className=\"mb-6\"\n value={String(tagType.id)}\n onValueChange={id => {\n const selected = Object.values(tagTypes).find(\n tag => String(tag.id) === id\n );\n if (selected) setTagType(selected);\n }}\n >\n <Tabs.List>\n {Object.values(tagTypes).map(tag => (\n <Tabs.Item key={tag.id} value={String(tag.id)}>\n {tag.label}\n </Tabs.Item>\n ))}\n </Tabs.List>\n </Tabs>\n);\n\nexport default Menu;\n","import { useState } from \"react\";\n\nimport { Alert, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, SINGULAR } from \"neetocommons/v2/constants\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { showThumbsUpToastr, buildUrl } from \"neetocommons/v2/utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters\";\nimport Container from \"neetomolecules/v2/Container\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"v2/common/constants\";\nimport { useDeleteTag, useFetchTags } from \"v2/hooks/useTagsApi\";\n\nimport { DEFAULT_FILTERS, NEETO_FILTERS } from \"./constants\";\nimport DashboardHeader from \"./Header\";\nimport ManageTags from \"./ManageTags\";\nimport Table from \"./Table\";\n\nimport Menu from \"../Menu\";\n\nconst Dashboard = ({\n breadcrumbs,\n title,\n createTags,\n deleteTags,\n displayMenu,\n onTagRowClick,\n tagsMergable = false,\n tagsPath,\n tagType,\n updateTags,\n setTagType,\n tagTypes,\n noDataProps = {},\n titleHelpPopoverProps = {},\n}) => {\n const history = useHistory();\n const queryParams = useQueryParams();\n const { searchTerm = \"\" } = queryParams;\n\n const searchKeywordProps = {\n node: \"name\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [selectedTag, setSelectedTag] = useState(null);\n const [paneType, setPaneType] = useState(null);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [filters, setFilters] = useState(DEFAULT_FILTERS);\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [neetoFilters, setNeetoFilters] = useState(\n buildFiltersFromURL([...NEETO_FILTERS, searchKeywordProps])\n );\n\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n neetoFilters,\n ...filters,\n });\n\n const { t } = useTranslation();\n\n const primaryButtonProps = {\n \"data-testid\": \"add-new-tag-button\",\n label: t(\"neetoTags.common.addNewTag\", SINGULAR),\n onClick: () => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n },\n };\n\n const handleEdit = tag => {\n setSelectedTag(tag);\n setPaneType(PANE_TYPES.EDIT);\n };\n\n const handleDelete = tag => {\n setSelectedTag(tag);\n setIsDeleteAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setIsDeleteAlertOpen(false);\n setSelectedTag(null);\n };\n\n const handleOnChange = (\n { current: page },\n _,\n { field: sortBy, order: orderBy }\n ) => setFilters(mergeLeft({ page, sortBy: orderBy && sortBy, orderBy }));\n\n const { mutate, isPending: isDeletingTag } = useDeleteTag();\n\n const handleConfirmDelete = () => {\n const payload = { url: tagType.url, id: selectedTag?.id };\n const isNotDeleting = !isDeletingTag && isDeleteAlertOpen;\n isNotDeleting &&\n mutate(payload, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n if (data?.tags?.length === 1) {\n setFilters(mergeLeft({ page: filters.page - 1 }));\n }\n deleteTags?.onSuccess?.callback();\n // @ts-ignore\n showThumbsUpToastr();\n },\n });\n };\n\n const handleFiltersChange = filters => {\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page: DEFAULT_PAGE_INDEX }, queryParams)\n )\n );\n setNeetoFilters(filters);\n };\n\n const resetPage = () => setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }));\n\n const showFilters = isPresent(neetoFilters) || data?.totalCount > 0;\n\n return (\n <>\n <Container>\n <DashboardHeader\n {...{\n breadcrumbs,\n data,\n displayMenu,\n setPaneType,\n setSelectedTag,\n showFilters,\n tagsMergable,\n tagsPath,\n title,\n titleHelpPopoverProps,\n }}\n goToFirstPage={resetPage}\n />\n {showFilters && (\n <SubHeader\n className=\"mb-4\"\n leftActionBlock={\n <Typography\n data-testid=\"neeto-tags-filtered-tags-count-text\"\n variant=\"h5\"\n weight=\"semibold\"\n >\n {t(\"neetoTags.helper.tagWithCount\", {\n count: data?.totalCount || 0,\n type: tagType?.label || \"\",\n })}\n </Typography>\n }\n rightActionBlock={\n <SubHeader.RightBlock\n filterProps={{\n columns: NEETO_FILTERS,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleFiltersChange,\n keyword: searchKeywordProps,\n }}\n />\n }\n />\n )}\n <FiltersBar\n columns={NEETO_FILTERS}\n isOpen={isFiltersPaneOpen}\n keyword={searchKeywordProps}\n onChange={handleFiltersChange}\n />\n {displayMenu && <Menu {...{ setTagType, tagType, tagTypes }} />}\n <Table\n {...{\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n noDataProps,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n }}\n />\n </Container>\n <ManageTags\n {...{ createTags, tagType, updateTags }}\n goToFirstPage={resetPage}\n tag={selectedTag}\n type={paneType}\n onClose={() => setPaneType(null)}\n />\n <Alert\n cancelButtonLabel={t(\"neetoTags.button.cancel\")}\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeletingTag}\n submitButtonLabel={t(\"neetoTags.button.delete\")}\n title={t(\"neetoTags.alert.title.deleteTag\")}\n message={\n <Trans\n i18nKey=\"neetoTags.alert.message.deleteTag_\"\n values={{ name: selectedTag?.name }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleConfirmDelete}\n />\n </>\n );\n};\n\nexport default Dashboard;\n","import { t } from \"i18next\";\n\nexport const NO_DATA_PRIMARY_BUTTON_PROPS = {\n \"data-testid\": \"neeto-tags-go-back-button\",\n size: \"sm\",\n label: t(\"neetoTags.button.goBack\"),\n};\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport { pluck } from \"ramda\";\n\nexport const getListType = ({\n destinationTags = [],\n isSource = false,\n sourceTags = [],\n}) =>\n isSource\n ? {\n label: t(\"neetoTags.title.selectSourceTag\", SINGULAR),\n value: \"source\",\n tagIds: pluck(\"id\", sourceTags),\n counterTagIds: pluck(\"id\", destinationTags),\n }\n : {\n label: t(\"neetoTags.title.selectDestinationTag\", SINGULAR),\n value: \"destination\",\n tagIds: pluck(\"id\", destinationTags),\n counterTagIds: pluck(\"id\", sourceTags),\n };\n\nexport const orderBySourceTags = (tags, sourceTags) => {\n const withoutSourceTags = tags.filter(tag =>\n sourceTags.every(sourceTag => sourceTag.id !== tag.id)\n );\n\n return [...sourceTags, ...withoutSourceTags];\n};\n","import { useMemo, useState } from \"react\";\n\nimport { Empty, Input, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { Check, Search, Tags } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getListType, orderBySourceTags } from \"./utils\";\n\nconst List = ({\n isSource = false,\n destinationTags = [],\n onSelect,\n sourceTags = [],\n tagList = [],\n}) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n const listType = useMemo(\n () => getListType({ destinationTags, isSource, sourceTags }),\n [isSource, sourceTags, destinationTags]\n );\n\n const filteredTags = orderBySourceTags(tagList, sourceTags).filter(tag =>\n tag?.name?.toLowerCase()?.includes(searchTerm.toLowerCase().trim())\n );\n\n return (\n <div className=\"flex w-[48%] flex-col rounded-lg border border-border p-3 md:p-4 lg:p-6\">\n <Typography className=\"mb-3\" variant=\"h4\">\n {listType.label}\n </Typography>\n <Input\n className=\"shrink-0\"\n data-testid={`neeto-tags-merge-${listType.value}-search-text-input-field`}\n placeholder={t(\"neetoTags.placeholder.searchTags\")}\n prefix={<Search />}\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n />\n <div\n className=\"mt-3 flex grow flex-col gap-2 overflow-y-auto md:mt-4\"\n data-testid={`neeto-tags-merge-${listType.value}-tags-list`}\n >\n {filteredTags.length === 0 && (\n <Empty\n className=\"m-auto\"\n icon={Tags}\n title={t(\"neetoTags.title.noTagsFound\")}\n />\n )}\n {filteredTags.map(tag => {\n const selectedTagIds = listType.tagIds.includes(tag.id);\n const selectedCounterTags = listType.counterTagIds.includes(tag.id);\n\n return (\n <div\n data-testid={`neeto-tags-merge-${listType.value}-tags`}\n key={tag.id}\n className={classNames(\n \"flex cursor-pointer items-center justify-between rounded-lg border border-transparent p-2\",\n {\n \"bg-muted border-primary\": selectedTagIds,\n \"hover:bg-muted/50\": !selectedTagIds,\n \"cursor-not-allowed bg-muted/30 text-muted-foreground\":\n selectedCounterTags,\n }\n )}\n onClick={() =>\n !selectedCounterTags && onSelect(tag, listType.value)\n }\n >\n <span>{tag.name}</span>\n {selectedTagIds && <Check size={18} />}\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default List;\n","import { Dialog, Button } from \"@bigbinary/neeto-atoms\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport pluralize from \"pluralize\";\nimport { pluck } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nconst MergeAlert = withT(\n ({\n t,\n destinationTags = [],\n handleSubmit,\n isSubmitting = false,\n setShowModal,\n showModal = false,\n sourceTags = [],\n tagType = \"\",\n }) => (\n <Dialog isOpen={showModal} onClose={() => setShowModal(false)}>\n <Dialog.Header>\n <Dialog.Title>{t(\"neetoTags.common.mergeTag\", PLURAL)}</Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n <Trans\n i18nKey=\"neetoTags.helper.mergeTagsMessage\"\n values={{\n count: sourceTags.length,\n sourceTags: pluck(\"name\", sourceTags),\n destinationTag: pluck(\"name\", destinationTags),\n entities: pluralize(tagType.label.toLowerCase()),\n }}\n />\n </Dialog.Body>\n <Dialog.Footer className=\"space-x-2\">\n <Button\n data-testid=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n variant=\"outline\"\n onClick={() => setShowModal(false)}\n />\n <Button\n data-testid=\"neeto-tags-merge-proceed-button\"\n disabled={isSubmitting}\n label={t(\"neetoTags.button.proceed\")}\n loading={isSubmitting}\n onClick={handleSubmit}\n />\n </Dialog.Footer>\n </Dialog>\n )\n);\n\nexport default MergeAlert;\n","/* eslint-disable @bigbinary/neeto/no-missing-localization */\nimport { useState, useMemo } from \"react\";\n\nimport { Button, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { Merge as MergeIcon, Tags } from \"lucide-react\";\nimport { removeById, existsById } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTags, useMergeTags } from \"v2/hooks/useTagsApi\";\n\nimport { NO_DATA_PRIMARY_BUTTON_PROPS } from \"./constants\";\nimport List from \"./List\";\nimport MergeAlert from \"./MergeAlert\";\n\nconst Merge = ({ breadcrumbs, mergeTags, tagsPath, tagType }) => {\n const [sourceTags, setSourceTags] = useState([]);\n const [destinationTags, setDestinationTags] = useState([]);\n const [isModalOpen, setIsModalOpen] = useState(false);\n const isMergeButtonDisabled = isEmpty(sourceTags) || isEmpty(destinationTags);\n const { t } = useTranslation();\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n skipPagination: true,\n });\n\n const { mutate, isPending: isSubmitting } = useMergeTags();\n const primaryButtonProps = { ...NO_DATA_PRIMARY_BUTTON_PROPS, to: tagsPath };\n\n const updatedBreadcrumbs = useMemo(\n () => [...breadcrumbs, { text: t(\"neetoTags.common.mergeTag\", PLURAL) }],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [breadcrumbs]\n );\n\n const getTagState = type => ({\n tags: type === \"source\" ? sourceTags : destinationTags,\n setTags: type === \"source\" ? setSourceTags : setDestinationTags,\n });\n\n const handleOnTagSelect = (tag, type) => {\n const { tags, setTags } = getTagState(type);\n const isTagPresent = existsById(tag.id, tags);\n let filteredTags = type === \"source\" ? [...tags, tag] : [tag];\n if (isTagPresent) {\n filteredTags = removeById(tag.id, tags);\n }\n setTags(filteredTags);\n };\n\n const handleSubmit = () => {\n const payload = {\n tags: {\n primary_id: pluck(\"id\", destinationTags),\n secondary_id: pluck(\"id\", sourceTags),\n },\n };\n\n mutate(\n { url: tagType.url, payload },\n {\n onSuccess: () => {\n setDestinationTags([]);\n setSourceTags([]);\n mergeTags?.onSuccess?.callback();\n setIsModalOpen(false);\n },\n }\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container>\n <Header\n breadcrumbs={updatedBreadcrumbs}\n title={t(\"neetoTags.common.mergeTag\", PLURAL)}\n actionBlock={\n <>\n <Button\n data-testid=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n to={tagsPath}\n variant=\"secondary\"\n />\n <Button\n data-testid=\"neeto-tags-merge-button\"\n disabled={isMergeButtonDisabled}\n label={t(\"neetoTags.button.merge\")}\n onClick={() => {\n setIsModalOpen(true);\n }}\n />\n </>\n }\n />\n {!data?.tags?.length ? (\n <div\n className=\"flex h-full w-full items-center justify-center\"\n data-testid=\"empty-state-container\"\n >\n <Empty\n {...{ primaryButtonProps }}\n icon={Tags}\n title={t(\"neetoTags.noTagsToShow\")}\n />\n </div>\n ) : (\n <div className=\"flex min-h-0 w-full grow flex-row justify-between pb-6\">\n <List\n {...{ destinationTags, sourceTags }}\n isSource\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n <MergeIcon\n className=\"mx-1 self-center text-muted-foreground md:mx-4 lg:mx-6\"\n size={24}\n />\n <List\n {...{ destinationTags, sourceTags }}\n isSource={false}\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n </div>\n )}\n <MergeAlert\n {...{\n destinationTags,\n handleSubmit,\n isSubmitting,\n sourceTags,\n tagType,\n }}\n setShowModal={setIsModalOpen}\n showModal={isModalOpen}\n />\n </Container>\n );\n};\n\nexport default Merge;\n","import { getQueryParams } from \"neetocommons/v2/utils\";\n\nimport Dashboard from \"./Dashboard\";\nimport Merge from \"./Merge\";\n\nexport { refetchTags } from \"v2/hooks/useTagsApi\";\n\nexport const getCurrentTagType = (tagTypes = []) => {\n const { view: tagLabel } = getQueryParams();\n const requiredTagType = tagTypes.find(\n tagType => tagType?.label?.toLowerCase() === tagLabel\n );\n\n return requiredTagType || tagTypes[0];\n};\n\nexport const createRoutes = path => [\n { component: Merge, exact: true, path: `${path}/merge` },\n { component: Dashboard, exact: true, path: path || \"\" },\n];\n","import { useState } from \"react\";\n\nimport { Switch, Route } from \"react-router-dom\";\n\nimport { createRoutes, getCurrentTagType } from \"./utils\";\n\nconst Tags = ({ config }) => {\n const { tagTypes, displayMenu = true } = config;\n\n const [tagType, setTagType] = useState(getCurrentTagType(tagTypes));\n\n const routes = createRoutes(config.tagsPath);\n\n return (\n <Switch>\n {routes.map(({ exact, path, component: Component }) => (\n <Route {...{ exact, path }} key={path}>\n <Component {...{ ...config, displayMenu, setTagType, tagType }} />\n </Route>\n ))}\n </Switch>\n );\n};\n\nexport default Tags;\n","import Tags from \"./components\";\n\nconst App = ({ config }) => <Tags {...{ config }} />;\n\nexport default App;\n"],"names":["DashboardHeader","_ref","breadcrumbs","title","_ref$tagsMergable","tagsMergable","setPaneType","setSelectedTag","_ref$goToFirstPage","goToFirstPage","noop","_ref$tagsPath","tagsPath","data","_ref$showFilters","showFilters","titleHelpPopoverProps","_useTranslation","useTranslation","t","history","useHistory","resetPage","useFuncDebounce","_jsx","Header","PLURAL","actionBlock","_jsxs","_Fragment","children","Button","disabled","tags","length","count","label","variant","onClick","handleMetaClick","concat","SINGULAR","PANE_TYPES","CREATE","searchProps","onChange","placeholder","renderDropdownButton","_ref$handleEdit","handleEdit","_ref$handleDelete","handleDelete","_ref$tag","tag","e","stopPropagation","DropdownMenu","customTarget","icon","Ellipsis","position","MenuItem","renderColumnData","columns","arguments","undefined","header","accessorKey","id","size","cell","_ref2","row","_row$original","original","name","style","className","Badge","TAG_STYLE_TO_BADGE_VARIANT","_ref3","getValue","Typography","_toConsumableArray","Table","_data$tags","filters","handleOnChange","isLoading","onTagRowClick","primaryButtonProps","tagType","noDataProps","Spinner","Empty","_objectSpread","Tags","handleSortingChange","updater","currentSorting","sortBy","desc","orderBy","newSorting","sort","current","page","field","order","handlePageChange","DataTable","allowRowClick","currentPage","enableColumnFreeze","enableColumnReorder","enableColumnResize","enableURLPagination","enableURLSort","pageSize","totalCount","onPageChange","onSortingChange","onRowClick","event","record","rowIndex","Menu","tagTypes","setTagType","Tabs","value","String","onValueChange","selected","Object","values","find","List","map","Item","Dashboard","createTags","deleteTags","displayMenu","updateTags","_ref$noDataProps","_ref$titleHelpPopover","queryParams","useQueryParams","_queryParams$searchTe","searchTerm","searchKeywordProps","node","key","_useState","useState","_useState2","_slicedToArray","selectedTag","_useState3","_useState4","paneType","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","DEFAULT_FILTERS","_useState8","setFilters","_useState9","_useState10","isFiltersPaneOpen","setIsFiltersPaneOpen","_useState11","buildFiltersFromURL","NEETO_FILTERS","_useState12","neetoFilters","setNeetoFilters","_useFetchTags","useFetchTags","url","EDIT","handleAlertClose","_","mergeLeft","_useDeleteTag","useDeleteTag","mutate","isDeletingTag","isPending","handleConfirmDelete","payload","isNotDeleting","onSuccess","_deleteTags$onSuccess","callback","showThumbsUpToastr","handleFiltersChange","push","buildUrl","window","location","pathname","DEFAULT_PAGE_INDEX","isPresent","Container","SubHeader","leftActionBlock","weight","type","rightActionBlock","RightBlock","filterProps","isOpen","setIsOpen","keyword","FiltersBar","ManageTags","onClose","Alert","cancelButtonLabel","isSubmitting","submitButtonLabel","message","Trans","i18nKey","onSubmit","NO_DATA_PRIMARY_BUTTON_PROPS","getListType","_ref$destinationTags","destinationTags","_ref$isSource","isSource","_ref$sourceTags","sourceTags","tagIds","pluck","counterTagIds","orderBySourceTags","withoutSourceTags","filter","every","sourceTag","onSelect","_ref$tagList","tagList","setSearchTerm","listType","useMemo","filteredTags","_tag$name","toLowerCase","includes","trim","Input","prefix","Search","target","selectedTagIds","selectedCounterTags","classNames","Check","MergeAlert","withT","handleSubmit","_ref$isSubmitting","setShowModal","_ref$showModal","showModal","_ref$tagType","Dialog","Title","Body","destinationTag","entities","pluralize","Footer","loading","Merge","mergeTags","setSourceTags","setDestinationTags","isModalOpen","setIsModalOpen","isMergeButtonDisabled","isEmpty","skipPagination","_useMergeTags","useMergeTags","to","updatedBreadcrumbs","text","getTagState","setTags","handleOnTagSelect","_getTagState","isTagPresent","existsById","removeById","primary_id","secondary_id","_mergeTags$onSuccess","MergeIcon","getCurrentTagType","_getQueryParams","getQueryParams","tagLabel","view","requiredTagType","_tagType$label","createRoutes","path","component","exact","config","_config$displayMenu","routes","Switch","Component","_createElement","Route","App"],"mappings":"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"}
1
+ {"version":3,"file":"NeetoTags.js","sources":["../../app/javascript/src/v2/components/Dashboard/Header.jsx","../../app/javascript/src/v2/components/Dashboard/utils.jsx","../../app/javascript/src/v2/components/Dashboard/Table.jsx","../../app/javascript/src/v2/components/Menu.jsx","../../app/javascript/src/v2/components/Dashboard/index.jsx","../../app/javascript/src/v2/components/Merge/constants.js","../../app/javascript/src/v2/components/Merge/utils.js","../../app/javascript/src/v2/components/Merge/List.jsx","../../app/javascript/src/v2/components/Merge/MergeAlert.jsx","../../app/javascript/src/v2/components/Merge/index.jsx","../../app/javascript/src/v2/components/utils.js","../../app/javascript/src/v2/components/index.jsx","../../app/javascript/src/v2/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { PLURAL, SINGULAR } from \"neetocommons/v2/constants\";\nimport { handleMetaClick, useFuncDebounce } from \"neetocommons/v2/react-utils\";\nimport Header from \"neetomolecules/v2/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"v2/common/constants\";\n\nconst DashboardHeader = ({\n breadcrumbs,\n title,\n tagsMergable = false,\n setPaneType,\n setSelectedTag,\n goToFirstPage = noop,\n tagsPath = \"\",\n data,\n showFilters = true,\n titleHelpPopoverProps,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const resetPage = useFuncDebounce(() => goToFirstPage());\n\n return (\n <Header\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={title || t(\"neetoTags.common.tag\", PLURAL)}\n actionBlock={\n <>\n {tagsMergable && (\n <Button\n data-testid=\"neeto-tags-merge-tags-button\"\n disabled={data?.tags.length < PLURAL.count}\n label={t(\"neetoTags.common.mergeTag\", PLURAL)}\n variant=\"secondary\"\n onClick={handleMetaClick(history, `${tagsPath}/merge`)}\n />\n )}\n <Button\n data-testid=\"add-new-tag-button\"\n label={t(\"neetoTags.common.addNewTag\", SINGULAR)}\n onClick={() => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n }}\n />\n </>\n }\n searchProps={\n showFilters && {\n \"data-testid\": \"neeto-tags-search-text-input-field\",\n onChange: resetPage,\n placeholder: t(\"neetoTags.placeholder.searchTags\"),\n }\n }\n />\n );\n};\n\nexport default DashboardHeader;\n","import {\n Typography,\n Badge,\n DropdownMenu,\n Button,\n} from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { Ellipsis } from \"lucide-react\";\nimport { noop } from \"neetocist\";\n\nimport { TAG_STYLE_TO_BADGE_VARIANT } from \"v2/common/constants\";\n\nconst renderDropdownButton = ({\n handleEdit = noop,\n handleDelete = noop,\n tag = {},\n}) => (\n <div onClick={e => e.stopPropagation()}>\n <DropdownMenu\n customTarget={<Button icon={Ellipsis} variant=\"ghost\" />}\n position=\"bottom-end\"\n >\n <DropdownMenu.MenuItem\n data-testid=\"tags-edit-button\"\n onClick={() => handleEdit(tag)}\n >\n {t(\"neetoTags.button.edit\")}\n </DropdownMenu.MenuItem>\n <DropdownMenu.MenuItem\n data-testid=\"tags-delete-button\"\n onClick={() => handleDelete(tag)}\n >\n {t(\"neetoTags.button.delete\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu>\n </div>\n);\n\nexport const renderColumnData = (handleEdit, handleDelete, columns = []) => [\n {\n header: t(\"neetoTags.common.name\"),\n accessorKey: \"name\",\n id: \"name\",\n size: 300,\n cell: ({ row }) => {\n const { name, style } = row.original;\n\n return (\n <div className=\"flex items-center justify-between gap-2\">\n <Badge\n label={name}\n variant={TAG_STYLE_TO_BADGE_VARIANT[style] || \"secondary\"}\n />\n {renderDropdownButton({\n handleEdit,\n handleDelete,\n tag: row.original,\n })}\n </div>\n );\n },\n },\n {\n header: t(\"neetoTags.common.description\"),\n accessorKey: \"description\",\n id: \"description\",\n size: 400,\n cell: ({ getValue }) => (\n <Typography className=\"whitespace-normal\">{getValue()}</Typography>\n ),\n },\n ...columns,\n];\n","import { DataTable, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { Tags } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderColumnData } from \"./utils\";\n\nconst Table = ({\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n noDataProps,\n}) => {\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (!isLoading && !data?.tags?.length) {\n return (\n <div\n className=\"flex h-full w-full items-center justify-center\"\n data-testid=\"empty-state-container\"\n >\n <Empty\n {...{ ...noDataProps, primaryButtonProps }}\n icon={Tags}\n title={t(\"neetoTags.title.noTagsToShow\")}\n />\n </div>\n );\n }\n\n const handleSortingChange = updater => {\n const currentSorting = filters.sortBy\n ? [{ id: filters.sortBy, desc: filters.orderBy === \"desc\" }]\n : [];\n\n const newSorting =\n typeof updater === \"function\" ? updater(currentSorting) : updater;\n\n const sort = newSorting[0];\n handleOnChange(\n { current: filters.page },\n undefined,\n sort\n ? { field: sort.id, order: sort.desc ? \"desc\" : \"asc\" }\n : { field: \"\", order: \"\" }\n );\n };\n\n const handlePageChange = page => {\n handleOnChange({ current: page }, undefined, {\n field: filters.sortBy,\n order: filters.orderBy,\n });\n };\n\n return (\n <DataTable\n allowRowClick={!!onTagRowClick}\n columns={renderColumnData(handleEdit, handleDelete, tagType.columns)}\n currentPage={filters.page}\n data={data?.tags || []}\n enableColumnFreeze={false}\n enableColumnReorder={false}\n enableColumnResize={false}\n enableURLPagination={false}\n enableURLSort={false}\n pageSize={filters.pageSize}\n totalCount={data?.totalCount}\n onPageChange={handlePageChange}\n onSortingChange={handleSortingChange}\n onRowClick={\n onTagRowClick\n ? (event, record, rowIndex) =>\n onTagRowClick({ event, tag: record, rowIndex })\n : undefined\n }\n />\n );\n};\n\nexport default Table;\n","import { Tabs } from \"@bigbinary/neeto-atoms\";\n\nconst Menu = ({ tagTypes, tagType, setTagType }) => (\n <Tabs\n className=\"mb-6\"\n value={String(tagType.id)}\n onValueChange={id => {\n const selected = Object.values(tagTypes).find(\n tag => String(tag.id) === id\n );\n if (selected) setTagType(selected);\n }}\n >\n <Tabs.List>\n {Object.values(tagTypes).map(tag => (\n <Tabs.Item key={tag.id} value={String(tag.id)}>\n {tag.label}\n </Tabs.Item>\n ))}\n </Tabs.List>\n </Tabs>\n);\n\nexport default Menu;\n","import { useState } from \"react\";\n\nimport { Alert, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, SINGULAR } from \"neetocommons/v2/constants\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { showThumbsUpToastr, buildUrl } from \"neetocommons/v2/utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters/v2\";\nimport Container from \"neetomolecules/v2/Container\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PANE_TYPES } from \"v2/common/constants\";\nimport { useDeleteTag, useFetchTags } from \"v2/hooks/useTagsApi\";\n\nimport { DEFAULT_FILTERS, NEETO_FILTERS } from \"./constants\";\nimport DashboardHeader from \"./Header\";\nimport ManageTags from \"./ManageTags\";\nimport Table from \"./Table\";\n\nimport Menu from \"../Menu\";\n\nconst Dashboard = ({\n breadcrumbs,\n title,\n createTags,\n deleteTags,\n displayMenu,\n onTagRowClick,\n tagsMergable = false,\n tagsPath,\n tagType,\n updateTags,\n setTagType,\n tagTypes,\n noDataProps = {},\n titleHelpPopoverProps = {},\n}) => {\n const history = useHistory();\n const queryParams = useQueryParams();\n const { searchTerm = \"\" } = queryParams;\n\n const searchKeywordProps = {\n node: \"name\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [selectedTag, setSelectedTag] = useState(null);\n const [paneType, setPaneType] = useState(null);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [filters, setFilters] = useState(DEFAULT_FILTERS);\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [neetoFilters, setNeetoFilters] = useState(\n buildFiltersFromURL([...NEETO_FILTERS, searchKeywordProps])\n );\n\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n neetoFilters,\n ...filters,\n });\n\n const { t } = useTranslation();\n\n const primaryButtonProps = {\n \"data-testid\": \"add-new-tag-button\",\n label: t(\"neetoTags.common.addNewTag\", SINGULAR),\n onClick: () => {\n setSelectedTag(null);\n setPaneType(PANE_TYPES.CREATE);\n },\n };\n\n const handleEdit = tag => {\n setSelectedTag(tag);\n setPaneType(PANE_TYPES.EDIT);\n };\n\n const handleDelete = tag => {\n setSelectedTag(tag);\n setIsDeleteAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setIsDeleteAlertOpen(false);\n setSelectedTag(null);\n };\n\n const handleOnChange = (\n { current: page },\n _,\n { field: sortBy, order: orderBy }\n ) => setFilters(mergeLeft({ page, sortBy: orderBy && sortBy, orderBy }));\n\n const { mutate, isPending: isDeletingTag } = useDeleteTag();\n\n const handleConfirmDelete = () => {\n const payload = { url: tagType.url, id: selectedTag?.id };\n const isNotDeleting = !isDeletingTag && isDeleteAlertOpen;\n isNotDeleting &&\n mutate(payload, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n if (data?.tags?.length === 1) {\n setFilters(mergeLeft({ page: filters.page - 1 }));\n }\n deleteTags?.onSuccess?.callback();\n // @ts-ignore\n showThumbsUpToastr();\n },\n });\n };\n\n const handleFiltersChange = filters => {\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page: DEFAULT_PAGE_INDEX }, queryParams)\n )\n );\n setNeetoFilters(filters);\n };\n\n const resetPage = () => setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }));\n\n const showFilters = isPresent(neetoFilters) || data?.totalCount > 0;\n\n return (\n <>\n <Container className=\"pb-10\">\n <DashboardHeader\n {...{\n breadcrumbs,\n data,\n displayMenu,\n setPaneType,\n setSelectedTag,\n showFilters,\n tagsMergable,\n tagsPath,\n title,\n titleHelpPopoverProps,\n }}\n goToFirstPage={resetPage}\n />\n {showFilters && (\n <SubHeader\n className=\"mb-4\"\n leftActionBlock={\n <Typography\n data-testid=\"neeto-tags-filtered-tags-count-text\"\n variant=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoTags.helper.tagWithCount\", {\n count: data?.totalCount || 0,\n type: tagType?.label || \"\",\n })}\n </Typography>\n }\n rightActionBlock={\n <SubHeader.RightBlock\n filterProps={{\n columns: NEETO_FILTERS,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleFiltersChange,\n keyword: searchKeywordProps,\n }}\n />\n }\n />\n )}\n <FiltersBar\n columns={NEETO_FILTERS}\n isOpen={isFiltersPaneOpen}\n keyword={searchKeywordProps}\n onChange={handleFiltersChange}\n />\n {displayMenu && <Menu {...{ setTagType, tagType, tagTypes }} />}\n <Table\n {...{\n data,\n filters,\n handleDelete,\n handleEdit,\n handleOnChange,\n isLoading,\n noDataProps,\n onTagRowClick,\n primaryButtonProps,\n tagType,\n }}\n />\n </Container>\n <ManageTags\n {...{ createTags, tagType, updateTags }}\n goToFirstPage={resetPage}\n tag={selectedTag}\n type={paneType}\n onClose={() => setPaneType(null)}\n />\n <Alert\n cancelButtonLabel={t(\"neetoTags.button.cancel\")}\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeletingTag}\n submitButtonLabel={t(\"neetoTags.button.delete\")}\n title={t(\"neetoTags.alert.title.deleteTag\")}\n message={\n <Trans\n i18nKey=\"neetoTags.alert.message.deleteTag_\"\n values={{ name: selectedTag?.name }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleConfirmDelete}\n />\n </>\n );\n};\n\nexport default Dashboard;\n","import { t } from \"i18next\";\n\nexport const NO_DATA_PRIMARY_BUTTON_PROPS = {\n \"data-testid\": \"neeto-tags-go-back-button\",\n size: \"sm\",\n label: t(\"neetoTags.button.goBack\"),\n};\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport { pluck } from \"ramda\";\n\nexport const getListType = ({\n destinationTags = [],\n isSource = false,\n sourceTags = [],\n}) =>\n isSource\n ? {\n label: t(\"neetoTags.title.selectSourceTag\", SINGULAR),\n value: \"source\",\n tagIds: pluck(\"id\", sourceTags),\n counterTagIds: pluck(\"id\", destinationTags),\n }\n : {\n label: t(\"neetoTags.title.selectDestinationTag\", SINGULAR),\n value: \"destination\",\n tagIds: pluck(\"id\", destinationTags),\n counterTagIds: pluck(\"id\", sourceTags),\n };\n\nexport const orderBySourceTags = (tags, sourceTags) => {\n const withoutSourceTags = tags.filter(tag =>\n sourceTags.every(sourceTag => sourceTag.id !== tag.id)\n );\n\n return [...sourceTags, ...withoutSourceTags];\n};\n","import { useMemo, useState } from \"react\";\n\nimport { Empty, Input, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { Check, Search, Tags } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getListType, orderBySourceTags } from \"./utils\";\n\nconst List = ({\n isSource = false,\n destinationTags = [],\n onSelect,\n sourceTags = [],\n tagList = [],\n}) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n const listType = useMemo(\n () => getListType({ destinationTags, isSource, sourceTags }),\n [isSource, sourceTags, destinationTags]\n );\n\n const filteredTags = orderBySourceTags(tagList, sourceTags).filter(tag =>\n tag?.name?.toLowerCase()?.includes(searchTerm.toLowerCase().trim())\n );\n\n return (\n <div className=\"flex w-[48%] flex-col rounded-lg border border-border p-3 md:p-4 lg:p-6\">\n <Typography className=\"mb-3\" variant=\"h4\">\n {listType.label}\n </Typography>\n <Input\n className=\"shrink-0\"\n data-testid={`neeto-tags-merge-${listType.value}-search-text-input-field`}\n placeholder={t(\"neetoTags.placeholder.searchTags\")}\n prefix={<Search />}\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n />\n <div\n className=\"mt-3 flex grow flex-col gap-2 overflow-y-auto md:mt-4\"\n data-testid={`neeto-tags-merge-${listType.value}-tags-list`}\n >\n {filteredTags.length === 0 && (\n <Empty\n className=\"m-auto\"\n icon={Tags}\n title={t(\"neetoTags.title.noTagsFound\")}\n />\n )}\n {filteredTags.map(tag => {\n const selectedTagIds = listType.tagIds.includes(tag.id);\n const selectedCounterTags = listType.counterTagIds.includes(tag.id);\n\n return (\n <div\n data-testid={`neeto-tags-merge-${listType.value}-tags`}\n key={tag.id}\n className={classNames(\n \"flex cursor-pointer items-center justify-between rounded-lg border border-transparent p-2\",\n {\n \"bg-muted border-primary\": selectedTagIds,\n \"hover:bg-muted/50\": !selectedTagIds,\n \"cursor-not-allowed bg-muted/30 text-muted-foreground\":\n selectedCounterTags,\n }\n )}\n onClick={() =>\n !selectedCounterTags && onSelect(tag, listType.value)\n }\n >\n <span>{tag.name}</span>\n {selectedTagIds && <Check size={18} />}\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default List;\n","import { Dialog, Button } from \"@bigbinary/neeto-atoms\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport pluralize from \"pluralize\";\nimport { pluck } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nconst MergeAlert = withT(\n ({\n t,\n destinationTags = [],\n handleSubmit,\n isSubmitting = false,\n setShowModal,\n showModal = false,\n sourceTags = [],\n tagType = \"\",\n }) => (\n <Dialog isOpen={showModal} onClose={() => setShowModal(false)}>\n <Dialog.Header>\n <Dialog.Title>{t(\"neetoTags.common.mergeTag\", PLURAL)}</Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n <Trans\n i18nKey=\"neetoTags.helper.mergeTagsMessage\"\n values={{\n count: sourceTags.length,\n sourceTags: pluck(\"name\", sourceTags),\n destinationTag: pluck(\"name\", destinationTags),\n entities: pluralize(tagType.label.toLowerCase()),\n }}\n />\n </Dialog.Body>\n <Dialog.Footer className=\"space-x-2\">\n <Button\n data-testid=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n variant=\"outline\"\n onClick={() => setShowModal(false)}\n />\n <Button\n data-testid=\"neeto-tags-merge-proceed-button\"\n disabled={isSubmitting}\n label={t(\"neetoTags.button.proceed\")}\n loading={isSubmitting}\n onClick={handleSubmit}\n />\n </Dialog.Footer>\n </Dialog>\n )\n);\n\nexport default MergeAlert;\n","/* eslint-disable @bigbinary/neeto/no-missing-localization */\nimport { useState, useMemo } from \"react\";\n\nimport { Button, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { Merge as MergeIcon, Tags } from \"lucide-react\";\nimport { removeById, existsById } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\nimport { isEmpty, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTags, useMergeTags } from \"v2/hooks/useTagsApi\";\n\nimport { NO_DATA_PRIMARY_BUTTON_PROPS } from \"./constants\";\nimport List from \"./List\";\nimport MergeAlert from \"./MergeAlert\";\n\nconst Merge = ({ breadcrumbs, mergeTags, tagsPath, tagType }) => {\n const [sourceTags, setSourceTags] = useState([]);\n const [destinationTags, setDestinationTags] = useState([]);\n const [isModalOpen, setIsModalOpen] = useState(false);\n const isMergeButtonDisabled = isEmpty(sourceTags) || isEmpty(destinationTags);\n const { t } = useTranslation();\n const { data, isLoading } = useFetchTags({\n url: tagType.url,\n skipPagination: true,\n });\n\n const { mutate, isPending: isSubmitting } = useMergeTags();\n const primaryButtonProps = { ...NO_DATA_PRIMARY_BUTTON_PROPS, to: tagsPath };\n\n const updatedBreadcrumbs = useMemo(\n () => [...breadcrumbs, { text: t(\"neetoTags.common.mergeTag\", PLURAL) }],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [breadcrumbs]\n );\n\n const getTagState = type => ({\n tags: type === \"source\" ? sourceTags : destinationTags,\n setTags: type === \"source\" ? setSourceTags : setDestinationTags,\n });\n\n const handleOnTagSelect = (tag, type) => {\n const { tags, setTags } = getTagState(type);\n const isTagPresent = existsById(tag.id, tags);\n let filteredTags = type === \"source\" ? [...tags, tag] : [tag];\n if (isTagPresent) {\n filteredTags = removeById(tag.id, tags);\n }\n setTags(filteredTags);\n };\n\n const handleSubmit = () => {\n const payload = {\n tags: {\n primary_id: pluck(\"id\", destinationTags),\n secondary_id: pluck(\"id\", sourceTags),\n },\n };\n\n mutate(\n { url: tagType.url, payload },\n {\n onSuccess: () => {\n setDestinationTags([]);\n setSourceTags([]);\n mergeTags?.onSuccess?.callback();\n setIsModalOpen(false);\n },\n }\n );\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container>\n <Header\n breadcrumbs={updatedBreadcrumbs}\n title={t(\"neetoTags.common.mergeTag\", PLURAL)}\n actionBlock={\n <>\n <Button\n data-testid=\"neeto-tags-merge-cancel-button\"\n label={t(\"neetoTags.button.cancel\")}\n to={tagsPath}\n variant=\"secondary\"\n />\n <Button\n data-testid=\"neeto-tags-merge-button\"\n disabled={isMergeButtonDisabled}\n label={t(\"neetoTags.button.merge\")}\n onClick={() => {\n setIsModalOpen(true);\n }}\n />\n </>\n }\n />\n {!data?.tags?.length ? (\n <div\n className=\"flex h-full w-full items-center justify-center\"\n data-testid=\"empty-state-container\"\n >\n <Empty\n {...{ primaryButtonProps }}\n icon={Tags}\n title={t(\"neetoTags.noTagsToShow\")}\n />\n </div>\n ) : (\n <div className=\"flex min-h-0 w-full grow flex-row justify-between pb-6\">\n <List\n {...{ destinationTags, sourceTags }}\n isSource\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n <MergeIcon\n className=\"mx-1 self-center text-muted-foreground md:mx-4 lg:mx-6\"\n size={24}\n />\n <List\n {...{ destinationTags, sourceTags }}\n isSource={false}\n tagList={data?.tags}\n onSelect={handleOnTagSelect}\n />\n </div>\n )}\n <MergeAlert\n {...{\n destinationTags,\n handleSubmit,\n isSubmitting,\n sourceTags,\n tagType,\n }}\n setShowModal={setIsModalOpen}\n showModal={isModalOpen}\n />\n </Container>\n );\n};\n\nexport default Merge;\n","import { getQueryParams } from \"neetocommons/v2/utils\";\n\nimport Dashboard from \"./Dashboard\";\nimport Merge from \"./Merge\";\n\nexport { refetchTags } from \"v2/hooks/useTagsApi\";\n\nexport const getCurrentTagType = (tagTypes = []) => {\n const { view: tagLabel } = getQueryParams();\n const requiredTagType = tagTypes.find(\n tagType => tagType?.label?.toLowerCase() === tagLabel\n );\n\n return requiredTagType || tagTypes[0];\n};\n\nexport const createRoutes = path => [\n { component: Merge, exact: true, path: `${path}/merge` },\n { component: Dashboard, exact: true, path: path || \"\" },\n];\n","import { useState } from \"react\";\n\nimport { Switch, Route } from \"react-router-dom\";\n\nimport { createRoutes, getCurrentTagType } from \"./utils\";\n\nconst Tags = ({ config }) => {\n const { tagTypes, displayMenu = true } = config;\n\n const [tagType, setTagType] = useState(getCurrentTagType(tagTypes));\n\n const routes = createRoutes(config.tagsPath);\n\n return (\n <Switch>\n {routes.map(({ exact, path, component: Component }) => (\n <Route {...{ exact, path }} key={path}>\n <Component {...{ ...config, displayMenu, setTagType, tagType }} />\n </Route>\n ))}\n </Switch>\n );\n};\n\nexport default Tags;\n","import Tags from \"./components\";\n\nconst App = ({ config }) => <Tags {...{ config }} />;\n\nexport default App;\n"],"names":["DashboardHeader","_ref","breadcrumbs","title","_ref$tagsMergable","tagsMergable","setPaneType","setSelectedTag","_ref$goToFirstPage","goToFirstPage","noop","_ref$tagsPath","tagsPath","data","_ref$showFilters","showFilters","titleHelpPopoverProps","_useTranslation","useTranslation","t","history","useHistory","resetPage","useFuncDebounce","_jsx","Header","PLURAL","actionBlock","_jsxs","_Fragment","children","Button","disabled","tags","length","count","label","variant","onClick","handleMetaClick","concat","SINGULAR","PANE_TYPES","CREATE","searchProps","onChange","placeholder","renderDropdownButton","_ref$handleEdit","handleEdit","_ref$handleDelete","handleDelete","_ref$tag","tag","e","stopPropagation","DropdownMenu","customTarget","icon","Ellipsis","position","MenuItem","renderColumnData","columns","arguments","undefined","header","accessorKey","id","size","cell","_ref2","row","_row$original","original","name","style","className","Badge","TAG_STYLE_TO_BADGE_VARIANT","_ref3","getValue","Typography","_toConsumableArray","Table","_data$tags","filters","handleOnChange","isLoading","onTagRowClick","primaryButtonProps","tagType","noDataProps","Spinner","Empty","_objectSpread","Tags","handleSortingChange","updater","currentSorting","sortBy","desc","orderBy","newSorting","sort","current","page","field","order","handlePageChange","DataTable","allowRowClick","currentPage","enableColumnFreeze","enableColumnReorder","enableColumnResize","enableURLPagination","enableURLSort","pageSize","totalCount","onPageChange","onSortingChange","onRowClick","event","record","rowIndex","Menu","tagTypes","setTagType","Tabs","value","String","onValueChange","selected","Object","values","find","List","map","Item","Dashboard","createTags","deleteTags","displayMenu","updateTags","_ref$noDataProps","_ref$titleHelpPopover","queryParams","useQueryParams","_queryParams$searchTe","searchTerm","searchKeywordProps","node","key","_useState","useState","_useState2","_slicedToArray","selectedTag","_useState3","_useState4","paneType","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","DEFAULT_FILTERS","_useState8","setFilters","_useState9","_useState10","isFiltersPaneOpen","setIsFiltersPaneOpen","_useState11","buildFiltersFromURL","NEETO_FILTERS","_useState12","neetoFilters","setNeetoFilters","_useFetchTags","useFetchTags","url","EDIT","handleAlertClose","_","mergeLeft","_useDeleteTag","useDeleteTag","mutate","isDeletingTag","isPending","handleConfirmDelete","payload","isNotDeleting","onSuccess","_deleteTags$onSuccess","callback","showThumbsUpToastr","handleFiltersChange","push","buildUrl","window","location","pathname","DEFAULT_PAGE_INDEX","isPresent","Container","SubHeader","leftActionBlock","weight","type","rightActionBlock","RightBlock","filterProps","isOpen","setIsOpen","keyword","FiltersBar","ManageTags","onClose","Alert","cancelButtonLabel","isSubmitting","submitButtonLabel","message","Trans","i18nKey","onSubmit","NO_DATA_PRIMARY_BUTTON_PROPS","getListType","_ref$destinationTags","destinationTags","_ref$isSource","isSource","_ref$sourceTags","sourceTags","tagIds","pluck","counterTagIds","orderBySourceTags","withoutSourceTags","filter","every","sourceTag","onSelect","_ref$tagList","tagList","setSearchTerm","listType","useMemo","filteredTags","_tag$name","toLowerCase","includes","trim","Input","prefix","Search","target","selectedTagIds","selectedCounterTags","classNames","Check","MergeAlert","withT","handleSubmit","_ref$isSubmitting","setShowModal","_ref$showModal","showModal","_ref$tagType","Dialog","Title","Body","destinationTag","entities","pluralize","Footer","loading","Merge","mergeTags","setSourceTags","setDestinationTags","isModalOpen","setIsModalOpen","isMergeButtonDisabled","isEmpty","skipPagination","_useMergeTags","useMergeTags","to","updatedBreadcrumbs","text","getTagState","setTags","handleOnTagSelect","_getTagState","isTagPresent","existsById","removeById","primary_id","secondary_id","_mergeTags$onSuccess","MergeIcon","getCurrentTagType","_getQueryParams","getQueryParams","tagLabel","view","requiredTagType","_tagType$label","createRoutes","path","component","exact","config","_config$displayMenu","routes","Switch","Component","_createElement","Route","App"],"mappings":"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"}
package/dist/v2/index.js CHANGED
@@ -11,8 +11,8 @@ import '@bigbinary/neeto-atoms';
11
11
  import '@bigbinary/neeto-cist';
12
12
  import '@bigbinary/neeto-commons-frontend/v2/constants';
13
13
  import '@bigbinary/neeto-commons-frontend/v2/react-utils';
14
- import '@bigbinary/neeto-filters-frontend/Bar';
15
- import '@bigbinary/neeto-filters-frontend/utils';
14
+ import '@bigbinary/neeto-filters-frontend/v2/Bar';
15
+ import '@bigbinary/neeto-filters-frontend/v2/utils';
16
16
  import '@bigbinary/neeto-molecules/v2/Container';
17
17
  import '@bigbinary/neeto-molecules/v2/SubHeader';
18
18
  import 'ramda';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-tags-frontend",
3
- "version": "2.2.27",
3
+ "version": "2.2.29",
4
4
  "description": "A repo acts as the source of truth for the new nano's structure, configs, data etc.",
5
5
  "license": "UNLICENSED",
6
6
  "homepage": "https://github.com/bigbinary/neeto-tags-nano",
@@ -68,17 +68,17 @@
68
68
  "@babel/preset-env": "7.26.0",
69
69
  "@babel/preset-react": "7.25.9",
70
70
  "@babel/preset-typescript": "7.26.0",
71
- "@babel/runtime": "7.29.2",
71
+ "@babel/runtime": "7.29.7",
72
72
  "@bigbinary/babel-preset-neeto": "^1.0.3",
73
73
  "@bigbinary/eslint-plugin-neeto": "1.9.0",
74
- "@bigbinary/neeto-atoms": "1.0.16",
74
+ "@bigbinary/neeto-atoms": "1.0.85",
75
75
  "@bigbinary/neeto-cist": "1.0.17",
76
- "@bigbinary/neeto-commons-frontend": "4.13.127",
77
- "@bigbinary/neeto-filters-frontend": "4.3.38",
76
+ "@bigbinary/neeto-commons-frontend": "4.13.135",
77
+ "@bigbinary/neeto-filters-frontend": "4.3.40",
78
78
  "@bigbinary/neeto-hotkeys": "1.0.9",
79
- "@bigbinary/neeto-icons": "1.20.88",
80
- "@bigbinary/neeto-molecules": "5.1.0",
81
- "@bigbinary/neetoui": "8.8.0",
79
+ "@bigbinary/neeto-icons": "1.20.89",
80
+ "@bigbinary/neeto-molecules": "5.1.29",
81
+ "@bigbinary/neetoui": "8.8.2",
82
82
  "@emotion/is-prop-valid": "1.2.0",
83
83
  "@faker-js/faker": "8.2.0",
84
84
  "@honeybadger-io/js": "6.10.1",
@@ -96,7 +96,7 @@
96
96
  "@tanstack/react-query-devtools": "5.59.20",
97
97
  "antd": "5.22.1",
98
98
  "autoprefixer": "^10.4.5",
99
- "axios": "1.16.0",
99
+ "axios": "1.17.0",
100
100
  "babel-loader": "^8.2.5",
101
101
  "babel-plugin-istanbul": "^6.1.1",
102
102
  "babel-plugin-js-logger": "1.0.17",
@@ -111,7 +111,7 @@
111
111
  "classnames": "2.5.1",
112
112
  "crypto-browserify": "3.12.1",
113
113
  "css-loader": "6.8.1",
114
- "dompurify": "3.4.1",
114
+ "dompurify": "3.4.7",
115
115
  "dotenv-webpack": "^8.0.1",
116
116
  "eslint": "^9.25.1",
117
117
  "eslint-config-prettier": "^10.1.2",
@@ -143,14 +143,14 @@
143
143
  "os-browserify": "0.3.0",
144
144
  "path-browserify": "^1.0.1",
145
145
  "pluralize": "8.0.0",
146
- "postcss": "8.5.11",
146
+ "postcss": "8.5.12",
147
147
  "postcss-import": "^15.0.0",
148
148
  "postcss-loader": "^7.0.1",
149
149
  "postcss-preset-env": "7.8.2",
150
150
  "prettier": "3",
151
151
  "prettier-plugin-tailwindcss": "^0.6.14",
152
152
  "process": "0.11.10",
153
- "qs": "6.15.0",
153
+ "qs": "6.15.2",
154
154
  "ramda": "0.29.0",
155
155
  "react": "18.3.1",
156
156
  "react-dom": "18.3.1",
@@ -183,26 +183,26 @@
183
183
  "zustand": "4.4.2"
184
184
  },
185
185
  "peerDependencies": {
186
- "@babel/runtime": "7.29.2",
187
- "@bigbinary/neeto-atoms": "1.0.16",
186
+ "@babel/runtime": "7.29.7",
187
+ "@bigbinary/neeto-atoms": "1.0.85",
188
188
  "@bigbinary/neeto-cist": "1.0.17",
189
- "@bigbinary/neeto-commons-frontend": "4.13.127",
190
- "@bigbinary/neeto-filters-frontend": "4.3.38",
189
+ "@bigbinary/neeto-commons-frontend": "4.13.135",
190
+ "@bigbinary/neeto-filters-frontend": "4.3.40",
191
191
  "@bigbinary/neeto-hotkeys": "1.0.9",
192
- "@bigbinary/neeto-icons": "1.20.88",
193
- "@bigbinary/neeto-molecules": "5.1.0",
194
- "@bigbinary/neetoui": "8.8.0",
192
+ "@bigbinary/neeto-icons": "1.20.89",
193
+ "@bigbinary/neeto-molecules": "5.1.29",
194
+ "@bigbinary/neetoui": "8.8.2",
195
195
  "@honeybadger-io/js": "6.10.1",
196
196
  "@honeybadger-io/react": "6.1.25",
197
197
  "@tailwindcss/container-queries": "^0.1.1",
198
198
  "@tanstack/react-query": "5.59.20",
199
199
  "@tanstack/react-query-devtools": "5.59.20",
200
200
  "antd": "5.22.1",
201
- "axios": "1.16.0",
201
+ "axios": "1.17.0",
202
202
  "buffer": "^6.0.3",
203
203
  "classnames": "2.5.1",
204
204
  "crypto-browserify": "3.12.1",
205
- "dompurify": "3.4.1",
205
+ "dompurify": "3.4.7",
206
206
  "formik": "2.4.6",
207
207
  "https-browserify": "1.0.0",
208
208
  "i18next": "22.5.1",
@@ -211,7 +211,7 @@
211
211
  "mixpanel-browser": "^2.45.0",
212
212
  "os-browserify": "0.3.0",
213
213
  "path-browserify": "^1.0.1",
214
- "qs": "6.15.0",
214
+ "qs": "6.15.2",
215
215
  "ramda": "0.29.0",
216
216
  "react": "18.3.1",
217
217
  "react-dom": "18.3.1",