@bigbinary/neeto-approvals-frontend 1.2.9 → 1.2.10
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/Approvals.js +9 -5
- package/dist/Approvals.js.map +1 -1
- package/dist/cjs/Approvals.js +9 -5
- package/dist/cjs/Approvals.js.map +1 -1
- package/package.json +1 -1
package/dist/Approvals.js
CHANGED
|
@@ -687,10 +687,6 @@ var Table = function Table(_ref) {
|
|
|
687
687
|
columnData: columns,
|
|
688
688
|
currentPageNumber: pageProperties.page,
|
|
689
689
|
defaultPageSize: pageProperties.pageSize,
|
|
690
|
-
scroll: {
|
|
691
|
-
x: 0
|
|
692
|
-
},
|
|
693
|
-
tableLayout: "fixed",
|
|
694
690
|
paginationProps: {
|
|
695
691
|
hideOnSinglePage: (rowData === null || rowData === void 0 ? void 0 : rowData.length) < DEFAULT_PAGE_SIZE + 1
|
|
696
692
|
},
|
|
@@ -711,6 +707,7 @@ var columnData = function columnData(_ref) {
|
|
|
711
707
|
sorter: true,
|
|
712
708
|
title: i18next.t("neetoApprovals.common.name"),
|
|
713
709
|
ellipsis: true,
|
|
710
|
+
width: 300,
|
|
714
711
|
render: function render(_, template) {
|
|
715
712
|
return /*#__PURE__*/jsxs("div", {
|
|
716
713
|
className: "flex items-center justify-between gap-x-3",
|
|
@@ -719,10 +716,16 @@ var columnData = function columnData(_ref) {
|
|
|
719
716
|
style: "body2",
|
|
720
717
|
children: template.name
|
|
721
718
|
}), /*#__PURE__*/jsx(MoreDropdown, {
|
|
719
|
+
dropdownButtonProps: {
|
|
720
|
+
className: "mr-1 my-1"
|
|
721
|
+
},
|
|
722
722
|
dropdownProps: {
|
|
723
723
|
strategy: "fixed",
|
|
724
724
|
onClick: function onClick(e) {
|
|
725
725
|
return e.stopPropagation();
|
|
726
|
+
},
|
|
727
|
+
appendTo: function appendTo() {
|
|
728
|
+
return document.body;
|
|
726
729
|
}
|
|
727
730
|
},
|
|
728
731
|
menuItems: [_defineProperty({
|
|
@@ -744,7 +747,8 @@ var columnData = function columnData(_ref) {
|
|
|
744
747
|
}, {
|
|
745
748
|
dataIndex: "description",
|
|
746
749
|
key: "description",
|
|
747
|
-
title: i18next.t("neetoApprovals.inputs.labels.description")
|
|
750
|
+
title: i18next.t("neetoApprovals.inputs.labels.description"),
|
|
751
|
+
width: 400
|
|
748
752
|
}];
|
|
749
753
|
};
|
|
750
754
|
|
package/dist/Approvals.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Approvals.js","sources":["../app/javascript/src/common/routes.js","../app/javascript/src/common/utils.js","../app/javascript/src/hooks/usePaginate.js","../app/javascript/src/components/Approvals/History/constants.jsx","../app/javascript/src/components/Approvals/History/index.jsx","../app/javascript/src/components/Approvals/PendingRequests/constants.js","../app/javascript/src/components/Approvals/PendingRequests/index.jsx","../app/javascript/src/components/Approvals/Templates/constants.js","../app/javascript/src/components/Approvals/Templates/MessageEditor.jsx","../app/javascript/src/components/Approvals/Templates/TemplateForm.jsx","../app/javascript/src/components/Approvals/Templates/Form.jsx","../app/javascript/src/components/Approvals/Templates/Create.jsx","../app/javascript/src/components/Approvals/Templates/Edit.jsx","../app/javascript/src/components/Approvals/Templates/Show/Field.jsx","../app/javascript/src/components/Approvals/Templates/Show/index.jsx","../app/javascript/src/utils.jsx","../app/javascript/src/components/Approvals/Templates/Table.jsx","../app/javascript/src/components/Approvals/Templates/utils/columnData.jsx","../app/javascript/src/components/Approvals/Templates/index.jsx","../app/javascript/src/components/Approvals/createRoutes.jsx","../app/javascript/src/components/Approvals/Header.jsx","../app/javascript/src/apis/views.js","../app/javascript/src/hooks/reactQuery/views/useViewsApi.js","../app/javascript/src/components/Approvals/Tab.jsx","../app/javascript/src/components/Approvals/index.jsx"],"sourcesContent":["export const routes = {\n home: \"/\",\n approvals: \"/approvals/\",\n pending: \"pending\",\n history: \"history\",\n templates: {\n index: \"templates\",\n new: \"templates/new\",\n edit: \"templates/:id/edit\",\n },\n public: \"approvals/public/request/:id\",\n};\n","import { isEmpty } from \"ramda\";\n\nexport const isOverflown = ({\n clientWidth,\n clientHeight,\n scrollWidth,\n scrollHeight,\n}) => scrollHeight > clientHeight || scrollWidth > clientWidth;\n\nexport const handleEmptyPage = (data, pageProperties, handlePageChange) => {\n if (isEmpty(data) && pageProperties.page !== 1) {\n handlePageChange(pageProperties.page - 1, pageProperties.pageSize);\n }\n};\n","import { useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\n\nconst usePaginate = () => {\n const [pageProperties, setPageProperties] = useState({\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const resetPageProperties = () =>\n setPageProperties({\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const handlePageChange = (page, pageSize) => {\n setPageProperties({ page, pageSize });\n };\n\n return { pageProperties, resetPageProperties, handlePageChange };\n};\n\nexport default usePaginate;\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport DateFormat from \"neetomolecules/DateFormat\";\nimport { Button, Tag } from \"neetoui\";\n\nimport { STATUS_TAG_STYLE } from \"../constants\";\n\nexport const HISTORY_TABLE_COLUMNS = [\n {\n dataIndex: \"approvalLabel\",\n key: \"approvalLabel\",\n sorter: true,\n width: 150,\n title: t(\"neetoApprovals.common.id\"),\n render: (approvalLabel, { requestableUrl }) => {\n const url = new URL(requestableUrl || window.location.origin);\n\n return <Button label={approvalLabel} style=\"link\" to={url.pathname} />;\n },\n },\n {\n dataIndex: \"title\",\n key: \"title\",\n sorter: true,\n width: 400,\n title: t(\"neetoApprovals.common.title\"),\n },\n {\n dataIndex: \"status\",\n key: \"status\",\n sorter: true,\n width: 200,\n title: t(\"neetoApprovals.common.status\"),\n render: status => (\n <Tag label={capitalize(status)} style={STATUS_TAG_STYLE[status]} />\n ),\n },\n {\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n sorter: true,\n width: 200,\n title: t(\"neetoApprovals.common.created\"),\n render: createdAt => (\n <DateFormat.FromNow\n date={createdAt}\n typographyProps={{ style: \"body2\" }}\n />\n ),\n },\n];\n","import { useEffect, useState } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"./constants\";\n\nimport {\n DEFAULT_FILTER_VALUES,\n SEARCH_DELAY,\n SORT_ORDER,\n STATUSES,\n} from \"../constants\";\nimport RequestDetailsPane from \"../RequestDetailsPane\";\nimport { updateApprovalDetails } from \"../utils\";\n\nconst History = ({ helpDocUrl, requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handlePageChange } = usePaginate();\n const [approvalDetails, setApprovalDetails] = useState({});\n const { t } = useTranslation();\n\n const { data } = useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.approved, STATUSES.rejected, STATUSES.cancelled],\n },\n requestUrl,\n });\n\n const { requests: approvalHistories = {}, totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (!data) return;\n handleEmptyPage(data?.requests, pageProperties, handlePageChange);\n setApprovalDetails(approvalDetails =>\n updateApprovalDetails({ requestsData: data?.requests, approvalDetails })\n );\n }, [data]);\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field || \"\"),\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n return (\n <>\n {!isEmpty(approvalHistories) ? (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <Table\n {...{ handlePageChange, totalCount }}\n allowRowClick\n fixedHeight\n columnData={HISTORY_TABLE_COLUMNS}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={approvalHistories}\n paginationProps={{\n hideOnSinglePage:\n approvalHistories?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n helpText={\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpTextLearnMore\"\n style=\"link\"\n values={{ entity: t(\"neetoApprovals.common.history\") }}\n components={{\n a: (\n <Button\n style=\"link\"\n target=\"_blank\"\n to={{ pathname: helpDocUrl }}\n />\n ),\n }}\n />\n }\n title={t(\"neetoApprovals.common.notFound_\", {\n what: t(\"neetoApprovals.common.record\", PLURAL),\n })}\n />\n </div>\n )}\n <RequestDetailsPane\n {...{ approvalDetails }}\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default History;\n","import { removeBy } from \"neetocist\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"../History/constants\";\n\nexport const PENDING_TABLE_COLUMNS = removeBy(\n { key: \"status\" },\n HISTORY_TABLE_COLUMNS\n);\n","import { useEffect, useState } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { PENDING_TABLE_COLUMNS } from \"./constants\";\n\nimport {\n DEFAULT_FILTER_VALUES,\n SEARCH_DELAY,\n SORT_ORDER,\n STATUSES,\n} from \"../constants\";\nimport RequestDetailsPane from \"../RequestDetailsPane\";\n\nconst PendingRequests = ({ helpDocUrl, requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [approvalDetails, setApprovalDetails] = useState({});\n const debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handlePageChange } = usePaginate();\n const { t } = useTranslation();\n\n const { data } = useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.pending],\n },\n requestUrl,\n });\n\n const { requests: pendingRequests = {}, totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (!data) return;\n handleEmptyPage(data?.requests, pageProperties, handlePageChange);\n }, [data]);\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field || \"\"),\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n return (\n <>\n {!isEmpty(pendingRequests) ? (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <Table\n {...{ handlePageChange, totalCount }}\n allowRowClick\n fixedHeight\n columnData={PENDING_TABLE_COLUMNS}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={pendingRequests}\n paginationProps={{\n hideOnSinglePage: pendingRequests?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n helpText={\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpTextLearnMore\"\n style=\"link\"\n components={{\n a: (\n <Button\n style=\"link\"\n target=\"_blank\"\n to={{ pathname: helpDocUrl }}\n />\n ),\n }}\n values={{\n entity: t(\"neetoApprovals.common.pendingApproval\", PLURAL),\n }}\n />\n }\n title={t(\"neetoApprovals.common.notFound_\", {\n what: t(\"neetoApprovals.common.pendingApproval\", PLURAL),\n })}\n />\n </div>\n )}\n <RequestDetailsPane\n {...{ approvalDetails }}\n isPending\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default PendingRequests;\n","import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n message: \"\",\n};\n\nexport const TEMPLATE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n name: yup\n .string()\n .trim()\n .required(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.common.name\"),\n })\n ),\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\n content => !isEditorEmpty(content)\n ),\n});\n","import { withT } from \"neetocommons/react-utils\";\nimport { FormikEditor } from \"neetoeditor\";\n\nconst MessageEditor = withT(({ t, placeholders = [], initialValue = \"\" }) => (\n <FormikEditor\n {...{ initialValue }}\n required\n label={t(\"neetoApprovals.inputs.labels.message\")}\n name=\"message\"\n rows={3}\n variables={placeholders}\n placeholder={t(\"neetoApprovals.inputs.placeholders.enter_\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n })}\n />\n));\n\nexport default MessageEditor;\n","import { useFormikContext } from \"formik\";\nimport ToggleFeatureCard from \"neetomolecules/ToggleFeatureCard\";\nimport { Input, Textarea } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MessageEditor from \"./MessageEditor\";\n\nconst TemplateForm = ({ placeholders, initialData }) => {\n const { t } = useTranslation();\n const { values, setFieldValue } = useFormikContext();\n\n const handleDescriptionToggle = ({ target: { checked } }) => {\n setFieldValue(\"descriptionEnabled\", checked);\n if (!checked) {\n setFieldValue(\"description\", \"\");\n }\n };\n\n return (\n <div className=\"flex w-full flex-col space-y-6\">\n <Input\n autoFocus\n required\n label={t(\"neetoApprovals.common.name\")}\n name=\"name\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.name\")}\n />\n <ToggleFeatureCard\n switchName=\"descriptionEnabled\"\n title={t(\"neetoApprovals.inputs.labels.description\")}\n switchProps={{\n onChange: handleDescriptionToggle,\n tooltipProps: {\n enabledSwitchText: t(\n \"neetoApprovals.templates.descriptionToggle.enable\"\n ),\n disabledSwitchText: t(\n \"neetoApprovals.templates.descriptionToggle.disable\"\n ),\n },\n }}\n >\n {values.descriptionEnabled && (\n <Textarea\n className=\"w-full\"\n name=\"description\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.description\")}\n />\n )}\n </ToggleFeatureCard>\n <MessageEditor {...{ placeholders }} initialValue={initialData.message} />\n </div>\n );\n};\n\nexport default TemplateForm;\n","import { useRef } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form as FormikForm } from \"neetoui/formik\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n TEMPLATE_FORM_INITIAL_VALUES,\n TEMPLATE_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport TemplateForm from \"./TemplateForm\";\n\nconst Form = ({\n isOpen,\n onClose,\n initialData = {},\n onSubmit = noop,\n isLoading = false,\n placeholders,\n}) => {\n const inputReference = useRef(null);\n\n const { t } = useTranslation();\n\n const header = isEmpty(initialData)\n ? t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })\n : t(\"neetoApprovals.common.edit_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n });\n\n return (\n <Pane\n {...{ isOpen, onClose }}\n initialFocusRef={inputReference}\n size=\"large\"\n >\n <Pane.Header>\n <Typography style=\"h2\">{header}</Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n enableReinitialize: true,\n initialValues: isPresent(initialData)\n ? initialData\n : TEMPLATE_FORM_INITIAL_VALUES,\n validationSchema: TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n <Pane.Body>\n <TemplateForm {...{ initialData, placeholders }} />\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n isSubmitting={isLoading}\n cancelButtonProps={{\n \"data-cy\": \"neeto-approvals-templates-close-template-form-btn\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"neeto-approvals-templates-save-template-btn\",\n }}\n />\n </Pane.Footer>\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import { useCreateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\n\nconst Create = ({ templateUrl, isOpen, onClose, templatePlaceholders }) => {\n const { mutate: createTemplate, isPending } = useCreateTemplate();\n\n const onSubmit = template => {\n const payload = { template };\n\n createTemplate({ url: templateUrl, payload }, { onSuccess: onClose });\n };\n\n return (\n <Form\n {...{ isOpen, onClose, onSubmit }}\n isLoading={isPending}\n placeholders={templatePlaceholders}\n />\n );\n};\n\nexport default Create;\n","import { useUpdateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\n\nconst Edit = ({\n templateUrl,\n template,\n setTemplate,\n isOpen,\n onClose,\n templatePlaceholders,\n}) => {\n const { mutate: updateTemplate, isPending: isUpdating } = useUpdateTemplate({\n onSuccess: () => setTemplate({}),\n });\n\n const onSubmit = template => {\n const payload = { template };\n updateTemplate({ id: template.id, payload, url: templateUrl });\n };\n\n const initialData = {\n ...template,\n descriptionEnabled: !!template.description,\n };\n\n return (\n <Form\n {...{ initialData, isOpen, onClose, onSubmit }}\n isLoading={isUpdating}\n placeholders={templatePlaceholders}\n />\n );\n};\n\nexport default Edit;\n","import { memo } from \"react\";\n\nimport { Label, Typography } from \"neetoui\";\n\nconst Field = ({ label, value }) => (\n <div className=\"flex flex-col items-start justify-center\">\n <Label className=\"mb-1 font-normal\">{label}</Label>\n <Typography style=\"body1\" weight=\"medium\">\n {value}\n </Typography>\n </div>\n);\n\nexport default memo(Field);\n","import { memo } from \"react\";\n\nimport { EditorContent } from \"neetoeditor\";\nimport { Label, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Field from \"./Field\";\n\nconst MemoizedEditorContent = memo(EditorContent);\n\nconst TemplateDetails = ({ isOpen, onClose, template }) => {\n const { t } = useTranslation();\n const { name, description, message } = template;\n\n return (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header className=\"space-y-2\">\n <Typography style=\"h2\">\n {t(\"neetoApprovals.common.templateDetails\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <Field label={t(\"neetoApprovals.common.name\")} value={name} />\n <Field\n label={t(\"neetoApprovals.inputs.labels.description\")}\n value={description}\n />\n <div className=\"flex w-full flex-col space-y-4\">\n <Label className=\"mb-1 font-normal\">\n {t(\"neetoApprovals.inputs.labels.message\")}\n </Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg p-3\"\n content={message}\n />\n </div>\n </Pane.Body>\n </Pane>\n );\n};\n\nexport default TemplateDetails;\n","import { Button } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nexport const renderNoDataHelpText = ({ entity, url }) => (\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpText\"\n style=\"link\"\n values={{ entity: entity.toLocaleLowerCase() }}\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: url }} />,\n }}\n />\n);\n","import { DEFAULT_PAGE_SIZE, SINGULAR } from \"neetocommons/constants\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table as NeetoUITable, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderNoDataHelpText } from \"utils\";\n\nimport { SORT_ORDER } from \"../constants\";\n\nconst Table = ({\n entity,\n columnData,\n rowData,\n totalCount,\n filters,\n setFilters,\n setIsPaneOpen,\n helpDocUrl,\n onEditClick,\n onDeleteClick,\n pageProperties,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const columns = columnData({ onEditClick, onDeleteClick });\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: sorter.field,\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n const noDataProps = {\n primaryButtonProps: {\n label: t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n }),\n onClick: () => setIsPaneOpen(true),\n },\n helpText: renderNoDataHelpText({ entity, url: helpDocUrl }),\n };\n\n if (isEmpty(rowData)) {\n return (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"neetoApprovals.common.notFound_\", { what: entity })}\n {...(!filters.searchTerm && noDataProps)}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <NeetoUITable\n fixedHeight\n columnData={columns}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n scroll={{ x: 0 }}\n tableLayout=\"fixed\"\n paginationProps={{\n hideOnSinglePage: rowData?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n {...{ rowData, totalCount, ...otherProps }}\n />\n </TableWrapper>\n );\n};\n\nexport default Table;\n","import i18next from \"i18next\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nimport { DATA_CY_KEY } from \"components/Approvals/constants\";\n\nconst columnData = ({ onEditClick, onDeleteClick }) => [\n {\n dataIndex: \"name\",\n key: \"name\",\n sorter: true,\n title: i18next.t(\"neetoApprovals.common.name\"),\n ellipsis: true,\n render: (_, template) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography className=\"truncate\" style=\"body2\">\n {template.name}\n </Typography>\n <MoreDropdown\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n }}\n menuItems={[\n {\n key: \"edit\",\n label: i18next.t(\"neetoApprovals.common.edit\"),\n onClick: event => onEditClick(event, template),\n [DATA_CY_KEY]: \"neeto-approvals-templates-edit-template-btn\",\n },\n {\n key: \"delete\",\n label: i18next.t(\"neetoApprovals.common.delete\"),\n onClick: event => onDeleteClick(event, template),\n [DATA_CY_KEY]: \"neeto-approvals-templates-delete-template-btn\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n dataIndex: \"description\",\n key: \"description\",\n title: i18next.t(\"neetoApprovals.inputs.labels.description\"),\n },\n];\n\nexport default columnData;\n","import { useEffect, useState } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n} from \"hooks/reactQuery/templates/useTemplatesApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport Create from \"./Create\";\nimport Edit from \"./Edit\";\nimport TemplateDetails from \"./Show\";\nimport Table from \"./Table\";\nimport columnData from \"./utils/columnData\";\n\nimport { DEFAULT_FILTER_VALUES, SEARCH_DELAY } from \"../constants\";\n\nconst Templates = ({\n searchTerm,\n isNewTemplatePaneOpen,\n setIsNewTemplatePaneOpen,\n helpDocUrl,\n ...otherProps\n}) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [selectedTemplate, setSelectedTemplate] = useState({});\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isEditPaneOpen, setIsEditPaneOpen] = useState(false);\n const [isShowPaneOpen, setIsShowPaneOpen] = useState(false);\n\n const { pageProperties, handlePageChange, resetPageProperties } =\n usePaginate();\n\n const { t } = useTranslation();\n\n const debouncedSearchTerm = useDebounce(searchTerm, SEARCH_DELAY);\n\n useEffect(() => {\n resetPageProperties();\n }, [searchTerm]);\n\n const { data, isLoading: isTemplateLoading } = useFetchTemplates({\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n });\n\n const { templates = [], totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (data) {\n handleEmptyPage(data?.templates, pageProperties, handlePageChange);\n }\n }, [data]);\n\n const { mutate: deleteTemplate, isPending: isDeleting } = useDeleteTemplate();\n\n useEffect(() => {\n if (!isEmpty(selectedTemplate)) return;\n setIsDeleteAlertOpen(false);\n setIsEditPaneOpen(false);\n setIsShowPaneOpen(false);\n }, [selectedTemplate]);\n\n const onEditClick = (event, template) => {\n event.stopPropagation();\n\n setSelectedTemplate(template);\n setIsEditPaneOpen(true);\n };\n\n const onRowClick = (_, templateDetails) => {\n setSelectedTemplate(templateDetails);\n setIsShowPaneOpen(true);\n };\n\n const onDeleteClick = (event, template) => {\n event.stopPropagation();\n\n setSelectedTemplate(template);\n setIsDeleteAlertOpen(true);\n };\n\n const handleDelete = templateId => {\n deleteTemplate({ templateId });\n setSelectedTemplate({});\n };\n\n const entity = t(\"neetoApprovals.common.template\", PLURAL);\n\n return (\n <>\n {isTemplateLoading ? (\n <PageLoader />\n ) : (\n <Table\n {...{\n columnData,\n entity,\n filters,\n handlePageChange,\n helpDocUrl,\n onDeleteClick,\n onEditClick,\n onRowClick,\n pageProperties,\n searchTerm,\n setFilters,\n totalCount,\n }}\n rowData={templates}\n setIsPaneOpen={setIsNewTemplatePaneOpen}\n />\n )}\n <Create\n isOpen={isNewTemplatePaneOpen}\n onClose={() => setIsNewTemplatePaneOpen(false)}\n {...otherProps}\n />\n <Edit\n isOpen={isEditPaneOpen}\n setTemplate={setSelectedTemplate}\n template={selectedTemplate}\n {...otherProps}\n onClose={() => setIsEditPaneOpen(false)}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoApprovals.buttons.delete\")}\n message={\n <Trans\n i18nKey=\"neetoApprovals.alerts.deleting_\"\n values={{\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n name: selectedTemplate?.name,\n }}\n />\n }\n title={t(\"neetoApprovals.common.delete_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })}\n onClose={() => setSelectedTemplate({})}\n onSubmit={() => handleDelete(selectedTemplate?.id)}\n />\n <TemplateDetails\n isOpen={isShowPaneOpen}\n template={selectedTemplate}\n onClose={() => setSelectedTemplate({})}\n />\n </>\n );\n};\n\nexport default Templates;\n","import { t } from \"i18next\";\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { Button } from \"neetoui\";\n\nimport { routes } from \"common/routes\";\n\nimport History from \"./History\";\nimport PendingRequests from \"./PendingRequests\";\nimport Templates from \"./Templates\";\n\nexport const createRoutes = ({\n config,\n isNewTemplatePaneOpen,\n searchTerm,\n setIsNewTemplatePaneOpen,\n}) => [\n {\n component: () => (\n <Templates\n {...{\n isNewTemplatePaneOpen,\n searchTerm,\n setIsNewTemplatePaneOpen,\n ...config,\n }}\n />\n ),\n path: `${config.approvalsPath}${routes.templates.index}`,\n actionBlock: () => (\n <Button\n data-cy=\"neeto-approvals-templates-add-new-button\"\n label={t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })}\n onClick={() => setIsNewTemplatePaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"neetoApprovals.inputs.placeholders.search_\", {\n what: t(\"neetoApprovals.common.template\", PLURAL),\n }),\n },\n {\n component: () => <PendingRequests {...config} />,\n path: `${config.approvalsPath}${routes.pending}`,\n },\n {\n component: () => <History {...config} />,\n path: `${config.approvalsPath}${routes.history}`,\n },\n];\n","import { findBy } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst Header = ({ appRoutes, breadcrumbs, titleHelpPopoverProps }) => {\n const { t } = useTranslation();\n\n const { pathname } = useLocation();\n\n const currentTab = findBy({ path: pathname }, appRoutes);\n\n return (\n <NeetoHeader\n {...{ breadcrumbs, titleHelpPopoverProps }}\n actionBlock={currentTab?.actionBlock?.()}\n title={t(\"neetoApprovals.common.approval\", PLURAL)}\n searchProps={\n currentTab?.searchPlaceholder && {\n placeholder: currentTab?.searchPlaceholder,\n }\n }\n />\n );\n};\n\nexport default Header;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"common/constants\";\n\nconst fetch = () => axios.get(`${BASE_URL}/views`);\n\nconst viewsApi = { fetch };\n\nexport default viewsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport viewsApi from \"apis/views\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\n\nconst useFetchViews = (options = {}) =>\n useQuery({\n queryKey: [QUERY_KEYS.VIEWS],\n queryFn: viewsApi.fetch,\n select: response => response.data || response,\n ...options,\n });\n\nexport { useFetchViews };\n","import { Tab as NeetoUITab } from \"neetoui\";\nimport { keys } from \"ramda\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\nimport { useFetchViews } from \"hooks/reactQuery/views/useViewsApi\";\n\nimport { getApprovalFilter } from \"./utils\";\n\nconst Tab = ({ approvalsPath }) => {\n const { pathname } = useLocation();\n\n const history = useHistory();\n\n const approvalFilter = getApprovalFilter();\n const approvalFilterKeys = keys(approvalFilter);\n const category = pathname.split(routes.approvals)[1]?.toLocaleUpperCase();\n\n const isActive = filter => category.includes(filter);\n\n const getRoute = filter => `${approvalsPath}${filter.toLowerCase()}`;\n\n const { data: { views = {} } = {} } = useFetchViews();\n\n return (\n <NeetoUITab>\n {approvalFilterKeys.map(filter => (\n <NeetoUITab.Item\n active={isActive(filter)}\n count={views[filter?.toLocaleLowerCase()]}\n key={filter}\n label={approvalFilter[filter].label}\n onClick={() => history.push(getRoute(filter))}\n >\n {approvalFilter[filter].label} (\n {views[filter?.toLocaleLowerCase()] || 0})\n </NeetoUITab.Item>\n ))}\n </NeetoUITab>\n );\n};\n\nexport default Tab;\n","import { useState } from \"react\";\n\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\nimport { Redirect, Route, Switch } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\n\nimport { createRoutes } from \"./createRoutes\";\nimport Header from \"./Header\";\nimport Tabs from \"./Tab\";\n\nconst Approvals = ({ config }) => {\n const { searchTerm = \"\" } = useQueryParams();\n const [isNewTemplatePaneOpen, setIsNewTemplatePaneOpen] = useState(false);\n\n const appRoutes = createRoutes({\n config,\n searchTerm,\n isNewTemplatePaneOpen,\n setIsNewTemplatePaneOpen,\n });\n\n return (\n <Container>\n <Header {...{ appRoutes, ...config }} />\n <Tabs approvalsPath={config.approvalsPath} />\n <Switch>\n {appRoutes.map(({ path, component }) => (\n <Route {...{ component, path }} exact key={path} />\n ))}\n <Redirect\n exact\n from={config.approvalsPath}\n // eslint-disable-next-line @bigbinary/neeto/use-common-routes\n to={`${config.approvalsPath}${routes.pending}`}\n />\n </Switch>\n </Container>\n );\n};\n\nexport default Approvals;\n"],"names":["routes","home","approvals","pending","history","templates","index","edit","handleEmptyPage","data","pageProperties","handlePageChange","isEmpty","page","pageSize","usePaginate","_useState","useState","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","_useState2","_slicedToArray","setPageProperties","resetPageProperties","HISTORY_TABLE_COLUMNS","dataIndex","key","sorter","width","title","t","render","approvalLabel","_ref","requestableUrl","url","URL","window","location","origin","_jsx","Button","label","style","to","pathname","status","Tag","capitalize","STATUS_TAG_STYLE","createdAt","DateFormat","FromNow","date","typographyProps","History","helpDocUrl","requestUrl","DEFAULT_FILTER_VALUES","filters","setFilters","debouncedSearchTerm","useDebounce","searchTerm","SEARCH_DELAY","_usePaginate","_useState3","_useState4","approvalDetails","setApprovalDetails","_useTranslation","useTranslation","_useFetchRequests","useFetchRequests","params","_objectSpread","trim","STATUSES","approved","rejected","cancelled","_ref2","_ref2$requests","requests","approvalHistories","_ref2$totalCount","totalCount","useEffect","updateApprovalDetails","requestsData","handleTableChange","_","__","sortBy","camelToSnakeCase","field","orderBy","SORT_ORDER","order","_jsxs","_Fragment","children","TableWrapper","className","hasPagination","Table","allowRowClick","fixedHeight","columnData","currentPageNumber","defaultPageSize","rowData","paginationProps","hideOnSinglePage","length","onChange","onRowClick","NoData","helpText","Trans","i18nKey","values","entity","components","a","target","what","PLURAL","RequestDetailsPane","isOpen","isPresent","onClose","PENDING_TABLE_COLUMNS","removeBy","PendingRequests","pendingRequests","isPending","TEMPLATE_FORM_INITIAL_VALUES","name","description","message","TEMPLATE_FORM_VALIDATION_SCHEMA","yup","object","shape","string","required","test","content","isEditorEmpty","MessageEditor","withT","_ref$placeholders","placeholders","_ref$initialValue","initialValue","FormikEditor","rows","variables","placeholder","TemplateForm","initialData","_useFormikContext","useFormikContext","setFieldValue","handleDescriptionToggle","checked","Input","autoFocus","ToggleFeatureCard","switchName","switchProps","tooltipProps","enabledSwitchText","disabledSwitchText","descriptionEnabled","Textarea","Form","_ref$initialData","_ref$onSubmit","onSubmit","noop","_ref$isLoading","isLoading","inputReference","useRef","header","SINGULAR","Pane","initialFocusRef","size","Header","Typography","FormikForm","formikProps","enableReinitialize","initialValues","validationSchema","Body","Footer","ActionBlock","isSubmitting","cancelButtonProps","onClick","submitButtonProps","Create","templateUrl","templatePlaceholders","_useCreateTemplate","useCreateTemplate","createTemplate","mutate","template","payload","onSuccess","Edit","setTemplate","_useUpdateTemplate","useUpdateTemplate","updateTemplate","isUpdating","id","Field","value","Label","weight","memo","MemoizedEditorContent","EditorContent","TemplateDetails","renderNoDataHelpText","toLocaleLowerCase","setIsPaneOpen","onEditClick","onDeleteClick","otherProps","_objectWithoutProperties","_excluded","columns","noDataProps","primaryButtonProps","NeetoUITable","scroll","x","tableLayout","i18next","ellipsis","MoreDropdown","dropdownProps","strategy","e","stopPropagation","menuItems","_defineProperty","event","DATA_CY_KEY","Templates","isNewTemplatePaneOpen","setIsNewTemplatePaneOpen","selectedTemplate","setSelectedTemplate","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isEditPaneOpen","setIsEditPaneOpen","_useState9","_useState10","isShowPaneOpen","setIsShowPaneOpen","_useFetchTemplates","useFetchTemplates","isTemplateLoading","_ref2$templates","_useDeleteTemplate","useDeleteTemplate","deleteTemplate","isDeleting","templateDetails","handleDelete","templateId","PageLoader","Alert","submitButtonLabel","createRoutes","config","component","path","concat","approvalsPath","actionBlock","searchPlaceholder","_currentTab$actionBlo","appRoutes","breadcrumbs","titleHelpPopoverProps","_useLocation","useLocation","currentTab","findBy","NeetoHeader","call","searchProps","fetch","axios","get","BASE_URL","viewsApi","useFetchViews","options","arguments","undefined","useQuery","queryKey","QUERY_KEYS","VIEWS","queryFn","select","response","Tab","_pathname$split$","useHistory","approvalFilter","getApprovalFilter","approvalFilterKeys","keys","category","split","toLocaleUpperCase","isActive","filter","includes","getRoute","toLowerCase","_useFetchViews","_useFetchViews$data","_useFetchViews$data2","_useFetchViews$data2$","views","NeetoUITab","map","Item","active","count","push","Approvals","_useQueryParams","useQueryParams","_useQueryParams$searc","Container","Tabs","Switch","_createElement","Route","exact","Redirect","from"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Approvals.js","sources":["../app/javascript/src/common/routes.js","../app/javascript/src/common/utils.js","../app/javascript/src/hooks/usePaginate.js","../app/javascript/src/components/Approvals/History/constants.jsx","../app/javascript/src/components/Approvals/History/index.jsx","../app/javascript/src/components/Approvals/PendingRequests/constants.js","../app/javascript/src/components/Approvals/PendingRequests/index.jsx","../app/javascript/src/components/Approvals/Templates/constants.js","../app/javascript/src/components/Approvals/Templates/MessageEditor.jsx","../app/javascript/src/components/Approvals/Templates/TemplateForm.jsx","../app/javascript/src/components/Approvals/Templates/Form.jsx","../app/javascript/src/components/Approvals/Templates/Create.jsx","../app/javascript/src/components/Approvals/Templates/Edit.jsx","../app/javascript/src/components/Approvals/Templates/Show/Field.jsx","../app/javascript/src/components/Approvals/Templates/Show/index.jsx","../app/javascript/src/utils.jsx","../app/javascript/src/components/Approvals/Templates/Table.jsx","../app/javascript/src/components/Approvals/Templates/utils/columnData.jsx","../app/javascript/src/components/Approvals/Templates/index.jsx","../app/javascript/src/components/Approvals/createRoutes.jsx","../app/javascript/src/components/Approvals/Header.jsx","../app/javascript/src/apis/views.js","../app/javascript/src/hooks/reactQuery/views/useViewsApi.js","../app/javascript/src/components/Approvals/Tab.jsx","../app/javascript/src/components/Approvals/index.jsx"],"sourcesContent":["export const routes = {\n home: \"/\",\n approvals: \"/approvals/\",\n pending: \"pending\",\n history: \"history\",\n templates: {\n index: \"templates\",\n new: \"templates/new\",\n edit: \"templates/:id/edit\",\n },\n public: \"approvals/public/request/:id\",\n};\n","import { isEmpty } from \"ramda\";\n\nexport const isOverflown = ({\n clientWidth,\n clientHeight,\n scrollWidth,\n scrollHeight,\n}) => scrollHeight > clientHeight || scrollWidth > clientWidth;\n\nexport const handleEmptyPage = (data, pageProperties, handlePageChange) => {\n if (isEmpty(data) && pageProperties.page !== 1) {\n handlePageChange(pageProperties.page - 1, pageProperties.pageSize);\n }\n};\n","import { useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\n\nconst usePaginate = () => {\n const [pageProperties, setPageProperties] = useState({\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const resetPageProperties = () =>\n setPageProperties({\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const handlePageChange = (page, pageSize) => {\n setPageProperties({ page, pageSize });\n };\n\n return { pageProperties, resetPageProperties, handlePageChange };\n};\n\nexport default usePaginate;\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport DateFormat from \"neetomolecules/DateFormat\";\nimport { Button, Tag } from \"neetoui\";\n\nimport { STATUS_TAG_STYLE } from \"../constants\";\n\nexport const HISTORY_TABLE_COLUMNS = [\n {\n dataIndex: \"approvalLabel\",\n key: \"approvalLabel\",\n sorter: true,\n width: 150,\n title: t(\"neetoApprovals.common.id\"),\n render: (approvalLabel, { requestableUrl }) => {\n const url = new URL(requestableUrl || window.location.origin);\n\n return <Button label={approvalLabel} style=\"link\" to={url.pathname} />;\n },\n },\n {\n dataIndex: \"title\",\n key: \"title\",\n sorter: true,\n width: 400,\n title: t(\"neetoApprovals.common.title\"),\n },\n {\n dataIndex: \"status\",\n key: \"status\",\n sorter: true,\n width: 200,\n title: t(\"neetoApprovals.common.status\"),\n render: status => (\n <Tag label={capitalize(status)} style={STATUS_TAG_STYLE[status]} />\n ),\n },\n {\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n sorter: true,\n width: 200,\n title: t(\"neetoApprovals.common.created\"),\n render: createdAt => (\n <DateFormat.FromNow\n date={createdAt}\n typographyProps={{ style: \"body2\" }}\n />\n ),\n },\n];\n","import { useEffect, useState } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"./constants\";\n\nimport {\n DEFAULT_FILTER_VALUES,\n SEARCH_DELAY,\n SORT_ORDER,\n STATUSES,\n} from \"../constants\";\nimport RequestDetailsPane from \"../RequestDetailsPane\";\nimport { updateApprovalDetails } from \"../utils\";\n\nconst History = ({ helpDocUrl, requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handlePageChange } = usePaginate();\n const [approvalDetails, setApprovalDetails] = useState({});\n const { t } = useTranslation();\n\n const { data } = useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.approved, STATUSES.rejected, STATUSES.cancelled],\n },\n requestUrl,\n });\n\n const { requests: approvalHistories = {}, totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (!data) return;\n handleEmptyPage(data?.requests, pageProperties, handlePageChange);\n setApprovalDetails(approvalDetails =>\n updateApprovalDetails({ requestsData: data?.requests, approvalDetails })\n );\n }, [data]);\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field || \"\"),\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n return (\n <>\n {!isEmpty(approvalHistories) ? (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <Table\n {...{ handlePageChange, totalCount }}\n allowRowClick\n fixedHeight\n columnData={HISTORY_TABLE_COLUMNS}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={approvalHistories}\n paginationProps={{\n hideOnSinglePage:\n approvalHistories?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n helpText={\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpTextLearnMore\"\n style=\"link\"\n values={{ entity: t(\"neetoApprovals.common.history\") }}\n components={{\n a: (\n <Button\n style=\"link\"\n target=\"_blank\"\n to={{ pathname: helpDocUrl }}\n />\n ),\n }}\n />\n }\n title={t(\"neetoApprovals.common.notFound_\", {\n what: t(\"neetoApprovals.common.record\", PLURAL),\n })}\n />\n </div>\n )}\n <RequestDetailsPane\n {...{ approvalDetails }}\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default History;\n","import { removeBy } from \"neetocist\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"../History/constants\";\n\nexport const PENDING_TABLE_COLUMNS = removeBy(\n { key: \"status\" },\n HISTORY_TABLE_COLUMNS\n);\n","import { useEffect, useState } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { PENDING_TABLE_COLUMNS } from \"./constants\";\n\nimport {\n DEFAULT_FILTER_VALUES,\n SEARCH_DELAY,\n SORT_ORDER,\n STATUSES,\n} from \"../constants\";\nimport RequestDetailsPane from \"../RequestDetailsPane\";\n\nconst PendingRequests = ({ helpDocUrl, requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [approvalDetails, setApprovalDetails] = useState({});\n const debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handlePageChange } = usePaginate();\n const { t } = useTranslation();\n\n const { data } = useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.pending],\n },\n requestUrl,\n });\n\n const { requests: pendingRequests = {}, totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (!data) return;\n handleEmptyPage(data?.requests, pageProperties, handlePageChange);\n }, [data]);\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field || \"\"),\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n return (\n <>\n {!isEmpty(pendingRequests) ? (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <Table\n {...{ handlePageChange, totalCount }}\n allowRowClick\n fixedHeight\n columnData={PENDING_TABLE_COLUMNS}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={pendingRequests}\n paginationProps={{\n hideOnSinglePage: pendingRequests?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n helpText={\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpTextLearnMore\"\n style=\"link\"\n components={{\n a: (\n <Button\n style=\"link\"\n target=\"_blank\"\n to={{ pathname: helpDocUrl }}\n />\n ),\n }}\n values={{\n entity: t(\"neetoApprovals.common.pendingApproval\", PLURAL),\n }}\n />\n }\n title={t(\"neetoApprovals.common.notFound_\", {\n what: t(\"neetoApprovals.common.pendingApproval\", PLURAL),\n })}\n />\n </div>\n )}\n <RequestDetailsPane\n {...{ approvalDetails }}\n isPending\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default PendingRequests;\n","import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n message: \"\",\n};\n\nexport const TEMPLATE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n name: yup\n .string()\n .trim()\n .required(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.common.name\"),\n })\n ),\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\n content => !isEditorEmpty(content)\n ),\n});\n","import { withT } from \"neetocommons/react-utils\";\nimport { FormikEditor } from \"neetoeditor\";\n\nconst MessageEditor = withT(({ t, placeholders = [], initialValue = \"\" }) => (\n <FormikEditor\n {...{ initialValue }}\n required\n label={t(\"neetoApprovals.inputs.labels.message\")}\n name=\"message\"\n rows={3}\n variables={placeholders}\n placeholder={t(\"neetoApprovals.inputs.placeholders.enter_\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n })}\n />\n));\n\nexport default MessageEditor;\n","import { useFormikContext } from \"formik\";\nimport ToggleFeatureCard from \"neetomolecules/ToggleFeatureCard\";\nimport { Input, Textarea } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MessageEditor from \"./MessageEditor\";\n\nconst TemplateForm = ({ placeholders, initialData }) => {\n const { t } = useTranslation();\n const { values, setFieldValue } = useFormikContext();\n\n const handleDescriptionToggle = ({ target: { checked } }) => {\n setFieldValue(\"descriptionEnabled\", checked);\n if (!checked) {\n setFieldValue(\"description\", \"\");\n }\n };\n\n return (\n <div className=\"flex w-full flex-col space-y-6\">\n <Input\n autoFocus\n required\n label={t(\"neetoApprovals.common.name\")}\n name=\"name\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.name\")}\n />\n <ToggleFeatureCard\n switchName=\"descriptionEnabled\"\n title={t(\"neetoApprovals.inputs.labels.description\")}\n switchProps={{\n onChange: handleDescriptionToggle,\n tooltipProps: {\n enabledSwitchText: t(\n \"neetoApprovals.templates.descriptionToggle.enable\"\n ),\n disabledSwitchText: t(\n \"neetoApprovals.templates.descriptionToggle.disable\"\n ),\n },\n }}\n >\n {values.descriptionEnabled && (\n <Textarea\n className=\"w-full\"\n name=\"description\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.description\")}\n />\n )}\n </ToggleFeatureCard>\n <MessageEditor {...{ placeholders }} initialValue={initialData.message} />\n </div>\n );\n};\n\nexport default TemplateForm;\n","import { useRef } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form as FormikForm } from \"neetoui/formik\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n TEMPLATE_FORM_INITIAL_VALUES,\n TEMPLATE_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport TemplateForm from \"./TemplateForm\";\n\nconst Form = ({\n isOpen,\n onClose,\n initialData = {},\n onSubmit = noop,\n isLoading = false,\n placeholders,\n}) => {\n const inputReference = useRef(null);\n\n const { t } = useTranslation();\n\n const header = isEmpty(initialData)\n ? t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })\n : t(\"neetoApprovals.common.edit_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n });\n\n return (\n <Pane\n {...{ isOpen, onClose }}\n initialFocusRef={inputReference}\n size=\"large\"\n >\n <Pane.Header>\n <Typography style=\"h2\">{header}</Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n enableReinitialize: true,\n initialValues: isPresent(initialData)\n ? initialData\n : TEMPLATE_FORM_INITIAL_VALUES,\n validationSchema: TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n <Pane.Body>\n <TemplateForm {...{ initialData, placeholders }} />\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n isSubmitting={isLoading}\n cancelButtonProps={{\n \"data-cy\": \"neeto-approvals-templates-close-template-form-btn\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"neeto-approvals-templates-save-template-btn\",\n }}\n />\n </Pane.Footer>\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import { useCreateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\n\nconst Create = ({ templateUrl, isOpen, onClose, templatePlaceholders }) => {\n const { mutate: createTemplate, isPending } = useCreateTemplate();\n\n const onSubmit = template => {\n const payload = { template };\n\n createTemplate({ url: templateUrl, payload }, { onSuccess: onClose });\n };\n\n return (\n <Form\n {...{ isOpen, onClose, onSubmit }}\n isLoading={isPending}\n placeholders={templatePlaceholders}\n />\n );\n};\n\nexport default Create;\n","import { useUpdateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\n\nconst Edit = ({\n templateUrl,\n template,\n setTemplate,\n isOpen,\n onClose,\n templatePlaceholders,\n}) => {\n const { mutate: updateTemplate, isPending: isUpdating } = useUpdateTemplate({\n onSuccess: () => setTemplate({}),\n });\n\n const onSubmit = template => {\n const payload = { template };\n updateTemplate({ id: template.id, payload, url: templateUrl });\n };\n\n const initialData = {\n ...template,\n descriptionEnabled: !!template.description,\n };\n\n return (\n <Form\n {...{ initialData, isOpen, onClose, onSubmit }}\n isLoading={isUpdating}\n placeholders={templatePlaceholders}\n />\n );\n};\n\nexport default Edit;\n","import { memo } from \"react\";\n\nimport { Label, Typography } from \"neetoui\";\n\nconst Field = ({ label, value }) => (\n <div className=\"flex flex-col items-start justify-center\">\n <Label className=\"mb-1 font-normal\">{label}</Label>\n <Typography style=\"body1\" weight=\"medium\">\n {value}\n </Typography>\n </div>\n);\n\nexport default memo(Field);\n","import { memo } from \"react\";\n\nimport { EditorContent } from \"neetoeditor\";\nimport { Label, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Field from \"./Field\";\n\nconst MemoizedEditorContent = memo(EditorContent);\n\nconst TemplateDetails = ({ isOpen, onClose, template }) => {\n const { t } = useTranslation();\n const { name, description, message } = template;\n\n return (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header className=\"space-y-2\">\n <Typography style=\"h2\">\n {t(\"neetoApprovals.common.templateDetails\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <Field label={t(\"neetoApprovals.common.name\")} value={name} />\n <Field\n label={t(\"neetoApprovals.inputs.labels.description\")}\n value={description}\n />\n <div className=\"flex w-full flex-col space-y-4\">\n <Label className=\"mb-1 font-normal\">\n {t(\"neetoApprovals.inputs.labels.message\")}\n </Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg p-3\"\n content={message}\n />\n </div>\n </Pane.Body>\n </Pane>\n );\n};\n\nexport default TemplateDetails;\n","import { Button } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nexport const renderNoDataHelpText = ({ entity, url }) => (\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpText\"\n style=\"link\"\n values={{ entity: entity.toLocaleLowerCase() }}\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: url }} />,\n }}\n />\n);\n","import { DEFAULT_PAGE_SIZE, SINGULAR } from \"neetocommons/constants\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table as NeetoUITable, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderNoDataHelpText } from \"utils\";\n\nimport { SORT_ORDER } from \"../constants\";\n\nconst Table = ({\n entity,\n columnData,\n rowData,\n totalCount,\n filters,\n setFilters,\n setIsPaneOpen,\n helpDocUrl,\n onEditClick,\n onDeleteClick,\n pageProperties,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const columns = columnData({ onEditClick, onDeleteClick });\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: sorter.field,\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n const noDataProps = {\n primaryButtonProps: {\n label: t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n }),\n onClick: () => setIsPaneOpen(true),\n },\n helpText: renderNoDataHelpText({ entity, url: helpDocUrl }),\n };\n\n if (isEmpty(rowData)) {\n return (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"neetoApprovals.common.notFound_\", { what: entity })}\n {...(!filters.searchTerm && noDataProps)}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <NeetoUITable\n fixedHeight\n columnData={columns}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n paginationProps={{\n hideOnSinglePage: rowData?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n {...{ rowData, totalCount, ...otherProps }}\n />\n </TableWrapper>\n );\n};\n\nexport default Table;\n","import i18next from \"i18next\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nimport { DATA_CY_KEY } from \"components/Approvals/constants\";\n\nconst columnData = ({ onEditClick, onDeleteClick }) => [\n {\n dataIndex: \"name\",\n key: \"name\",\n sorter: true,\n title: i18next.t(\"neetoApprovals.common.name\"),\n ellipsis: true,\n width: 300,\n render: (_, template) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography className=\"truncate\" style=\"body2\">\n {template.name}\n </Typography>\n <MoreDropdown\n dropdownButtonProps={{ className: \"mr-1 my-1\" }}\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n appendTo: () => document.body,\n }}\n menuItems={[\n {\n key: \"edit\",\n label: i18next.t(\"neetoApprovals.common.edit\"),\n onClick: event => onEditClick(event, template),\n [DATA_CY_KEY]: \"neeto-approvals-templates-edit-template-btn\",\n },\n {\n key: \"delete\",\n label: i18next.t(\"neetoApprovals.common.delete\"),\n onClick: event => onDeleteClick(event, template),\n [DATA_CY_KEY]: \"neeto-approvals-templates-delete-template-btn\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n dataIndex: \"description\",\n key: \"description\",\n title: i18next.t(\"neetoApprovals.inputs.labels.description\"),\n width: 400,\n },\n];\n\nexport default columnData;\n","import { useEffect, useState } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n} from \"hooks/reactQuery/templates/useTemplatesApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport Create from \"./Create\";\nimport Edit from \"./Edit\";\nimport TemplateDetails from \"./Show\";\nimport Table from \"./Table\";\nimport columnData from \"./utils/columnData\";\n\nimport { DEFAULT_FILTER_VALUES, SEARCH_DELAY } from \"../constants\";\n\nconst Templates = ({\n searchTerm,\n isNewTemplatePaneOpen,\n setIsNewTemplatePaneOpen,\n helpDocUrl,\n ...otherProps\n}) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [selectedTemplate, setSelectedTemplate] = useState({});\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isEditPaneOpen, setIsEditPaneOpen] = useState(false);\n const [isShowPaneOpen, setIsShowPaneOpen] = useState(false);\n\n const { pageProperties, handlePageChange, resetPageProperties } =\n usePaginate();\n\n const { t } = useTranslation();\n\n const debouncedSearchTerm = useDebounce(searchTerm, SEARCH_DELAY);\n\n useEffect(() => {\n resetPageProperties();\n }, [searchTerm]);\n\n const { data, isLoading: isTemplateLoading } = useFetchTemplates({\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n });\n\n const { templates = [], totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (data) {\n handleEmptyPage(data?.templates, pageProperties, handlePageChange);\n }\n }, [data]);\n\n const { mutate: deleteTemplate, isPending: isDeleting } = useDeleteTemplate();\n\n useEffect(() => {\n if (!isEmpty(selectedTemplate)) return;\n setIsDeleteAlertOpen(false);\n setIsEditPaneOpen(false);\n setIsShowPaneOpen(false);\n }, [selectedTemplate]);\n\n const onEditClick = (event, template) => {\n event.stopPropagation();\n\n setSelectedTemplate(template);\n setIsEditPaneOpen(true);\n };\n\n const onRowClick = (_, templateDetails) => {\n setSelectedTemplate(templateDetails);\n setIsShowPaneOpen(true);\n };\n\n const onDeleteClick = (event, template) => {\n event.stopPropagation();\n\n setSelectedTemplate(template);\n setIsDeleteAlertOpen(true);\n };\n\n const handleDelete = templateId => {\n deleteTemplate({ templateId });\n setSelectedTemplate({});\n };\n\n const entity = t(\"neetoApprovals.common.template\", PLURAL);\n\n return (\n <>\n {isTemplateLoading ? (\n <PageLoader />\n ) : (\n <Table\n {...{\n columnData,\n entity,\n filters,\n handlePageChange,\n helpDocUrl,\n onDeleteClick,\n onEditClick,\n onRowClick,\n pageProperties,\n searchTerm,\n setFilters,\n totalCount,\n }}\n rowData={templates}\n setIsPaneOpen={setIsNewTemplatePaneOpen}\n />\n )}\n <Create\n isOpen={isNewTemplatePaneOpen}\n onClose={() => setIsNewTemplatePaneOpen(false)}\n {...otherProps}\n />\n <Edit\n isOpen={isEditPaneOpen}\n setTemplate={setSelectedTemplate}\n template={selectedTemplate}\n {...otherProps}\n onClose={() => setIsEditPaneOpen(false)}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoApprovals.buttons.delete\")}\n message={\n <Trans\n i18nKey=\"neetoApprovals.alerts.deleting_\"\n values={{\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n name: selectedTemplate?.name,\n }}\n />\n }\n title={t(\"neetoApprovals.common.delete_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })}\n onClose={() => setSelectedTemplate({})}\n onSubmit={() => handleDelete(selectedTemplate?.id)}\n />\n <TemplateDetails\n isOpen={isShowPaneOpen}\n template={selectedTemplate}\n onClose={() => setSelectedTemplate({})}\n />\n </>\n );\n};\n\nexport default Templates;\n","import { t } from \"i18next\";\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { Button } from \"neetoui\";\n\nimport { routes } from \"common/routes\";\n\nimport History from \"./History\";\nimport PendingRequests from \"./PendingRequests\";\nimport Templates from \"./Templates\";\n\nexport const createRoutes = ({\n config,\n isNewTemplatePaneOpen,\n searchTerm,\n setIsNewTemplatePaneOpen,\n}) => [\n {\n component: () => (\n <Templates\n {...{\n isNewTemplatePaneOpen,\n searchTerm,\n setIsNewTemplatePaneOpen,\n ...config,\n }}\n />\n ),\n path: `${config.approvalsPath}${routes.templates.index}`,\n actionBlock: () => (\n <Button\n data-cy=\"neeto-approvals-templates-add-new-button\"\n label={t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })}\n onClick={() => setIsNewTemplatePaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"neetoApprovals.inputs.placeholders.search_\", {\n what: t(\"neetoApprovals.common.template\", PLURAL),\n }),\n },\n {\n component: () => <PendingRequests {...config} />,\n path: `${config.approvalsPath}${routes.pending}`,\n },\n {\n component: () => <History {...config} />,\n path: `${config.approvalsPath}${routes.history}`,\n },\n];\n","import { findBy } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst Header = ({ appRoutes, breadcrumbs, titleHelpPopoverProps }) => {\n const { t } = useTranslation();\n\n const { pathname } = useLocation();\n\n const currentTab = findBy({ path: pathname }, appRoutes);\n\n return (\n <NeetoHeader\n {...{ breadcrumbs, titleHelpPopoverProps }}\n actionBlock={currentTab?.actionBlock?.()}\n title={t(\"neetoApprovals.common.approval\", PLURAL)}\n searchProps={\n currentTab?.searchPlaceholder && {\n placeholder: currentTab?.searchPlaceholder,\n }\n }\n />\n );\n};\n\nexport default Header;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"common/constants\";\n\nconst fetch = () => axios.get(`${BASE_URL}/views`);\n\nconst viewsApi = { fetch };\n\nexport default viewsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport viewsApi from \"apis/views\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\n\nconst useFetchViews = (options = {}) =>\n useQuery({\n queryKey: [QUERY_KEYS.VIEWS],\n queryFn: viewsApi.fetch,\n select: response => response.data || response,\n ...options,\n });\n\nexport { useFetchViews };\n","import { Tab as NeetoUITab } from \"neetoui\";\nimport { keys } from \"ramda\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\nimport { useFetchViews } from \"hooks/reactQuery/views/useViewsApi\";\n\nimport { getApprovalFilter } from \"./utils\";\n\nconst Tab = ({ approvalsPath }) => {\n const { pathname } = useLocation();\n\n const history = useHistory();\n\n const approvalFilter = getApprovalFilter();\n const approvalFilterKeys = keys(approvalFilter);\n const category = pathname.split(routes.approvals)[1]?.toLocaleUpperCase();\n\n const isActive = filter => category.includes(filter);\n\n const getRoute = filter => `${approvalsPath}${filter.toLowerCase()}`;\n\n const { data: { views = {} } = {} } = useFetchViews();\n\n return (\n <NeetoUITab>\n {approvalFilterKeys.map(filter => (\n <NeetoUITab.Item\n active={isActive(filter)}\n count={views[filter?.toLocaleLowerCase()]}\n key={filter}\n label={approvalFilter[filter].label}\n onClick={() => history.push(getRoute(filter))}\n >\n {approvalFilter[filter].label} (\n {views[filter?.toLocaleLowerCase()] || 0})\n </NeetoUITab.Item>\n ))}\n </NeetoUITab>\n );\n};\n\nexport default Tab;\n","import { useState } from \"react\";\n\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\nimport { Redirect, Route, Switch } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\n\nimport { createRoutes } from \"./createRoutes\";\nimport Header from \"./Header\";\nimport Tabs from \"./Tab\";\n\nconst Approvals = ({ config }) => {\n const { searchTerm = \"\" } = useQueryParams();\n const [isNewTemplatePaneOpen, setIsNewTemplatePaneOpen] = useState(false);\n\n const appRoutes = createRoutes({\n config,\n searchTerm,\n isNewTemplatePaneOpen,\n setIsNewTemplatePaneOpen,\n });\n\n return (\n <Container>\n <Header {...{ appRoutes, ...config }} />\n <Tabs approvalsPath={config.approvalsPath} />\n <Switch>\n {appRoutes.map(({ path, component }) => (\n <Route {...{ component, path }} exact key={path} />\n ))}\n <Redirect\n exact\n from={config.approvalsPath}\n // eslint-disable-next-line @bigbinary/neeto/use-common-routes\n to={`${config.approvalsPath}${routes.pending}`}\n />\n </Switch>\n </Container>\n );\n};\n\nexport default Approvals;\n"],"names":["routes","home","approvals","pending","history","templates","index","edit","handleEmptyPage","data","pageProperties","handlePageChange","isEmpty","page","pageSize","usePaginate","_useState","useState","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","_useState2","_slicedToArray","setPageProperties","resetPageProperties","HISTORY_TABLE_COLUMNS","dataIndex","key","sorter","width","title","t","render","approvalLabel","_ref","requestableUrl","url","URL","window","location","origin","_jsx","Button","label","style","to","pathname","status","Tag","capitalize","STATUS_TAG_STYLE","createdAt","DateFormat","FromNow","date","typographyProps","History","helpDocUrl","requestUrl","DEFAULT_FILTER_VALUES","filters","setFilters","debouncedSearchTerm","useDebounce","searchTerm","SEARCH_DELAY","_usePaginate","_useState3","_useState4","approvalDetails","setApprovalDetails","_useTranslation","useTranslation","_useFetchRequests","useFetchRequests","params","_objectSpread","trim","STATUSES","approved","rejected","cancelled","_ref2","_ref2$requests","requests","approvalHistories","_ref2$totalCount","totalCount","useEffect","updateApprovalDetails","requestsData","handleTableChange","_","__","sortBy","camelToSnakeCase","field","orderBy","SORT_ORDER","order","_jsxs","_Fragment","children","TableWrapper","className","hasPagination","Table","allowRowClick","fixedHeight","columnData","currentPageNumber","defaultPageSize","rowData","paginationProps","hideOnSinglePage","length","onChange","onRowClick","NoData","helpText","Trans","i18nKey","values","entity","components","a","target","what","PLURAL","RequestDetailsPane","isOpen","isPresent","onClose","PENDING_TABLE_COLUMNS","removeBy","PendingRequests","pendingRequests","isPending","TEMPLATE_FORM_INITIAL_VALUES","name","description","message","TEMPLATE_FORM_VALIDATION_SCHEMA","yup","object","shape","string","required","test","content","isEditorEmpty","MessageEditor","withT","_ref$placeholders","placeholders","_ref$initialValue","initialValue","FormikEditor","rows","variables","placeholder","TemplateForm","initialData","_useFormikContext","useFormikContext","setFieldValue","handleDescriptionToggle","checked","Input","autoFocus","ToggleFeatureCard","switchName","switchProps","tooltipProps","enabledSwitchText","disabledSwitchText","descriptionEnabled","Textarea","Form","_ref$initialData","_ref$onSubmit","onSubmit","noop","_ref$isLoading","isLoading","inputReference","useRef","header","SINGULAR","Pane","initialFocusRef","size","Header","Typography","FormikForm","formikProps","enableReinitialize","initialValues","validationSchema","Body","Footer","ActionBlock","isSubmitting","cancelButtonProps","onClick","submitButtonProps","Create","templateUrl","templatePlaceholders","_useCreateTemplate","useCreateTemplate","createTemplate","mutate","template","payload","onSuccess","Edit","setTemplate","_useUpdateTemplate","useUpdateTemplate","updateTemplate","isUpdating","id","Field","value","Label","weight","memo","MemoizedEditorContent","EditorContent","TemplateDetails","renderNoDataHelpText","toLocaleLowerCase","setIsPaneOpen","onEditClick","onDeleteClick","otherProps","_objectWithoutProperties","_excluded","columns","noDataProps","primaryButtonProps","NeetoUITable","i18next","ellipsis","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","e","stopPropagation","appendTo","document","body","menuItems","_defineProperty","event","DATA_CY_KEY","Templates","isNewTemplatePaneOpen","setIsNewTemplatePaneOpen","selectedTemplate","setSelectedTemplate","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isEditPaneOpen","setIsEditPaneOpen","_useState9","_useState10","isShowPaneOpen","setIsShowPaneOpen","_useFetchTemplates","useFetchTemplates","isTemplateLoading","_ref2$templates","_useDeleteTemplate","useDeleteTemplate","deleteTemplate","isDeleting","templateDetails","handleDelete","templateId","PageLoader","Alert","submitButtonLabel","createRoutes","config","component","path","concat","approvalsPath","actionBlock","searchPlaceholder","_currentTab$actionBlo","appRoutes","breadcrumbs","titleHelpPopoverProps","_useLocation","useLocation","currentTab","findBy","NeetoHeader","call","searchProps","fetch","axios","get","BASE_URL","viewsApi","useFetchViews","options","arguments","undefined","useQuery","queryKey","QUERY_KEYS","VIEWS","queryFn","select","response","Tab","_pathname$split$","useHistory","approvalFilter","getApprovalFilter","approvalFilterKeys","keys","category","split","toLocaleUpperCase","isActive","filter","includes","getRoute","toLowerCase","_useFetchViews","_useFetchViews$data","_useFetchViews$data2","_useFetchViews$data2$","views","NeetoUITab","map","Item","active","count","push","Approvals","_useQueryParams","useQueryParams","_useQueryParams$searc","Container","Tabs","Switch","_createElement","Route","exact","Redirect","from"],"mappings":"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"}
|
package/dist/cjs/Approvals.js
CHANGED
|
@@ -708,10 +708,6 @@ var Table = function Table(_ref) {
|
|
|
708
708
|
columnData: columns,
|
|
709
709
|
currentPageNumber: pageProperties.page,
|
|
710
710
|
defaultPageSize: pageProperties.pageSize,
|
|
711
|
-
scroll: {
|
|
712
|
-
x: 0
|
|
713
|
-
},
|
|
714
|
-
tableLayout: "fixed",
|
|
715
711
|
paginationProps: {
|
|
716
712
|
hideOnSinglePage: (rowData === null || rowData === void 0 ? void 0 : rowData.length) < constants.DEFAULT_PAGE_SIZE + 1
|
|
717
713
|
},
|
|
@@ -732,6 +728,7 @@ var columnData = function columnData(_ref) {
|
|
|
732
728
|
sorter: true,
|
|
733
729
|
title: i18next.t("neetoApprovals.common.name"),
|
|
734
730
|
ellipsis: true,
|
|
731
|
+
width: 300,
|
|
735
732
|
render: function render(_, template) {
|
|
736
733
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
737
734
|
className: "flex items-center justify-between gap-x-3",
|
|
@@ -740,10 +737,16 @@ var columnData = function columnData(_ref) {
|
|
|
740
737
|
style: "body2",
|
|
741
738
|
children: template.name
|
|
742
739
|
}), /*#__PURE__*/jsxRuntime.jsx(MoreDropdown, {
|
|
740
|
+
dropdownButtonProps: {
|
|
741
|
+
className: "mr-1 my-1"
|
|
742
|
+
},
|
|
743
743
|
dropdownProps: {
|
|
744
744
|
strategy: "fixed",
|
|
745
745
|
onClick: function onClick(e) {
|
|
746
746
|
return e.stopPropagation();
|
|
747
|
+
},
|
|
748
|
+
appendTo: function appendTo() {
|
|
749
|
+
return document.body;
|
|
747
750
|
}
|
|
748
751
|
},
|
|
749
752
|
menuItems: [_defineProperty({
|
|
@@ -765,7 +768,8 @@ var columnData = function columnData(_ref) {
|
|
|
765
768
|
}, {
|
|
766
769
|
dataIndex: "description",
|
|
767
770
|
key: "description",
|
|
768
|
-
title: i18next.t("neetoApprovals.inputs.labels.description")
|
|
771
|
+
title: i18next.t("neetoApprovals.inputs.labels.description"),
|
|
772
|
+
width: 400
|
|
769
773
|
}];
|
|
770
774
|
};
|
|
771
775
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Approvals.js","sources":["../../app/javascript/src/common/routes.js","../../app/javascript/src/common/utils.js","../../app/javascript/src/hooks/usePaginate.js","../../app/javascript/src/components/Approvals/History/constants.jsx","../../app/javascript/src/components/Approvals/History/index.jsx","../../app/javascript/src/components/Approvals/PendingRequests/constants.js","../../app/javascript/src/components/Approvals/PendingRequests/index.jsx","../../app/javascript/src/components/Approvals/Templates/constants.js","../../app/javascript/src/components/Approvals/Templates/MessageEditor.jsx","../../app/javascript/src/components/Approvals/Templates/TemplateForm.jsx","../../app/javascript/src/components/Approvals/Templates/Form.jsx","../../app/javascript/src/components/Approvals/Templates/Create.jsx","../../app/javascript/src/components/Approvals/Templates/Edit.jsx","../../app/javascript/src/components/Approvals/Templates/Show/Field.jsx","../../app/javascript/src/components/Approvals/Templates/Show/index.jsx","../../app/javascript/src/utils.jsx","../../app/javascript/src/components/Approvals/Templates/Table.jsx","../../app/javascript/src/components/Approvals/Templates/utils/columnData.jsx","../../app/javascript/src/components/Approvals/Templates/index.jsx","../../app/javascript/src/components/Approvals/createRoutes.jsx","../../app/javascript/src/components/Approvals/Header.jsx","../../app/javascript/src/apis/views.js","../../app/javascript/src/hooks/reactQuery/views/useViewsApi.js","../../app/javascript/src/components/Approvals/Tab.jsx","../../app/javascript/src/components/Approvals/index.jsx"],"sourcesContent":["export const routes = {\n home: \"/\",\n approvals: \"/approvals/\",\n pending: \"pending\",\n history: \"history\",\n templates: {\n index: \"templates\",\n new: \"templates/new\",\n edit: \"templates/:id/edit\",\n },\n public: \"approvals/public/request/:id\",\n};\n","import { isEmpty } from \"ramda\";\n\nexport const isOverflown = ({\n clientWidth,\n clientHeight,\n scrollWidth,\n scrollHeight,\n}) => scrollHeight > clientHeight || scrollWidth > clientWidth;\n\nexport const handleEmptyPage = (data, pageProperties, handlePageChange) => {\n if (isEmpty(data) && pageProperties.page !== 1) {\n handlePageChange(pageProperties.page - 1, pageProperties.pageSize);\n }\n};\n","import { useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\n\nconst usePaginate = () => {\n const [pageProperties, setPageProperties] = useState({\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const resetPageProperties = () =>\n setPageProperties({\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const handlePageChange = (page, pageSize) => {\n setPageProperties({ page, pageSize });\n };\n\n return { pageProperties, resetPageProperties, handlePageChange };\n};\n\nexport default usePaginate;\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport DateFormat from \"neetomolecules/DateFormat\";\nimport { Button, Tag } from \"neetoui\";\n\nimport { STATUS_TAG_STYLE } from \"../constants\";\n\nexport const HISTORY_TABLE_COLUMNS = [\n {\n dataIndex: \"approvalLabel\",\n key: \"approvalLabel\",\n sorter: true,\n width: 150,\n title: t(\"neetoApprovals.common.id\"),\n render: (approvalLabel, { requestableUrl }) => {\n const url = new URL(requestableUrl || window.location.origin);\n\n return <Button label={approvalLabel} style=\"link\" to={url.pathname} />;\n },\n },\n {\n dataIndex: \"title\",\n key: \"title\",\n sorter: true,\n width: 400,\n title: t(\"neetoApprovals.common.title\"),\n },\n {\n dataIndex: \"status\",\n key: \"status\",\n sorter: true,\n width: 200,\n title: t(\"neetoApprovals.common.status\"),\n render: status => (\n <Tag label={capitalize(status)} style={STATUS_TAG_STYLE[status]} />\n ),\n },\n {\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n sorter: true,\n width: 200,\n title: t(\"neetoApprovals.common.created\"),\n render: createdAt => (\n <DateFormat.FromNow\n date={createdAt}\n typographyProps={{ style: \"body2\" }}\n />\n ),\n },\n];\n","import { useEffect, useState } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"./constants\";\n\nimport {\n DEFAULT_FILTER_VALUES,\n SEARCH_DELAY,\n SORT_ORDER,\n STATUSES,\n} from \"../constants\";\nimport RequestDetailsPane from \"../RequestDetailsPane\";\nimport { updateApprovalDetails } from \"../utils\";\n\nconst History = ({ helpDocUrl, requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handlePageChange } = usePaginate();\n const [approvalDetails, setApprovalDetails] = useState({});\n const { t } = useTranslation();\n\n const { data } = useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.approved, STATUSES.rejected, STATUSES.cancelled],\n },\n requestUrl,\n });\n\n const { requests: approvalHistories = {}, totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (!data) return;\n handleEmptyPage(data?.requests, pageProperties, handlePageChange);\n setApprovalDetails(approvalDetails =>\n updateApprovalDetails({ requestsData: data?.requests, approvalDetails })\n );\n }, [data]);\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field || \"\"),\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n return (\n <>\n {!isEmpty(approvalHistories) ? (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <Table\n {...{ handlePageChange, totalCount }}\n allowRowClick\n fixedHeight\n columnData={HISTORY_TABLE_COLUMNS}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={approvalHistories}\n paginationProps={{\n hideOnSinglePage:\n approvalHistories?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n helpText={\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpTextLearnMore\"\n style=\"link\"\n values={{ entity: t(\"neetoApprovals.common.history\") }}\n components={{\n a: (\n <Button\n style=\"link\"\n target=\"_blank\"\n to={{ pathname: helpDocUrl }}\n />\n ),\n }}\n />\n }\n title={t(\"neetoApprovals.common.notFound_\", {\n what: t(\"neetoApprovals.common.record\", PLURAL),\n })}\n />\n </div>\n )}\n <RequestDetailsPane\n {...{ approvalDetails }}\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default History;\n","import { removeBy } from \"neetocist\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"../History/constants\";\n\nexport const PENDING_TABLE_COLUMNS = removeBy(\n { key: \"status\" },\n HISTORY_TABLE_COLUMNS\n);\n","import { useEffect, useState } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { PENDING_TABLE_COLUMNS } from \"./constants\";\n\nimport {\n DEFAULT_FILTER_VALUES,\n SEARCH_DELAY,\n SORT_ORDER,\n STATUSES,\n} from \"../constants\";\nimport RequestDetailsPane from \"../RequestDetailsPane\";\n\nconst PendingRequests = ({ helpDocUrl, requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [approvalDetails, setApprovalDetails] = useState({});\n const debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handlePageChange } = usePaginate();\n const { t } = useTranslation();\n\n const { data } = useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.pending],\n },\n requestUrl,\n });\n\n const { requests: pendingRequests = {}, totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (!data) return;\n handleEmptyPage(data?.requests, pageProperties, handlePageChange);\n }, [data]);\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field || \"\"),\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n return (\n <>\n {!isEmpty(pendingRequests) ? (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <Table\n {...{ handlePageChange, totalCount }}\n allowRowClick\n fixedHeight\n columnData={PENDING_TABLE_COLUMNS}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={pendingRequests}\n paginationProps={{\n hideOnSinglePage: pendingRequests?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n helpText={\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpTextLearnMore\"\n style=\"link\"\n components={{\n a: (\n <Button\n style=\"link\"\n target=\"_blank\"\n to={{ pathname: helpDocUrl }}\n />\n ),\n }}\n values={{\n entity: t(\"neetoApprovals.common.pendingApproval\", PLURAL),\n }}\n />\n }\n title={t(\"neetoApprovals.common.notFound_\", {\n what: t(\"neetoApprovals.common.pendingApproval\", PLURAL),\n })}\n />\n </div>\n )}\n <RequestDetailsPane\n {...{ approvalDetails }}\n isPending\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default PendingRequests;\n","import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n message: \"\",\n};\n\nexport const TEMPLATE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n name: yup\n .string()\n .trim()\n .required(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.common.name\"),\n })\n ),\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\n content => !isEditorEmpty(content)\n ),\n});\n","import { withT } from \"neetocommons/react-utils\";\nimport { FormikEditor } from \"neetoeditor\";\n\nconst MessageEditor = withT(({ t, placeholders = [], initialValue = \"\" }) => (\n <FormikEditor\n {...{ initialValue }}\n required\n label={t(\"neetoApprovals.inputs.labels.message\")}\n name=\"message\"\n rows={3}\n variables={placeholders}\n placeholder={t(\"neetoApprovals.inputs.placeholders.enter_\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n })}\n />\n));\n\nexport default MessageEditor;\n","import { useFormikContext } from \"formik\";\nimport ToggleFeatureCard from \"neetomolecules/ToggleFeatureCard\";\nimport { Input, Textarea } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MessageEditor from \"./MessageEditor\";\n\nconst TemplateForm = ({ placeholders, initialData }) => {\n const { t } = useTranslation();\n const { values, setFieldValue } = useFormikContext();\n\n const handleDescriptionToggle = ({ target: { checked } }) => {\n setFieldValue(\"descriptionEnabled\", checked);\n if (!checked) {\n setFieldValue(\"description\", \"\");\n }\n };\n\n return (\n <div className=\"flex w-full flex-col space-y-6\">\n <Input\n autoFocus\n required\n label={t(\"neetoApprovals.common.name\")}\n name=\"name\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.name\")}\n />\n <ToggleFeatureCard\n switchName=\"descriptionEnabled\"\n title={t(\"neetoApprovals.inputs.labels.description\")}\n switchProps={{\n onChange: handleDescriptionToggle,\n tooltipProps: {\n enabledSwitchText: t(\n \"neetoApprovals.templates.descriptionToggle.enable\"\n ),\n disabledSwitchText: t(\n \"neetoApprovals.templates.descriptionToggle.disable\"\n ),\n },\n }}\n >\n {values.descriptionEnabled && (\n <Textarea\n className=\"w-full\"\n name=\"description\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.description\")}\n />\n )}\n </ToggleFeatureCard>\n <MessageEditor {...{ placeholders }} initialValue={initialData.message} />\n </div>\n );\n};\n\nexport default TemplateForm;\n","import { useRef } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form as FormikForm } from \"neetoui/formik\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n TEMPLATE_FORM_INITIAL_VALUES,\n TEMPLATE_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport TemplateForm from \"./TemplateForm\";\n\nconst Form = ({\n isOpen,\n onClose,\n initialData = {},\n onSubmit = noop,\n isLoading = false,\n placeholders,\n}) => {\n const inputReference = useRef(null);\n\n const { t } = useTranslation();\n\n const header = isEmpty(initialData)\n ? t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })\n : t(\"neetoApprovals.common.edit_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n });\n\n return (\n <Pane\n {...{ isOpen, onClose }}\n initialFocusRef={inputReference}\n size=\"large\"\n >\n <Pane.Header>\n <Typography style=\"h2\">{header}</Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n enableReinitialize: true,\n initialValues: isPresent(initialData)\n ? initialData\n : TEMPLATE_FORM_INITIAL_VALUES,\n validationSchema: TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n <Pane.Body>\n <TemplateForm {...{ initialData, placeholders }} />\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n isSubmitting={isLoading}\n cancelButtonProps={{\n \"data-cy\": \"neeto-approvals-templates-close-template-form-btn\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"neeto-approvals-templates-save-template-btn\",\n }}\n />\n </Pane.Footer>\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import { useCreateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\n\nconst Create = ({ templateUrl, isOpen, onClose, templatePlaceholders }) => {\n const { mutate: createTemplate, isPending } = useCreateTemplate();\n\n const onSubmit = template => {\n const payload = { template };\n\n createTemplate({ url: templateUrl, payload }, { onSuccess: onClose });\n };\n\n return (\n <Form\n {...{ isOpen, onClose, onSubmit }}\n isLoading={isPending}\n placeholders={templatePlaceholders}\n />\n );\n};\n\nexport default Create;\n","import { useUpdateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\n\nconst Edit = ({\n templateUrl,\n template,\n setTemplate,\n isOpen,\n onClose,\n templatePlaceholders,\n}) => {\n const { mutate: updateTemplate, isPending: isUpdating } = useUpdateTemplate({\n onSuccess: () => setTemplate({}),\n });\n\n const onSubmit = template => {\n const payload = { template };\n updateTemplate({ id: template.id, payload, url: templateUrl });\n };\n\n const initialData = {\n ...template,\n descriptionEnabled: !!template.description,\n };\n\n return (\n <Form\n {...{ initialData, isOpen, onClose, onSubmit }}\n isLoading={isUpdating}\n placeholders={templatePlaceholders}\n />\n );\n};\n\nexport default Edit;\n","import { memo } from \"react\";\n\nimport { Label, Typography } from \"neetoui\";\n\nconst Field = ({ label, value }) => (\n <div className=\"flex flex-col items-start justify-center\">\n <Label className=\"mb-1 font-normal\">{label}</Label>\n <Typography style=\"body1\" weight=\"medium\">\n {value}\n </Typography>\n </div>\n);\n\nexport default memo(Field);\n","import { memo } from \"react\";\n\nimport { EditorContent } from \"neetoeditor\";\nimport { Label, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Field from \"./Field\";\n\nconst MemoizedEditorContent = memo(EditorContent);\n\nconst TemplateDetails = ({ isOpen, onClose, template }) => {\n const { t } = useTranslation();\n const { name, description, message } = template;\n\n return (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header className=\"space-y-2\">\n <Typography style=\"h2\">\n {t(\"neetoApprovals.common.templateDetails\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <Field label={t(\"neetoApprovals.common.name\")} value={name} />\n <Field\n label={t(\"neetoApprovals.inputs.labels.description\")}\n value={description}\n />\n <div className=\"flex w-full flex-col space-y-4\">\n <Label className=\"mb-1 font-normal\">\n {t(\"neetoApprovals.inputs.labels.message\")}\n </Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg p-3\"\n content={message}\n />\n </div>\n </Pane.Body>\n </Pane>\n );\n};\n\nexport default TemplateDetails;\n","import { Button } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nexport const renderNoDataHelpText = ({ entity, url }) => (\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpText\"\n style=\"link\"\n values={{ entity: entity.toLocaleLowerCase() }}\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: url }} />,\n }}\n />\n);\n","import { DEFAULT_PAGE_SIZE, SINGULAR } from \"neetocommons/constants\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table as NeetoUITable, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderNoDataHelpText } from \"utils\";\n\nimport { SORT_ORDER } from \"../constants\";\n\nconst Table = ({\n entity,\n columnData,\n rowData,\n totalCount,\n filters,\n setFilters,\n setIsPaneOpen,\n helpDocUrl,\n onEditClick,\n onDeleteClick,\n pageProperties,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const columns = columnData({ onEditClick, onDeleteClick });\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: sorter.field,\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n const noDataProps = {\n primaryButtonProps: {\n label: t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n }),\n onClick: () => setIsPaneOpen(true),\n },\n helpText: renderNoDataHelpText({ entity, url: helpDocUrl }),\n };\n\n if (isEmpty(rowData)) {\n return (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"neetoApprovals.common.notFound_\", { what: entity })}\n {...(!filters.searchTerm && noDataProps)}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <NeetoUITable\n fixedHeight\n columnData={columns}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n scroll={{ x: 0 }}\n tableLayout=\"fixed\"\n paginationProps={{\n hideOnSinglePage: rowData?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n {...{ rowData, totalCount, ...otherProps }}\n />\n </TableWrapper>\n );\n};\n\nexport default Table;\n","import i18next from \"i18next\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nimport { DATA_CY_KEY } from \"components/Approvals/constants\";\n\nconst columnData = ({ onEditClick, onDeleteClick }) => [\n {\n dataIndex: \"name\",\n key: \"name\",\n sorter: true,\n title: i18next.t(\"neetoApprovals.common.name\"),\n ellipsis: true,\n render: (_, template) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography className=\"truncate\" style=\"body2\">\n {template.name}\n </Typography>\n <MoreDropdown\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n }}\n menuItems={[\n {\n key: \"edit\",\n label: i18next.t(\"neetoApprovals.common.edit\"),\n onClick: event => onEditClick(event, template),\n [DATA_CY_KEY]: \"neeto-approvals-templates-edit-template-btn\",\n },\n {\n key: \"delete\",\n label: i18next.t(\"neetoApprovals.common.delete\"),\n onClick: event => onDeleteClick(event, template),\n [DATA_CY_KEY]: \"neeto-approvals-templates-delete-template-btn\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n dataIndex: \"description\",\n key: \"description\",\n title: i18next.t(\"neetoApprovals.inputs.labels.description\"),\n },\n];\n\nexport default columnData;\n","import { useEffect, useState } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n} from \"hooks/reactQuery/templates/useTemplatesApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport Create from \"./Create\";\nimport Edit from \"./Edit\";\nimport TemplateDetails from \"./Show\";\nimport Table from \"./Table\";\nimport columnData from \"./utils/columnData\";\n\nimport { DEFAULT_FILTER_VALUES, SEARCH_DELAY } from \"../constants\";\n\nconst Templates = ({\n searchTerm,\n isNewTemplatePaneOpen,\n setIsNewTemplatePaneOpen,\n helpDocUrl,\n ...otherProps\n}) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [selectedTemplate, setSelectedTemplate] = useState({});\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isEditPaneOpen, setIsEditPaneOpen] = useState(false);\n const [isShowPaneOpen, setIsShowPaneOpen] = useState(false);\n\n const { pageProperties, handlePageChange, resetPageProperties } =\n usePaginate();\n\n const { t } = useTranslation();\n\n const debouncedSearchTerm = useDebounce(searchTerm, SEARCH_DELAY);\n\n useEffect(() => {\n resetPageProperties();\n }, [searchTerm]);\n\n const { data, isLoading: isTemplateLoading } = useFetchTemplates({\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n });\n\n const { templates = [], totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (data) {\n handleEmptyPage(data?.templates, pageProperties, handlePageChange);\n }\n }, [data]);\n\n const { mutate: deleteTemplate, isPending: isDeleting } = useDeleteTemplate();\n\n useEffect(() => {\n if (!isEmpty(selectedTemplate)) return;\n setIsDeleteAlertOpen(false);\n setIsEditPaneOpen(false);\n setIsShowPaneOpen(false);\n }, [selectedTemplate]);\n\n const onEditClick = (event, template) => {\n event.stopPropagation();\n\n setSelectedTemplate(template);\n setIsEditPaneOpen(true);\n };\n\n const onRowClick = (_, templateDetails) => {\n setSelectedTemplate(templateDetails);\n setIsShowPaneOpen(true);\n };\n\n const onDeleteClick = (event, template) => {\n event.stopPropagation();\n\n setSelectedTemplate(template);\n setIsDeleteAlertOpen(true);\n };\n\n const handleDelete = templateId => {\n deleteTemplate({ templateId });\n setSelectedTemplate({});\n };\n\n const entity = t(\"neetoApprovals.common.template\", PLURAL);\n\n return (\n <>\n {isTemplateLoading ? (\n <PageLoader />\n ) : (\n <Table\n {...{\n columnData,\n entity,\n filters,\n handlePageChange,\n helpDocUrl,\n onDeleteClick,\n onEditClick,\n onRowClick,\n pageProperties,\n searchTerm,\n setFilters,\n totalCount,\n }}\n rowData={templates}\n setIsPaneOpen={setIsNewTemplatePaneOpen}\n />\n )}\n <Create\n isOpen={isNewTemplatePaneOpen}\n onClose={() => setIsNewTemplatePaneOpen(false)}\n {...otherProps}\n />\n <Edit\n isOpen={isEditPaneOpen}\n setTemplate={setSelectedTemplate}\n template={selectedTemplate}\n {...otherProps}\n onClose={() => setIsEditPaneOpen(false)}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoApprovals.buttons.delete\")}\n message={\n <Trans\n i18nKey=\"neetoApprovals.alerts.deleting_\"\n values={{\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n name: selectedTemplate?.name,\n }}\n />\n }\n title={t(\"neetoApprovals.common.delete_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })}\n onClose={() => setSelectedTemplate({})}\n onSubmit={() => handleDelete(selectedTemplate?.id)}\n />\n <TemplateDetails\n isOpen={isShowPaneOpen}\n template={selectedTemplate}\n onClose={() => setSelectedTemplate({})}\n />\n </>\n );\n};\n\nexport default Templates;\n","import { t } from \"i18next\";\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { Button } from \"neetoui\";\n\nimport { routes } from \"common/routes\";\n\nimport History from \"./History\";\nimport PendingRequests from \"./PendingRequests\";\nimport Templates from \"./Templates\";\n\nexport const createRoutes = ({\n config,\n isNewTemplatePaneOpen,\n searchTerm,\n setIsNewTemplatePaneOpen,\n}) => [\n {\n component: () => (\n <Templates\n {...{\n isNewTemplatePaneOpen,\n searchTerm,\n setIsNewTemplatePaneOpen,\n ...config,\n }}\n />\n ),\n path: `${config.approvalsPath}${routes.templates.index}`,\n actionBlock: () => (\n <Button\n data-cy=\"neeto-approvals-templates-add-new-button\"\n label={t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })}\n onClick={() => setIsNewTemplatePaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"neetoApprovals.inputs.placeholders.search_\", {\n what: t(\"neetoApprovals.common.template\", PLURAL),\n }),\n },\n {\n component: () => <PendingRequests {...config} />,\n path: `${config.approvalsPath}${routes.pending}`,\n },\n {\n component: () => <History {...config} />,\n path: `${config.approvalsPath}${routes.history}`,\n },\n];\n","import { findBy } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst Header = ({ appRoutes, breadcrumbs, titleHelpPopoverProps }) => {\n const { t } = useTranslation();\n\n const { pathname } = useLocation();\n\n const currentTab = findBy({ path: pathname }, appRoutes);\n\n return (\n <NeetoHeader\n {...{ breadcrumbs, titleHelpPopoverProps }}\n actionBlock={currentTab?.actionBlock?.()}\n title={t(\"neetoApprovals.common.approval\", PLURAL)}\n searchProps={\n currentTab?.searchPlaceholder && {\n placeholder: currentTab?.searchPlaceholder,\n }\n }\n />\n );\n};\n\nexport default Header;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"common/constants\";\n\nconst fetch = () => axios.get(`${BASE_URL}/views`);\n\nconst viewsApi = { fetch };\n\nexport default viewsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport viewsApi from \"apis/views\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\n\nconst useFetchViews = (options = {}) =>\n useQuery({\n queryKey: [QUERY_KEYS.VIEWS],\n queryFn: viewsApi.fetch,\n select: response => response.data || response,\n ...options,\n });\n\nexport { useFetchViews };\n","import { Tab as NeetoUITab } from \"neetoui\";\nimport { keys } from \"ramda\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\nimport { useFetchViews } from \"hooks/reactQuery/views/useViewsApi\";\n\nimport { getApprovalFilter } from \"./utils\";\n\nconst Tab = ({ approvalsPath }) => {\n const { pathname } = useLocation();\n\n const history = useHistory();\n\n const approvalFilter = getApprovalFilter();\n const approvalFilterKeys = keys(approvalFilter);\n const category = pathname.split(routes.approvals)[1]?.toLocaleUpperCase();\n\n const isActive = filter => category.includes(filter);\n\n const getRoute = filter => `${approvalsPath}${filter.toLowerCase()}`;\n\n const { data: { views = {} } = {} } = useFetchViews();\n\n return (\n <NeetoUITab>\n {approvalFilterKeys.map(filter => (\n <NeetoUITab.Item\n active={isActive(filter)}\n count={views[filter?.toLocaleLowerCase()]}\n key={filter}\n label={approvalFilter[filter].label}\n onClick={() => history.push(getRoute(filter))}\n >\n {approvalFilter[filter].label} (\n {views[filter?.toLocaleLowerCase()] || 0})\n </NeetoUITab.Item>\n ))}\n </NeetoUITab>\n );\n};\n\nexport default Tab;\n","import { useState } from \"react\";\n\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\nimport { Redirect, Route, Switch } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\n\nimport { createRoutes } from \"./createRoutes\";\nimport Header from \"./Header\";\nimport Tabs from \"./Tab\";\n\nconst Approvals = ({ config }) => {\n const { searchTerm = \"\" } = useQueryParams();\n const [isNewTemplatePaneOpen, setIsNewTemplatePaneOpen] = useState(false);\n\n const appRoutes = createRoutes({\n config,\n searchTerm,\n isNewTemplatePaneOpen,\n setIsNewTemplatePaneOpen,\n });\n\n return (\n <Container>\n <Header {...{ appRoutes, ...config }} />\n <Tabs approvalsPath={config.approvalsPath} />\n <Switch>\n {appRoutes.map(({ path, component }) => (\n <Route {...{ component, path }} exact key={path} />\n ))}\n <Redirect\n exact\n from={config.approvalsPath}\n // eslint-disable-next-line @bigbinary/neeto/use-common-routes\n to={`${config.approvalsPath}${routes.pending}`}\n />\n </Switch>\n </Container>\n );\n};\n\nexport default Approvals;\n"],"names":["routes","home","approvals","pending","history","templates","index","edit","handleEmptyPage","data","pageProperties","handlePageChange","isEmpty","page","pageSize","usePaginate","_useState","useState","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","_useState2","_slicedToArray","setPageProperties","resetPageProperties","HISTORY_TABLE_COLUMNS","dataIndex","key","sorter","width","title","t","render","approvalLabel","_ref","requestableUrl","url","URL","window","location","origin","_jsx","Button","label","style","to","pathname","status","Tag","capitalize","STATUS_TAG_STYLE","createdAt","DateFormat","FromNow","date","typographyProps","History","helpDocUrl","requestUrl","DEFAULT_FILTER_VALUES","filters","setFilters","debouncedSearchTerm","useDebounce","searchTerm","SEARCH_DELAY","_usePaginate","_useState3","_useState4","approvalDetails","setApprovalDetails","_useTranslation","useTranslation","_useFetchRequests","useFetchRequests","params","_objectSpread","trim","STATUSES","approved","rejected","cancelled","_ref2","_ref2$requests","requests","approvalHistories","_ref2$totalCount","totalCount","useEffect","updateApprovalDetails","requestsData","handleTableChange","_","__","sortBy","camelToSnakeCase","field","orderBy","SORT_ORDER","order","_jsxs","_Fragment","children","TableWrapper","className","hasPagination","Table","allowRowClick","fixedHeight","columnData","currentPageNumber","defaultPageSize","rowData","paginationProps","hideOnSinglePage","length","onChange","onRowClick","NoData","helpText","Trans","i18nKey","values","entity","components","a","target","what","PLURAL","RequestDetailsPane","isOpen","isPresent","onClose","PENDING_TABLE_COLUMNS","removeBy","PendingRequests","pendingRequests","isPending","TEMPLATE_FORM_INITIAL_VALUES","name","description","message","TEMPLATE_FORM_VALIDATION_SCHEMA","yup","object","shape","string","required","test","content","isEditorEmpty","MessageEditor","withT","_ref$placeholders","placeholders","_ref$initialValue","initialValue","FormikEditor","rows","variables","placeholder","TemplateForm","initialData","_useFormikContext","useFormikContext","setFieldValue","handleDescriptionToggle","checked","Input","autoFocus","ToggleFeatureCard","switchName","switchProps","tooltipProps","enabledSwitchText","disabledSwitchText","descriptionEnabled","Textarea","Form","_ref$initialData","_ref$onSubmit","onSubmit","noop","_ref$isLoading","isLoading","inputReference","useRef","header","SINGULAR","Pane","initialFocusRef","size","Header","Typography","FormikForm","formikProps","enableReinitialize","initialValues","validationSchema","Body","Footer","ActionBlock","isSubmitting","cancelButtonProps","onClick","submitButtonProps","Create","templateUrl","templatePlaceholders","_useCreateTemplate","useCreateTemplate","createTemplate","mutate","template","payload","onSuccess","Edit","setTemplate","_useUpdateTemplate","useUpdateTemplate","updateTemplate","isUpdating","id","Field","value","Label","weight","memo","MemoizedEditorContent","EditorContent","TemplateDetails","renderNoDataHelpText","toLocaleLowerCase","setIsPaneOpen","onEditClick","onDeleteClick","otherProps","_objectWithoutProperties","_excluded","columns","noDataProps","primaryButtonProps","NeetoUITable","scroll","x","tableLayout","i18next","ellipsis","MoreDropdown","dropdownProps","strategy","e","stopPropagation","menuItems","_defineProperty","event","DATA_CY_KEY","Templates","isNewTemplatePaneOpen","setIsNewTemplatePaneOpen","selectedTemplate","setSelectedTemplate","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isEditPaneOpen","setIsEditPaneOpen","_useState9","_useState10","isShowPaneOpen","setIsShowPaneOpen","_useFetchTemplates","useFetchTemplates","isTemplateLoading","_ref2$templates","_useDeleteTemplate","useDeleteTemplate","deleteTemplate","isDeleting","templateDetails","handleDelete","templateId","PageLoader","Alert","submitButtonLabel","createRoutes","config","component","path","concat","approvalsPath","actionBlock","searchPlaceholder","_currentTab$actionBlo","appRoutes","breadcrumbs","titleHelpPopoverProps","_useLocation","useLocation","currentTab","findBy","NeetoHeader","call","searchProps","fetch","axios","get","BASE_URL","viewsApi","useFetchViews","options","arguments","undefined","useQuery","queryKey","QUERY_KEYS","VIEWS","queryFn","select","response","Tab","_pathname$split$","useHistory","approvalFilter","getApprovalFilter","approvalFilterKeys","keys","category","split","toLocaleUpperCase","isActive","filter","includes","getRoute","toLowerCase","_useFetchViews","_useFetchViews$data","_useFetchViews$data2","_useFetchViews$data2$","views","NeetoUITab","map","Item","active","count","push","Approvals","_useQueryParams","useQueryParams","_useQueryParams$searc","Container","Tabs","Switch","_createElement","Route","exact","Redirect","from"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Approvals.js","sources":["../../app/javascript/src/common/routes.js","../../app/javascript/src/common/utils.js","../../app/javascript/src/hooks/usePaginate.js","../../app/javascript/src/components/Approvals/History/constants.jsx","../../app/javascript/src/components/Approvals/History/index.jsx","../../app/javascript/src/components/Approvals/PendingRequests/constants.js","../../app/javascript/src/components/Approvals/PendingRequests/index.jsx","../../app/javascript/src/components/Approvals/Templates/constants.js","../../app/javascript/src/components/Approvals/Templates/MessageEditor.jsx","../../app/javascript/src/components/Approvals/Templates/TemplateForm.jsx","../../app/javascript/src/components/Approvals/Templates/Form.jsx","../../app/javascript/src/components/Approvals/Templates/Create.jsx","../../app/javascript/src/components/Approvals/Templates/Edit.jsx","../../app/javascript/src/components/Approvals/Templates/Show/Field.jsx","../../app/javascript/src/components/Approvals/Templates/Show/index.jsx","../../app/javascript/src/utils.jsx","../../app/javascript/src/components/Approvals/Templates/Table.jsx","../../app/javascript/src/components/Approvals/Templates/utils/columnData.jsx","../../app/javascript/src/components/Approvals/Templates/index.jsx","../../app/javascript/src/components/Approvals/createRoutes.jsx","../../app/javascript/src/components/Approvals/Header.jsx","../../app/javascript/src/apis/views.js","../../app/javascript/src/hooks/reactQuery/views/useViewsApi.js","../../app/javascript/src/components/Approvals/Tab.jsx","../../app/javascript/src/components/Approvals/index.jsx"],"sourcesContent":["export const routes = {\n home: \"/\",\n approvals: \"/approvals/\",\n pending: \"pending\",\n history: \"history\",\n templates: {\n index: \"templates\",\n new: \"templates/new\",\n edit: \"templates/:id/edit\",\n },\n public: \"approvals/public/request/:id\",\n};\n","import { isEmpty } from \"ramda\";\n\nexport const isOverflown = ({\n clientWidth,\n clientHeight,\n scrollWidth,\n scrollHeight,\n}) => scrollHeight > clientHeight || scrollWidth > clientWidth;\n\nexport const handleEmptyPage = (data, pageProperties, handlePageChange) => {\n if (isEmpty(data) && pageProperties.page !== 1) {\n handlePageChange(pageProperties.page - 1, pageProperties.pageSize);\n }\n};\n","import { useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\n\nconst usePaginate = () => {\n const [pageProperties, setPageProperties] = useState({\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const resetPageProperties = () =>\n setPageProperties({\n page: DEFAULT_PAGE_INDEX,\n pageSize: DEFAULT_PAGE_SIZE,\n });\n\n const handlePageChange = (page, pageSize) => {\n setPageProperties({ page, pageSize });\n };\n\n return { pageProperties, resetPageProperties, handlePageChange };\n};\n\nexport default usePaginate;\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport DateFormat from \"neetomolecules/DateFormat\";\nimport { Button, Tag } from \"neetoui\";\n\nimport { STATUS_TAG_STYLE } from \"../constants\";\n\nexport const HISTORY_TABLE_COLUMNS = [\n {\n dataIndex: \"approvalLabel\",\n key: \"approvalLabel\",\n sorter: true,\n width: 150,\n title: t(\"neetoApprovals.common.id\"),\n render: (approvalLabel, { requestableUrl }) => {\n const url = new URL(requestableUrl || window.location.origin);\n\n return <Button label={approvalLabel} style=\"link\" to={url.pathname} />;\n },\n },\n {\n dataIndex: \"title\",\n key: \"title\",\n sorter: true,\n width: 400,\n title: t(\"neetoApprovals.common.title\"),\n },\n {\n dataIndex: \"status\",\n key: \"status\",\n sorter: true,\n width: 200,\n title: t(\"neetoApprovals.common.status\"),\n render: status => (\n <Tag label={capitalize(status)} style={STATUS_TAG_STYLE[status]} />\n ),\n },\n {\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n sorter: true,\n width: 200,\n title: t(\"neetoApprovals.common.created\"),\n render: createdAt => (\n <DateFormat.FromNow\n date={createdAt}\n typographyProps={{ style: \"body2\" }}\n />\n ),\n },\n];\n","import { useEffect, useState } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"./constants\";\n\nimport {\n DEFAULT_FILTER_VALUES,\n SEARCH_DELAY,\n SORT_ORDER,\n STATUSES,\n} from \"../constants\";\nimport RequestDetailsPane from \"../RequestDetailsPane\";\nimport { updateApprovalDetails } from \"../utils\";\n\nconst History = ({ helpDocUrl, requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handlePageChange } = usePaginate();\n const [approvalDetails, setApprovalDetails] = useState({});\n const { t } = useTranslation();\n\n const { data } = useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.approved, STATUSES.rejected, STATUSES.cancelled],\n },\n requestUrl,\n });\n\n const { requests: approvalHistories = {}, totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (!data) return;\n handleEmptyPage(data?.requests, pageProperties, handlePageChange);\n setApprovalDetails(approvalDetails =>\n updateApprovalDetails({ requestsData: data?.requests, approvalDetails })\n );\n }, [data]);\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field || \"\"),\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n return (\n <>\n {!isEmpty(approvalHistories) ? (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <Table\n {...{ handlePageChange, totalCount }}\n allowRowClick\n fixedHeight\n columnData={HISTORY_TABLE_COLUMNS}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={approvalHistories}\n paginationProps={{\n hideOnSinglePage:\n approvalHistories?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n helpText={\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpTextLearnMore\"\n style=\"link\"\n values={{ entity: t(\"neetoApprovals.common.history\") }}\n components={{\n a: (\n <Button\n style=\"link\"\n target=\"_blank\"\n to={{ pathname: helpDocUrl }}\n />\n ),\n }}\n />\n }\n title={t(\"neetoApprovals.common.notFound_\", {\n what: t(\"neetoApprovals.common.record\", PLURAL),\n })}\n />\n </div>\n )}\n <RequestDetailsPane\n {...{ approvalDetails }}\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default History;\n","import { removeBy } from \"neetocist\";\n\nimport { HISTORY_TABLE_COLUMNS } from \"../History/constants\";\n\nexport const PENDING_TABLE_COLUMNS = removeBy(\n { key: \"status\" },\n HISTORY_TABLE_COLUMNS\n);\n","import { useEffect, useState } from \"react\";\n\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport { useFetchRequests } from \"hooks/reactQuery/requests/useRequestsApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport { PENDING_TABLE_COLUMNS } from \"./constants\";\n\nimport {\n DEFAULT_FILTER_VALUES,\n SEARCH_DELAY,\n SORT_ORDER,\n STATUSES,\n} from \"../constants\";\nimport RequestDetailsPane from \"../RequestDetailsPane\";\n\nconst PendingRequests = ({ helpDocUrl, requestUrl }) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [approvalDetails, setApprovalDetails] = useState({});\n const debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);\n const { pageProperties, handlePageChange } = usePaginate();\n const { t } = useTranslation();\n\n const { data } = useFetchRequests({\n params: {\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n status: [STATUSES.pending],\n },\n requestUrl,\n });\n\n const { requests: pendingRequests = {}, totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (!data) return;\n handleEmptyPage(data?.requests, pageProperties, handlePageChange);\n }, [data]);\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: camelToSnakeCase(sorter.field || \"\"),\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n return (\n <>\n {!isEmpty(pendingRequests) ? (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <Table\n {...{ handlePageChange, totalCount }}\n allowRowClick\n fixedHeight\n columnData={PENDING_TABLE_COLUMNS}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n rowData={pendingRequests}\n paginationProps={{\n hideOnSinglePage: pendingRequests?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n onRowClick={(_, approvalDetails) =>\n setApprovalDetails(approvalDetails)\n }\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n helpText={\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpTextLearnMore\"\n style=\"link\"\n components={{\n a: (\n <Button\n style=\"link\"\n target=\"_blank\"\n to={{ pathname: helpDocUrl }}\n />\n ),\n }}\n values={{\n entity: t(\"neetoApprovals.common.pendingApproval\", PLURAL),\n }}\n />\n }\n title={t(\"neetoApprovals.common.notFound_\", {\n what: t(\"neetoApprovals.common.pendingApproval\", PLURAL),\n })}\n />\n </div>\n )}\n <RequestDetailsPane\n {...{ approvalDetails }}\n isPending\n isOpen={isPresent(approvalDetails)}\n onClose={() => setApprovalDetails({})}\n />\n </>\n );\n};\n\nexport default PendingRequests;\n","import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nexport const TEMPLATE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n message: \"\",\n};\n\nexport const TEMPLATE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n name: yup\n .string()\n .trim()\n .required(\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.common.name\"),\n })\n ),\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\n content => !isEditorEmpty(content)\n ),\n});\n","import { withT } from \"neetocommons/react-utils\";\nimport { FormikEditor } from \"neetoeditor\";\n\nconst MessageEditor = withT(({ t, placeholders = [], initialValue = \"\" }) => (\n <FormikEditor\n {...{ initialValue }}\n required\n label={t(\"neetoApprovals.inputs.labels.message\")}\n name=\"message\"\n rows={3}\n variables={placeholders}\n placeholder={t(\"neetoApprovals.inputs.placeholders.enter_\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n })}\n />\n));\n\nexport default MessageEditor;\n","import { useFormikContext } from \"formik\";\nimport ToggleFeatureCard from \"neetomolecules/ToggleFeatureCard\";\nimport { Input, Textarea } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MessageEditor from \"./MessageEditor\";\n\nconst TemplateForm = ({ placeholders, initialData }) => {\n const { t } = useTranslation();\n const { values, setFieldValue } = useFormikContext();\n\n const handleDescriptionToggle = ({ target: { checked } }) => {\n setFieldValue(\"descriptionEnabled\", checked);\n if (!checked) {\n setFieldValue(\"description\", \"\");\n }\n };\n\n return (\n <div className=\"flex w-full flex-col space-y-6\">\n <Input\n autoFocus\n required\n label={t(\"neetoApprovals.common.name\")}\n name=\"name\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.name\")}\n />\n <ToggleFeatureCard\n switchName=\"descriptionEnabled\"\n title={t(\"neetoApprovals.inputs.labels.description\")}\n switchProps={{\n onChange: handleDescriptionToggle,\n tooltipProps: {\n enabledSwitchText: t(\n \"neetoApprovals.templates.descriptionToggle.enable\"\n ),\n disabledSwitchText: t(\n \"neetoApprovals.templates.descriptionToggle.disable\"\n ),\n },\n }}\n >\n {values.descriptionEnabled && (\n <Textarea\n className=\"w-full\"\n name=\"description\"\n placeholder={t(\"neetoApprovals.inputs.placeholders.description\")}\n />\n )}\n </ToggleFeatureCard>\n <MessageEditor {...{ placeholders }} initialValue={initialData.message} />\n </div>\n );\n};\n\nexport default TemplateForm;\n","import { useRef } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form as FormikForm } from \"neetoui/formik\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n TEMPLATE_FORM_INITIAL_VALUES,\n TEMPLATE_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport TemplateForm from \"./TemplateForm\";\n\nconst Form = ({\n isOpen,\n onClose,\n initialData = {},\n onSubmit = noop,\n isLoading = false,\n placeholders,\n}) => {\n const inputReference = useRef(null);\n\n const { t } = useTranslation();\n\n const header = isEmpty(initialData)\n ? t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })\n : t(\"neetoApprovals.common.edit_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n });\n\n return (\n <Pane\n {...{ isOpen, onClose }}\n initialFocusRef={inputReference}\n size=\"large\"\n >\n <Pane.Header>\n <Typography style=\"h2\">{header}</Typography>\n </Pane.Header>\n <FormikForm\n formikProps={{\n enableReinitialize: true,\n initialValues: isPresent(initialData)\n ? initialData\n : TEMPLATE_FORM_INITIAL_VALUES,\n validationSchema: TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n <Pane.Body>\n <TemplateForm {...{ initialData, placeholders }} />\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n isSubmitting={isLoading}\n cancelButtonProps={{\n \"data-cy\": \"neeto-approvals-templates-close-template-form-btn\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"neeto-approvals-templates-save-template-btn\",\n }}\n />\n </Pane.Footer>\n </FormikForm>\n </Pane>\n );\n};\n\nexport default Form;\n","import { useCreateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\n\nconst Create = ({ templateUrl, isOpen, onClose, templatePlaceholders }) => {\n const { mutate: createTemplate, isPending } = useCreateTemplate();\n\n const onSubmit = template => {\n const payload = { template };\n\n createTemplate({ url: templateUrl, payload }, { onSuccess: onClose });\n };\n\n return (\n <Form\n {...{ isOpen, onClose, onSubmit }}\n isLoading={isPending}\n placeholders={templatePlaceholders}\n />\n );\n};\n\nexport default Create;\n","import { useUpdateTemplate } from \"hooks/reactQuery/templates/useTemplatesApi\";\n\nimport Form from \"./Form\";\n\nconst Edit = ({\n templateUrl,\n template,\n setTemplate,\n isOpen,\n onClose,\n templatePlaceholders,\n}) => {\n const { mutate: updateTemplate, isPending: isUpdating } = useUpdateTemplate({\n onSuccess: () => setTemplate({}),\n });\n\n const onSubmit = template => {\n const payload = { template };\n updateTemplate({ id: template.id, payload, url: templateUrl });\n };\n\n const initialData = {\n ...template,\n descriptionEnabled: !!template.description,\n };\n\n return (\n <Form\n {...{ initialData, isOpen, onClose, onSubmit }}\n isLoading={isUpdating}\n placeholders={templatePlaceholders}\n />\n );\n};\n\nexport default Edit;\n","import { memo } from \"react\";\n\nimport { Label, Typography } from \"neetoui\";\n\nconst Field = ({ label, value }) => (\n <div className=\"flex flex-col items-start justify-center\">\n <Label className=\"mb-1 font-normal\">{label}</Label>\n <Typography style=\"body1\" weight=\"medium\">\n {value}\n </Typography>\n </div>\n);\n\nexport default memo(Field);\n","import { memo } from \"react\";\n\nimport { EditorContent } from \"neetoeditor\";\nimport { Label, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Field from \"./Field\";\n\nconst MemoizedEditorContent = memo(EditorContent);\n\nconst TemplateDetails = ({ isOpen, onClose, template }) => {\n const { t } = useTranslation();\n const { name, description, message } = template;\n\n return (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header className=\"space-y-2\">\n <Typography style=\"h2\">\n {t(\"neetoApprovals.common.templateDetails\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"space-y-6\">\n <Field label={t(\"neetoApprovals.common.name\")} value={name} />\n <Field\n label={t(\"neetoApprovals.inputs.labels.description\")}\n value={description}\n />\n <div className=\"flex w-full flex-col space-y-4\">\n <Label className=\"mb-1 font-normal\">\n {t(\"neetoApprovals.inputs.labels.message\")}\n </Label>\n <MemoizedEditorContent\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg p-3\"\n content={message}\n />\n </div>\n </Pane.Body>\n </Pane>\n );\n};\n\nexport default TemplateDetails;\n","import { Button } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nexport const renderNoDataHelpText = ({ entity, url }) => (\n <Trans\n i18nKey=\"neetoApprovals.common.noDataHelpText\"\n style=\"link\"\n values={{ entity: entity.toLocaleLowerCase() }}\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: url }} />,\n }}\n />\n);\n","import { DEFAULT_PAGE_SIZE, SINGULAR } from \"neetocommons/constants\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Table as NeetoUITable, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderNoDataHelpText } from \"utils\";\n\nimport { SORT_ORDER } from \"../constants\";\n\nconst Table = ({\n entity,\n columnData,\n rowData,\n totalCount,\n filters,\n setFilters,\n setIsPaneOpen,\n helpDocUrl,\n onEditClick,\n onDeleteClick,\n pageProperties,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const columns = columnData({ onEditClick, onDeleteClick });\n\n const handleTableChange = (_, __, sorter) => {\n setFilters({\n ...filters,\n sortBy: sorter.field,\n orderBy: SORT_ORDER[sorter.order],\n });\n };\n\n const noDataProps = {\n primaryButtonProps: {\n label: t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n }),\n onClick: () => setIsPaneOpen(true),\n },\n helpText: renderNoDataHelpText({ entity, url: helpDocUrl }),\n };\n\n if (isEmpty(rowData)) {\n return (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"neetoApprovals.common.notFound_\", { what: entity })}\n {...(!filters.searchTerm && noDataProps)}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper\n className=\"mt-6\"\n hasPagination={totalCount > pageProperties.pageSize}\n >\n <NeetoUITable\n fixedHeight\n columnData={columns}\n currentPageNumber={pageProperties.page}\n defaultPageSize={pageProperties.pageSize}\n paginationProps={{\n hideOnSinglePage: rowData?.length < DEFAULT_PAGE_SIZE + 1,\n }}\n onChange={handleTableChange}\n {...{ rowData, totalCount, ...otherProps }}\n />\n </TableWrapper>\n );\n};\n\nexport default Table;\n","import i18next from \"i18next\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nimport { DATA_CY_KEY } from \"components/Approvals/constants\";\n\nconst columnData = ({ onEditClick, onDeleteClick }) => [\n {\n dataIndex: \"name\",\n key: \"name\",\n sorter: true,\n title: i18next.t(\"neetoApprovals.common.name\"),\n ellipsis: true,\n width: 300,\n render: (_, template) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography className=\"truncate\" style=\"body2\">\n {template.name}\n </Typography>\n <MoreDropdown\n dropdownButtonProps={{ className: \"mr-1 my-1\" }}\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n appendTo: () => document.body,\n }}\n menuItems={[\n {\n key: \"edit\",\n label: i18next.t(\"neetoApprovals.common.edit\"),\n onClick: event => onEditClick(event, template),\n [DATA_CY_KEY]: \"neeto-approvals-templates-edit-template-btn\",\n },\n {\n key: \"delete\",\n label: i18next.t(\"neetoApprovals.common.delete\"),\n onClick: event => onDeleteClick(event, template),\n [DATA_CY_KEY]: \"neeto-approvals-templates-delete-template-btn\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n dataIndex: \"description\",\n key: \"description\",\n title: i18next.t(\"neetoApprovals.inputs.labels.description\"),\n width: 400,\n },\n];\n\nexport default columnData;\n","import { useEffect, useState } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { handleEmptyPage } from \"common/utils\";\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n} from \"hooks/reactQuery/templates/useTemplatesApi\";\nimport usePaginate from \"hooks/usePaginate\";\n\nimport Create from \"./Create\";\nimport Edit from \"./Edit\";\nimport TemplateDetails from \"./Show\";\nimport Table from \"./Table\";\nimport columnData from \"./utils/columnData\";\n\nimport { DEFAULT_FILTER_VALUES, SEARCH_DELAY } from \"../constants\";\n\nconst Templates = ({\n searchTerm,\n isNewTemplatePaneOpen,\n setIsNewTemplatePaneOpen,\n helpDocUrl,\n ...otherProps\n}) => {\n const [filters, setFilters] = useState(DEFAULT_FILTER_VALUES);\n const [selectedTemplate, setSelectedTemplate] = useState({});\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isEditPaneOpen, setIsEditPaneOpen] = useState(false);\n const [isShowPaneOpen, setIsShowPaneOpen] = useState(false);\n\n const { pageProperties, handlePageChange, resetPageProperties } =\n usePaginate();\n\n const { t } = useTranslation();\n\n const debouncedSearchTerm = useDebounce(searchTerm, SEARCH_DELAY);\n\n useEffect(() => {\n resetPageProperties();\n }, [searchTerm]);\n\n const { data, isLoading: isTemplateLoading } = useFetchTemplates({\n ...pageProperties,\n ...filters,\n searchTerm: debouncedSearchTerm.trim(),\n });\n\n const { templates = [], totalCount = 0 } = data || {};\n\n useEffect(() => {\n if (data) {\n handleEmptyPage(data?.templates, pageProperties, handlePageChange);\n }\n }, [data]);\n\n const { mutate: deleteTemplate, isPending: isDeleting } = useDeleteTemplate();\n\n useEffect(() => {\n if (!isEmpty(selectedTemplate)) return;\n setIsDeleteAlertOpen(false);\n setIsEditPaneOpen(false);\n setIsShowPaneOpen(false);\n }, [selectedTemplate]);\n\n const onEditClick = (event, template) => {\n event.stopPropagation();\n\n setSelectedTemplate(template);\n setIsEditPaneOpen(true);\n };\n\n const onRowClick = (_, templateDetails) => {\n setSelectedTemplate(templateDetails);\n setIsShowPaneOpen(true);\n };\n\n const onDeleteClick = (event, template) => {\n event.stopPropagation();\n\n setSelectedTemplate(template);\n setIsDeleteAlertOpen(true);\n };\n\n const handleDelete = templateId => {\n deleteTemplate({ templateId });\n setSelectedTemplate({});\n };\n\n const entity = t(\"neetoApprovals.common.template\", PLURAL);\n\n return (\n <>\n {isTemplateLoading ? (\n <PageLoader />\n ) : (\n <Table\n {...{\n columnData,\n entity,\n filters,\n handlePageChange,\n helpDocUrl,\n onDeleteClick,\n onEditClick,\n onRowClick,\n pageProperties,\n searchTerm,\n setFilters,\n totalCount,\n }}\n rowData={templates}\n setIsPaneOpen={setIsNewTemplatePaneOpen}\n />\n )}\n <Create\n isOpen={isNewTemplatePaneOpen}\n onClose={() => setIsNewTemplatePaneOpen(false)}\n {...otherProps}\n />\n <Edit\n isOpen={isEditPaneOpen}\n setTemplate={setSelectedTemplate}\n template={selectedTemplate}\n {...otherProps}\n onClose={() => setIsEditPaneOpen(false)}\n />\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoApprovals.buttons.delete\")}\n message={\n <Trans\n i18nKey=\"neetoApprovals.alerts.deleting_\"\n values={{\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n name: selectedTemplate?.name,\n }}\n />\n }\n title={t(\"neetoApprovals.common.delete_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })}\n onClose={() => setSelectedTemplate({})}\n onSubmit={() => handleDelete(selectedTemplate?.id)}\n />\n <TemplateDetails\n isOpen={isShowPaneOpen}\n template={selectedTemplate}\n onClose={() => setSelectedTemplate({})}\n />\n </>\n );\n};\n\nexport default Templates;\n","import { t } from \"i18next\";\nimport { PLURAL, SINGULAR } from \"neetocommons/constants\";\nimport { Button } from \"neetoui\";\n\nimport { routes } from \"common/routes\";\n\nimport History from \"./History\";\nimport PendingRequests from \"./PendingRequests\";\nimport Templates from \"./Templates\";\n\nexport const createRoutes = ({\n config,\n isNewTemplatePaneOpen,\n searchTerm,\n setIsNewTemplatePaneOpen,\n}) => [\n {\n component: () => (\n <Templates\n {...{\n isNewTemplatePaneOpen,\n searchTerm,\n setIsNewTemplatePaneOpen,\n ...config,\n }}\n />\n ),\n path: `${config.approvalsPath}${routes.templates.index}`,\n actionBlock: () => (\n <Button\n data-cy=\"neeto-approvals-templates-add-new-button\"\n label={t(\"neetoApprovals.common.addNew_\", {\n what: t(\"neetoApprovals.common.template\", SINGULAR),\n })}\n onClick={() => setIsNewTemplatePaneOpen(true)}\n />\n ),\n searchPlaceholder: t(\"neetoApprovals.inputs.placeholders.search_\", {\n what: t(\"neetoApprovals.common.template\", PLURAL),\n }),\n },\n {\n component: () => <PendingRequests {...config} />,\n path: `${config.approvalsPath}${routes.pending}`,\n },\n {\n component: () => <History {...config} />,\n path: `${config.approvalsPath}${routes.history}`,\n },\n];\n","import { findBy } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst Header = ({ appRoutes, breadcrumbs, titleHelpPopoverProps }) => {\n const { t } = useTranslation();\n\n const { pathname } = useLocation();\n\n const currentTab = findBy({ path: pathname }, appRoutes);\n\n return (\n <NeetoHeader\n {...{ breadcrumbs, titleHelpPopoverProps }}\n actionBlock={currentTab?.actionBlock?.()}\n title={t(\"neetoApprovals.common.approval\", PLURAL)}\n searchProps={\n currentTab?.searchPlaceholder && {\n placeholder: currentTab?.searchPlaceholder,\n }\n }\n />\n );\n};\n\nexport default Header;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"common/constants\";\n\nconst fetch = () => axios.get(`${BASE_URL}/views`);\n\nconst viewsApi = { fetch };\n\nexport default viewsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport viewsApi from \"apis/views\";\nimport { QUERY_KEYS } from \"common/queryConstants\";\n\nconst useFetchViews = (options = {}) =>\n useQuery({\n queryKey: [QUERY_KEYS.VIEWS],\n queryFn: viewsApi.fetch,\n select: response => response.data || response,\n ...options,\n });\n\nexport { useFetchViews };\n","import { Tab as NeetoUITab } from \"neetoui\";\nimport { keys } from \"ramda\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\nimport { useFetchViews } from \"hooks/reactQuery/views/useViewsApi\";\n\nimport { getApprovalFilter } from \"./utils\";\n\nconst Tab = ({ approvalsPath }) => {\n const { pathname } = useLocation();\n\n const history = useHistory();\n\n const approvalFilter = getApprovalFilter();\n const approvalFilterKeys = keys(approvalFilter);\n const category = pathname.split(routes.approvals)[1]?.toLocaleUpperCase();\n\n const isActive = filter => category.includes(filter);\n\n const getRoute = filter => `${approvalsPath}${filter.toLowerCase()}`;\n\n const { data: { views = {} } = {} } = useFetchViews();\n\n return (\n <NeetoUITab>\n {approvalFilterKeys.map(filter => (\n <NeetoUITab.Item\n active={isActive(filter)}\n count={views[filter?.toLocaleLowerCase()]}\n key={filter}\n label={approvalFilter[filter].label}\n onClick={() => history.push(getRoute(filter))}\n >\n {approvalFilter[filter].label} (\n {views[filter?.toLocaleLowerCase()] || 0})\n </NeetoUITab.Item>\n ))}\n </NeetoUITab>\n );\n};\n\nexport default Tab;\n","import { useState } from \"react\";\n\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\nimport { Redirect, Route, Switch } from \"react-router-dom\";\n\nimport { routes } from \"common/routes\";\n\nimport { createRoutes } from \"./createRoutes\";\nimport Header from \"./Header\";\nimport Tabs from \"./Tab\";\n\nconst Approvals = ({ config }) => {\n const { searchTerm = \"\" } = useQueryParams();\n const [isNewTemplatePaneOpen, setIsNewTemplatePaneOpen] = useState(false);\n\n const appRoutes = createRoutes({\n config,\n searchTerm,\n isNewTemplatePaneOpen,\n setIsNewTemplatePaneOpen,\n });\n\n return (\n <Container>\n <Header {...{ appRoutes, ...config }} />\n <Tabs approvalsPath={config.approvalsPath} />\n <Switch>\n {appRoutes.map(({ path, component }) => (\n <Route {...{ component, path }} exact key={path} />\n ))}\n <Redirect\n exact\n from={config.approvalsPath}\n // eslint-disable-next-line @bigbinary/neeto/use-common-routes\n to={`${config.approvalsPath}${routes.pending}`}\n />\n </Switch>\n </Container>\n );\n};\n\nexport default Approvals;\n"],"names":["routes","home","approvals","pending","history","templates","index","edit","handleEmptyPage","data","pageProperties","handlePageChange","isEmpty","page","pageSize","usePaginate","_useState","useState","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","_useState2","_slicedToArray","setPageProperties","resetPageProperties","HISTORY_TABLE_COLUMNS","dataIndex","key","sorter","width","title","t","render","approvalLabel","_ref","requestableUrl","url","URL","window","location","origin","_jsx","Button","label","style","to","pathname","status","Tag","capitalize","STATUS_TAG_STYLE","createdAt","DateFormat","FromNow","date","typographyProps","History","helpDocUrl","requestUrl","DEFAULT_FILTER_VALUES","filters","setFilters","debouncedSearchTerm","useDebounce","searchTerm","SEARCH_DELAY","_usePaginate","_useState3","_useState4","approvalDetails","setApprovalDetails","_useTranslation","useTranslation","_useFetchRequests","useFetchRequests","params","_objectSpread","trim","STATUSES","approved","rejected","cancelled","_ref2","_ref2$requests","requests","approvalHistories","_ref2$totalCount","totalCount","useEffect","updateApprovalDetails","requestsData","handleTableChange","_","__","sortBy","camelToSnakeCase","field","orderBy","SORT_ORDER","order","_jsxs","_Fragment","children","TableWrapper","className","hasPagination","Table","allowRowClick","fixedHeight","columnData","currentPageNumber","defaultPageSize","rowData","paginationProps","hideOnSinglePage","length","onChange","onRowClick","NoData","helpText","Trans","i18nKey","values","entity","components","a","target","what","PLURAL","RequestDetailsPane","isOpen","isPresent","onClose","PENDING_TABLE_COLUMNS","removeBy","PendingRequests","pendingRequests","isPending","TEMPLATE_FORM_INITIAL_VALUES","name","description","message","TEMPLATE_FORM_VALIDATION_SCHEMA","yup","object","shape","string","required","test","content","isEditorEmpty","MessageEditor","withT","_ref$placeholders","placeholders","_ref$initialValue","initialValue","FormikEditor","rows","variables","placeholder","TemplateForm","initialData","_useFormikContext","useFormikContext","setFieldValue","handleDescriptionToggle","checked","Input","autoFocus","ToggleFeatureCard","switchName","switchProps","tooltipProps","enabledSwitchText","disabledSwitchText","descriptionEnabled","Textarea","Form","_ref$initialData","_ref$onSubmit","onSubmit","noop","_ref$isLoading","isLoading","inputReference","useRef","header","SINGULAR","Pane","initialFocusRef","size","Header","Typography","FormikForm","formikProps","enableReinitialize","initialValues","validationSchema","Body","Footer","ActionBlock","isSubmitting","cancelButtonProps","onClick","submitButtonProps","Create","templateUrl","templatePlaceholders","_useCreateTemplate","useCreateTemplate","createTemplate","mutate","template","payload","onSuccess","Edit","setTemplate","_useUpdateTemplate","useUpdateTemplate","updateTemplate","isUpdating","id","Field","value","Label","weight","memo","MemoizedEditorContent","EditorContent","TemplateDetails","renderNoDataHelpText","toLocaleLowerCase","setIsPaneOpen","onEditClick","onDeleteClick","otherProps","_objectWithoutProperties","_excluded","columns","noDataProps","primaryButtonProps","NeetoUITable","i18next","ellipsis","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","e","stopPropagation","appendTo","document","body","menuItems","_defineProperty","event","DATA_CY_KEY","Templates","isNewTemplatePaneOpen","setIsNewTemplatePaneOpen","selectedTemplate","setSelectedTemplate","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isEditPaneOpen","setIsEditPaneOpen","_useState9","_useState10","isShowPaneOpen","setIsShowPaneOpen","_useFetchTemplates","useFetchTemplates","isTemplateLoading","_ref2$templates","_useDeleteTemplate","useDeleteTemplate","deleteTemplate","isDeleting","templateDetails","handleDelete","templateId","PageLoader","Alert","submitButtonLabel","createRoutes","config","component","path","concat","approvalsPath","actionBlock","searchPlaceholder","_currentTab$actionBlo","appRoutes","breadcrumbs","titleHelpPopoverProps","_useLocation","useLocation","currentTab","findBy","NeetoHeader","call","searchProps","fetch","axios","get","BASE_URL","viewsApi","useFetchViews","options","arguments","undefined","useQuery","queryKey","QUERY_KEYS","VIEWS","queryFn","select","response","Tab","_pathname$split$","useHistory","approvalFilter","getApprovalFilter","approvalFilterKeys","keys","category","split","toLocaleUpperCase","isActive","filter","includes","getRoute","toLowerCase","_useFetchViews","_useFetchViews$data","_useFetchViews$data2","_useFetchViews$data2$","views","NeetoUITab","map","Item","active","count","push","Approvals","_useQueryParams","useQueryParams","_useQueryParams$searc","Container","Tabs","Switch","_createElement","Route","exact","Redirect","from"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,MAAM,GAAG;AACpBC,EAAAA,IAAI,EAAE,GAAG;AACTC,EAAAA,SAAS,EAAE,aAAa;AACxBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,SAAS,EAAE;AACTC,IAAAA,KAAK,EAAE,WAAW;AAClB,IAAA,KAAA,EAAK,eAAe;AACpBC,IAAAA,IAAI,EAAE;GACP;EACD,QAAQ,EAAA;AACV,CAAC;;ACFM,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,IAAI,EAAEC,cAAc,EAAEC,gBAAgB,EAAK;EACzE,IAAIC,aAAO,CAACH,IAAI,CAAC,IAAIC,cAAc,CAACG,IAAI,KAAK,CAAC,EAAE;IAC9CF,gBAAgB,CAACD,cAAc,CAACG,IAAI,GAAG,CAAC,EAAEH,cAAc,CAACI,QAAQ,CAAC;AACpE;AACF,CAAC;;ACTD,IAAMC,WAAW,GAAG,SAAdA,WAAWA,GAAS;EACxB,IAAAC,SAAA,GAA4CC,cAAQ,CAAC;AACnDJ,MAAAA,IAAI,EAAEK,4BAAkB;AACxBJ,MAAAA,QAAQ,EAAEK;AACZ,KAAC,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAHKN,IAAAA,cAAc,GAAAU,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,iBAAiB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAKxC,EAAA,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAA;AAAA,IAAA,OACvBD,iBAAiB,CAAC;AAChBT,MAAAA,IAAI,EAAEK,4BAAkB;AACxBJ,MAAAA,QAAQ,EAAEK;AACZ,KAAC,CAAC;AAAA,GAAA;EAEJ,IAAMR,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIE,IAAI,EAAEC,QAAQ,EAAK;AAC3CQ,IAAAA,iBAAiB,CAAC;AAAET,MAAAA,IAAI,EAAJA,IAAI;AAAEC,MAAAA,QAAQ,EAARA;AAAS,KAAC,CAAC;GACtC;EAED,OAAO;AAAEJ,IAAAA,cAAc,EAAdA,cAAc;AAAEa,IAAAA,mBAAmB,EAAnBA,mBAAmB;AAAEZ,IAAAA,gBAAgB,EAAhBA;GAAkB;AAClE,CAAC;;ACdM,IAAMa,qBAAqB,GAAG,CACnC;AACEC,EAAAA,SAAS,EAAE,eAAe;AAC1BC,EAAAA,GAAG,EAAE,eAAe;AACpBC,EAAAA,MAAM,EAAE,IAAI;AACZC,EAAAA,KAAK,EAAE,GAAG;AACVC,EAAAA,KAAK,EAAEC,SAAC,CAAC,0BAA0B,CAAC;AACpCC,EAAAA,MAAM,EAAE,SAARA,MAAMA,CAAGC,aAAa,EAAAC,IAAA,EAAyB;AAAA,IAAA,IAArBC,cAAc,GAAAD,IAAA,CAAdC,cAAc;AACtC,IAAA,IAAMC,GAAG,GAAG,IAAIC,GAAG,CAACF,cAAc,IAAIG,MAAM,CAACC,QAAQ,CAACC,MAAM,CAAC;IAE7D,oBAAOC,cAAA,CAACC,MAAM,EAAA;AAACC,MAAAA,KAAK,EAAEV,aAAc;AAACW,MAAAA,KAAK,EAAC,MAAM;MAACC,EAAE,EAAET,GAAG,CAACU;AAAS,KAAE,CAAC;AACxE;AACF,CAAC,EACD;AACEpB,EAAAA,SAAS,EAAE,OAAO;AAClBC,EAAAA,GAAG,EAAE,OAAO;AACZC,EAAAA,MAAM,EAAE,IAAI;AACZC,EAAAA,KAAK,EAAE,GAAG;EACVC,KAAK,EAAEC,SAAC,CAAC,6BAA6B;AACxC,CAAC,EACD;AACEL,EAAAA,SAAS,EAAE,QAAQ;AACnBC,EAAAA,GAAG,EAAE,QAAQ;AACbC,EAAAA,MAAM,EAAE,IAAI;AACZC,EAAAA,KAAK,EAAE,GAAG;AACVC,EAAAA,KAAK,EAAEC,SAAC,CAAC,8BAA8B,CAAC;AACxCC,EAAAA,MAAM,EAAE,SAARA,MAAMA,CAAEe,MAAM,EAAA;IAAA,oBACZN,cAAA,CAACO,GAAG,EAAA;AAACL,MAAAA,KAAK,EAAEM,oBAAU,CAACF,MAAM,CAAE;MAACH,KAAK,EAAEM,4BAAgB,CAACH,MAAM;AAAE,KAAE,CAAC;AAAA;AAEvE,CAAC,EACD;AACErB,EAAAA,SAAS,EAAE,WAAW;AACtBC,EAAAA,GAAG,EAAE,WAAW;AAChBC,EAAAA,MAAM,EAAE,IAAI;AACZC,EAAAA,KAAK,EAAE,GAAG;AACVC,EAAAA,KAAK,EAAEC,SAAC,CAAC,+BAA+B,CAAC;AACzCC,EAAAA,MAAM,EAAE,SAARA,MAAMA,CAAEmB,SAAS,EAAA;AAAA,IAAA,oBACfV,cAAA,CAACW,UAAU,CAACC,OAAO,EAAA;AACjBC,MAAAA,IAAI,EAAEH,SAAU;AAChBI,MAAAA,eAAe,EAAE;AAAEX,QAAAA,KAAK,EAAE;AAAQ;AAAE,KACrC,CAAC;AAAA;AAEN,CAAC,CACF;;;;ACzBD,IAAMY,OAAO,GAAG,SAAVA,OAAOA,CAAAtB,IAAA,EAAmC;AAAA,EAAA,IAA7BuB,UAAU,GAAAvB,IAAA,CAAVuB,UAAU;IAAEC,UAAU,GAAAxB,IAAA,CAAVwB,UAAU;AACvC,EAAA,IAAAzC,SAAA,GAA8BC,cAAQ,CAACyC,iCAAqB,CAAC;IAAAtC,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAAtD2C,IAAAA,OAAO,GAAAvC,UAAA,CAAA,CAAA,CAAA;AAAEwC,IAAAA,UAAU,GAAAxC,UAAA,CAAA,CAAA,CAAA;EAC1B,IAAMyC,mBAAmB,GAAGC,sBAAW,CAACH,OAAO,CAACI,UAAU,EAAEC,wBAAY,CAAC;AACzE,EAAA,IAAAC,YAAA,GAA6ClD,WAAW,EAAE;IAAlDL,cAAc,GAAAuD,YAAA,CAAdvD,cAAc;IAAEC,gBAAgB,GAAAsD,YAAA,CAAhBtD,gBAAgB;AACxC,EAAA,IAAAuD,UAAA,GAA8CjD,cAAQ,CAAC,EAAE,CAAC;IAAAkD,UAAA,GAAA9C,cAAA,CAAA6C,UAAA,EAAA,CAAA,CAAA;AAAnDE,IAAAA,eAAe,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,kBAAkB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC1C,EAAA,IAAAG,eAAA,GAAcC,2BAAc,EAAE;IAAtBzC,CAAC,GAAAwC,eAAA,CAADxC,CAAC;EAET,IAAA0C,iBAAA,GAAiBC,mCAAgB,CAAC;MAChCC,MAAM,EAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EACDjE,cAAc,CAAA,EACdiD,OAAO,CAAA,EAAA,EAAA,EAAA;AACVI,QAAAA,UAAU,EAAEF,mBAAmB,CAACe,IAAI,EAAE;AACtC9B,QAAAA,MAAM,EAAE,CAAC+B,oBAAQ,CAACC,QAAQ,EAAED,oBAAQ,CAACE,QAAQ,EAAEF,oBAAQ,CAACG,SAAS;OAClE,CAAA;AACDvB,MAAAA,UAAU,EAAVA;AACF,KAAC,CAAC;IARMhD,IAAI,GAAA+D,iBAAA,CAAJ/D,IAAI;AAUZ,EAAA,IAAAwE,KAAA,GAA6DxE,IAAI,IAAI,EAAE;IAAAyE,cAAA,GAAAD,KAAA,CAA/DE,QAAQ;AAAEC,IAAAA,iBAAiB,GAAAF,cAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,cAAA;IAAAG,gBAAA,GAAAJ,KAAA,CAAEK,UAAU;AAAVA,IAAAA,UAAU,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,gBAAA;AAExDE,EAAAA,eAAS,CAAC,YAAM;IACd,IAAI,CAAC9E,IAAI,EAAE;AACXD,IAAAA,eAAe,CAACC,IAAI,KAAJA,IAAAA,IAAAA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAE0E,QAAQ,EAAEzE,cAAc,EAAEC,gBAAgB,CAAC;IACjE0D,kBAAkB,CAAC,UAAAD,eAAe,EAAA;AAAA,MAAA,OAChCoB,wCAAqB,CAAC;AAAEC,QAAAA,YAAY,EAAEhF,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAE0E,QAAQ;AAAEf,QAAAA,eAAe,EAAfA;AAAgB,OAAC,CAAC;AAAA,KAC1E,CAAC;AACH,GAAC,EAAE,CAAC3D,IAAI,CAAC,CAAC;EAEV,IAAMiF,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,CAAC,EAAEC,EAAE,EAAEjE,MAAM,EAAK;AAC3CiC,IAAAA,UAAU,CAAAe,eAAA,CAAAA,eAAA,KACLhB,OAAO,CAAA,EAAA,EAAA,EAAA;MACVkC,MAAM,EAAEC,0BAAgB,CAACnE,MAAM,CAACoE,KAAK,IAAI,EAAE,CAAC;AAC5CC,MAAAA,OAAO,EAAEC,sBAAU,CAACtE,MAAM,CAACuE,KAAK;AAAC,KAAA,CAClC,CAAC;GACH;EAED,oBACEC,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,CACG,CAACzF,aAAO,CAACwE,iBAAiB,CAAC,gBAC1B5C,cAAA,CAAC8D,YAAY,EAAA;AACXC,MAAAA,SAAS,EAAC,MAAM;AAChBC,MAAAA,aAAa,EAAElB,UAAU,GAAG5E,cAAc,CAACI,QAAS;MAAAuF,QAAA,eAEpD7D,cAAA,CAACiE,OAAK,EAAA;AACE9F,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAAE2E,QAAAA,UAAU,EAAVA,UAAU;QAClCoB,aAAa,EAAA,IAAA;QACbC,WAAW,EAAA,IAAA;AACXC,QAAAA,UAAU,EAAEpF,qBAAsB;QAClCqF,iBAAiB,EAAEnG,cAAc,CAACG,IAAK;QACvCiG,eAAe,EAAEpG,cAAc,CAACI,QAAS;AACzCiG,QAAAA,OAAO,EAAE3B,iBAAkB;AAC3B4B,QAAAA,eAAe,EAAE;UACfC,gBAAgB,EACd,CAAA7B,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,KAAjBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAiB,CAAE8B,MAAM,IAAG/F,2BAAiB,GAAG;SAClD;AACFgG,QAAAA,QAAQ,EAAEzB,iBAAkB;AAC5B0B,QAAAA,UAAU,EAAE,SAAZA,UAAUA,CAAGzB,CAAC,EAAEvB,eAAe,EAAA;UAAA,OAC7BC,kBAAkB,CAACD,eAAe,CAAC;AAAA;OAEtC;KACW,CAAC,gBAEf5B,cAAA,CAAA,KAAA,EAAA;AAAK+D,MAAAA,SAAS,EAAC,0DAA0D;MAAAF,QAAA,eACvE7D,cAAA,CAAC6E,MAAM,EAAA;QACLC,QAAQ,eACN9E,cAAA,CAAC+E,kBAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,+CAA+C;AACvD7E,UAAAA,KAAK,EAAC,MAAM;AACZ8E,UAAAA,MAAM,EAAE;YAAEC,MAAM,EAAE5F,CAAC,CAAC,+BAA+B;WAAI;AACvD6F,UAAAA,UAAU,EAAE;YACVC,CAAC,eACCpF,cAAA,CAACC,MAAM,EAAA;AACLE,cAAAA,KAAK,EAAC,MAAM;AACZkF,cAAAA,MAAM,EAAC,QAAQ;AACfjF,cAAAA,EAAE,EAAE;AAAEC,gBAAAA,QAAQ,EAAEW;AAAW;aAC5B;AAEL;AAAE,SACH,CACF;AACD3B,QAAAA,KAAK,EAAEC,CAAC,CAAC,iCAAiC,EAAE;AAC1CgG,UAAAA,IAAI,EAAEhG,CAAC,CAAC,8BAA8B,EAAEiG,gBAAM;SAC/C;OACF;AAAC,KACC,CACN,eACDvF,cAAA,CAACwF,qCAAkB,EAAA;AACX5D,MAAAA,eAAe,EAAfA,eAAe;AACrB6D,MAAAA,MAAM,EAAEC,mBAAS,CAAC9D,eAAe,CAAE;MACnC+D,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,QAAA,OAAQ9D,kBAAkB,CAAC,EAAE,CAAC;AAAA;AAAC,KACvC,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;ACjHM,IAAM+D,qBAAqB,GAAGC,kBAAQ,CAC3C;AAAE3G,EAAAA,GAAG,EAAE;AAAS,CAAC,EACjBF,qBACF,CAAC;;;;ACiBD,IAAM8G,eAAe,GAAG,SAAlBA,eAAeA,CAAArG,IAAA,EAAmC;AAAA,EAAA,IAA7BuB,UAAU,GAAAvB,IAAA,CAAVuB,UAAU;IAAEC,UAAU,GAAAxB,IAAA,CAAVwB,UAAU;AAC/C,EAAA,IAAAzC,SAAA,GAA8BC,cAAQ,CAACyC,iCAAqB,CAAC;IAAAtC,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAAtD2C,IAAAA,OAAO,GAAAvC,UAAA,CAAA,CAAA,CAAA;AAAEwC,IAAAA,UAAU,GAAAxC,UAAA,CAAA,CAAA,CAAA;AAC1B,EAAA,IAAA8C,UAAA,GAA8CjD,cAAQ,CAAC,EAAE,CAAC;IAAAkD,UAAA,GAAA9C,cAAA,CAAA6C,UAAA,EAAA,CAAA,CAAA;AAAnDE,IAAAA,eAAe,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,kBAAkB,GAAAF,UAAA,CAAA,CAAA,CAAA;EAC1C,IAAMN,mBAAmB,GAAGC,sBAAW,CAACH,OAAO,CAACI,UAAU,EAAEC,wBAAY,CAAC;AACzE,EAAA,IAAAC,YAAA,GAA6ClD,WAAW,EAAE;IAAlDL,cAAc,GAAAuD,YAAA,CAAdvD,cAAc;IAAEC,gBAAgB,GAAAsD,YAAA,CAAhBtD,gBAAgB;AACxC,EAAA,IAAA2D,eAAA,GAAcC,2BAAc,EAAE;IAAtBzC,CAAC,GAAAwC,eAAA,CAADxC,CAAC;EAET,IAAA0C,iBAAA,GAAiBC,mCAAgB,CAAC;MAChCC,MAAM,EAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EACDjE,cAAc,CAAA,EACdiD,OAAO,CAAA,EAAA,EAAA,EAAA;AACVI,QAAAA,UAAU,EAAEF,mBAAmB,CAACe,IAAI,EAAE;AACtC9B,QAAAA,MAAM,EAAE,CAAC+B,oBAAQ,CAAC1E,OAAO;OAC1B,CAAA;AACDsD,MAAAA,UAAU,EAAVA;AACF,KAAC,CAAC;IARMhD,IAAI,GAAA+D,iBAAA,CAAJ/D,IAAI;AAUZ,EAAA,IAAAwE,KAAA,GAA2DxE,IAAI,IAAI,EAAE;IAAAyE,cAAA,GAAAD,KAAA,CAA7DE,QAAQ;AAAEoD,IAAAA,eAAe,GAAArD,cAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,cAAA;IAAAG,gBAAA,GAAAJ,KAAA,CAAEK,UAAU;AAAVA,IAAAA,UAAU,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,gBAAA;AAEtDE,EAAAA,eAAS,CAAC,YAAM;IACd,IAAI,CAAC9E,IAAI,EAAE;AACXD,IAAAA,eAAe,CAACC,IAAI,KAAJA,IAAAA,IAAAA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAE0E,QAAQ,EAAEzE,cAAc,EAAEC,gBAAgB,CAAC;AACnE,GAAC,EAAE,CAACF,IAAI,CAAC,CAAC;EAEV,IAAMiF,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,CAAC,EAAEC,EAAE,EAAEjE,MAAM,EAAK;AAC3CiC,IAAAA,UAAU,CAAAe,eAAA,CAAAA,eAAA,KACLhB,OAAO,CAAA,EAAA,EAAA,EAAA;MACVkC,MAAM,EAAEC,0BAAgB,CAACnE,MAAM,CAACoE,KAAK,IAAI,EAAE,CAAC;AAC5CC,MAAAA,OAAO,EAAEC,sBAAU,CAACtE,MAAM,CAACuE,KAAK;AAAC,KAAA,CAClC,CAAC;GACH;EAED,oBACEC,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,CACG,CAACzF,aAAO,CAAC2H,eAAe,CAAC,gBACxB/F,cAAA,CAAC8D,YAAY,EAAA;AACXC,MAAAA,SAAS,EAAC,MAAM;AAChBC,MAAAA,aAAa,EAAElB,UAAU,GAAG5E,cAAc,CAACI,QAAS;MAAAuF,QAAA,eAEpD7D,cAAA,CAACiE,OAAK,EAAA;AACE9F,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAAE2E,QAAAA,UAAU,EAAVA,UAAU;QAClCoB,aAAa,EAAA,IAAA;QACbC,WAAW,EAAA,IAAA;AACXC,QAAAA,UAAU,EAAEwB,qBAAsB;QAClCvB,iBAAiB,EAAEnG,cAAc,CAACG,IAAK;QACvCiG,eAAe,EAAEpG,cAAc,CAACI,QAAS;AACzCiG,QAAAA,OAAO,EAAEwB,eAAgB;AACzBvB,QAAAA,eAAe,EAAE;UACfC,gBAAgB,EAAE,CAAAsB,eAAe,KAAfA,IAAAA,IAAAA,eAAe,KAAfA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,eAAe,CAAErB,MAAM,IAAG/F,2BAAiB,GAAG;SAChE;AACFgG,QAAAA,QAAQ,EAAEzB,iBAAkB;AAC5B0B,QAAAA,UAAU,EAAE,SAAZA,UAAUA,CAAGzB,CAAC,EAAEvB,eAAe,EAAA;UAAA,OAC7BC,kBAAkB,CAACD,eAAe,CAAC;AAAA;OAEtC;KACW,CAAC,gBAEf5B,cAAA,CAAA,KAAA,EAAA;AAAK+D,MAAAA,SAAS,EAAC,0DAA0D;MAAAF,QAAA,eACvE7D,cAAA,CAAC6E,MAAM,EAAA;QACLC,QAAQ,eACN9E,cAAA,CAAC+E,kBAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,+CAA+C;AACvD7E,UAAAA,KAAK,EAAC,MAAM;AACZgF,UAAAA,UAAU,EAAE;YACVC,CAAC,eACCpF,cAAA,CAACC,MAAM,EAAA;AACLE,cAAAA,KAAK,EAAC,MAAM;AACZkF,cAAAA,MAAM,EAAC,QAAQ;AACfjF,cAAAA,EAAE,EAAE;AAAEC,gBAAAA,QAAQ,EAAEW;AAAW;aAC5B;WAEH;AACFiE,UAAAA,MAAM,EAAE;AACNC,YAAAA,MAAM,EAAE5F,CAAC,CAAC,uCAAuC,EAAEiG,gBAAM;AAC3D;AAAE,SACH,CACF;AACDlG,QAAAA,KAAK,EAAEC,CAAC,CAAC,iCAAiC,EAAE;AAC1CgG,UAAAA,IAAI,EAAEhG,CAAC,CAAC,uCAAuC,EAAEiG,gBAAM;SACxD;OACF;AAAC,KACC,CACN,eACDvF,cAAA,CAACwF,qCAAkB,EAAA;AACX5D,MAAAA,eAAe,EAAfA,eAAe;MACrBoE,SAAS,EAAA,IAAA;AACTP,MAAAA,MAAM,EAAEC,mBAAS,CAAC9D,eAAe,CAAE;MACnC+D,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,QAAA,OAAQ9D,kBAAkB,CAAC,EAAE,CAAC;AAAA;AAAC,KACvC,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;AC/GM,IAAMoE,4BAA4B,GAAG;AAC1CC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,WAAW,EAAE,EAAE;AACfC,EAAAA,OAAO,EAAE;AACX,CAAC;AAEM,IAAMC,+BAA+B,GAAGC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AAChEN,EAAAA,IAAI,EAAEI,cAAG,CACNG,MAAM,EAAE,CACRrE,IAAI,EAAE,CACNsE,QAAQ,CACPpH,SAAC,CAAC,qCAAqC,EAAE;IACvCgG,IAAI,EAAEhG,SAAC,CAAC,4BAA4B;AACtC,GAAC,CACH,CAAC;AACH8G,EAAAA,OAAO,EAAEE,cAAG,CAACG,MAAM,EAAE,CAACE,IAAI,CACxB,SAAS,EACTrH,SAAC,CAAC,qCAAqC,EAAE;IACvCgG,IAAI,EAAEhG,SAAC,CAAC,sCAAsC;GAC/C,CAAC,EACF,UAAAsH,OAAO,EAAA;AAAA,IAAA,OAAI,CAACC,mBAAa,CAACD,OAAO,CAAC;GACpC;AACF,CAAC,CAAC;;ACvBF,IAAME,aAAa,GAAGC,gBAAK,CAAC,UAAAtH,IAAA,EAAA;AAAA,EAAA,IAAGH,CAAC,GAAAG,IAAA,CAADH,CAAC;IAAA0H,iBAAA,GAAAvH,IAAA,CAAEwH,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,iBAAA;IAAAE,iBAAA,GAAAzH,IAAA,CAAE0H,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,iBAAA;EAAA,oBACpElH,cAAA,CAACoH,YAAY,EAAA;AACLD,IAAAA,YAAY,EAAZA,YAAY;IAClBT,QAAQ,EAAA,IAAA;AACRxG,IAAAA,KAAK,EAAEZ,CAAC,CAAC,sCAAsC,CAAE;AACjD4G,IAAAA,IAAI,EAAC,SAAS;AACdmB,IAAAA,IAAI,EAAE,CAAE;AACRC,IAAAA,SAAS,EAAEL,YAAa;AACxBM,IAAAA,WAAW,EAAEjI,CAAC,CAAC,2CAA2C,EAAE;MAC1DgG,IAAI,EAAEhG,CAAC,CAAC,sCAAsC;KAC/C;AAAE,GACJ,CAAC;AAAA,CACH,CAAC;;ACRF,IAAMkI,YAAY,GAAG,SAAfA,YAAYA,CAAA/H,IAAA,EAAsC;AAAA,EAAA,IAAhCwH,YAAY,GAAAxH,IAAA,CAAZwH,YAAY;IAAEQ,WAAW,GAAAhI,IAAA,CAAXgI,WAAW;AAC/C,EAAA,IAAA3F,eAAA,GAAcC,2BAAc,EAAE;IAAtBzC,CAAC,GAAAwC,eAAA,CAADxC,CAAC;AACT,EAAA,IAAAoI,iBAAA,GAAkCC,uBAAgB,EAAE;IAA5C1C,MAAM,GAAAyC,iBAAA,CAANzC,MAAM;IAAE2C,aAAa,GAAAF,iBAAA,CAAbE,aAAa;AAE7B,EAAA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAApF,KAAA,EAAgC;AAAA,IAAA,IAAhBqF,OAAO,GAAArF,KAAA,CAAjB4C,MAAM,CAAIyC,OAAO;AAClDF,IAAAA,aAAa,CAAC,oBAAoB,EAAEE,OAAO,CAAC;IAC5C,IAAI,CAACA,OAAO,EAAE;AACZF,MAAAA,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC;AAClC;GACD;AAED,EAAA,oBACEjE,eAAA,CAAA,KAAA,EAAA;AAAKI,IAAAA,SAAS,EAAC,gCAAgC;IAAAF,QAAA,EAAA,cAC7C7D,cAAA,CAAC+H,KAAK,EAAA;MACJC,SAAS,EAAA,IAAA;MACTtB,QAAQ,EAAA,IAAA;AACRxG,MAAAA,KAAK,EAAEZ,CAAC,CAAC,4BAA4B,CAAE;AACvC4G,MAAAA,IAAI,EAAC,MAAM;MACXqB,WAAW,EAAEjI,CAAC,CAAC,yCAAyC;AAAE,KAC3D,CAAC,eACFU,cAAA,CAACiI,iBAAiB,EAAA;AAChBC,MAAAA,UAAU,EAAC,oBAAoB;AAC/B7I,MAAAA,KAAK,EAAEC,CAAC,CAAC,0CAA0C,CAAE;AACrD6I,MAAAA,WAAW,EAAE;AACXxD,QAAAA,QAAQ,EAAEkD,uBAAuB;AACjCO,QAAAA,YAAY,EAAE;AACZC,UAAAA,iBAAiB,EAAE/I,CAAC,CAClB,mDACF,CAAC;UACDgJ,kBAAkB,EAAEhJ,CAAC,CACnB,oDACF;AACF;OACA;AAAAuE,MAAAA,QAAA,EAEDoB,MAAM,CAACsD,kBAAkB,iBACxBvI,cAAA,CAACwI,QAAQ,EAAA;AACPzE,QAAAA,SAAS,EAAC,QAAQ;AAClBmC,QAAAA,IAAI,EAAC,aAAa;QAClBqB,WAAW,EAAEjI,CAAC,CAAC,gDAAgD;OAChE;AACF,KACgB,CAAC,eACpBU,cAAA,CAAC8G,aAAa,EAAA;AAAOG,MAAAA,YAAY,EAAZA,YAAY;MAAIE,YAAY,EAAEM,WAAW,CAACrB;AAAQ,KAAE,CAAC;AAAA,GACvE,CAAC;AAEV,CAAC;;ACtCD,IAAMqC,IAAI,GAAG,SAAPA,IAAIA,CAAAhJ,IAAA,EAOJ;AAAA,EAAA,IANJgG,MAAM,GAAAhG,IAAA,CAANgG,MAAM;IACNE,OAAO,GAAAlG,IAAA,CAAPkG,OAAO;IAAA+C,gBAAA,GAAAjJ,IAAA,CACPgI,WAAW;AAAXA,IAAAA,WAAW,GAAAiB,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA;IAAAC,aAAA,GAAAlJ,IAAA,CAChBmJ,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAGE,KAAAA,CAAAA,GAAAA,cAAI,GAAAF,aAAA;IAAAG,cAAA,GAAArJ,IAAA,CACfsJ,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IACjB7B,YAAY,GAAAxH,IAAA,CAAZwH,YAAY;AAEZ,EAAA,IAAM+B,cAAc,GAAGC,YAAM,CAAC,IAAI,CAAC;AAEnC,EAAA,IAAAnH,eAAA,GAAcC,2BAAc,EAAE;IAAtBzC,CAAC,GAAAwC,eAAA,CAADxC,CAAC;EAET,IAAM4J,MAAM,GAAG9K,aAAO,CAACqJ,WAAW,CAAC,GAC/BnI,CAAC,CAAC,+BAA+B,EAAE;AACjCgG,IAAAA,IAAI,EAAEhG,CAAC,CAAC,gCAAgC,EAAE6J,kBAAQ;AACpD,GAAC,CAAC,GACF7J,CAAC,CAAC,6BAA6B,EAAE;AAC/BgG,IAAAA,IAAI,EAAEhG,CAAC,CAAC,gCAAgC,EAAE6J,kBAAQ;AACpD,GAAC,CAAC;EAEN,oBACExF,eAAA,CAACyF,IAAI,EAAA;AACG3D,IAAAA,MAAM,EAANA,MAAM;AAAEE,IAAAA,OAAO,EAAPA,OAAO;AACrB0D,IAAAA,eAAe,EAAEL,cAAe;AAChCM,IAAAA,IAAI,EAAC,OAAO;AAAAzF,IAAAA,QAAA,EAEZ7D,cAAAA,cAAA,CAACoJ,IAAI,CAACG,MAAM,EAAA;MAAA1F,QAAA,eACV7D,cAAA,CAACwJ,UAAU,EAAA;AAACrJ,QAAAA,KAAK,EAAC,IAAI;AAAA0D,QAAAA,QAAA,EAAEqF;OAAmB;AAAC,KACjC,CAAC,eACdvF,eAAA,CAAC8F,UAAU,EAAA;AACTC,MAAAA,WAAW,EAAE;AACXC,QAAAA,kBAAkB,EAAE,IAAI;QACxBC,aAAa,EAAElE,mBAAS,CAAC+B,WAAW,CAAC,GACjCA,WAAW,GACXxB,4BAA4B;AAChC4D,QAAAA,gBAAgB,EAAExD,+BAA+B;AACjDuC,QAAAA,QAAQ,EAARA;OACA;AAAA/E,MAAAA,QAAA,EAEF7D,cAAAA,cAAA,CAACoJ,IAAI,CAACU,IAAI,EAAA;QAAAjG,QAAA,eACR7D,cAAA,CAACwH,YAAY,EAAA;AAAOC,UAAAA,WAAW,EAAXA,WAAW;AAAER,UAAAA,YAAY,EAAZA;SAAiB;AAAC,OAC1C,CAAC,eACZjH,cAAA,CAACoJ,IAAI,CAACW,MAAM,EAAA;QAAAlG,QAAA,eACV7D,cAAA,CAACgK,WAAW,EAAA;AACVC,UAAAA,YAAY,EAAElB,SAAU;AACxBmB,UAAAA,iBAAiB,EAAE;AACjB,YAAA,SAAS,EAAE,mDAAmD;AAC9DC,YAAAA,OAAO,EAAExE;WACT;AACFyE,UAAAA,iBAAiB,EAAE;AACjB,YAAA,SAAS,EAAE;AACb;SACD;AAAC,OACS,CAAC;AAAA,KACJ,CAAC;AAAA,GACT,CAAC;AAEX,CAAC;;ACpED,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAA5K,IAAA,EAA+D;AAAA,EAAA,IAAzD6K,WAAW,GAAA7K,IAAA,CAAX6K,WAAW;IAAE7E,MAAM,GAAAhG,IAAA,CAANgG,MAAM;IAAEE,OAAO,GAAAlG,IAAA,CAAPkG,OAAO;IAAE4E,oBAAoB,GAAA9K,IAAA,CAApB8K,oBAAoB;AAClE,EAAA,IAAAC,kBAAA,GAA8CC,iCAAiB,EAAE;IAAjDC,cAAc,GAAAF,kBAAA,CAAtBG,MAAM;IAAkB3E,SAAS,GAAAwE,kBAAA,CAATxE,SAAS;AAEzC,EAAA,IAAM4C,QAAQ,GAAG,SAAXA,QAAQA,CAAGgC,QAAQ,EAAI;AAC3B,IAAA,IAAMC,OAAO,GAAG;AAAED,MAAAA,QAAQ,EAARA;KAAU;AAE5BF,IAAAA,cAAc,CAAC;AAAE/K,MAAAA,GAAG,EAAE2K,WAAW;AAAEO,MAAAA,OAAO,EAAPA;AAAQ,KAAC,EAAE;AAAEC,MAAAA,SAAS,EAAEnF;AAAQ,KAAC,CAAC;GACtE;EAED,oBACE3F,cAAA,CAACyI,IAAI,EAAA;AACGhD,IAAAA,MAAM,EAANA,MAAM;AAAEE,IAAAA,OAAO,EAAPA,OAAO;AAAEiD,IAAAA,QAAQ,EAARA,QAAQ;AAC/BG,IAAAA,SAAS,EAAE/C,SAAU;AACrBiB,IAAAA,YAAY,EAAEsD;AAAqB,GACpC,CAAC;AAEN,CAAC;;;;AChBD,IAAMQ,IAAI,GAAG,SAAPA,IAAIA,CAAAtL,IAAA,EAOJ;AAAA,EAAA,IANJ6K,WAAW,GAAA7K,IAAA,CAAX6K,WAAW;IACXM,QAAQ,GAAAnL,IAAA,CAARmL,QAAQ;IACRI,WAAW,GAAAvL,IAAA,CAAXuL,WAAW;IACXvF,MAAM,GAAAhG,IAAA,CAANgG,MAAM;IACNE,OAAO,GAAAlG,IAAA,CAAPkG,OAAO;IACP4E,oBAAoB,GAAA9K,IAAA,CAApB8K,oBAAoB;EAEpB,IAAAU,kBAAA,GAA0DC,iCAAiB,CAAC;MAC1EJ,SAAS,EAAE,SAAXA,SAASA,GAAA;AAAA,QAAA,OAAQE,WAAW,CAAC,EAAE,CAAC;AAAA;AAClC,KAAC,CAAC;IAFcG,cAAc,GAAAF,kBAAA,CAAtBN,MAAM;IAA6BS,UAAU,GAAAH,kBAAA,CAArBjF,SAAS;AAIzC,EAAA,IAAM4C,QAAQ,GAAG,SAAXA,QAAQA,CAAGgC,QAAQ,EAAI;AAC3B,IAAA,IAAMC,OAAO,GAAG;AAAED,MAAAA,QAAQ,EAARA;KAAU;AAC5BO,IAAAA,cAAc,CAAC;MAAEE,EAAE,EAAET,QAAQ,CAACS,EAAE;AAAER,MAAAA,OAAO,EAAPA,OAAO;AAAElL,MAAAA,GAAG,EAAE2K;AAAY,KAAC,CAAC;GAC/D;AAED,EAAA,IAAM7C,WAAW,GAAAtF,eAAA,CAAAA,eAAA,KACZyI,QAAQ,CAAA,EAAA,EAAA,EAAA;AACXrC,IAAAA,kBAAkB,EAAE,CAAC,CAACqC,QAAQ,CAACzE;GAChC,CAAA;EAED,oBACEnG,cAAA,CAACyI,IAAI,EAAA;AACGhB,IAAAA,WAAW,EAAXA,WAAW;AAAEhC,IAAAA,MAAM,EAANA,MAAM;AAAEE,IAAAA,OAAO,EAAPA,OAAO;AAAEiD,IAAAA,QAAQ,EAARA,QAAQ;AAC5CG,IAAAA,SAAS,EAAEqC,UAAW;AACtBnE,IAAAA,YAAY,EAAEsD;AAAqB,GACpC,CAAC;AAEN,CAAC;;AC7BD,IAAMe,KAAK,GAAG,SAARA,KAAKA,CAAA7L,IAAA,EAAA;AAAA,EAAA,IAAMS,KAAK,GAAAT,IAAA,CAALS,KAAK;IAAEqL,KAAK,GAAA9L,IAAA,CAAL8L,KAAK;AAAA,EAAA,oBAC3B5H,eAAA,CAAA,KAAA,EAAA;AAAKI,IAAAA,SAAS,EAAC,0CAA0C;IAAAF,QAAA,EAAA,cACvD7D,cAAA,CAACwL,KAAK,EAAA;AAACzH,MAAAA,SAAS,EAAC,kBAAkB;AAAAF,MAAAA,QAAA,EAAE3D;AAAK,KAAQ,CAAC,eACnDF,cAAA,CAACwJ,UAAU,EAAA;AAACrJ,MAAAA,KAAK,EAAC,OAAO;AAACsL,MAAAA,MAAM,EAAC,QAAQ;AAAA5H,MAAAA,QAAA,EACtC0H;AAAK,KACI,CAAC;AAAA,GACV,CAAC;AAAA,CACP;AAED,cAAeG,aAAAA,UAAI,CAACJ,KAAK,CAAC;;ACL1B,IAAMK,qBAAqB,gBAAGD,UAAI,CAACE,aAAa,CAAC;AAEjD,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAApM,IAAA,EAAsC;AAAA,EAAA,IAAhCgG,MAAM,GAAAhG,IAAA,CAANgG,MAAM;IAAEE,OAAO,GAAAlG,IAAA,CAAPkG,OAAO;IAAEiF,QAAQ,GAAAnL,IAAA,CAARmL,QAAQ;AAClD,EAAA,IAAA9I,eAAA,GAAcC,2BAAc,EAAE;IAAtBzC,CAAC,GAAAwC,eAAA,CAADxC,CAAC;AACT,EAAA,IAAQ4G,IAAI,GAA2B0E,QAAQ,CAAvC1E,IAAI;IAAEC,WAAW,GAAcyE,QAAQ,CAAjCzE,WAAW;IAAEC,OAAO,GAAKwE,QAAQ,CAApBxE,OAAO;EAElC,oBACEzC,eAAA,CAACyF,IAAI,EAAA;AAAO3D,IAAAA,MAAM,EAANA,MAAM;AAAEE,IAAAA,OAAO,EAAPA,OAAO;AAAA9B,IAAAA,QAAA,EACzB7D,cAAAA,cAAA,CAACoJ,IAAI,CAACG,MAAM,EAAA;AAACxF,MAAAA,SAAS,EAAC,WAAW;MAAAF,QAAA,eAChC7D,cAAA,CAACwJ,UAAU,EAAA;AAACrJ,QAAAA,KAAK,EAAC,IAAI;QAAA0D,QAAA,EACnBvE,CAAC,CAAC,uCAAuC;OAChC;AAAC,KACF,CAAC,eACdqE,eAAA,CAACyF,IAAI,CAACU,IAAI,EAAA;AAAC/F,MAAAA,SAAS,EAAC,WAAW;MAAAF,QAAA,EAAA,cAC9B7D,cAAA,CAACsL,OAAK,EAAA;AAACpL,QAAAA,KAAK,EAAEZ,CAAC,CAAC,4BAA4B,CAAE;AAACiM,QAAAA,KAAK,EAAErF;AAAK,OAAE,CAAC,eAC9DlG,cAAA,CAACsL,OAAK,EAAA;AACJpL,QAAAA,KAAK,EAAEZ,CAAC,CAAC,0CAA0C,CAAE;AACrDiM,QAAAA,KAAK,EAAEpF;OACR,CAAC,eACFxC,eAAA,CAAA,KAAA,EAAA;AAAKI,QAAAA,SAAS,EAAC,gCAAgC;QAAAF,QAAA,EAAA,cAC7C7D,cAAA,CAACwL,KAAK,EAAA;AAACzH,UAAAA,SAAS,EAAC,kBAAkB;UAAAF,QAAA,EAChCvE,CAAC,CAAC,sCAAsC;AAAC,SACrC,CAAC,eACRU,cAAA,CAAC2L,qBAAqB,EAAA;AACpB5H,UAAAA,SAAS,EAAC,8CAA8C;AACxD6C,UAAAA,OAAO,EAAER;AAAQ,SAClB,CAAC;AAAA,OACC,CAAC;AAAA,KACG,CAAC;AAAA,GACR,CAAC;AAEX,CAAC;;ACpCM,IAAM0F,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAArM,IAAA,EAAA;AAAA,EAAA,IAAMyF,MAAM,GAAAzF,IAAA,CAANyF,MAAM;IAAEvF,GAAG,GAAAF,IAAA,CAAHE,GAAG;EAAA,oBAChDK,cAAA,CAAC+E,kBAAK,EAAA;AACJC,IAAAA,OAAO,EAAC,sCAAsC;AAC9C7E,IAAAA,KAAK,EAAC,MAAM;AACZ8E,IAAAA,MAAM,EAAE;AAAEC,MAAAA,MAAM,EAAEA,MAAM,CAAC6G,iBAAiB;KAAK;AAC/C5G,IAAAA,UAAU,EAAE;MACVC,CAAC,eAAEpF,cAAA,CAACC,MAAM,EAAA;AAACE,QAAAA,KAAK,EAAC,MAAM;AAACkF,QAAAA,MAAM,EAAC,QAAQ;AAACjF,QAAAA,EAAE,EAAE;AAAEC,UAAAA,QAAQ,EAAEV;AAAI;OAAI;AAClE;AAAE,GACH,CAAC;AAAA,CACH;;;;;ACFD,IAAMsE,KAAK,GAAG,SAARA,KAAKA,CAAAxE,IAAA,EAaL;AAAA,EAAA,IAZJyF,MAAM,GAAAzF,IAAA,CAANyF,MAAM;IACNd,UAAU,GAAA3E,IAAA,CAAV2E,UAAU;IACVG,OAAO,GAAA9E,IAAA,CAAP8E,OAAO;IACPzB,UAAU,GAAArD,IAAA,CAAVqD,UAAU;IACV3B,OAAO,GAAA1B,IAAA,CAAP0B,OAAO;IACPC,UAAU,GAAA3B,IAAA,CAAV2B,UAAU;IACV4K,aAAa,GAAAvM,IAAA,CAAbuM,aAAa;IACbhL,UAAU,GAAAvB,IAAA,CAAVuB,UAAU;IACViL,WAAW,GAAAxM,IAAA,CAAXwM,WAAW;IACXC,aAAa,GAAAzM,IAAA,CAAbyM,aAAa;IACbhO,cAAc,GAAAuB,IAAA,CAAdvB,cAAc;AACXiO,IAAAA,UAAU,GAAAC,wBAAA,CAAA3M,IAAA,EAAA4M,WAAA,CAAA;AAEb,EAAA,IAAAvK,eAAA,GAAcC,2BAAc,EAAE;IAAtBzC,CAAC,GAAAwC,eAAA,CAADxC,CAAC;EAET,IAAMgN,OAAO,GAAGlI,UAAU,CAAC;AAAE6H,IAAAA,WAAW,EAAXA,WAAW;AAAEC,IAAAA,aAAa,EAAbA;AAAc,GAAC,CAAC;EAE1D,IAAMhJ,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,CAAC,EAAEC,EAAE,EAAEjE,MAAM,EAAK;AAC3CiC,IAAAA,UAAU,CAAAe,eAAA,CAAAA,eAAA,KACLhB,OAAO,CAAA,EAAA,EAAA,EAAA;MACVkC,MAAM,EAAElE,MAAM,CAACoE,KAAK;AACpBC,MAAAA,OAAO,EAAEC,sBAAU,CAACtE,MAAM,CAACuE,KAAK;AAAC,KAAA,CAClC,CAAC;GACH;AAED,EAAA,IAAM6I,WAAW,GAAG;AAClBC,IAAAA,kBAAkB,EAAE;AAClBtM,MAAAA,KAAK,EAAEZ,CAAC,CAAC,+BAA+B,EAAE;AACxCgG,QAAAA,IAAI,EAAEhG,CAAC,CAAC,gCAAgC,EAAE6J,kBAAQ;AACpD,OAAC,CAAC;MACFgB,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQ6B,aAAa,CAAC,IAAI,CAAC;AAAA;KACnC;IACDlH,QAAQ,EAAEgH,oBAAoB,CAAC;AAAE5G,MAAAA,MAAM,EAANA,MAAM;AAAEvF,MAAAA,GAAG,EAAEqB;KAAY;GAC3D;AAED,EAAA,IAAI5C,aAAO,CAACmG,OAAO,CAAC,EAAE;AACpB,IAAA,oBACEvE,cAAA,CAAA,KAAA,EAAA;AAAK+D,MAAAA,SAAS,EAAC,0DAA0D;AAAAF,MAAAA,QAAA,eACvE7D,cAAA,CAAC6E,MAAM,EAAA1C,eAAA,CAAA;AACL9C,QAAAA,KAAK,EAAEC,CAAC,CAAC,iCAAiC,EAAE;AAAEgG,UAAAA,IAAI,EAAEJ;SAAQ;AAAE,OAAA,EACzD,CAAC/D,OAAO,CAACI,UAAU,IAAIgL,WAAW,CACxC;AAAC,KACC,CAAC;AAEV;EAEA,oBACEvM,cAAA,CAAC8D,YAAY,EAAA;AACXC,IAAAA,SAAS,EAAC,MAAM;AAChBC,IAAAA,aAAa,EAAElB,UAAU,GAAG5E,cAAc,CAACI,QAAS;AAAAuF,IAAAA,QAAA,eAEpD7D,cAAA,CAACyM,OAAY,EAAAtK,eAAA,CAAA;MACXgC,WAAW,EAAA,IAAA;AACXC,MAAAA,UAAU,EAAEkI,OAAQ;MACpBjI,iBAAiB,EAAEnG,cAAc,CAACG,IAAK;MACvCiG,eAAe,EAAEpG,cAAc,CAACI,QAAS;AACzCkG,MAAAA,eAAe,EAAE;QACfC,gBAAgB,EAAE,CAAAF,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEG,MAAM,IAAG/F,2BAAiB,GAAG;OACxD;AACFgG,MAAAA,QAAQ,EAAEzB;AAAkB,KAAA,EAAAf,eAAA,CAAA;AACtBoC,MAAAA,OAAO,EAAPA,OAAO;AAAEzB,MAAAA,UAAU,EAAVA;AAAU,KAAA,EAAKqJ,UAAU,CACzC,CAAA;AAAC,GACU,CAAC;AAEnB,CAAC;;ACrED,IAAM/H,UAAU,GAAG,SAAbA,UAAUA,CAAA3E,IAAA,EAAA;AAAA,EAAA,IAAMwM,WAAW,GAAAxM,IAAA,CAAXwM,WAAW;IAAEC,aAAa,GAAAzM,IAAA,CAAbyM,aAAa;AAAA,EAAA,OAAO,CACrD;AACEjN,IAAAA,SAAS,EAAE,MAAM;AACjBC,IAAAA,GAAG,EAAE,MAAM;AACXC,IAAAA,MAAM,EAAE,IAAI;AACZE,IAAAA,KAAK,EAAEqN,OAAO,CAACpN,CAAC,CAAC,4BAA4B,CAAC;AAC9CqN,IAAAA,QAAQ,EAAE,IAAI;AACdvN,IAAAA,KAAK,EAAE,GAAG;AACVG,IAAAA,MAAM,EAAE,SAARA,MAAMA,CAAG4D,CAAC,EAAEyH,QAAQ,EAAA;AAAA,MAAA,oBAClBjH,eAAA,CAAA,KAAA,EAAA;AAAKI,QAAAA,SAAS,EAAC,2CAA2C;QAAAF,QAAA,EAAA,cACxD7D,cAAA,CAACwJ,UAAU,EAAA;AAACzF,UAAAA,SAAS,EAAC,UAAU;AAAC5D,UAAAA,KAAK,EAAC,OAAO;UAAA0D,QAAA,EAC3C+G,QAAQ,CAAC1E;AAAI,SACJ,CAAC,eACblG,cAAA,CAAC4M,YAAY,EAAA;AACXC,UAAAA,mBAAmB,EAAE;AAAE9I,YAAAA,SAAS,EAAE;WAAc;AAChD+I,UAAAA,aAAa,EAAE;AACbC,YAAAA,QAAQ,EAAE,OAAO;AACjB5C,YAAAA,OAAO,EAAE,SAATA,OAAOA,CAAE6C,CAAC,EAAA;AAAA,cAAA,OAAIA,CAAC,CAACC,eAAe,EAAE;AAAA,aAAA;YACjCC,QAAQ,EAAE,SAAVA,QAAQA,GAAA;cAAA,OAAQC,QAAQ,CAACC,IAAI;AAAA;WAC7B;UACFC,SAAS,EAAE,CAAAC,eAAA,CAAA;AAEPpO,YAAAA,GAAG,EAAE,MAAM;AACXgB,YAAAA,KAAK,EAAEwM,OAAO,CAACpN,CAAC,CAAC,4BAA4B,CAAC;AAC9C6K,YAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEoD,KAAK,EAAA;AAAA,cAAA,OAAItB,WAAW,CAACsB,KAAK,EAAE3C,QAAQ,CAAC;AAAA;AAAA,WAAA,EAC7C4C,uBAAW,EAAG,6CAA6C,CAAA,EAAAF,eAAA,CAAA;AAG5DpO,YAAAA,GAAG,EAAE,QAAQ;AACbgB,YAAAA,KAAK,EAAEwM,OAAO,CAACpN,CAAC,CAAC,8BAA8B,CAAC;AAChD6K,YAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEoD,KAAK,EAAA;AAAA,cAAA,OAAIrB,aAAa,CAACqB,KAAK,EAAE3C,QAAQ,CAAC;AAAA;WAC/C4C,EAAAA,uBAAW,EAAG,+CAA+C,CAAA;AAEhE,SACH,CAAC;AAAA,OACC,CAAC;AAAA;AAEV,GAAC,EACD;AACEvO,IAAAA,SAAS,EAAE,aAAa;AACxBC,IAAAA,GAAG,EAAE,aAAa;AAClBG,IAAAA,KAAK,EAAEqN,OAAO,CAACpN,CAAC,CAAC,0CAA0C,CAAC;AAC5DF,IAAAA,KAAK,EAAE;AACT,GAAC,CACF;AAAA,CAAA;;;;;AC1BD,IAAMqO,SAAS,GAAG,SAAZA,SAASA,CAAAhO,IAAA,EAMT;AAAA,EAAA,IALJ8B,UAAU,GAAA9B,IAAA,CAAV8B,UAAU;IACVmM,qBAAqB,GAAAjO,IAAA,CAArBiO,qBAAqB;IACrBC,wBAAwB,GAAAlO,IAAA,CAAxBkO,wBAAwB;IACxB3M,UAAU,GAAAvB,IAAA,CAAVuB,UAAU;AACPmL,IAAAA,UAAU,GAAAC,wBAAA,CAAA3M,IAAA,EAAA4M,SAAA,CAAA;AAEb,EAAA,IAAA7N,SAAA,GAA8BC,cAAQ,CAACyC,iCAAqB,CAAC;IAAAtC,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAAtD2C,IAAAA,OAAO,GAAAvC,UAAA,CAAA,CAAA,CAAA;AAAEwC,IAAAA,UAAU,GAAAxC,UAAA,CAAA,CAAA,CAAA;AAC1B,EAAA,IAAA8C,UAAA,GAAgDjD,cAAQ,CAAC,EAAE,CAAC;IAAAkD,UAAA,GAAA9C,cAAA,CAAA6C,UAAA,EAAA,CAAA,CAAA;AAArDkM,IAAAA,gBAAgB,GAAAjM,UAAA,CAAA,CAAA,CAAA;AAAEkM,IAAAA,mBAAmB,GAAAlM,UAAA,CAAA,CAAA,CAAA;AAC5C,EAAA,IAAAmM,UAAA,GAAkDrP,cAAQ,CAAC,KAAK,CAAC;IAAAsP,UAAA,GAAAlP,cAAA,CAAAiP,UAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAG,UAAA,GAA4CzP,cAAQ,CAAC,KAAK,CAAC;IAAA0P,UAAA,GAAAtP,cAAA,CAAAqP,UAAA,EAAA,CAAA,CAAA;AAApDE,IAAAA,cAAc,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,iBAAiB,GAAAF,UAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAAG,UAAA,GAA4C7P,cAAQ,CAAC,KAAK,CAAC;IAAA8P,WAAA,GAAA1P,cAAA,CAAAyP,UAAA,EAAA,CAAA,CAAA;AAApDE,IAAAA,cAAc,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,iBAAiB,GAAAF,WAAA,CAAA,CAAA,CAAA;AAExC,EAAA,IAAA9M,YAAA,GACElD,WAAW,EAAE;IADPL,cAAc,GAAAuD,YAAA,CAAdvD,cAAc;IAAEC,gBAAgB,GAAAsD,YAAA,CAAhBtD,gBAAgB;IAAEY,mBAAmB,GAAA0C,YAAA,CAAnB1C,mBAAmB;AAG7D,EAAA,IAAA+C,eAAA,GAAcC,2BAAc,EAAE;IAAtBzC,CAAC,GAAAwC,eAAA,CAADxC,CAAC;AAET,EAAA,IAAM+B,mBAAmB,GAAGC,sBAAW,CAACC,UAAU,EAAEC,wBAAY,CAAC;AAEjEuB,EAAAA,eAAS,CAAC,YAAM;AACdhE,IAAAA,mBAAmB,EAAE;AACvB,GAAC,EAAE,CAACwC,UAAU,CAAC,CAAC;AAEhB,EAAA,IAAAmN,kBAAA,GAA+CC,iCAAiB,CAAAxM,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EAC3DjE,cAAc,CAAA,EACdiD,OAAO,CAAA,EAAA,EAAA,EAAA;AACVI,MAAAA,UAAU,EAAEF,mBAAmB,CAACe,IAAI;AAAE,KAAA,CACvC,CAAC;IAJMnE,IAAI,GAAAyQ,kBAAA,CAAJzQ,IAAI;IAAa2Q,iBAAiB,GAAAF,kBAAA,CAA5B3F,SAAS;AAMvB,EAAA,IAAAtG,KAAA,GAA2CxE,IAAI,IAAI,EAAE;IAAA4Q,eAAA,GAAApM,KAAA,CAA7C5E,SAAS;AAATA,IAAAA,SAAS,GAAAgR,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;IAAAhM,gBAAA,GAAAJ,KAAA,CAAEK,UAAU;AAAVA,IAAAA,UAAU,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,gBAAA;AAEtCE,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI9E,IAAI,EAAE;AACRD,MAAAA,eAAe,CAACC,IAAI,KAAJA,IAAAA,IAAAA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAEJ,SAAS,EAAEK,cAAc,EAAEC,gBAAgB,CAAC;AACpE;AACF,GAAC,EAAE,CAACF,IAAI,CAAC,CAAC;AAEV,EAAA,IAAA6Q,kBAAA,GAA0DC,iCAAiB,EAAE;IAA7DC,cAAc,GAAAF,kBAAA,CAAtBnE,MAAM;IAA6BsE,UAAU,GAAAH,kBAAA,CAArB9I,SAAS;AAEzCjD,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAC3E,aAAO,CAACwP,gBAAgB,CAAC,EAAE;IAChCK,oBAAoB,CAAC,KAAK,CAAC;IAC3BI,iBAAiB,CAAC,KAAK,CAAC;IACxBI,iBAAiB,CAAC,KAAK,CAAC;AAC1B,GAAC,EAAE,CAACb,gBAAgB,CAAC,CAAC;EAEtB,IAAM3B,WAAW,GAAG,SAAdA,WAAWA,CAAIsB,KAAK,EAAE3C,QAAQ,EAAK;IACvC2C,KAAK,CAACN,eAAe,EAAE;IAEvBY,mBAAmB,CAACjD,QAAQ,CAAC;IAC7ByD,iBAAiB,CAAC,IAAI,CAAC;GACxB;EAED,IAAMzJ,UAAU,GAAG,SAAbA,UAAUA,CAAIzB,CAAC,EAAE+L,eAAe,EAAK;IACzCrB,mBAAmB,CAACqB,eAAe,CAAC;IACpCT,iBAAiB,CAAC,IAAI,CAAC;GACxB;EAED,IAAMvC,aAAa,GAAG,SAAhBA,aAAaA,CAAIqB,KAAK,EAAE3C,QAAQ,EAAK;IACzC2C,KAAK,CAACN,eAAe,EAAE;IAEvBY,mBAAmB,CAACjD,QAAQ,CAAC;IAC7BqD,oBAAoB,CAAC,IAAI,CAAC;GAC3B;AAED,EAAA,IAAMkB,YAAY,GAAG,SAAfA,YAAYA,CAAGC,UAAU,EAAI;AACjCJ,IAAAA,cAAc,CAAC;AAAEI,MAAAA,UAAU,EAAVA;AAAW,KAAC,CAAC;IAC9BvB,mBAAmB,CAAC,EAAE,CAAC;GACxB;AAED,EAAA,IAAM3I,MAAM,GAAG5F,CAAC,CAAC,gCAAgC,EAAEiG,gBAAM,CAAC;EAE1D,oBACE5B,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,CACG+K,iBAAiB,gBAChB5O,cAAA,CAACqP,UAAU,EAAA,EAAE,CAAC,gBAEdrP,cAAA,CAACiE,KAAK,EAAA;AAEFG,MAAAA,UAAU,EAAVA,UAAU;AACVc,MAAAA,MAAM,EAANA,MAAM;AACN/D,MAAAA,OAAO,EAAPA,OAAO;AACPhD,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChB6C,MAAAA,UAAU,EAAVA,UAAU;AACVkL,MAAAA,aAAa,EAAbA,aAAa;AACbD,MAAAA,WAAW,EAAXA,WAAW;AACXrH,MAAAA,UAAU,EAAVA,UAAU;AACV1G,MAAAA,cAAc,EAAdA,cAAc;AACdqD,MAAAA,UAAU,EAAVA,UAAU;AACVH,MAAAA,UAAU,EAAVA,UAAU;AACV0B,MAAAA,UAAU,EAAVA,UAAU;AAEZyB,MAAAA,OAAO,EAAE1G,SAAU;AACnBmO,MAAAA,aAAa,EAAE2B;AAAyB,KACzC,CACF,eACD3N,cAAA,CAACqK,MAAM,EAAAlI,eAAA,CAAA;AACLsD,MAAAA,MAAM,EAAEiI,qBAAsB;MAC9B/H,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQgI,wBAAwB,CAAC,KAAK,CAAC;AAAA;KAC1CxB,EAAAA,UAAU,CACf,CAAC,eACFnM,cAAA,CAAC+K,IAAI,EAAA5I,eAAA,CAAAA,eAAA,CAAA;AACHsD,MAAAA,MAAM,EAAE2I,cAAe;AACvBpD,MAAAA,WAAW,EAAE6C,mBAAoB;AACjCjD,MAAAA,QAAQ,EAAEgD;AAAiB,KAAA,EACvBzB,UAAU,CAAA,EAAA,EAAA,EAAA;MACdxG,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQ0I,iBAAiB,CAAC,KAAK,CAAC;AAAA;AAAC,KAAA,CACzC,CAAC,eACFrO,cAAA,CAACsP,KAAK,EAAA;AACJ7J,MAAAA,MAAM,EAAEuI,iBAAkB;AAC1B/D,MAAAA,YAAY,EAAEgF,UAAW;AACzBM,MAAAA,iBAAiB,EAAEjQ,CAAC,CAAC,+BAA+B,CAAE;MACtD8G,OAAO,eACLpG,cAAA,CAAC+E,kBAAK,EAAA;AACJC,QAAAA,OAAO,EAAC,iCAAiC;AACzCC,QAAAA,MAAM,EAAE;AACNK,UAAAA,IAAI,EAAEhG,CAAC,CAAC,gCAAgC,EAAE6J,kBAAQ,CAAC;AACnDjD,UAAAA,IAAI,EAAE0H,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,gBAAgB,CAAE1H;AAC1B;AAAE,OACH,CACF;AACD7G,MAAAA,KAAK,EAAEC,CAAC,CAAC,+BAA+B,EAAE;AACxCgG,QAAAA,IAAI,EAAEhG,CAAC,CAAC,gCAAgC,EAAE6J,kBAAQ;AACpD,OAAC,CAAE;MACHxD,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,QAAA,OAAQkI,mBAAmB,CAAC,EAAE,CAAC;OAAC;MACvCjF,QAAQ,EAAE,SAAVA,QAAQA,GAAA;QAAA,OAAQuG,YAAY,CAACvB,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAAEvC,EAAE,CAAC;AAAA;AAAC,KACpD,CAAC,eACFrL,cAAA,CAAC6L,eAAe,EAAA;AACdpG,MAAAA,MAAM,EAAE+I,cAAe;AACvB5D,MAAAA,QAAQ,EAAEgD,gBAAiB;MAC3BjI,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,QAAA,OAAQkI,mBAAmB,CAAC,EAAE,CAAC;AAAA;AAAC,KACxC,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;;;ACrJM,IAAM2B,YAAY,GAAG,SAAfA,YAAYA,CAAA/P,IAAA,EAAA;AAAA,EAAA,IACvBgQ,MAAM,GAAAhQ,IAAA,CAANgQ,MAAM;IACN/B,qBAAqB,GAAAjO,IAAA,CAArBiO,qBAAqB;IACrBnM,UAAU,GAAA9B,IAAA,CAAV8B,UAAU;IACVoM,wBAAwB,GAAAlO,IAAA,CAAxBkO,wBAAwB;AAAA,EAAA,OACpB,CACJ;IACE+B,SAAS,EAAE,SAAXA,SAASA,GAAA;AAAA,MAAA,oBACP1P,cAAA,CAACyN,SAAS,EAAAtL,eAAA,KAAAA,eAAA,CAAA;AAENuL,QAAAA,qBAAqB,EAArBA,qBAAqB;AACrBnM,QAAAA,UAAU,EAAVA,UAAU;AACVoM,QAAAA,wBAAwB,EAAxBA;OACG8B,EAAAA,MAAM,EAEZ,CAAC;KACH;AACDE,IAAAA,IAAI,EAAAC,EAAAA,CAAAA,MAAA,CAAKH,MAAM,CAACI,aAAa,CAAA,CAAAD,MAAA,CAAGpS,MAAM,CAACK,SAAS,CAACC,KAAK,CAAE;IACxDgS,WAAW,EAAE,SAAbA,WAAWA,GAAA;MAAA,oBACT9P,cAAA,CAACC,MAAM,EAAA;AACL,QAAA,SAAA,EAAQ,0CAA0C;AAClDC,QAAAA,KAAK,EAAEZ,SAAC,CAAC,+BAA+B,EAAE;AACxCgG,UAAAA,IAAI,EAAEhG,SAAC,CAAC,gCAAgC,EAAE6J,kBAAQ;AACpD,SAAC,CAAE;QACHgB,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQwD,wBAAwB,CAAC,IAAI,CAAC;AAAA;AAAC,OAC/C,CAAC;KACH;AACDoC,IAAAA,iBAAiB,EAAEzQ,SAAC,CAAC,4CAA4C,EAAE;AACjEgG,MAAAA,IAAI,EAAEhG,SAAC,CAAC,gCAAgC,EAAEiG,gBAAM;KACjD;AACH,GAAC,EACD;IACEmK,SAAS,EAAE,SAAXA,SAASA,GAAA;MAAA,oBAAQ1P,cAAA,CAAC8F,eAAe,EAAA3D,eAAA,CAAKsN,EAAAA,EAAAA,MAAM,CAAG,CAAC;AAAA,KAAA;IAChDE,IAAI,EAAA,EAAA,CAAAC,MAAA,CAAKH,MAAM,CAACI,aAAa,CAAA,CAAAD,MAAA,CAAGpS,MAAM,CAACG,OAAO;AAChD,GAAC,EACD;IACE+R,SAAS,EAAE,SAAXA,SAASA,GAAA;MAAA,oBAAQ1P,cAAA,CAACe,OAAO,EAAAoB,eAAA,CAAKsN,EAAAA,EAAAA,MAAM,CAAG,CAAC;AAAA,KAAA;IACxCE,IAAI,EAAA,EAAA,CAAAC,MAAA,CAAKH,MAAM,CAACI,aAAa,CAAA,CAAAD,MAAA,CAAGpS,MAAM,CAACI,OAAO;AAChD,GAAC,CACF;AAAA,CAAA;;AC3CD,IAAM2L,MAAM,GAAG,SAATA,MAAMA,CAAA9J,IAAA,EAA0D;AAAA,EAAA,IAAAuQ,qBAAA;AAAA,EAAA,IAApDC,SAAS,GAAAxQ,IAAA,CAATwQ,SAAS;IAAEC,WAAW,GAAAzQ,IAAA,CAAXyQ,WAAW;IAAEC,qBAAqB,GAAA1Q,IAAA,CAArB0Q,qBAAqB;AAC7D,EAAA,IAAArO,eAAA,GAAcC,2BAAc,EAAE;IAAtBzC,CAAC,GAAAwC,eAAA,CAADxC,CAAC;AAET,EAAA,IAAA8Q,YAAA,GAAqBC,0BAAW,EAAE;IAA1BhQ,QAAQ,GAAA+P,YAAA,CAAR/P,QAAQ;EAEhB,IAAMiQ,UAAU,GAAGC,gBAAM,CAAC;AAAEZ,IAAAA,IAAI,EAAEtP;GAAU,EAAE4P,SAAS,CAAC;EAExD,oBACEjQ,cAAA,CAACwQ,WAAW,EAAA;AACJN,IAAAA,WAAW,EAAXA,WAAW;AAAEC,IAAAA,qBAAqB,EAArBA,qBAAqB;AACxCL,IAAAA,WAAW,EAAEQ,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAAN,KAAAA,CAAAA,IAAAA,CAAAA,qBAAA,GAAVM,UAAU,CAAER,WAAW,MAAA,IAAA,IAAAE,qBAAA,KAAvBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAAS,IAAA,CAAAH,UAA0B,CAAE;AACzCjR,IAAAA,KAAK,EAAEC,CAAC,CAAC,gCAAgC,EAAEiG,gBAAM,CAAE;IACnDmL,WAAW,EACT,CAAAJ,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAEP,iBAAiB,KAAI;AAC/BxI,MAAAA,WAAW,EAAE+I,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAVA,UAAU,CAAEP;AAC3B;AACD,GACF,CAAC;AAEN,CAAC;;ACrBD,IAAMY,KAAK,GAAG,SAARA,KAAKA,GAAA;EAAA,OAASC,KAAK,CAACC,GAAG,CAAA,EAAA,CAAAjB,MAAA,CAAIkB,oBAAQ,WAAQ,CAAC;AAAA,CAAA;AAElD,IAAMC,QAAQ,GAAG;AAAEJ,EAAAA,KAAK,EAALA;AAAM,CAAC;;;;ACD1B,IAAMK,aAAa,GAAG,SAAhBA,aAAaA,GAAA;AAAA,EAAA,IAAIC,OAAO,GAAAC,SAAA,CAAAxM,MAAA,GAAA,CAAA,IAAAwM,SAAA,CAAA,CAAA,CAAA,KAAAC,SAAA,GAAAD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;EAAA,OACjCE,mBAAQ,CAAAjP,eAAA,CAAA;AACNkP,IAAAA,QAAQ,EAAE,CAACC,sBAAU,CAACC,KAAK,CAAC;IAC5BC,OAAO,EAAET,QAAQ,CAACJ,KAAK;AACvBc,IAAAA,MAAM,EAAE,SAARA,MAAMA,CAAEC,QAAQ,EAAA;AAAA,MAAA,OAAIA,QAAQ,CAACzT,IAAI,IAAIyT,QAAQ;AAAA;GAC1CT,EAAAA,OAAO,CACX,CAAC;AAAA,CAAA;;ACFJ,IAAMU,GAAG,GAAG,SAANA,GAAGA,CAAAlS,IAAA,EAA0B;AAAA,EAAA,IAAAmS,gBAAA;AAAA,EAAA,IAApB/B,aAAa,GAAApQ,IAAA,CAAboQ,aAAa;AAC1B,EAAA,IAAAO,YAAA,GAAqBC,0BAAW,EAAE;IAA1BhQ,QAAQ,GAAA+P,YAAA,CAAR/P,QAAQ;AAEhB,EAAA,IAAMzC,OAAO,GAAGiU,yBAAU,EAAE;AAE5B,EAAA,IAAMC,cAAc,GAAGC,oCAAiB,EAAE;AAC1C,EAAA,IAAMC,kBAAkB,GAAGC,UAAI,CAACH,cAAc,CAAC;EAC/C,IAAMI,QAAQ,IAAAN,gBAAA,GAAGvR,QAAQ,CAAC8R,KAAK,CAAC3U,MAAM,CAACE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAAkU,IAAAA,IAAAA,gBAAA,uBAAnCA,gBAAA,CAAqCQ,iBAAiB,EAAE;AAEzE,EAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,MAAM,EAAA;AAAA,IAAA,OAAIJ,QAAQ,CAACK,QAAQ,CAACD,MAAM,CAAC;AAAA,GAAA;AAEpD,EAAA,IAAME,QAAQ,GAAG,SAAXA,QAAQA,CAAGF,MAAM,EAAA;IAAA,OAAA1C,EAAAA,CAAAA,MAAA,CAAOC,aAAa,CAAAD,CAAAA,MAAA,CAAG0C,MAAM,CAACG,WAAW,EAAE,CAAA;GAAE;AAEpE,EAAA,IAAAC,cAAA,GAAsC1B,aAAa,EAAE;IAAA2B,mBAAA,GAAAD,cAAA,CAA7CzU,IAAI;AAAA2U,IAAAA,oBAAA,GAAAD,mBAAA,KAAA,KAAA,CAAA,GAAmB,EAAE,GAAAA,mBAAA;IAAAE,qBAAA,GAAAD,oBAAA,CAAjBE,KAAK;AAALA,IAAAA,KAAK,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA;EAE1B,oBACE7S,cAAA,CAAC+S,UAAU,EAAA;AAAAlP,IAAAA,QAAA,EACRmO,kBAAkB,CAACgB,GAAG,CAAC,UAAAV,MAAM,EAAA;AAAA,MAAA,oBAC5B3O,eAAA,CAACoP,UAAU,CAACE,IAAI,EAAA;AACdC,QAAAA,MAAM,EAAEb,QAAQ,CAACC,MAAM,CAAE;AACzBa,QAAAA,KAAK,EAAEL,KAAK,CAACR,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEvG,iBAAiB,EAAE,CAAE;AAE1C7L,QAAAA,KAAK,EAAE4R,cAAc,CAACQ,MAAM,CAAC,CAACpS,KAAM;QACpCiK,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQvM,OAAO,CAACwV,IAAI,CAACZ,QAAQ,CAACF,MAAM,CAAC,CAAC;SAAC;QAAAzO,QAAA,EAAA,CAE7CiO,cAAc,CAACQ,MAAM,CAAC,CAACpS,KAAK,EAAC,IAC9B,EAAC4S,KAAK,CAACR,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEvG,iBAAiB,EAAE,CAAC,IAAI,CAAC,EAAC,GAC3C;AAAA,OAAA,EANOuG,MAMU,CAAC;KACnB;AAAC,GACQ,CAAC;AAEjB,CAAC;;;;AC5BD,IAAMe,SAAS,GAAG,SAAZA,SAASA,CAAA5T,IAAA,EAAmB;AAAA,EAAA,IAAbgQ,MAAM,GAAAhQ,IAAA,CAANgQ,MAAM;AACzB,EAAA,IAAA6D,eAAA,GAA4BC,yBAAc,EAAE;IAAAC,qBAAA,GAAAF,eAAA,CAApC/R,UAAU;AAAVA,IAAAA,UAAU,GAAAiS,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;AACvB,EAAA,IAAAhV,SAAA,GAA0DC,cAAQ,CAAC,KAAK,CAAC;IAAAG,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAAlEkP,IAAAA,qBAAqB,GAAA9O,UAAA,CAAA,CAAA,CAAA;AAAE+O,IAAAA,wBAAwB,GAAA/O,UAAA,CAAA,CAAA,CAAA;EAEtD,IAAMqR,SAAS,GAAGT,YAAY,CAAC;AAC7BC,IAAAA,MAAM,EAANA,MAAM;AACNlO,IAAAA,UAAU,EAAVA,UAAU;AACVmM,IAAAA,qBAAqB,EAArBA,qBAAqB;AACrBC,IAAAA,wBAAwB,EAAxBA;AACF,GAAC,CAAC;EAEF,oBACEhK,eAAA,CAAC8P,SAAS,EAAA;AAAA5P,IAAAA,QAAA,gBACR7D,cAAA,CAACuJ,MAAM,EAAApH,aAAA,KAAAA,aAAA,CAAA;AAAO8N,MAAAA,SAAS,EAATA;AAAS,KAAA,EAAKR,MAAM,CAAK,CAAA,CAAC,eACxCzP,cAAA,CAAC0T,GAAI,EAAA;MAAC7D,aAAa,EAAEJ,MAAM,CAACI;AAAc,KAAE,CAAC,eAC7ClM,eAAA,CAACgQ,qBAAM,EAAA;AAAA9P,MAAAA,QAAA,GACJoM,SAAS,CAAC+C,GAAG,CAAC,UAAAvQ,KAAA,EAAA;AAAA,QAAA,IAAGkN,IAAI,GAAAlN,KAAA,CAAJkN,IAAI;UAAED,SAAS,GAAAjN,KAAA,CAATiN,SAAS;QAAA,oBAC/BkE,mBAAA,CAACC,oBAAK,EAAA;AAAOnE,UAAAA,SAAS,EAATA,SAAS;AAAEC,UAAAA,IAAI,EAAJA,IAAI;UAAImE,KAAK,EAAA,IAAA;AAAC5U,UAAAA,GAAG,EAAEyQ;AAAK,SAAE,CAAC;AAAA,OACpD,CAAC,eACF3P,cAAA,CAAC+T,uBAAQ,EAAA;QACPD,KAAK,EAAA,IAAA;QACLE,IAAI,EAAEvE,MAAM,CAACI;AACb;AAAA;QACAzP,EAAE,EAAA,EAAA,CAAAwP,MAAA,CAAKH,MAAM,CAACI,aAAa,CAAA,CAAAD,MAAA,CAAGpS,MAAM,CAACG,OAAO;AAAG,OAChD,CAAC;AAAA,KACI,CAAC;AAAA,GACA,CAAC;AAEhB;;;;"}
|
package/package.json
CHANGED