@bigbinary/neeto-rules-frontend 2.5.34 → 2.5.36

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.
@@ -147,7 +147,7 @@ var ActionsDetail = function ActionsDetail(_ref) {
147
147
  setViewMore = _useState2[1];
148
148
  var _useTranslation = useTranslation(),
149
149
  t = _useTranslation.t;
150
- var actionsList = actions.value;
150
+ var actionsList = actions.value || [];
151
151
  var allActions = viewMore && actionsList.length > 4 ? actionsList : actionsList.slice(0, 4);
152
152
  var getLabel = function getLabel(index) {
153
153
  return index ? t("neetoRules.common.and", {
@@ -396,7 +396,7 @@ var EventsDetail = function EventsDetail(_ref) {
396
396
  conditions = _ref.conditions;
397
397
  var _useTranslation = useTranslation(),
398
398
  t = _useTranslation.t;
399
- var eventNames = pluck("name", events.value);
399
+ var eventNames = pluck("name", events.value || []);
400
400
  var allEvents = events.eventOptions.filter(function (event) {
401
401
  return eventNames === null || eventNames === void 0 ? void 0 : eventNames.includes(event.value);
402
402
  });
@@ -486,10 +486,10 @@ var RulePreview = function RulePreview(_ref) {
486
486
  })
487
487
  }), /*#__PURE__*/jsx(Pane.Body, {
488
488
  children: /*#__PURE__*/jsxs("div", {
489
- className: "mt-2 w-full",
490
- children: [/*#__PURE__*/jsx("div", {
489
+ className: "w-full",
490
+ children: [ruleDetails.entity && /*#__PURE__*/jsx("div", {
491
491
  className: "mb-6",
492
- children: ruleDetails.entity && /*#__PURE__*/jsxs("div", {
492
+ children: /*#__PURE__*/jsxs("div", {
493
493
  className: "flex space-x-8",
494
494
  children: [/*#__PURE__*/jsx(Typography, {
495
495
  className: "neeto-ui-text-gray-800 col-span-1",
@@ -1 +1 @@
1
- {"version":3,"file":"RulePreview.js","sources":["../app/javascript/src/components/RulePreview/Card.jsx","../app/javascript/src/components/RulePreview/constants.js","../app/javascript/src/components/RulePreview/MultiSelectValues.jsx","../app/javascript/src/components/RulePreview/utils.js","../app/javascript/src/components/RulePreview/ActionsDetail.jsx","../app/javascript/src/components/RulePreview/ConditionsDetail.jsx","../app/javascript/src/components/RulePreview/EventsDetail.jsx","../app/javascript/src/components/RulePreview/index.jsx"],"sourcesContent":["import { Typography } from \"neetoui\";\n\nconst Title = ({ title, children }) => (\n <>\n <Typography className=\"neeto-ui-text-gray-800\" style=\"h5\" weight=\"semibold\">\n {title}\n </Typography>\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-sm my-3 p-4\">\n {children}\n </div>\n </>\n);\n\nexport default Title;\n","export const PREVIEW_CONDITION_LIMIT = 3;\n\nexport const ACTION_TYPE = {\n TEXT: \"text\",\n NUMBER: \"number\",\n DECIMAL: \"decimal\",\n REGEX: \"regex\",\n DATE: \"date\",\n EMAIL: \"email\",\n EMAIL_TO: \"emailTo\",\n EMAIL_TO_IDS: \"emailToIds\",\n SMS_TO_NUMBERS: \"smsToNumbers\",\n DROPDOWN: \"dropdown\",\n SELECT: \"select\",\n MULTISELECT: \"multiSelect\",\n MULTISELECT_CHECKBOX: \"multiSelectCheckbox\",\n RADIO: \"radio\",\n SEND_TO_API: \"sendToApi\",\n};\n\nexport const TEXT_FIELDS = [\n ACTION_TYPE.TEXT,\n ACTION_TYPE.NUMBER,\n ACTION_TYPE.DECIMAL,\n ACTION_TYPE.REGEX,\n ACTION_TYPE.DATE,\n];\n","import { Fragment } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst MultiSelectValues = ({ separator, values }) => (\n <>\n {values?.map((value, idx) => (\n <Fragment key={idx}>\n {!!idx && (\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {separator}\n </Typography>\n )}\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {value.toLowerCase()}\n </Typography>\n </Fragment>\n ))}\n </>\n);\n\nexport default MultiSelectValues;\n","import { findBy } from \"neetocist\";\n\nimport { ACTION_TYPE, TEXT_FIELDS } from \"./constants\";\n\nexport const getEntityDisplayValue = (entitiy, entitiyOption) =>\n findBy(\n { value: entitiy.metadata.value },\n entitiyOption.dropdownOptions\n )?.label?.toLowerCase();\n\nexport const getActionDisplayValue = (action, actionOption) => {\n const displayValueData = { displayValue: null, isBulk: false };\n\n if (TEXT_FIELDS.includes(actionOption.type)) {\n displayValueData.displayValue = action.metadata.value?.toLowerCase();\n\n return displayValueData;\n }\n switch (actionOption.type) {\n case ACTION_TYPE.DROPDOWN: {\n displayValueData.displayValue = getEntityDisplayValue(\n action,\n actionOption\n );\n\n return displayValueData;\n }\n\n case ACTION_TYPE.SELECT: {\n displayValueData.displayValue = getEntityDisplayValue(\n action,\n actionOption\n );\n\n return displayValueData;\n }\n\n case ACTION_TYPE.RADIO: {\n displayValueData.displayValue = getEntityDisplayValue(\n action,\n actionOption\n );\n\n return displayValueData;\n }\n\n case ACTION_TYPE.EMAIL_TO_IDS: {\n displayValueData.isBulk = true;\n displayValueData.displayValue = action.metadata.emails;\n\n return displayValueData;\n }\n\n case ACTION_TYPE.EMAIL_TO: {\n displayValueData.displayValue = action.displayValue;\n\n return displayValueData;\n }\n\n case ACTION_TYPE.SMS_TO_NUMBERS: {\n displayValueData.isBulk = true;\n displayValueData.displayValue = action.metadata.phoneNumbers;\n\n return displayValueData;\n }\n case ACTION_TYPE.SEND_TO_API: {\n displayValueData.displayValue = action.metadata.endpoint;\n\n return displayValueData;\n }\n default:\n return null;\n }\n};\n","import { useState } from \"react\";\n\nimport { findBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Typography, Button } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getSeparator } from \"utils\";\n\nimport Card from \"./Card\";\nimport { ACTION_TYPE } from \"./constants\";\nimport MultiSelectValues from \"./MultiSelectValues\";\nimport { getActionDisplayValue } from \"./utils\";\n\nconst ActionsDetail = ({ actions }) => {\n const [viewMore, setViewMore] = useState(false);\n const { t } = useTranslation();\n\n const actionsList = actions.value;\n const allActions =\n viewMore && actionsList.length > 4 ? actionsList : actionsList.slice(0, 4);\n\n const getLabel = index =>\n index\n ? t(\"neetoRules.common.and\", {\n what: t(\"neetoRules.common.then\"),\n })\n : t(\"neetoRules.common.then\");\n\n const renderActionValues = (action, actionOption) => {\n const { displayValue, isBulk } =\n getActionDisplayValue(action, actionOption) ?? {};\n\n if (\n actionOption.type === ACTION_TYPE.MULTISELECT ||\n actionOption.type === ACTION_TYPE.MULTISELECT_CHECKBOX\n ) {\n const values = pluck(\n \"label\",\n actionOption.dropdownOptions.filter(({ value }) =>\n action.metadata.value.includes(value)\n )\n );\n\n return (\n <MultiSelectValues\n {...{ values }}\n separator={t(\"neetoRules.common.and\", { what: \"\" })}\n />\n );\n }\n\n if (!displayValue) return null;\n\n if (!isBulk) {\n const defaultSeparator =\n actionOption.type === ACTION_TYPE.SEND_TO_API\n ? t(\"neetoRules.common.at\")\n : t(\"neetoRules.common.to\");\n\n const separator = getSeparator({\n defaultSeparator,\n selectedField: actionOption,\n });\n\n return (\n <>\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {separator}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {displayValue?.toLowerCase()}\n </Typography>\n </>\n );\n }\n\n return displayValue.map((value, index) => (\n <div className=\"mr-1 flex\" key={index}>\n <Typography key={index} style=\"h5\" weight=\"semibold\">\n {value}\n </Typography>\n {index !== displayValue.length - 1 && \", \"}\n </div>\n ));\n };\n\n const renderAction = action => {\n const actionOption = findBy({ value: action.name }, actions.actionOptions);\n if (!actionOption) return null;\n\n return (\n <>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {actionOption?.label.toLowerCase()}\n </Typography>\n {renderActionValues(action, actionOption)}\n </>\n );\n };\n\n return (\n <Card title={t(\"neetoRules.common.then\")}>\n {allActions.map((action, index) => (\n <div\n className=\"mb-2 flex flex-wrap gap-x-1 gap-y-2\"\n data-cy=\"then-action-events\"\n key={action.name}\n >\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {getLabel(index)}\n </Typography>\n {renderAction(action)}\n </div>\n ))}\n {actionsList.length > 4 && (\n <div className=\"mt-3 w-full\">\n <Button\n icon={!viewMore ? Down : Up}\n size=\"small\"\n style=\"link\"\n label={\n !viewMore\n ? t(\"neetoRules.common.viewMore\")\n : t(\"neetoRules.common.viewLess\")\n }\n onClick={() => setViewMore(prevState => !prevState)}\n />\n </div>\n )}\n </Card>\n );\n};\n\nexport default ActionsDetail;\n","import { useState } from \"react\";\n\nimport { findBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { VERB_LABELS } from \"components/NeetoRulesForm/Element/Conditions/constants\";\nimport { getDateTimeFormattedValue } from \"utils\";\n\nimport { PREVIEW_CONDITION_LIMIT } from \"./constants\";\nimport MultiSelectValues from \"./MultiSelectValues\";\nimport { getEntityDisplayValue } from \"./utils\";\n\nconst SemiboldText = ({ children }) => (\n <Typography className=\"neeto-ui-text-gray-800\" style=\"h5\" weight=\"semibold\">\n {children}\n </Typography>\n);\n\nconst NormalText = ({ children }) => (\n <Typography className=\"neeto-ui-text-gray-700\" style=\"h5\" weight=\"normal\">\n {children}\n </Typography>\n);\n\nconst ConditionsDetail = ({\n conditions,\n conditionOptions,\n conditionVerbs = {},\n hasEvent = true,\n}) => {\n const [viewMore, setViewMore] = useState(false);\n\n const { t } = useTranslation();\n\n const conditionsList = conditions.value;\n const allConditions =\n viewMore && conditionsList.length > PREVIEW_CONDITION_LIMIT\n ? conditionsList\n : conditionsList.slice(0, PREVIEW_CONDITION_LIMIT);\n\n const allConditionVerbs = { ...VERB_LABELS, ...conditionVerbs };\n\n const getLogicalOperator = joinType =>\n joinType === \"or_operator\" ? \"or\" : \"and\";\n\n const renderConditionValues = (condition, conditionOption) => {\n if ([\"decimal\", \"email\", \"number\", \"text\"].includes(conditionOption.type)) {\n return (\n <SemiboldText>{condition.metadata.value?.toLowerCase()}</SemiboldText>\n );\n }\n\n if (conditionOption.type === \"date\" || conditionOption.type === \"time\") {\n const { value: date, type, format, timezone } = condition.metadata;\n\n return (\n <SemiboldText>\n {getDateTimeFormattedValue({ date, format, type, timezone })}\n </SemiboldText>\n );\n }\n\n if (conditionOption.type === \"textarea\") {\n return (\n <Tooltip content={condition.metadata.value?.toLowerCase()}>\n <SemiboldText>{t(\"neetoRules.labels.text\")}</SemiboldText>\n </Tooltip>\n );\n }\n\n if (\n conditionOption.type === \"multi-select\" ||\n conditionOption.type === \"multi-select-checkbox\"\n ) {\n const values = pluck(\n \"label\",\n conditionOption.dropdownOptions.filter(({ value }) =>\n condition.metadata.values.includes(value)\n )\n );\n\n return (\n <MultiSelectValues\n {...{ values }}\n separator={t(\"neetoRules.common.or\")}\n />\n );\n }\n\n if ([\"multi-select-create\"].includes(conditionOption.type)) {\n return (\n <MultiSelectValues\n separator={t(\"neetoRules.common.or\")}\n values={condition.metadata.values}\n />\n );\n }\n\n if (\n conditionOption.type === \"select\" ||\n conditionOption.type === \"radio\" ||\n conditionOption.type === \"dropdown\"\n ) {\n return (\n <SemiboldText>\n {getEntityDisplayValue(condition, conditionOption)}\n </SemiboldText>\n );\n }\n\n return null;\n };\n\n const renderCondition = condition => {\n const conditionOption = findBy(\n { value: condition.field },\n conditionOptions\n );\n if (!conditionOption) return null;\n\n const conditionVerb = allConditionVerbs[condition.verb]?.toLowerCase();\n\n return (\n <>\n <SemiboldText>{conditionOption?.label.toLowerCase()}</SemiboldText>\n <SemiboldText>{conditionVerb}</SemiboldText>\n {renderConditionValues(condition, conditionOption)}\n </>\n );\n };\n\n return (\n <>\n <div className=\"mt-2\">\n {allConditions.map((condition, index) => (\n <div\n className=\"mb-2 flex flex-wrap gap-x-2 gap-y-2\"\n key={condition.id}\n >\n {!index && hasEvent && (\n <NormalText>\n {t(\"neetoRules.common.and\", { what: \"\" })}\n </NormalText>\n )}\n {!!index && (\n <SemiboldText>\n {getLogicalOperator(condition.joinType)}\n </SemiboldText>\n )}\n <NormalText>{t(\"neetoRules.common.when\")}</NormalText>\n {renderCondition(condition)}\n </div>\n ))}\n </div>\n {conditionsList.length > 3 && (\n <div className=\"mt-3 w-full\">\n <Button\n icon={!viewMore ? Down : Up}\n size=\"small\"\n style=\"link\"\n label={\n !viewMore\n ? t(\"neetoRules.common.viewMore\")\n : t(\"neetoRules.common.viewLess\")\n }\n onClick={() => setViewMore(prevState => !prevState)}\n />\n </div>\n )}\n </>\n );\n};\n\nexport default ConditionsDetail;\n","import { findBy } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Card from \"./Card\";\nimport ConditionsDetail from \"./ConditionsDetail\";\n\nconst EventsDetail = ({ events, performer, conditions }) => {\n const { t } = useTranslation();\n\n const eventNames = pluck(\"name\", events.value);\n const allEvents = events.eventOptions.filter(event =>\n eventNames?.includes(event.value)\n );\n\n const currentPerformer = findBy(\n { value: performer.value },\n performer.options\n );\n\n return (\n <Card title={t(\"neetoRules.common.when\")}>\n <div\n className=\"flex flex-wrap gap-x-2 gap-y-2\"\n data-cy=\"when-condition-events\"\n >\n {allEvents.map((event, index) => (\n <div className=\"flex gap-x-2\" key={index}>\n {!index && (\n <Typography\n className=\"neeto-ui-text-gray-700 my-auto\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.when\")}\n </Typography>\n )}\n {!!index && (\n <Typography\n className=\"neeto-ui-text-gray-700 my-auto\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.or\")}\n </Typography>\n )}\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {event.label.toLowerCase()}\n </Typography>\n </div>\n ))}\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.by\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {currentPerformer?.label?.toLowerCase()}\n </Typography>\n </div>\n <ConditionsDetail\n {...{ conditions }}\n conditionOptions={conditions.conditionOptions}\n conditionVerbs={conditions.verbs}\n />\n </Card>\n );\n};\n\nexport default EventsDetail;\n","import { isNotEmpty } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Pane, Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\n\nimport ActionsDetail from \"./ActionsDetail\";\nimport Card from \"./Card\";\nimport ConditionsDetail from \"./ConditionsDetail\";\nimport EventsDetail from \"./EventsDetail\";\n\nconst RulePreview = ({ isLoading, ruleDetails, isOpen, onClose }) => {\n const { t } = useTranslation();\n\n const { moreActionDropdownItems, showPreviewPane } = useUtilityStore.pick();\n\n return (\n <Pane {...{ onClose }} isOpen={isOpen && showPreviewPane}>\n {isLoading ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n <>\n <Pane.Header>\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography className=\"line-clamp-2\" style=\"h4\" weight=\"semibold\">\n {ruleDetails.name.value}\n </Typography>\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={moreActionDropdownItems}\n />\n </div>\n </Pane.Header>\n <Pane.Body>\n <div className=\"mt-2 w-full\">\n <div className=\"mb-6\">\n {ruleDetails.entity && (\n <div className=\"flex space-x-8\">\n <Typography\n className=\"neeto-ui-text-gray-800 col-span-1\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {ruleDetails.entity.label}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-800 col-span-2\"\n style=\"h5\"\n weight=\"normal\"\n >\n {ruleDetails.entity.value}\n </Typography>\n </div>\n )}\n </div>\n {ruleDetails.events && isNotEmpty(ruleDetails.events) ? (\n <EventsDetail\n conditions={ruleDetails.conditions}\n events={ruleDetails.events}\n performer={ruleDetails.performer}\n />\n ) : (\n <Card title={t(\"neetoRules.common.when\")}>\n <ConditionsDetail\n conditionOptions={ruleDetails.conditions.conditionOptions}\n conditionVerbs={ruleDetails.conditions.verbs}\n conditions={ruleDetails.conditions}\n hasEvent={false}\n />\n </Card>\n )}\n <ActionsDetail actions={ruleDetails.actions} />\n </div>\n </Pane.Body>\n </>\n )}\n </Pane>\n );\n};\n\nexport default RulePreview;\n"],"names":["Title","_ref","title","children","_jsxs","_Fragment","_jsx","Typography","className","style","weight","PREVIEW_CONDITION_LIMIT","ACTION_TYPE","TEXT","NUMBER","DECIMAL","REGEX","DATE","EMAIL","EMAIL_TO","EMAIL_TO_IDS","SMS_TO_NUMBERS","DROPDOWN","SELECT","MULTISELECT","MULTISELECT_CHECKBOX","RADIO","SEND_TO_API","TEXT_FIELDS","MultiSelectValues","separator","values","map","value","idx","Fragment","toLowerCase","getEntityDisplayValue","entitiy","entitiyOption","_findBy","findBy","metadata","dropdownOptions","label","getActionDisplayValue","action","actionOption","displayValueData","displayValue","isBulk","includes","type","_action$metadata$valu","emails","phoneNumbers","endpoint","ActionsDetail","actions","_useState","useState","_useState2","_slicedToArray","viewMore","setViewMore","_useTranslation","useTranslation","t","actionsList","allActions","length","slice","getLabel","index","what","renderActionValues","_getActionDisplayValu","_ref2","pluck","filter","_ref3","defaultSeparator","getSeparator","selectedField","renderAction","name","actionOptions","Card","Button","icon","Down","Up","size","onClick","prevState","SemiboldText","NormalText","ConditionsDetail","conditions","conditionOptions","_ref3$conditionVerbs","conditionVerbs","_ref3$hasEvent","hasEvent","conditionsList","allConditions","allConditionVerbs","_objectSpread","VERB_LABELS","getLogicalOperator","joinType","renderConditionValues","condition","conditionOption","_condition$metadata$v","_condition$metadata","date","format","timezone","getDateTimeFormattedValue","_condition$metadata$v2","Tooltip","content","_ref4","renderCondition","_allConditionVerbs$co","field","conditionVerb","verb","id","EventsDetail","_currentPerformer$lab","events","performer","eventNames","allEvents","eventOptions","event","currentPerformer","options","verbs","RulePreview","isLoading","ruleDetails","isOpen","onClose","_useUtilityStore","useUtilityStore","store","moreActionDropdownItems","showPreviewPane","shallow","Pane","Spinner","Header","MoreDropdown","dropdownProps","strategy","menuItems","Body","entity","isNotEmpty"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAAA,oBAC9BC,IAAA,CAAAC,QAAA,EAAA;IAAAF,QAAA,EAAA,cACEG,GAAA,CAACC,UAAU,EAAA;AAACC,MAAAA,SAAS,EAAC,wBAAwB;AAACC,MAAAA,KAAK,EAAC,IAAI;AAACC,MAAAA,MAAM,EAAC,UAAU;AAAAP,MAAAA,QAAA,EACxED;KACS,CAAC,eACbI,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,mDAAmD;AAAAL,MAAAA,QAAA,EAC/DA;AAAQ,KACN,CAAC;AAAA,GACN,CAAC;AAAA,CACJ;;ACXM,IAAMQ,uBAAuB,GAAG,CAAC;AAEjC,IAAMC,WAAW,GAAG;AACzBC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,QAAQ,EAAE,SAAS;AACnBC,EAAAA,YAAY,EAAE,YAAY;AAC1BC,EAAAA,cAAc,EAAE,cAAc;AAC9BC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,WAAW,EAAE,aAAa;AAC1BC,EAAAA,oBAAoB,EAAE,qBAAqB;AAC3CC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,WAAW,EAAE;AACf,CAAC;AAEM,IAAMC,WAAW,GAAG,CACzBhB,WAAW,CAACC,IAAI,EAChBD,WAAW,CAACE,MAAM,EAClBF,WAAW,CAACG,OAAO,EACnBH,WAAW,CAACI,KAAK,EACjBJ,WAAW,CAACK,IAAI,CACjB;;ACtBD,IAAMY,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAA5B,IAAA,EAAA;AAAA,EAAA,IAAM6B,SAAS,GAAA7B,IAAA,CAAT6B,SAAS;IAAEC,MAAM,GAAA9B,IAAA,CAAN8B,MAAM;EAAA,oBAC5CzB,GAAA,CAAAD,QAAA,EAAA;AAAAF,IAAAA,QAAA,EACG4B,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEC,GAAG,CAAC,UAACC,KAAK,EAAEC,GAAG,EAAA;MAAA,oBACtB9B,IAAA,CAAC+B,UAAQ,EAAA;AAAAhC,QAAAA,QAAA,GACN,CAAC,CAAC+B,GAAG,iBACJ5B,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;AAAAP,UAAAA,QAAA,EAEd2B;AAAS,SACA,CACb,eACDxB,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;AAAAP,UAAAA,QAAA,EAEhB8B,KAAK,CAACG,WAAW;AAAE,SACV,CAAC;AAAA,OAAA,EAhBAF,GAiBL,CAAC;KACZ;AAAC,GACF,CAAC;AAAA,CACJ;;ACvBM,IAAMG,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,OAAO,EAAEC,aAAa,EAAA;AAAA,EAAA,IAAAC,OAAA;EAAA,OAAAA,CAAAA,OAAA,GAC1DC,MAAM,CACJ;AAAER,IAAAA,KAAK,EAAEK,OAAO,CAACI,QAAQ,CAACT;GAAO,EACjCM,aAAa,CAACI,eAChB,CAAC,MAAAH,IAAAA,IAAAA,OAAA,gBAAAA,OAAA,GAHDA,OAAA,CAGGI,KAAK,cAAAJ,OAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAHRA,OAAA,CAGUJ,WAAW,EAAE;AAAA,CAAA;AAElB,IAAMS,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,MAAM,EAAEC,YAAY,EAAK;AAC7D,EAAA,IAAMC,gBAAgB,GAAG;AAAEC,IAAAA,YAAY,EAAE,IAAI;AAAEC,IAAAA,MAAM,EAAE;GAAO;EAE9D,IAAItB,WAAW,CAACuB,QAAQ,CAACJ,YAAY,CAACK,IAAI,CAAC,EAAE;AAAA,IAAA,IAAAC,qBAAA;AAC3CL,IAAAA,gBAAgB,CAACC,YAAY,GAAA,CAAAI,qBAAA,GAAGP,MAAM,CAACJ,QAAQ,CAACT,KAAK,cAAAoB,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAArBA,qBAAA,CAAuBjB,WAAW,EAAE;AAEpE,IAAA,OAAOY,gBAAgB;AACzB;EACA,QAAQD,YAAY,CAACK,IAAI;IACvB,KAAKxC,WAAW,CAACU,QAAQ;AAAE,MAAA;QACzB0B,gBAAgB,CAACC,YAAY,GAAGZ,qBAAqB,CACnDS,MAAM,EACNC,YACF,CAAC;AAED,QAAA,OAAOC,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACW,MAAM;AAAE,MAAA;QACvByB,gBAAgB,CAACC,YAAY,GAAGZ,qBAAqB,CACnDS,MAAM,EACNC,YACF,CAAC;AAED,QAAA,OAAOC,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACc,KAAK;AAAE,MAAA;QACtBsB,gBAAgB,CAACC,YAAY,GAAGZ,qBAAqB,CACnDS,MAAM,EACNC,YACF,CAAC;AAED,QAAA,OAAOC,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACQ,YAAY;AAAE,MAAA;QAC7B4B,gBAAgB,CAACE,MAAM,GAAG,IAAI;AAC9BF,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACY,MAAM;AAEtD,QAAA,OAAON,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACO,QAAQ;AAAE,MAAA;AACzB6B,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACG,YAAY;AAEnD,QAAA,OAAOD,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACS,cAAc;AAAE,MAAA;QAC/B2B,gBAAgB,CAACE,MAAM,GAAG,IAAI;AAC9BF,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACa,YAAY;AAE5D,QAAA,OAAOP,gBAAgB;AACzB;IACA,KAAKpC,WAAW,CAACe,WAAW;AAAE,MAAA;AAC5BqB,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACc,QAAQ;AAExD,QAAA,OAAOR,gBAAgB;AACzB;AACA,IAAA;AACE,MAAA,OAAO,IAAI;AACf;AACF,CAAC;;AC1DD,IAAMS,aAAa,GAAG,SAAhBA,aAAaA,CAAAxD,IAAA,EAAoB;AAAA,EAAA,IAAdyD,OAAO,GAAAzD,IAAA,CAAPyD,OAAO;AAC9B,EAAA,IAAAC,SAAA,GAAgCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAxCI,IAAAA,QAAQ,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,WAAW,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC5B,EAAA,IAAAI,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMC,WAAW,GAAGV,OAAO,CAACzB,KAAK;AACjC,EAAA,IAAMoC,UAAU,GACdN,QAAQ,IAAIK,WAAW,CAACE,MAAM,GAAG,CAAC,GAAGF,WAAW,GAAGA,WAAW,CAACG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;AAE5E,EAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,KAAK,EAAA;AAAA,IAAA,OACpBA,KAAK,GACDN,CAAC,CAAC,uBAAuB,EAAE;MACzBO,IAAI,EAAEP,CAAC,CAAC,wBAAwB;AAClC,KAAC,CAAC,GACFA,CAAC,CAAC,wBAAwB,CAAC;AAAA,GAAA;EAEjC,IAAMQ,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAI7B,MAAM,EAAEC,YAAY,EAAK;AAAA,IAAA,IAAA6B,qBAAA;AACnD,IAAA,IAAAC,KAAA,GAAAD,CAAAA,qBAAA,GACE/B,qBAAqB,CAACC,MAAM,EAAEC,YAAY,CAAC,cAAA6B,qBAAA,KAAA,KAAA,CAAA,GAAAA,qBAAA,GAAI,EAAE;MAD3C3B,YAAY,GAAA4B,KAAA,CAAZ5B,YAAY;MAAEC,MAAM,GAAA2B,KAAA,CAAN3B,MAAM;AAG5B,IAAA,IACEH,YAAY,CAACK,IAAI,KAAKxC,WAAW,CAACY,WAAW,IAC7CuB,YAAY,CAACK,IAAI,KAAKxC,WAAW,CAACa,oBAAoB,EACtD;AACA,MAAA,IAAMM,MAAM,GAAG+C,KAAK,CAClB,OAAO,EACP/B,YAAY,CAACJ,eAAe,CAACoC,MAAM,CAAC,UAAAC,KAAA,EAAA;AAAA,QAAA,IAAG/C,KAAK,GAAA+C,KAAA,CAAL/C,KAAK;QAAA,OAC1Ca,MAAM,CAACJ,QAAQ,CAACT,KAAK,CAACkB,QAAQ,CAAClB,KAAK,CAAC;AAAA,OACvC,CACF,CAAC;MAED,oBACE3B,GAAA,CAACuB,iBAAiB,EAAA;AACVE,QAAAA,MAAM,EAANA,MAAM;AACZD,QAAAA,SAAS,EAAEqC,CAAC,CAAC,uBAAuB,EAAE;AAAEO,UAAAA,IAAI,EAAE;SAAI;AAAE,OACrD,CAAC;AAEN;AAEA,IAAA,IAAI,CAACzB,YAAY,EAAE,OAAO,IAAI;IAE9B,IAAI,CAACC,MAAM,EAAE;AACX,MAAA,IAAM+B,gBAAgB,GACpBlC,YAAY,CAACK,IAAI,KAAKxC,WAAW,CAACe,WAAW,GACzCwC,CAAC,CAAC,sBAAsB,CAAC,GACzBA,CAAC,CAAC,sBAAsB,CAAC;MAE/B,IAAMrC,SAAS,GAAGoD,YAAY,CAAC;AAC7BD,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBE,QAAAA,aAAa,EAAEpC;AACjB,OAAC,CAAC;MAEF,oBACE3C,IAAA,CAAAC,QAAA,EAAA;QAAAF,QAAA,EAAA,cACEG,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;AAAAP,UAAAA,QAAA,EAEd2B;AAAS,SACA,CAAC,eACbxB,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;UAAAP,QAAA,EAEhB8C,YAAY,KAAZA,IAAAA,IAAAA,YAAY,uBAAZA,YAAY,CAAEb,WAAW;AAAE,SAClB,CAAC;AAAA,OACb,CAAC;AAEP;AAEA,IAAA,OAAOa,YAAY,CAACjB,GAAG,CAAC,UAACC,KAAK,EAAEwC,KAAK,EAAA;AAAA,MAAA,oBACnCrE,IAAA,CAAA,KAAA,EAAA;AAAKI,QAAAA,SAAS,EAAC,WAAW;QAAAL,QAAA,EAAA,cACxBG,GAAA,CAACC,UAAU,EAAA;AAAaE,UAAAA,KAAK,EAAC,IAAI;AAACC,UAAAA,MAAM,EAAC,UAAU;AAAAP,UAAAA,QAAA,EACjD8B;SADcwC,EAAAA,KAEL,CAAC,EACZA,KAAK,KAAKxB,YAAY,CAACqB,MAAM,GAAG,CAAC,IAAI,IAAI;AAAA,OAAA,EAJZG,KAK3B,CAAC;AAAA,KACP,CAAC;GACH;AAED,EAAA,IAAMW,YAAY,GAAG,SAAfA,YAAYA,CAAGtC,MAAM,EAAI;IAC7B,IAAMC,YAAY,GAAGN,MAAM,CAAC;MAAER,KAAK,EAAEa,MAAM,CAACuC;AAAK,KAAC,EAAE3B,OAAO,CAAC4B,aAAa,CAAC;AAC1E,IAAA,IAAI,CAACvC,YAAY,EAAE,OAAO,IAAI;IAE9B,oBACE3C,IAAA,CAAAC,QAAA,EAAA;MAAAF,QAAA,EAAA,cACEG,GAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;QAAAP,QAAA,EAEhB4C,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAEH,KAAK,CAACR,WAAW;AAAE,OACxB,CAAC,EACZuC,kBAAkB,CAAC7B,MAAM,EAAEC,YAAY,CAAC;AAAA,KACzC,CAAC;GAEN;EAED,oBACE3C,IAAA,CAACmF,KAAI,EAAA;AAACrF,IAAAA,KAAK,EAAEiE,CAAC,CAAC,wBAAwB,CAAE;IAAAhE,QAAA,EAAA,CACtCkE,UAAU,CAACrC,GAAG,CAAC,UAACc,MAAM,EAAE2B,KAAK,EAAA;AAAA,MAAA,oBAC5BrE,IAAA,CAAA,KAAA,EAAA;AACEI,QAAAA,SAAS,EAAC,qCAAqC;AAC/C,QAAA,SAAA,EAAQ,oBAAoB;QAAAL,QAAA,EAAA,cAG5BG,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;UAAAP,QAAA,EAEdqE,QAAQ,CAACC,KAAK;AAAC,SACN,CAAC,EACZW,YAAY,CAACtC,MAAM,CAAC;OAThBA,EAAAA,MAAM,CAACuC,IAUT,CAAC;KACP,CAAC,EACDjB,WAAW,CAACE,MAAM,GAAG,CAAC,iBACrBhE,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,aAAa;MAAAL,QAAA,eAC1BG,GAAA,CAACkF,MAAM,EAAA;AACLC,QAAAA,IAAI,EAAE,CAAC1B,QAAQ,GAAG2B,IAAI,GAAGC,EAAG;AAC5BC,QAAAA,IAAI,EAAC,OAAO;AACZnF,QAAAA,KAAK,EAAC,MAAM;AACZmC,QAAAA,KAAK,EACH,CAACmB,QAAQ,GACLI,CAAC,CAAC,4BAA4B,CAAC,GAC/BA,CAAC,CAAC,4BAA4B,CACnC;QACD0B,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQ7B,WAAW,CAAC,UAAA8B,SAAS,EAAA;AAAA,YAAA,OAAI,CAACA,SAAS;WAAC,CAAA;AAAA;OACpD;AAAC,KACC,CACN;AAAA,GACG,CAAC;AAEX,CAAC;;;;ACtID,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAA9F,IAAA,EAAA;AAAA,EAAA,IAAME,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAAA,oBAC9BG,GAAA,CAACC,UAAU,EAAA;AAACC,IAAAA,SAAS,EAAC,wBAAwB;AAACC,IAAAA,KAAK,EAAC,IAAI;AAACC,IAAAA,MAAM,EAAC,UAAU;AAAAP,IAAAA,QAAA,EACxEA;AAAQ,GACC,CAAC;AAAA,CACd;AAED,IAAM6F,UAAU,GAAG,SAAbA,UAAUA,CAAAnB,KAAA,EAAA;AAAA,EAAA,IAAM1E,QAAQ,GAAA0E,KAAA,CAAR1E,QAAQ;EAAA,oBAC5BG,GAAA,CAACC,UAAU,EAAA;AAACC,IAAAA,SAAS,EAAC,wBAAwB;AAACC,IAAAA,KAAK,EAAC,IAAI;AAACC,IAAAA,MAAM,EAAC,QAAQ;AAAAP,IAAAA,QAAA,EACtEA;AAAQ,GACC,CAAC;AAAA,CACd;AAED,IAAM8F,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAjB,KAAA,EAKhB;AAAA,EAAA,IAJJkB,UAAU,GAAAlB,KAAA,CAAVkB,UAAU;IACVC,gBAAgB,GAAAnB,KAAA,CAAhBmB,gBAAgB;IAAAC,oBAAA,GAAApB,KAAA,CAChBqB,cAAc;AAAdA,IAAAA,cAAc,GAAAD,oBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAE,cAAA,GAAAtB,KAAA,CACnBuB,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,cAAA;AAEf,EAAA,IAAA3C,SAAA,GAAgCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAxCI,IAAAA,QAAQ,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,WAAW,GAAAH,UAAA,CAAA,CAAA,CAAA;AAE5B,EAAA,IAAAI,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMqC,cAAc,GAAGN,UAAU,CAACjE,KAAK;AACvC,EAAA,IAAMwE,aAAa,GACjB1C,QAAQ,IAAIyC,cAAc,CAAClC,MAAM,GAAG3D,uBAAuB,GACvD6F,cAAc,GACdA,cAAc,CAACjC,KAAK,CAAC,CAAC,EAAE5D,uBAAuB,CAAC;EAEtD,IAAM+F,iBAAiB,GAAAC,aAAA,CAAAA,aAAA,CAAQC,EAAAA,EAAAA,WAAW,CAAKP,EAAAA,cAAc,CAAE;AAE/D,EAAA,IAAMQ,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,QAAQ,EAAA;AAAA,IAAA,OACjCA,QAAQ,KAAK,aAAa,GAAG,IAAI,GAAG,KAAK;AAAA,GAAA;EAE3C,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,SAAS,EAAEC,eAAe,EAAK;AAC5D,IAAA,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC9D,QAAQ,CAAC8D,eAAe,CAAC7D,IAAI,CAAC,EAAE;AAAA,MAAA,IAAA8D,qBAAA;MACzE,oBACE5G,GAAA,CAACyF,YAAY,EAAA;AAAA5F,QAAAA,QAAA,EAAA+G,CAAAA,qBAAA,GAAEF,SAAS,CAACtE,QAAQ,CAACT,KAAK,MAAA,IAAA,IAAAiF,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAxBA,qBAAA,CAA0B9E,WAAW;AAAE,OAAe,CAAC;AAE1E;IAEA,IAAI6E,eAAe,CAAC7D,IAAI,KAAK,MAAM,IAAI6D,eAAe,CAAC7D,IAAI,KAAK,MAAM,EAAE;AACtE,MAAA,IAAA+D,mBAAA,GAAgDH,SAAS,CAACtE,QAAQ;QAAnD0E,IAAI,GAAAD,mBAAA,CAAXlF,KAAK;QAAQmB,IAAI,GAAA+D,mBAAA,CAAJ/D,IAAI;QAAEiE,MAAM,GAAAF,mBAAA,CAANE,MAAM;QAAEC,QAAQ,GAAAH,mBAAA,CAARG,QAAQ;MAE3C,oBACEhH,GAAA,CAACyF,YAAY,EAAA;QAAA5F,QAAA,EACVoH,yBAAyB,CAAC;AAAEH,UAAAA,IAAI,EAAJA,IAAI;AAAEC,UAAAA,MAAM,EAANA,MAAM;AAAEjE,UAAAA,IAAI,EAAJA,IAAI;AAAEkE,UAAAA,QAAQ,EAARA;SAAU;AAAC,OAChD,CAAC;AAEnB;AAEA,IAAA,IAAIL,eAAe,CAAC7D,IAAI,KAAK,UAAU,EAAE;AAAA,MAAA,IAAAoE,sBAAA;MACvC,oBACElH,GAAA,CAACmH,OAAO,EAAA;AAACC,QAAAA,OAAO,EAAAF,CAAAA,sBAAA,GAAER,SAAS,CAACtE,QAAQ,CAACT,KAAK,MAAA,IAAA,IAAAuF,sBAAA,KAAxBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,sBAAA,CAA0BpF,WAAW,EAAG;QAAAjC,QAAA,eACxDG,GAAA,CAACyF,YAAY,EAAA;UAAA5F,QAAA,EAAEgE,CAAC,CAAC,wBAAwB;SAAgB;AAAC,OACnD,CAAC;AAEd;IAEA,IACE8C,eAAe,CAAC7D,IAAI,KAAK,cAAc,IACvC6D,eAAe,CAAC7D,IAAI,KAAK,uBAAuB,EAChD;AACA,MAAA,IAAMrB,MAAM,GAAG+C,KAAK,CAClB,OAAO,EACPmC,eAAe,CAACtE,eAAe,CAACoC,MAAM,CAAC,UAAA4C,KAAA,EAAA;AAAA,QAAA,IAAG1F,KAAK,GAAA0F,KAAA,CAAL1F,KAAK;QAAA,OAC7C+E,SAAS,CAACtE,QAAQ,CAACX,MAAM,CAACoB,QAAQ,CAAClB,KAAK,CAAC;AAAA,OAC3C,CACF,CAAC;MAED,oBACE3B,GAAA,CAACuB,iBAAiB,EAAA;AACVE,QAAAA,MAAM,EAANA,MAAM;QACZD,SAAS,EAAEqC,CAAC,CAAC,sBAAsB;AAAE,OACtC,CAAC;AAEN;IAEA,IAAI,CAAC,qBAAqB,CAAC,CAAChB,QAAQ,CAAC8D,eAAe,CAAC7D,IAAI,CAAC,EAAE;MAC1D,oBACE9C,GAAA,CAACuB,iBAAiB,EAAA;AAChBC,QAAAA,SAAS,EAAEqC,CAAC,CAAC,sBAAsB,CAAE;AACrCpC,QAAAA,MAAM,EAAEiF,SAAS,CAACtE,QAAQ,CAACX;AAAO,OACnC,CAAC;AAEN;AAEA,IAAA,IACEkF,eAAe,CAAC7D,IAAI,KAAK,QAAQ,IACjC6D,eAAe,CAAC7D,IAAI,KAAK,OAAO,IAChC6D,eAAe,CAAC7D,IAAI,KAAK,UAAU,EACnC;MACA,oBACE9C,GAAA,CAACyF,YAAY,EAAA;AAAA5F,QAAAA,QAAA,EACVkC,qBAAqB,CAAC2E,SAAS,EAAEC,eAAe;AAAC,OACtC,CAAC;AAEnB;AAEA,IAAA,OAAO,IAAI;GACZ;AAED,EAAA,IAAMW,eAAe,GAAG,SAAlBA,eAAeA,CAAGZ,SAAS,EAAI;AAAA,IAAA,IAAAa,qBAAA;IACnC,IAAMZ,eAAe,GAAGxE,MAAM,CAC5B;MAAER,KAAK,EAAE+E,SAAS,CAACc;KAAO,EAC1B3B,gBACF,CAAC;AACD,IAAA,IAAI,CAACc,eAAe,EAAE,OAAO,IAAI;AAEjC,IAAA,IAAMc,aAAa,GAAAF,CAAAA,qBAAA,GAAGnB,iBAAiB,CAACM,SAAS,CAACgB,IAAI,CAAC,cAAAH,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjCA,qBAAA,CAAmCzF,WAAW,EAAE;IAEtE,oBACEhC,IAAA,CAAAC,QAAA,EAAA;MAAAF,QAAA,EAAA,cACEG,GAAA,CAACyF,YAAY,EAAA;QAAA5F,QAAA,EAAE8G,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAe,CAAErE,KAAK,CAACR,WAAW;AAAE,OAAe,CAAC,eACnE9B,GAAA,CAACyF,YAAY,EAAA;AAAA5F,QAAAA,QAAA,EAAE4H;AAAa,OAAe,CAAC,EAC3ChB,qBAAqB,CAACC,SAAS,EAAEC,eAAe,CAAC;AAAA,KAClD,CAAC;GAEN;EAED,oBACE7G,IAAA,CAAAC,QAAA,EAAA;AAAAF,IAAAA,QAAA,gBACEG,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,MAAM;MAAAL,QAAA,EAClBsG,aAAa,CAACzE,GAAG,CAAC,UAACgF,SAAS,EAAEvC,KAAK,EAAA;AAAA,QAAA,oBAClCrE,IAAA,CAAA,KAAA,EAAA;AACEI,UAAAA,SAAS,EAAC,qCAAqC;UAAAL,QAAA,EAAA,CAG9C,CAACsE,KAAK,IAAI8B,QAAQ,iBACjBjG,GAAA,CAAC0F,UAAU,EAAA;AAAA7F,YAAAA,QAAA,EACRgE,CAAC,CAAC,uBAAuB,EAAE;AAAEO,cAAAA,IAAI,EAAE;aAAI;WAC9B,CACb,EACA,CAAC,CAACD,KAAK,iBACNnE,GAAA,CAACyF,YAAY,EAAA;AAAA5F,YAAAA,QAAA,EACV0G,kBAAkB,CAACG,SAAS,CAACF,QAAQ;AAAC,WAC3B,CACf,eACDxG,GAAA,CAAC0F,UAAU,EAAA;YAAA7F,QAAA,EAAEgE,CAAC,CAAC,wBAAwB;AAAC,WAAa,CAAC,EACrDyD,eAAe,CAACZ,SAAS,CAAC;SAbtBA,EAAAA,SAAS,CAACiB,EAcZ,CAAC;OACP;KACE,CAAC,EACLzB,cAAc,CAAClC,MAAM,GAAG,CAAC,iBACxBhE,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,aAAa;MAAAL,QAAA,eAC1BG,GAAA,CAACkF,MAAM,EAAA;AACLC,QAAAA,IAAI,EAAE,CAAC1B,QAAQ,GAAG2B,IAAI,GAAGC,EAAG;AAC5BC,QAAAA,IAAI,EAAC,OAAO;AACZnF,QAAAA,KAAK,EAAC,MAAM;AACZmC,QAAAA,KAAK,EACH,CAACmB,QAAQ,GACLI,CAAC,CAAC,4BAA4B,CAAC,GAC/BA,CAAC,CAAC,4BAA4B,CACnC;QACD0B,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQ7B,WAAW,CAAC,UAAA8B,SAAS,EAAA;AAAA,YAAA,OAAI,CAACA,SAAS;WAAC,CAAA;AAAA;OACpD;AAAC,KACC,CACN;AAAA,GACD,CAAC;AAEP,CAAC;;ACtKD,IAAMoC,YAAY,GAAG,SAAfA,YAAYA,CAAAjI,IAAA,EAA0C;AAAA,EAAA,IAAAkI,qBAAA;AAAA,EAAA,IAApCC,MAAM,GAAAnI,IAAA,CAANmI,MAAM;IAAEC,SAAS,GAAApI,IAAA,CAAToI,SAAS;IAAEnC,UAAU,GAAAjG,IAAA,CAAViG,UAAU;AACnD,EAAA,IAAAjC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EAET,IAAMmE,UAAU,GAAGxD,KAAK,CAAC,MAAM,EAAEsD,MAAM,CAACnG,KAAK,CAAC;EAC9C,IAAMsG,SAAS,GAAGH,MAAM,CAACI,YAAY,CAACzD,MAAM,CAAC,UAAA0D,KAAK,EAAA;IAAA,OAChDH,UAAU,KAAVA,IAAAA,IAAAA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAEnF,QAAQ,CAACsF,KAAK,CAACxG,KAAK,CAAC;AAAA,GACnC,CAAC;EAED,IAAMyG,gBAAgB,GAAGjG,MAAM,CAC7B;IAAER,KAAK,EAAEoG,SAAS,CAACpG;AAAM,GAAC,EAC1BoG,SAAS,CAACM,OACZ,CAAC;EAED,oBACEvI,IAAA,CAACmF,KAAI,EAAA;AAACrF,IAAAA,KAAK,EAAEiE,CAAC,CAAC,wBAAwB,CAAE;AAAAhE,IAAAA,QAAA,gBACvCC,IAAA,CAAA,KAAA,EAAA;AACEI,MAAAA,SAAS,EAAC,gCAAgC;AAC1C,MAAA,SAAA,EAAQ,uBAAuB;MAAAL,QAAA,EAAA,CAE9BoI,SAAS,CAACvG,GAAG,CAAC,UAACyG,KAAK,EAAEhE,KAAK,EAAA;AAAA,QAAA,oBAC1BrE,IAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,cAAc;AAAAL,UAAAA,QAAA,GAC1B,CAACsE,KAAK,iBACLnE,GAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,gCAAgC;AAC1CC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;YAAAP,QAAA,EAEdgE,CAAC,CAAC,wBAAwB;WACjB,CACb,EACA,CAAC,CAACM,KAAK,iBACNnE,GAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,gCAAgC;AAC1CC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;YAAAP,QAAA,EAEdgE,CAAC,CAAC,sBAAsB;AAAC,WAChB,CACb,eACD7D,GAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAEhBsI,KAAK,CAAC7F,KAAK,CAACR,WAAW;AAAE,WAChB,CAAC;AAAA,SAAA,EAzBoBqC,KA0B9B,CAAC;AAAA,OACP,CAAC,eACFnE,GAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,QAAQ;QAAAP,QAAA,EAEdgE,CAAC,CAAC,sBAAsB;AAAC,OAChB,CAAC,eACb7D,GAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAEhBuI,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,KAAA,CAAA,IAAA,CAAAP,qBAAA,GAAhBO,gBAAgB,CAAE9F,KAAK,cAAAuF,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAvBA,qBAAA,CAAyB/F,WAAW;AAAE,OAC7B,CAAC;AAAA,KACV,CAAC,eACN9B,GAAA,CAAC2F,gBAAgB,EAAA;AACTC,MAAAA,UAAU,EAAVA,UAAU;MAChBC,gBAAgB,EAAED,UAAU,CAACC,gBAAiB;MAC9CE,cAAc,EAAEH,UAAU,CAAC0C;AAAM,KAClC,CAAC;AAAA,GACE,CAAC;AAEX,CAAC;;AClED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA5I,IAAA,EAAoD;AAAA,EAAA,IAA9C6I,SAAS,GAAA7I,IAAA,CAAT6I,SAAS;IAAEC,WAAW,GAAA9I,IAAA,CAAX8I,WAAW;IAAEC,MAAM,GAAA/I,IAAA,CAAN+I,MAAM;IAAEC,OAAO,GAAAhJ,IAAA,CAAPgJ,OAAO;AAC5D,EAAA,IAAAhF,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAA+E,gBAAA,GAAAC,eAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,uBAAuB,EAAAD,KAAA,CAAA,yBAAA,CAAA;AAAEE,QAAAA,eAAe,EAAAF,KAAA,CAAA,iBAAA;AAAA,OAAA;AAAA,KAAA,EAAAG,OAAA,CAAA;IAAxCF,uBAAuB,GAAAH,gBAAA,CAAvBG,uBAAuB;IAAEC,eAAe,GAAAJ,gBAAA,CAAfI,eAAe;EAEhD,oBACEhJ,GAAA,CAACkJ,IAAI,EAAA;AAAOP,IAAAA,OAAO,EAAPA,OAAO;IAAID,MAAM,EAAEA,MAAM,IAAIM,eAAgB;IAAAnJ,QAAA,EACtD2I,SAAS,gBACRxI,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,gDAAgD;AAAAL,MAAAA,QAAA,eAC7DG,GAAA,CAACmJ,OAAO,EAAE,EAAA;AAAC,KACR,CAAC,gBAENrJ,IAAA,CAAAC,QAAA,EAAA;AAAAF,MAAAA,QAAA,EACEG,cAAAA,GAAA,CAACkJ,IAAI,CAACE,MAAM,EAAA;AAAAvJ,QAAAA,QAAA,eACVC,IAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,2CAA2C;UAAAL,QAAA,EAAA,cACxDG,GAAA,CAACC,UAAU,EAAA;AAACC,YAAAA,SAAS,EAAC,cAAc;AAACC,YAAAA,KAAK,EAAC,IAAI;AAACC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAC9D4I,WAAW,CAAC1D,IAAI,CAACpD;AAAK,WACb,CAAC,eACb3B,GAAA,CAACqJ,YAAY,EAAA;AACXC,YAAAA,aAAa,EAAE;AAAEC,cAAAA,QAAQ,EAAE;aAAU;AACrCC,YAAAA,SAAS,EAAET;AAAwB,WACpC,CAAC;SACC;AAAC,OACK,CAAC,eACd/I,GAAA,CAACkJ,IAAI,CAACO,IAAI,EAAA;AAAA5J,QAAAA,QAAA,eACRC,IAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,aAAa;AAAAL,UAAAA,QAAA,gBAC1BG,GAAA,CAAA,KAAA,EAAA;AAAKE,YAAAA,SAAS,EAAC,MAAM;AAAAL,YAAAA,QAAA,EAClB4I,WAAW,CAACiB,MAAM,iBACjB5J,IAAA,CAAA,KAAA,EAAA;AAAKI,cAAAA,SAAS,EAAC,gBAAgB;cAAAL,QAAA,EAAA,cAC7BG,GAAA,CAACC,UAAU,EAAA;AACTC,gBAAAA,SAAS,EAAC,mCAAmC;AAC7CC,gBAAAA,KAAK,EAAC,IAAI;AACVC,gBAAAA,MAAM,EAAC,UAAU;AAAAP,gBAAAA,QAAA,EAEhB4I,WAAW,CAACiB,MAAM,CAACpH;AAAK,eACf,CAAC,eACbtC,GAAA,CAACC,UAAU,EAAA;AACTC,gBAAAA,SAAS,EAAC,mCAAmC;AAC7CC,gBAAAA,KAAK,EAAC,IAAI;AACVC,gBAAAA,MAAM,EAAC,QAAQ;AAAAP,gBAAAA,QAAA,EAEd4I,WAAW,CAACiB,MAAM,CAAC/H;AAAK,eACf,CAAC;aACV;AACN,WACE,CAAC,EACL8G,WAAW,CAACX,MAAM,IAAI6B,UAAU,CAAClB,WAAW,CAACX,MAAM,CAAC,gBACnD9H,GAAA,CAAC4H,YAAY,EAAA;YACXhC,UAAU,EAAE6C,WAAW,CAAC7C,UAAW;YACnCkC,MAAM,EAAEW,WAAW,CAACX,MAAO;YAC3BC,SAAS,EAAEU,WAAW,CAACV;AAAU,WAClC,CAAC,gBAEF/H,GAAA,CAACiF,KAAI,EAAA;AAACrF,YAAAA,KAAK,EAAEiE,CAAC,CAAC,wBAAwB,CAAE;YAAAhE,QAAA,eACvCG,GAAA,CAAC2F,gBAAgB,EAAA;AACfE,cAAAA,gBAAgB,EAAE4C,WAAW,CAAC7C,UAAU,CAACC,gBAAiB;AAC1DE,cAAAA,cAAc,EAAE0C,WAAW,CAAC7C,UAAU,CAAC0C,KAAM;cAC7C1C,UAAU,EAAE6C,WAAW,CAAC7C,UAAW;AACnCK,cAAAA,QAAQ,EAAE;aACX;AAAC,WACE,CACP,eACDjG,GAAA,CAACmD,aAAa,EAAA;YAACC,OAAO,EAAEqF,WAAW,CAACrF;AAAQ,WAAE,CAAC;SAC5C;AAAC,OACG,CAAC;KACZ;AACH,GACG,CAAC;AAEX;;;;"}
1
+ {"version":3,"file":"RulePreview.js","sources":["../app/javascript/src/components/RulePreview/Card.jsx","../app/javascript/src/components/RulePreview/constants.js","../app/javascript/src/components/RulePreview/MultiSelectValues.jsx","../app/javascript/src/components/RulePreview/utils.js","../app/javascript/src/components/RulePreview/ActionsDetail.jsx","../app/javascript/src/components/RulePreview/ConditionsDetail.jsx","../app/javascript/src/components/RulePreview/EventsDetail.jsx","../app/javascript/src/components/RulePreview/index.jsx"],"sourcesContent":["import { Typography } from \"neetoui\";\n\nconst Title = ({ title, children }) => (\n <>\n <Typography className=\"neeto-ui-text-gray-800\" style=\"h5\" weight=\"semibold\">\n {title}\n </Typography>\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-sm my-3 p-4\">\n {children}\n </div>\n </>\n);\n\nexport default Title;\n","export const PREVIEW_CONDITION_LIMIT = 3;\n\nexport const ACTION_TYPE = {\n TEXT: \"text\",\n NUMBER: \"number\",\n DECIMAL: \"decimal\",\n REGEX: \"regex\",\n DATE: \"date\",\n EMAIL: \"email\",\n EMAIL_TO: \"emailTo\",\n EMAIL_TO_IDS: \"emailToIds\",\n SMS_TO_NUMBERS: \"smsToNumbers\",\n DROPDOWN: \"dropdown\",\n SELECT: \"select\",\n MULTISELECT: \"multiSelect\",\n MULTISELECT_CHECKBOX: \"multiSelectCheckbox\",\n RADIO: \"radio\",\n SEND_TO_API: \"sendToApi\",\n};\n\nexport const TEXT_FIELDS = [\n ACTION_TYPE.TEXT,\n ACTION_TYPE.NUMBER,\n ACTION_TYPE.DECIMAL,\n ACTION_TYPE.REGEX,\n ACTION_TYPE.DATE,\n];\n","import { Fragment } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst MultiSelectValues = ({ separator, values }) => (\n <>\n {values?.map((value, idx) => (\n <Fragment key={idx}>\n {!!idx && (\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {separator}\n </Typography>\n )}\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {value.toLowerCase()}\n </Typography>\n </Fragment>\n ))}\n </>\n);\n\nexport default MultiSelectValues;\n","import { findBy } from \"neetocist\";\n\nimport { ACTION_TYPE, TEXT_FIELDS } from \"./constants\";\n\nexport const getEntityDisplayValue = (entitiy, entitiyOption) =>\n findBy(\n { value: entitiy.metadata.value },\n entitiyOption.dropdownOptions\n )?.label?.toLowerCase();\n\nexport const getActionDisplayValue = (action, actionOption) => {\n const displayValueData = { displayValue: null, isBulk: false };\n\n if (TEXT_FIELDS.includes(actionOption.type)) {\n displayValueData.displayValue = action.metadata.value?.toLowerCase();\n\n return displayValueData;\n }\n switch (actionOption.type) {\n case ACTION_TYPE.DROPDOWN: {\n displayValueData.displayValue = getEntityDisplayValue(\n action,\n actionOption\n );\n\n return displayValueData;\n }\n\n case ACTION_TYPE.SELECT: {\n displayValueData.displayValue = getEntityDisplayValue(\n action,\n actionOption\n );\n\n return displayValueData;\n }\n\n case ACTION_TYPE.RADIO: {\n displayValueData.displayValue = getEntityDisplayValue(\n action,\n actionOption\n );\n\n return displayValueData;\n }\n\n case ACTION_TYPE.EMAIL_TO_IDS: {\n displayValueData.isBulk = true;\n displayValueData.displayValue = action.metadata.emails;\n\n return displayValueData;\n }\n\n case ACTION_TYPE.EMAIL_TO: {\n displayValueData.displayValue = action.displayValue;\n\n return displayValueData;\n }\n\n case ACTION_TYPE.SMS_TO_NUMBERS: {\n displayValueData.isBulk = true;\n displayValueData.displayValue = action.metadata.phoneNumbers;\n\n return displayValueData;\n }\n case ACTION_TYPE.SEND_TO_API: {\n displayValueData.displayValue = action.metadata.endpoint;\n\n return displayValueData;\n }\n default:\n return null;\n }\n};\n","import { useState } from \"react\";\n\nimport { findBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Typography, Button } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getSeparator } from \"utils\";\n\nimport Card from \"./Card\";\nimport { ACTION_TYPE } from \"./constants\";\nimport MultiSelectValues from \"./MultiSelectValues\";\nimport { getActionDisplayValue } from \"./utils\";\n\nconst ActionsDetail = ({ actions }) => {\n const [viewMore, setViewMore] = useState(false);\n const { t } = useTranslation();\n\n const actionsList = actions.value || [];\n const allActions =\n viewMore && actionsList.length > 4 ? actionsList : actionsList.slice(0, 4);\n\n const getLabel = index =>\n index\n ? t(\"neetoRules.common.and\", {\n what: t(\"neetoRules.common.then\"),\n })\n : t(\"neetoRules.common.then\");\n\n const renderActionValues = (action, actionOption) => {\n const { displayValue, isBulk } =\n getActionDisplayValue(action, actionOption) ?? {};\n\n if (\n actionOption.type === ACTION_TYPE.MULTISELECT ||\n actionOption.type === ACTION_TYPE.MULTISELECT_CHECKBOX\n ) {\n const values = pluck(\n \"label\",\n actionOption.dropdownOptions.filter(({ value }) =>\n action.metadata.value.includes(value)\n )\n );\n\n return (\n <MultiSelectValues\n {...{ values }}\n separator={t(\"neetoRules.common.and\", { what: \"\" })}\n />\n );\n }\n\n if (!displayValue) return null;\n\n if (!isBulk) {\n const defaultSeparator =\n actionOption.type === ACTION_TYPE.SEND_TO_API\n ? t(\"neetoRules.common.at\")\n : t(\"neetoRules.common.to\");\n\n const separator = getSeparator({\n defaultSeparator,\n selectedField: actionOption,\n });\n\n return (\n <>\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {separator}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {displayValue?.toLowerCase()}\n </Typography>\n </>\n );\n }\n\n return displayValue.map((value, index) => (\n <div className=\"mr-1 flex\" key={index}>\n <Typography key={index} style=\"h5\" weight=\"semibold\">\n {value}\n </Typography>\n {index !== displayValue.length - 1 && \", \"}\n </div>\n ));\n };\n\n const renderAction = action => {\n const actionOption = findBy({ value: action.name }, actions.actionOptions);\n if (!actionOption) return null;\n\n return (\n <>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {actionOption?.label.toLowerCase()}\n </Typography>\n {renderActionValues(action, actionOption)}\n </>\n );\n };\n\n return (\n <Card title={t(\"neetoRules.common.then\")}>\n {allActions.map((action, index) => (\n <div\n className=\"mb-2 flex flex-wrap gap-x-1 gap-y-2\"\n data-cy=\"then-action-events\"\n key={action.name}\n >\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {getLabel(index)}\n </Typography>\n {renderAction(action)}\n </div>\n ))}\n {actionsList.length > 4 && (\n <div className=\"mt-3 w-full\">\n <Button\n icon={!viewMore ? Down : Up}\n size=\"small\"\n style=\"link\"\n label={\n !viewMore\n ? t(\"neetoRules.common.viewMore\")\n : t(\"neetoRules.common.viewLess\")\n }\n onClick={() => setViewMore(prevState => !prevState)}\n />\n </div>\n )}\n </Card>\n );\n};\n\nexport default ActionsDetail;\n","import { useState } from \"react\";\n\nimport { findBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { VERB_LABELS } from \"components/NeetoRulesForm/Element/Conditions/constants\";\nimport { getDateTimeFormattedValue } from \"utils\";\n\nimport { PREVIEW_CONDITION_LIMIT } from \"./constants\";\nimport MultiSelectValues from \"./MultiSelectValues\";\nimport { getEntityDisplayValue } from \"./utils\";\n\nconst SemiboldText = ({ children }) => (\n <Typography className=\"neeto-ui-text-gray-800\" style=\"h5\" weight=\"semibold\">\n {children}\n </Typography>\n);\n\nconst NormalText = ({ children }) => (\n <Typography className=\"neeto-ui-text-gray-700\" style=\"h5\" weight=\"normal\">\n {children}\n </Typography>\n);\n\nconst ConditionsDetail = ({\n conditions,\n conditionOptions,\n conditionVerbs = {},\n hasEvent = true,\n}) => {\n const [viewMore, setViewMore] = useState(false);\n\n const { t } = useTranslation();\n\n const conditionsList = conditions.value;\n const allConditions =\n viewMore && conditionsList.length > PREVIEW_CONDITION_LIMIT\n ? conditionsList\n : conditionsList.slice(0, PREVIEW_CONDITION_LIMIT);\n\n const allConditionVerbs = { ...VERB_LABELS, ...conditionVerbs };\n\n const getLogicalOperator = joinType =>\n joinType === \"or_operator\" ? \"or\" : \"and\";\n\n const renderConditionValues = (condition, conditionOption) => {\n if ([\"decimal\", \"email\", \"number\", \"text\"].includes(conditionOption.type)) {\n return (\n <SemiboldText>{condition.metadata.value?.toLowerCase()}</SemiboldText>\n );\n }\n\n if (conditionOption.type === \"date\" || conditionOption.type === \"time\") {\n const { value: date, type, format, timezone } = condition.metadata;\n\n return (\n <SemiboldText>\n {getDateTimeFormattedValue({ date, format, type, timezone })}\n </SemiboldText>\n );\n }\n\n if (conditionOption.type === \"textarea\") {\n return (\n <Tooltip content={condition.metadata.value?.toLowerCase()}>\n <SemiboldText>{t(\"neetoRules.labels.text\")}</SemiboldText>\n </Tooltip>\n );\n }\n\n if (\n conditionOption.type === \"multi-select\" ||\n conditionOption.type === \"multi-select-checkbox\"\n ) {\n const values = pluck(\n \"label\",\n conditionOption.dropdownOptions.filter(({ value }) =>\n condition.metadata.values.includes(value)\n )\n );\n\n return (\n <MultiSelectValues\n {...{ values }}\n separator={t(\"neetoRules.common.or\")}\n />\n );\n }\n\n if ([\"multi-select-create\"].includes(conditionOption.type)) {\n return (\n <MultiSelectValues\n separator={t(\"neetoRules.common.or\")}\n values={condition.metadata.values}\n />\n );\n }\n\n if (\n conditionOption.type === \"select\" ||\n conditionOption.type === \"radio\" ||\n conditionOption.type === \"dropdown\"\n ) {\n return (\n <SemiboldText>\n {getEntityDisplayValue(condition, conditionOption)}\n </SemiboldText>\n );\n }\n\n return null;\n };\n\n const renderCondition = condition => {\n const conditionOption = findBy(\n { value: condition.field },\n conditionOptions\n );\n if (!conditionOption) return null;\n\n const conditionVerb = allConditionVerbs[condition.verb]?.toLowerCase();\n\n return (\n <>\n <SemiboldText>{conditionOption?.label.toLowerCase()}</SemiboldText>\n <SemiboldText>{conditionVerb}</SemiboldText>\n {renderConditionValues(condition, conditionOption)}\n </>\n );\n };\n\n return (\n <>\n <div className=\"mt-2\">\n {allConditions.map((condition, index) => (\n <div\n className=\"mb-2 flex flex-wrap gap-x-2 gap-y-2\"\n key={condition.id}\n >\n {!index && hasEvent && (\n <NormalText>\n {t(\"neetoRules.common.and\", { what: \"\" })}\n </NormalText>\n )}\n {!!index && (\n <SemiboldText>\n {getLogicalOperator(condition.joinType)}\n </SemiboldText>\n )}\n <NormalText>{t(\"neetoRules.common.when\")}</NormalText>\n {renderCondition(condition)}\n </div>\n ))}\n </div>\n {conditionsList.length > 3 && (\n <div className=\"mt-3 w-full\">\n <Button\n icon={!viewMore ? Down : Up}\n size=\"small\"\n style=\"link\"\n label={\n !viewMore\n ? t(\"neetoRules.common.viewMore\")\n : t(\"neetoRules.common.viewLess\")\n }\n onClick={() => setViewMore(prevState => !prevState)}\n />\n </div>\n )}\n </>\n );\n};\n\nexport default ConditionsDetail;\n","import { findBy } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Card from \"./Card\";\nimport ConditionsDetail from \"./ConditionsDetail\";\n\nconst EventsDetail = ({ events, performer, conditions }) => {\n const { t } = useTranslation();\n\n const eventNames = pluck(\"name\", events.value || []);\n const allEvents = events.eventOptions.filter(event =>\n eventNames?.includes(event.value)\n );\n\n const currentPerformer = findBy(\n { value: performer.value },\n performer.options\n );\n\n return (\n <Card title={t(\"neetoRules.common.when\")}>\n <div\n className=\"flex flex-wrap gap-x-2 gap-y-2\"\n data-cy=\"when-condition-events\"\n >\n {allEvents.map((event, index) => (\n <div className=\"flex gap-x-2\" key={index}>\n {!index && (\n <Typography\n className=\"neeto-ui-text-gray-700 my-auto\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.when\")}\n </Typography>\n )}\n {!!index && (\n <Typography\n className=\"neeto-ui-text-gray-700 my-auto\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.or\")}\n </Typography>\n )}\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {event.label.toLowerCase()}\n </Typography>\n </div>\n ))}\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.by\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {currentPerformer?.label?.toLowerCase()}\n </Typography>\n </div>\n <ConditionsDetail\n {...{ conditions }}\n conditionOptions={conditions.conditionOptions}\n conditionVerbs={conditions.verbs}\n />\n </Card>\n );\n};\n\nexport default EventsDetail;\n","import { isNotEmpty } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Pane, Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\n\nimport ActionsDetail from \"./ActionsDetail\";\nimport Card from \"./Card\";\nimport ConditionsDetail from \"./ConditionsDetail\";\nimport EventsDetail from \"./EventsDetail\";\n\nconst RulePreview = ({ isLoading, ruleDetails, isOpen, onClose }) => {\n const { t } = useTranslation();\n\n const { moreActionDropdownItems, showPreviewPane } = useUtilityStore.pick();\n\n return (\n <Pane {...{ onClose }} isOpen={isOpen && showPreviewPane}>\n {isLoading ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n <>\n <Pane.Header>\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography className=\"line-clamp-2\" style=\"h4\" weight=\"semibold\">\n {ruleDetails.name.value}\n </Typography>\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={moreActionDropdownItems}\n />\n </div>\n </Pane.Header>\n <Pane.Body>\n <div className=\"w-full\">\n {ruleDetails.entity && (\n <div className=\"mb-6\">\n <div className=\"flex space-x-8\">\n <Typography\n className=\"neeto-ui-text-gray-800 col-span-1\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {ruleDetails.entity.label}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-800 col-span-2\"\n style=\"h5\"\n weight=\"normal\"\n >\n {ruleDetails.entity.value}\n </Typography>\n </div>\n </div>\n )}\n {ruleDetails.events && isNotEmpty(ruleDetails.events) ? (\n <EventsDetail\n conditions={ruleDetails.conditions}\n events={ruleDetails.events}\n performer={ruleDetails.performer}\n />\n ) : (\n <Card title={t(\"neetoRules.common.when\")}>\n <ConditionsDetail\n conditionOptions={ruleDetails.conditions.conditionOptions}\n conditionVerbs={ruleDetails.conditions.verbs}\n conditions={ruleDetails.conditions}\n hasEvent={false}\n />\n </Card>\n )}\n <ActionsDetail actions={ruleDetails.actions} />\n </div>\n </Pane.Body>\n </>\n )}\n </Pane>\n );\n};\n\nexport default RulePreview;\n"],"names":["Title","_ref","title","children","_jsxs","_Fragment","_jsx","Typography","className","style","weight","PREVIEW_CONDITION_LIMIT","ACTION_TYPE","TEXT","NUMBER","DECIMAL","REGEX","DATE","EMAIL","EMAIL_TO","EMAIL_TO_IDS","SMS_TO_NUMBERS","DROPDOWN","SELECT","MULTISELECT","MULTISELECT_CHECKBOX","RADIO","SEND_TO_API","TEXT_FIELDS","MultiSelectValues","separator","values","map","value","idx","Fragment","toLowerCase","getEntityDisplayValue","entitiy","entitiyOption","_findBy","findBy","metadata","dropdownOptions","label","getActionDisplayValue","action","actionOption","displayValueData","displayValue","isBulk","includes","type","_action$metadata$valu","emails","phoneNumbers","endpoint","ActionsDetail","actions","_useState","useState","_useState2","_slicedToArray","viewMore","setViewMore","_useTranslation","useTranslation","t","actionsList","allActions","length","slice","getLabel","index","what","renderActionValues","_getActionDisplayValu","_ref2","pluck","filter","_ref3","defaultSeparator","getSeparator","selectedField","renderAction","name","actionOptions","Card","Button","icon","Down","Up","size","onClick","prevState","SemiboldText","NormalText","ConditionsDetail","conditions","conditionOptions","_ref3$conditionVerbs","conditionVerbs","_ref3$hasEvent","hasEvent","conditionsList","allConditions","allConditionVerbs","_objectSpread","VERB_LABELS","getLogicalOperator","joinType","renderConditionValues","condition","conditionOption","_condition$metadata$v","_condition$metadata","date","format","timezone","getDateTimeFormattedValue","_condition$metadata$v2","Tooltip","content","_ref4","renderCondition","_allConditionVerbs$co","field","conditionVerb","verb","id","EventsDetail","_currentPerformer$lab","events","performer","eventNames","allEvents","eventOptions","event","currentPerformer","options","verbs","RulePreview","isLoading","ruleDetails","isOpen","onClose","_useUtilityStore","useUtilityStore","store","moreActionDropdownItems","showPreviewPane","shallow","Pane","Spinner","Header","MoreDropdown","dropdownProps","strategy","menuItems","Body","entity","isNotEmpty"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAAA,oBAC9BC,IAAA,CAAAC,QAAA,EAAA;IAAAF,QAAA,EAAA,cACEG,GAAA,CAACC,UAAU,EAAA;AAACC,MAAAA,SAAS,EAAC,wBAAwB;AAACC,MAAAA,KAAK,EAAC,IAAI;AAACC,MAAAA,MAAM,EAAC,UAAU;AAAAP,MAAAA,QAAA,EACxED;KACS,CAAC,eACbI,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,mDAAmD;AAAAL,MAAAA,QAAA,EAC/DA;AAAQ,KACN,CAAC;AAAA,GACN,CAAC;AAAA,CACJ;;ACXM,IAAMQ,uBAAuB,GAAG,CAAC;AAEjC,IAAMC,WAAW,GAAG;AACzBC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,QAAQ,EAAE,SAAS;AACnBC,EAAAA,YAAY,EAAE,YAAY;AAC1BC,EAAAA,cAAc,EAAE,cAAc;AAC9BC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,WAAW,EAAE,aAAa;AAC1BC,EAAAA,oBAAoB,EAAE,qBAAqB;AAC3CC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,WAAW,EAAE;AACf,CAAC;AAEM,IAAMC,WAAW,GAAG,CACzBhB,WAAW,CAACC,IAAI,EAChBD,WAAW,CAACE,MAAM,EAClBF,WAAW,CAACG,OAAO,EACnBH,WAAW,CAACI,KAAK,EACjBJ,WAAW,CAACK,IAAI,CACjB;;ACtBD,IAAMY,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAA5B,IAAA,EAAA;AAAA,EAAA,IAAM6B,SAAS,GAAA7B,IAAA,CAAT6B,SAAS;IAAEC,MAAM,GAAA9B,IAAA,CAAN8B,MAAM;EAAA,oBAC5CzB,GAAA,CAAAD,QAAA,EAAA;AAAAF,IAAAA,QAAA,EACG4B,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEC,GAAG,CAAC,UAACC,KAAK,EAAEC,GAAG,EAAA;MAAA,oBACtB9B,IAAA,CAAC+B,UAAQ,EAAA;AAAAhC,QAAAA,QAAA,GACN,CAAC,CAAC+B,GAAG,iBACJ5B,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;AAAAP,UAAAA,QAAA,EAEd2B;AAAS,SACA,CACb,eACDxB,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;AAAAP,UAAAA,QAAA,EAEhB8B,KAAK,CAACG,WAAW;AAAE,SACV,CAAC;AAAA,OAAA,EAhBAF,GAiBL,CAAC;KACZ;AAAC,GACF,CAAC;AAAA,CACJ;;ACvBM,IAAMG,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,OAAO,EAAEC,aAAa,EAAA;AAAA,EAAA,IAAAC,OAAA;EAAA,OAAAA,CAAAA,OAAA,GAC1DC,MAAM,CACJ;AAAER,IAAAA,KAAK,EAAEK,OAAO,CAACI,QAAQ,CAACT;GAAO,EACjCM,aAAa,CAACI,eAChB,CAAC,MAAAH,IAAAA,IAAAA,OAAA,gBAAAA,OAAA,GAHDA,OAAA,CAGGI,KAAK,cAAAJ,OAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAHRA,OAAA,CAGUJ,WAAW,EAAE;AAAA,CAAA;AAElB,IAAMS,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,MAAM,EAAEC,YAAY,EAAK;AAC7D,EAAA,IAAMC,gBAAgB,GAAG;AAAEC,IAAAA,YAAY,EAAE,IAAI;AAAEC,IAAAA,MAAM,EAAE;GAAO;EAE9D,IAAItB,WAAW,CAACuB,QAAQ,CAACJ,YAAY,CAACK,IAAI,CAAC,EAAE;AAAA,IAAA,IAAAC,qBAAA;AAC3CL,IAAAA,gBAAgB,CAACC,YAAY,GAAA,CAAAI,qBAAA,GAAGP,MAAM,CAACJ,QAAQ,CAACT,KAAK,cAAAoB,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAArBA,qBAAA,CAAuBjB,WAAW,EAAE;AAEpE,IAAA,OAAOY,gBAAgB;AACzB;EACA,QAAQD,YAAY,CAACK,IAAI;IACvB,KAAKxC,WAAW,CAACU,QAAQ;AAAE,MAAA;QACzB0B,gBAAgB,CAACC,YAAY,GAAGZ,qBAAqB,CACnDS,MAAM,EACNC,YACF,CAAC;AAED,QAAA,OAAOC,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACW,MAAM;AAAE,MAAA;QACvByB,gBAAgB,CAACC,YAAY,GAAGZ,qBAAqB,CACnDS,MAAM,EACNC,YACF,CAAC;AAED,QAAA,OAAOC,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACc,KAAK;AAAE,MAAA;QACtBsB,gBAAgB,CAACC,YAAY,GAAGZ,qBAAqB,CACnDS,MAAM,EACNC,YACF,CAAC;AAED,QAAA,OAAOC,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACQ,YAAY;AAAE,MAAA;QAC7B4B,gBAAgB,CAACE,MAAM,GAAG,IAAI;AAC9BF,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACY,MAAM;AAEtD,QAAA,OAAON,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACO,QAAQ;AAAE,MAAA;AACzB6B,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACG,YAAY;AAEnD,QAAA,OAAOD,gBAAgB;AACzB;IAEA,KAAKpC,WAAW,CAACS,cAAc;AAAE,MAAA;QAC/B2B,gBAAgB,CAACE,MAAM,GAAG,IAAI;AAC9BF,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACa,YAAY;AAE5D,QAAA,OAAOP,gBAAgB;AACzB;IACA,KAAKpC,WAAW,CAACe,WAAW;AAAE,MAAA;AAC5BqB,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACc,QAAQ;AAExD,QAAA,OAAOR,gBAAgB;AACzB;AACA,IAAA;AACE,MAAA,OAAO,IAAI;AACf;AACF,CAAC;;AC1DD,IAAMS,aAAa,GAAG,SAAhBA,aAAaA,CAAAxD,IAAA,EAAoB;AAAA,EAAA,IAAdyD,OAAO,GAAAzD,IAAA,CAAPyD,OAAO;AAC9B,EAAA,IAAAC,SAAA,GAAgCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAxCI,IAAAA,QAAQ,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,WAAW,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC5B,EAAA,IAAAI,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMC,WAAW,GAAGV,OAAO,CAACzB,KAAK,IAAI,EAAE;AACvC,EAAA,IAAMoC,UAAU,GACdN,QAAQ,IAAIK,WAAW,CAACE,MAAM,GAAG,CAAC,GAAGF,WAAW,GAAGA,WAAW,CAACG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;AAE5E,EAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,KAAK,EAAA;AAAA,IAAA,OACpBA,KAAK,GACDN,CAAC,CAAC,uBAAuB,EAAE;MACzBO,IAAI,EAAEP,CAAC,CAAC,wBAAwB;AAClC,KAAC,CAAC,GACFA,CAAC,CAAC,wBAAwB,CAAC;AAAA,GAAA;EAEjC,IAAMQ,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAI7B,MAAM,EAAEC,YAAY,EAAK;AAAA,IAAA,IAAA6B,qBAAA;AACnD,IAAA,IAAAC,KAAA,GAAAD,CAAAA,qBAAA,GACE/B,qBAAqB,CAACC,MAAM,EAAEC,YAAY,CAAC,cAAA6B,qBAAA,KAAA,KAAA,CAAA,GAAAA,qBAAA,GAAI,EAAE;MAD3C3B,YAAY,GAAA4B,KAAA,CAAZ5B,YAAY;MAAEC,MAAM,GAAA2B,KAAA,CAAN3B,MAAM;AAG5B,IAAA,IACEH,YAAY,CAACK,IAAI,KAAKxC,WAAW,CAACY,WAAW,IAC7CuB,YAAY,CAACK,IAAI,KAAKxC,WAAW,CAACa,oBAAoB,EACtD;AACA,MAAA,IAAMM,MAAM,GAAG+C,KAAK,CAClB,OAAO,EACP/B,YAAY,CAACJ,eAAe,CAACoC,MAAM,CAAC,UAAAC,KAAA,EAAA;AAAA,QAAA,IAAG/C,KAAK,GAAA+C,KAAA,CAAL/C,KAAK;QAAA,OAC1Ca,MAAM,CAACJ,QAAQ,CAACT,KAAK,CAACkB,QAAQ,CAAClB,KAAK,CAAC;AAAA,OACvC,CACF,CAAC;MAED,oBACE3B,GAAA,CAACuB,iBAAiB,EAAA;AACVE,QAAAA,MAAM,EAANA,MAAM;AACZD,QAAAA,SAAS,EAAEqC,CAAC,CAAC,uBAAuB,EAAE;AAAEO,UAAAA,IAAI,EAAE;SAAI;AAAE,OACrD,CAAC;AAEN;AAEA,IAAA,IAAI,CAACzB,YAAY,EAAE,OAAO,IAAI;IAE9B,IAAI,CAACC,MAAM,EAAE;AACX,MAAA,IAAM+B,gBAAgB,GACpBlC,YAAY,CAACK,IAAI,KAAKxC,WAAW,CAACe,WAAW,GACzCwC,CAAC,CAAC,sBAAsB,CAAC,GACzBA,CAAC,CAAC,sBAAsB,CAAC;MAE/B,IAAMrC,SAAS,GAAGoD,YAAY,CAAC;AAC7BD,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBE,QAAAA,aAAa,EAAEpC;AACjB,OAAC,CAAC;MAEF,oBACE3C,IAAA,CAAAC,QAAA,EAAA;QAAAF,QAAA,EAAA,cACEG,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;AAAAP,UAAAA,QAAA,EAEd2B;AAAS,SACA,CAAC,eACbxB,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;UAAAP,QAAA,EAEhB8C,YAAY,KAAZA,IAAAA,IAAAA,YAAY,uBAAZA,YAAY,CAAEb,WAAW;AAAE,SAClB,CAAC;AAAA,OACb,CAAC;AAEP;AAEA,IAAA,OAAOa,YAAY,CAACjB,GAAG,CAAC,UAACC,KAAK,EAAEwC,KAAK,EAAA;AAAA,MAAA,oBACnCrE,IAAA,CAAA,KAAA,EAAA;AAAKI,QAAAA,SAAS,EAAC,WAAW;QAAAL,QAAA,EAAA,cACxBG,GAAA,CAACC,UAAU,EAAA;AAAaE,UAAAA,KAAK,EAAC,IAAI;AAACC,UAAAA,MAAM,EAAC,UAAU;AAAAP,UAAAA,QAAA,EACjD8B;SADcwC,EAAAA,KAEL,CAAC,EACZA,KAAK,KAAKxB,YAAY,CAACqB,MAAM,GAAG,CAAC,IAAI,IAAI;AAAA,OAAA,EAJZG,KAK3B,CAAC;AAAA,KACP,CAAC;GACH;AAED,EAAA,IAAMW,YAAY,GAAG,SAAfA,YAAYA,CAAGtC,MAAM,EAAI;IAC7B,IAAMC,YAAY,GAAGN,MAAM,CAAC;MAAER,KAAK,EAAEa,MAAM,CAACuC;AAAK,KAAC,EAAE3B,OAAO,CAAC4B,aAAa,CAAC;AAC1E,IAAA,IAAI,CAACvC,YAAY,EAAE,OAAO,IAAI;IAE9B,oBACE3C,IAAA,CAAAC,QAAA,EAAA;MAAAF,QAAA,EAAA,cACEG,GAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;QAAAP,QAAA,EAEhB4C,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAEH,KAAK,CAACR,WAAW;AAAE,OACxB,CAAC,EACZuC,kBAAkB,CAAC7B,MAAM,EAAEC,YAAY,CAAC;AAAA,KACzC,CAAC;GAEN;EAED,oBACE3C,IAAA,CAACmF,KAAI,EAAA;AAACrF,IAAAA,KAAK,EAAEiE,CAAC,CAAC,wBAAwB,CAAE;IAAAhE,QAAA,EAAA,CACtCkE,UAAU,CAACrC,GAAG,CAAC,UAACc,MAAM,EAAE2B,KAAK,EAAA;AAAA,MAAA,oBAC5BrE,IAAA,CAAA,KAAA,EAAA;AACEI,QAAAA,SAAS,EAAC,qCAAqC;AAC/C,QAAA,SAAA,EAAQ,oBAAoB;QAAAL,QAAA,EAAA,cAG5BG,GAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;UAAAP,QAAA,EAEdqE,QAAQ,CAACC,KAAK;AAAC,SACN,CAAC,EACZW,YAAY,CAACtC,MAAM,CAAC;OAThBA,EAAAA,MAAM,CAACuC,IAUT,CAAC;KACP,CAAC,EACDjB,WAAW,CAACE,MAAM,GAAG,CAAC,iBACrBhE,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,aAAa;MAAAL,QAAA,eAC1BG,GAAA,CAACkF,MAAM,EAAA;AACLC,QAAAA,IAAI,EAAE,CAAC1B,QAAQ,GAAG2B,IAAI,GAAGC,EAAG;AAC5BC,QAAAA,IAAI,EAAC,OAAO;AACZnF,QAAAA,KAAK,EAAC,MAAM;AACZmC,QAAAA,KAAK,EACH,CAACmB,QAAQ,GACLI,CAAC,CAAC,4BAA4B,CAAC,GAC/BA,CAAC,CAAC,4BAA4B,CACnC;QACD0B,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQ7B,WAAW,CAAC,UAAA8B,SAAS,EAAA;AAAA,YAAA,OAAI,CAACA,SAAS;WAAC,CAAA;AAAA;OACpD;AAAC,KACC,CACN;AAAA,GACG,CAAC;AAEX,CAAC;;;;ACtID,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAA9F,IAAA,EAAA;AAAA,EAAA,IAAME,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAAA,oBAC9BG,GAAA,CAACC,UAAU,EAAA;AAACC,IAAAA,SAAS,EAAC,wBAAwB;AAACC,IAAAA,KAAK,EAAC,IAAI;AAACC,IAAAA,MAAM,EAAC,UAAU;AAAAP,IAAAA,QAAA,EACxEA;AAAQ,GACC,CAAC;AAAA,CACd;AAED,IAAM6F,UAAU,GAAG,SAAbA,UAAUA,CAAAnB,KAAA,EAAA;AAAA,EAAA,IAAM1E,QAAQ,GAAA0E,KAAA,CAAR1E,QAAQ;EAAA,oBAC5BG,GAAA,CAACC,UAAU,EAAA;AAACC,IAAAA,SAAS,EAAC,wBAAwB;AAACC,IAAAA,KAAK,EAAC,IAAI;AAACC,IAAAA,MAAM,EAAC,QAAQ;AAAAP,IAAAA,QAAA,EACtEA;AAAQ,GACC,CAAC;AAAA,CACd;AAED,IAAM8F,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAjB,KAAA,EAKhB;AAAA,EAAA,IAJJkB,UAAU,GAAAlB,KAAA,CAAVkB,UAAU;IACVC,gBAAgB,GAAAnB,KAAA,CAAhBmB,gBAAgB;IAAAC,oBAAA,GAAApB,KAAA,CAChBqB,cAAc;AAAdA,IAAAA,cAAc,GAAAD,oBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAE,cAAA,GAAAtB,KAAA,CACnBuB,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,cAAA;AAEf,EAAA,IAAA3C,SAAA,GAAgCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAxCI,IAAAA,QAAQ,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,WAAW,GAAAH,UAAA,CAAA,CAAA,CAAA;AAE5B,EAAA,IAAAI,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMqC,cAAc,GAAGN,UAAU,CAACjE,KAAK;AACvC,EAAA,IAAMwE,aAAa,GACjB1C,QAAQ,IAAIyC,cAAc,CAAClC,MAAM,GAAG3D,uBAAuB,GACvD6F,cAAc,GACdA,cAAc,CAACjC,KAAK,CAAC,CAAC,EAAE5D,uBAAuB,CAAC;EAEtD,IAAM+F,iBAAiB,GAAAC,aAAA,CAAAA,aAAA,CAAQC,EAAAA,EAAAA,WAAW,CAAKP,EAAAA,cAAc,CAAE;AAE/D,EAAA,IAAMQ,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,QAAQ,EAAA;AAAA,IAAA,OACjCA,QAAQ,KAAK,aAAa,GAAG,IAAI,GAAG,KAAK;AAAA,GAAA;EAE3C,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,SAAS,EAAEC,eAAe,EAAK;AAC5D,IAAA,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC9D,QAAQ,CAAC8D,eAAe,CAAC7D,IAAI,CAAC,EAAE;AAAA,MAAA,IAAA8D,qBAAA;MACzE,oBACE5G,GAAA,CAACyF,YAAY,EAAA;AAAA5F,QAAAA,QAAA,EAAA+G,CAAAA,qBAAA,GAAEF,SAAS,CAACtE,QAAQ,CAACT,KAAK,MAAA,IAAA,IAAAiF,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAxBA,qBAAA,CAA0B9E,WAAW;AAAE,OAAe,CAAC;AAE1E;IAEA,IAAI6E,eAAe,CAAC7D,IAAI,KAAK,MAAM,IAAI6D,eAAe,CAAC7D,IAAI,KAAK,MAAM,EAAE;AACtE,MAAA,IAAA+D,mBAAA,GAAgDH,SAAS,CAACtE,QAAQ;QAAnD0E,IAAI,GAAAD,mBAAA,CAAXlF,KAAK;QAAQmB,IAAI,GAAA+D,mBAAA,CAAJ/D,IAAI;QAAEiE,MAAM,GAAAF,mBAAA,CAANE,MAAM;QAAEC,QAAQ,GAAAH,mBAAA,CAARG,QAAQ;MAE3C,oBACEhH,GAAA,CAACyF,YAAY,EAAA;QAAA5F,QAAA,EACVoH,yBAAyB,CAAC;AAAEH,UAAAA,IAAI,EAAJA,IAAI;AAAEC,UAAAA,MAAM,EAANA,MAAM;AAAEjE,UAAAA,IAAI,EAAJA,IAAI;AAAEkE,UAAAA,QAAQ,EAARA;SAAU;AAAC,OAChD,CAAC;AAEnB;AAEA,IAAA,IAAIL,eAAe,CAAC7D,IAAI,KAAK,UAAU,EAAE;AAAA,MAAA,IAAAoE,sBAAA;MACvC,oBACElH,GAAA,CAACmH,OAAO,EAAA;AAACC,QAAAA,OAAO,EAAAF,CAAAA,sBAAA,GAAER,SAAS,CAACtE,QAAQ,CAACT,KAAK,MAAA,IAAA,IAAAuF,sBAAA,KAAxBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,sBAAA,CAA0BpF,WAAW,EAAG;QAAAjC,QAAA,eACxDG,GAAA,CAACyF,YAAY,EAAA;UAAA5F,QAAA,EAAEgE,CAAC,CAAC,wBAAwB;SAAgB;AAAC,OACnD,CAAC;AAEd;IAEA,IACE8C,eAAe,CAAC7D,IAAI,KAAK,cAAc,IACvC6D,eAAe,CAAC7D,IAAI,KAAK,uBAAuB,EAChD;AACA,MAAA,IAAMrB,MAAM,GAAG+C,KAAK,CAClB,OAAO,EACPmC,eAAe,CAACtE,eAAe,CAACoC,MAAM,CAAC,UAAA4C,KAAA,EAAA;AAAA,QAAA,IAAG1F,KAAK,GAAA0F,KAAA,CAAL1F,KAAK;QAAA,OAC7C+E,SAAS,CAACtE,QAAQ,CAACX,MAAM,CAACoB,QAAQ,CAAClB,KAAK,CAAC;AAAA,OAC3C,CACF,CAAC;MAED,oBACE3B,GAAA,CAACuB,iBAAiB,EAAA;AACVE,QAAAA,MAAM,EAANA,MAAM;QACZD,SAAS,EAAEqC,CAAC,CAAC,sBAAsB;AAAE,OACtC,CAAC;AAEN;IAEA,IAAI,CAAC,qBAAqB,CAAC,CAAChB,QAAQ,CAAC8D,eAAe,CAAC7D,IAAI,CAAC,EAAE;MAC1D,oBACE9C,GAAA,CAACuB,iBAAiB,EAAA;AAChBC,QAAAA,SAAS,EAAEqC,CAAC,CAAC,sBAAsB,CAAE;AACrCpC,QAAAA,MAAM,EAAEiF,SAAS,CAACtE,QAAQ,CAACX;AAAO,OACnC,CAAC;AAEN;AAEA,IAAA,IACEkF,eAAe,CAAC7D,IAAI,KAAK,QAAQ,IACjC6D,eAAe,CAAC7D,IAAI,KAAK,OAAO,IAChC6D,eAAe,CAAC7D,IAAI,KAAK,UAAU,EACnC;MACA,oBACE9C,GAAA,CAACyF,YAAY,EAAA;AAAA5F,QAAAA,QAAA,EACVkC,qBAAqB,CAAC2E,SAAS,EAAEC,eAAe;AAAC,OACtC,CAAC;AAEnB;AAEA,IAAA,OAAO,IAAI;GACZ;AAED,EAAA,IAAMW,eAAe,GAAG,SAAlBA,eAAeA,CAAGZ,SAAS,EAAI;AAAA,IAAA,IAAAa,qBAAA;IACnC,IAAMZ,eAAe,GAAGxE,MAAM,CAC5B;MAAER,KAAK,EAAE+E,SAAS,CAACc;KAAO,EAC1B3B,gBACF,CAAC;AACD,IAAA,IAAI,CAACc,eAAe,EAAE,OAAO,IAAI;AAEjC,IAAA,IAAMc,aAAa,GAAAF,CAAAA,qBAAA,GAAGnB,iBAAiB,CAACM,SAAS,CAACgB,IAAI,CAAC,cAAAH,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjCA,qBAAA,CAAmCzF,WAAW,EAAE;IAEtE,oBACEhC,IAAA,CAAAC,QAAA,EAAA;MAAAF,QAAA,EAAA,cACEG,GAAA,CAACyF,YAAY,EAAA;QAAA5F,QAAA,EAAE8G,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAe,CAAErE,KAAK,CAACR,WAAW;AAAE,OAAe,CAAC,eACnE9B,GAAA,CAACyF,YAAY,EAAA;AAAA5F,QAAAA,QAAA,EAAE4H;AAAa,OAAe,CAAC,EAC3ChB,qBAAqB,CAACC,SAAS,EAAEC,eAAe,CAAC;AAAA,KAClD,CAAC;GAEN;EAED,oBACE7G,IAAA,CAAAC,QAAA,EAAA;AAAAF,IAAAA,QAAA,gBACEG,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,MAAM;MAAAL,QAAA,EAClBsG,aAAa,CAACzE,GAAG,CAAC,UAACgF,SAAS,EAAEvC,KAAK,EAAA;AAAA,QAAA,oBAClCrE,IAAA,CAAA,KAAA,EAAA;AACEI,UAAAA,SAAS,EAAC,qCAAqC;UAAAL,QAAA,EAAA,CAG9C,CAACsE,KAAK,IAAI8B,QAAQ,iBACjBjG,GAAA,CAAC0F,UAAU,EAAA;AAAA7F,YAAAA,QAAA,EACRgE,CAAC,CAAC,uBAAuB,EAAE;AAAEO,cAAAA,IAAI,EAAE;aAAI;WAC9B,CACb,EACA,CAAC,CAACD,KAAK,iBACNnE,GAAA,CAACyF,YAAY,EAAA;AAAA5F,YAAAA,QAAA,EACV0G,kBAAkB,CAACG,SAAS,CAACF,QAAQ;AAAC,WAC3B,CACf,eACDxG,GAAA,CAAC0F,UAAU,EAAA;YAAA7F,QAAA,EAAEgE,CAAC,CAAC,wBAAwB;AAAC,WAAa,CAAC,EACrDyD,eAAe,CAACZ,SAAS,CAAC;SAbtBA,EAAAA,SAAS,CAACiB,EAcZ,CAAC;OACP;KACE,CAAC,EACLzB,cAAc,CAAClC,MAAM,GAAG,CAAC,iBACxBhE,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,aAAa;MAAAL,QAAA,eAC1BG,GAAA,CAACkF,MAAM,EAAA;AACLC,QAAAA,IAAI,EAAE,CAAC1B,QAAQ,GAAG2B,IAAI,GAAGC,EAAG;AAC5BC,QAAAA,IAAI,EAAC,OAAO;AACZnF,QAAAA,KAAK,EAAC,MAAM;AACZmC,QAAAA,KAAK,EACH,CAACmB,QAAQ,GACLI,CAAC,CAAC,4BAA4B,CAAC,GAC/BA,CAAC,CAAC,4BAA4B,CACnC;QACD0B,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQ7B,WAAW,CAAC,UAAA8B,SAAS,EAAA;AAAA,YAAA,OAAI,CAACA,SAAS;WAAC,CAAA;AAAA;OACpD;AAAC,KACC,CACN;AAAA,GACD,CAAC;AAEP,CAAC;;ACtKD,IAAMoC,YAAY,GAAG,SAAfA,YAAYA,CAAAjI,IAAA,EAA0C;AAAA,EAAA,IAAAkI,qBAAA;AAAA,EAAA,IAApCC,MAAM,GAAAnI,IAAA,CAANmI,MAAM;IAAEC,SAAS,GAAApI,IAAA,CAAToI,SAAS;IAAEnC,UAAU,GAAAjG,IAAA,CAAViG,UAAU;AACnD,EAAA,IAAAjC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EAET,IAAMmE,UAAU,GAAGxD,KAAK,CAAC,MAAM,EAAEsD,MAAM,CAACnG,KAAK,IAAI,EAAE,CAAC;EACpD,IAAMsG,SAAS,GAAGH,MAAM,CAACI,YAAY,CAACzD,MAAM,CAAC,UAAA0D,KAAK,EAAA;IAAA,OAChDH,UAAU,KAAVA,IAAAA,IAAAA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAEnF,QAAQ,CAACsF,KAAK,CAACxG,KAAK,CAAC;AAAA,GACnC,CAAC;EAED,IAAMyG,gBAAgB,GAAGjG,MAAM,CAC7B;IAAER,KAAK,EAAEoG,SAAS,CAACpG;AAAM,GAAC,EAC1BoG,SAAS,CAACM,OACZ,CAAC;EAED,oBACEvI,IAAA,CAACmF,KAAI,EAAA;AAACrF,IAAAA,KAAK,EAAEiE,CAAC,CAAC,wBAAwB,CAAE;AAAAhE,IAAAA,QAAA,gBACvCC,IAAA,CAAA,KAAA,EAAA;AACEI,MAAAA,SAAS,EAAC,gCAAgC;AAC1C,MAAA,SAAA,EAAQ,uBAAuB;MAAAL,QAAA,EAAA,CAE9BoI,SAAS,CAACvG,GAAG,CAAC,UAACyG,KAAK,EAAEhE,KAAK,EAAA;AAAA,QAAA,oBAC1BrE,IAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,cAAc;AAAAL,UAAAA,QAAA,GAC1B,CAACsE,KAAK,iBACLnE,GAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,gCAAgC;AAC1CC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;YAAAP,QAAA,EAEdgE,CAAC,CAAC,wBAAwB;WACjB,CACb,EACA,CAAC,CAACM,KAAK,iBACNnE,GAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,gCAAgC;AAC1CC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;YAAAP,QAAA,EAEdgE,CAAC,CAAC,sBAAsB;AAAC,WAChB,CACb,eACD7D,GAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAEhBsI,KAAK,CAAC7F,KAAK,CAACR,WAAW;AAAE,WAChB,CAAC;AAAA,SAAA,EAzBoBqC,KA0B9B,CAAC;AAAA,OACP,CAAC,eACFnE,GAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,QAAQ;QAAAP,QAAA,EAEdgE,CAAC,CAAC,sBAAsB;AAAC,OAChB,CAAC,eACb7D,GAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAEhBuI,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,KAAA,CAAA,IAAA,CAAAP,qBAAA,GAAhBO,gBAAgB,CAAE9F,KAAK,cAAAuF,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAvBA,qBAAA,CAAyB/F,WAAW;AAAE,OAC7B,CAAC;AAAA,KACV,CAAC,eACN9B,GAAA,CAAC2F,gBAAgB,EAAA;AACTC,MAAAA,UAAU,EAAVA,UAAU;MAChBC,gBAAgB,EAAED,UAAU,CAACC,gBAAiB;MAC9CE,cAAc,EAAEH,UAAU,CAAC0C;AAAM,KAClC,CAAC;AAAA,GACE,CAAC;AAEX,CAAC;;AClED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA5I,IAAA,EAAoD;AAAA,EAAA,IAA9C6I,SAAS,GAAA7I,IAAA,CAAT6I,SAAS;IAAEC,WAAW,GAAA9I,IAAA,CAAX8I,WAAW;IAAEC,MAAM,GAAA/I,IAAA,CAAN+I,MAAM;IAAEC,OAAO,GAAAhJ,IAAA,CAAPgJ,OAAO;AAC5D,EAAA,IAAAhF,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAA+E,gBAAA,GAAAC,eAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,uBAAuB,EAAAD,KAAA,CAAA,yBAAA,CAAA;AAAEE,QAAAA,eAAe,EAAAF,KAAA,CAAA,iBAAA;AAAA,OAAA;AAAA,KAAA,EAAAG,OAAA,CAAA;IAAxCF,uBAAuB,GAAAH,gBAAA,CAAvBG,uBAAuB;IAAEC,eAAe,GAAAJ,gBAAA,CAAfI,eAAe;EAEhD,oBACEhJ,GAAA,CAACkJ,IAAI,EAAA;AAAOP,IAAAA,OAAO,EAAPA,OAAO;IAAID,MAAM,EAAEA,MAAM,IAAIM,eAAgB;IAAAnJ,QAAA,EACtD2I,SAAS,gBACRxI,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,gDAAgD;AAAAL,MAAAA,QAAA,eAC7DG,GAAA,CAACmJ,OAAO,EAAE,EAAA;AAAC,KACR,CAAC,gBAENrJ,IAAA,CAAAC,QAAA,EAAA;AAAAF,MAAAA,QAAA,EACEG,cAAAA,GAAA,CAACkJ,IAAI,CAACE,MAAM,EAAA;AAAAvJ,QAAAA,QAAA,eACVC,IAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,2CAA2C;UAAAL,QAAA,EAAA,cACxDG,GAAA,CAACC,UAAU,EAAA;AAACC,YAAAA,SAAS,EAAC,cAAc;AAACC,YAAAA,KAAK,EAAC,IAAI;AAACC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAC9D4I,WAAW,CAAC1D,IAAI,CAACpD;AAAK,WACb,CAAC,eACb3B,GAAA,CAACqJ,YAAY,EAAA;AACXC,YAAAA,aAAa,EAAE;AAAEC,cAAAA,QAAQ,EAAE;aAAU;AACrCC,YAAAA,SAAS,EAAET;AAAwB,WACpC,CAAC;SACC;AAAC,OACK,CAAC,eACd/I,GAAA,CAACkJ,IAAI,CAACO,IAAI,EAAA;AAAA5J,QAAAA,QAAA,eACRC,IAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,QAAQ;AAAAL,UAAAA,QAAA,EACpB4I,CAAAA,WAAW,CAACiB,MAAM,iBACjB1J,GAAA,CAAA,KAAA,EAAA;AAAKE,YAAAA,SAAS,EAAC,MAAM;AAAAL,YAAAA,QAAA,eACnBC,IAAA,CAAA,KAAA,EAAA;AAAKI,cAAAA,SAAS,EAAC,gBAAgB;cAAAL,QAAA,EAAA,cAC7BG,GAAA,CAACC,UAAU,EAAA;AACTC,gBAAAA,SAAS,EAAC,mCAAmC;AAC7CC,gBAAAA,KAAK,EAAC,IAAI;AACVC,gBAAAA,MAAM,EAAC,UAAU;AAAAP,gBAAAA,QAAA,EAEhB4I,WAAW,CAACiB,MAAM,CAACpH;AAAK,eACf,CAAC,eACbtC,GAAA,CAACC,UAAU,EAAA;AACTC,gBAAAA,SAAS,EAAC,mCAAmC;AAC7CC,gBAAAA,KAAK,EAAC,IAAI;AACVC,gBAAAA,MAAM,EAAC,QAAQ;AAAAP,gBAAAA,QAAA,EAEd4I,WAAW,CAACiB,MAAM,CAAC/H;AAAK,eACf,CAAC;aACV;AAAC,WACH,CACN,EACA8G,WAAW,CAACX,MAAM,IAAI6B,UAAU,CAAClB,WAAW,CAACX,MAAM,CAAC,gBACnD9H,GAAA,CAAC4H,YAAY,EAAA;YACXhC,UAAU,EAAE6C,WAAW,CAAC7C,UAAW;YACnCkC,MAAM,EAAEW,WAAW,CAACX,MAAO;YAC3BC,SAAS,EAAEU,WAAW,CAACV;AAAU,WAClC,CAAC,gBAEF/H,GAAA,CAACiF,KAAI,EAAA;AAACrF,YAAAA,KAAK,EAAEiE,CAAC,CAAC,wBAAwB,CAAE;YAAAhE,QAAA,eACvCG,GAAA,CAAC2F,gBAAgB,EAAA;AACfE,cAAAA,gBAAgB,EAAE4C,WAAW,CAAC7C,UAAU,CAACC,gBAAiB;AAC1DE,cAAAA,cAAc,EAAE0C,WAAW,CAAC7C,UAAU,CAAC0C,KAAM;cAC7C1C,UAAU,EAAE6C,WAAW,CAAC7C,UAAW;AACnCK,cAAAA,QAAQ,EAAE;aACX;AAAC,WACE,CACP,eACDjG,GAAA,CAACmD,aAAa,EAAA;YAACC,OAAO,EAAEqF,WAAW,CAACrF;AAAQ,WAAE,CAAC;SAC5C;AAAC,OACG,CAAC;KACZ;AACH,GACG,CAAC;AAEX;;;;"}
@@ -360,7 +360,7 @@ var CannedResponsesPane = function CannedResponsesPane(_ref) {
360
360
  return /*#__PURE__*/jsxRuntime.jsxs(formik.Form, {
361
361
  children: [/*#__PURE__*/jsxRuntime.jsx(Pane.Body, {
362
362
  children: /*#__PURE__*/jsxRuntime.jsx("div", {
363
- className: "flex w-full flex-grow flex-col space-y-4",
363
+ className: "flex w-full grow flex-col space-y-4",
364
364
  children: areDropdownListsLoading ? /*#__PURE__*/jsxRuntime.jsx("div", {
365
365
  className: "flex h-full w-full items-center justify-center",
366
366
  children: /*#__PURE__*/jsxRuntime.jsx(Spinner, {})
@@ -1 +1 @@
1
- {"version":3,"file":"CannedResponsesPane.js","sources":["../../app/javascript/src/components/CannedResponsesPane/constants.js","../../app/javascript/src/components/CannedResponsesPane/Action.jsx","../../app/javascript/src/components/CannedResponsesPane/utils.jsx","../../app/javascript/src/components/CannedResponsesPane/Body.jsx","../../app/javascript/src/components/CannedResponsesPane/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst CANNED_RESPONSE_INPUT_ACTION_NAMES = [\n \"assign_agent\",\n \"assign_group\",\n \"remove_tags\",\n \"add_tags\",\n \"change_priority\",\n \"change_status\",\n];\n\nexport const CANNED_RESPONSE_RICH_TEXT_ACTION_NAME = [\"add_note\", \"add_reply\"];\n\nexport const CANNED_RESPONSE_ACTION_LABELS = [\n ...CANNED_RESPONSE_INPUT_ACTION_NAMES,\n ...CANNED_RESPONSE_RICH_TEXT_ACTION_NAME,\n].reduce(\n (labelObject, actionName) => ({\n ...labelObject,\n [actionName]: `neetoRules.labels.${actionName}`,\n }),\n {}\n);\n\nexport const ACTION_OPTIONS = {\n addNote: \"add_note\",\n addCommentOrReply: \"add_reply\",\n addTags: \"add_tags\",\n removeTags: \"remove_tags\",\n changePriority: \"change_priority\",\n changeStatus: \"change_status\",\n assignAgent: \"assign_agent\",\n assignGroup: \"assign_group\",\n assignTicketFieldValue: \"assign_field_value\",\n};\n\nexport const ACTION_TYPES_MAP = {\n single_option: \"dropdown\",\n multi_option: \"multiSelect\",\n checkbox: \"dropdown\",\n integer: \"number\",\n};\n\nexport const DEFAULT_CHECKBOX_OPTIONS = [\n { label: t(\"neetoRules.labels.checked\"), value: true },\n { label: t(\"neetoRules.labels.unchecked\"), value: false },\n];\n","import { Editor } from \"neetoeditor\";\nimport { Input, Label } from \"neetoui\";\n\nconst Action = ({ id, label, setFieldValue, value, richText = false }) => {\n if (richText) {\n return (\n <div className=\"mb-4 space-y-2\" key={id}>\n <Label>{label}</Label>\n <Editor\n initialValue={value}\n onChange={newValue => setFieldValue(id, newValue)}\n />\n </div>\n );\n }\n\n return (\n <Input\n {...{ label }}\n disabled\n className=\"mb-4\"\n key={id}\n value={value.replace(/_/g, \" \")}\n />\n );\n};\n\nexport default Action;\n","import { t } from \"i18next\";\nimport { findBy } from \"neetocist\";\nimport { join } from \"ramda\";\n\nimport Action from \"./Action\";\nimport {\n ACTION_OPTIONS,\n ACTION_TYPES_MAP,\n CANNED_RESPONSE_ACTION_LABELS,\n CANNED_RESPONSE_RICH_TEXT_ACTION_NAME,\n DEFAULT_CHECKBOX_OPTIONS,\n} from \"./constants\";\n\nconst renderActionValue = ({ actionType, displayValue }) => {\n if (actionType === \"multiSelect\") {\n return join(\", \", displayValue);\n }\n\n return displayValue;\n};\n\nconst renderDefaultAction = ({\n id,\n name,\n displayValue,\n setFieldValue,\n trixBody,\n}) => {\n const label = t(CANNED_RESPONSE_ACTION_LABELS[name]);\n\n if (CANNED_RESPONSE_RICH_TEXT_ACTION_NAME.includes(name)) {\n return (\n <Action {...{ id, label, setFieldValue }} richText value={trixBody} />\n );\n }\n\n return <Action {...{ id, label }} value={displayValue} />;\n};\n\nconst renderCustomAction = ({\n id,\n actionableId,\n displayValue,\n actionOptions,\n setFieldValue,\n}) => {\n const actionName = `ticket_field_${actionableId}`;\n const actionOption = findBy({ value: actionName }, actionOptions);\n const label = actionOption?.label;\n const actionType = actionOption?.type;\n const actionValue = renderActionValue({ actionType, displayValue });\n const isRichText = actionType === \"rich-text\";\n\n return (\n <Action\n {...{ id, label, setFieldValue }}\n richText={isRichText}\n value={actionValue}\n />\n );\n};\n\nconst getActionDropdown = ({ status, teams, members, tags }) => ({\n change_status: status || [],\n assign_group: teams || [],\n assign_agent: members || [],\n add_tags: tags || [],\n remove_tags: tags || [],\n});\n\nconst getActionType = kind => ACTION_TYPES_MAP[kind] || kind;\n\nconst getDropdownOptions = (kind, optionsAttribute) => {\n if ([\"single_option\", \"multi_option\"].includes(kind)) {\n return optionsAttribute.map(({ id, label }) => ({\n label,\n value: id,\n }));\n } else if (kind === \"checkbox\") {\n return [...DEFAULT_CHECKBOX_OPTIONS];\n }\n\n return [];\n};\n\nexport const renderAction = ({\n name,\n id,\n actionableId,\n displayValue,\n actionOptions = [],\n setFieldValue,\n trixBody = \"\",\n}) => {\n const isCustomAction = name === ACTION_OPTIONS.assignTicketFieldValue;\n\n return isCustomAction\n ? renderCustomAction({\n id,\n actionableId,\n displayValue,\n actionOptions,\n setFieldValue,\n })\n : renderDefaultAction({ id, name, displayValue, setFieldValue, trixBody });\n};\n\nexport const buildActionOptions = ({\n dropdownOptions,\n actionNameOptions,\n variables,\n}) => {\n const actionDropdown = getActionDropdown(dropdownOptions);\n const options = actionNameOptions.map(option => {\n const dropdownOptions = actionDropdown[option.value];\n\n return dropdownOptions ? { ...option, dropdownOptions } : option;\n });\n\n const fields =\n (dropdownOptions.fields || []).filter(\n field => !field.kind.startsWith(\"system_\")\n ) || [];\n\n const fieldOptions = fields.map(\n ({ id, name, kind, data: attributeOptions }) => ({\n label: t(\"neetoRules.common.assign\", { what: name }),\n value: `ticket_field_${id}`,\n type: getActionType(kind),\n variables,\n defaultData: { actionable_id: id, actionable_type: \"Field\" },\n dropdownOptions: getDropdownOptions(kind, attributeOptions),\n })\n );\n\n return [...options, ...fieldOptions];\n};\n","import { Spinner } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { CANNED_RESPONSE_RICH_TEXT_ACTION_NAME } from \"./constants\";\nimport { buildActionOptions, renderAction } from \"./utils\";\n\nconst Body = ({\n actionNameOptions,\n cannedResponse,\n dropdownList,\n isLoading,\n setFieldValue,\n variables,\n}) => {\n const { t } = useTranslation();\n\n const actionOptions = buildActionOptions({\n dropdownOptions: dropdownList,\n actionNameOptions,\n variables,\n });\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n const sortedActions = cannedResponse.actions.sort((a, b) => {\n if (CANNED_RESPONSE_RICH_TEXT_ACTION_NAME.includes(a.name)) {\n return 1;\n } else if (CANNED_RESPONSE_RICH_TEXT_ACTION_NAME.includes(b.name)) {\n return -1;\n }\n\n return 0;\n });\n\n return (\n <div className=\"overflow-y-auto\">\n {not(cannedResponse)\n ? t(\"neetoRules.common.preview\")\n : sortedActions?.map(action =>\n renderAction({ ...action, actionOptions, setFieldValue })\n )}\n </div>\n );\n};\nexport default Body;\n","import { useRef, useState } from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { isPresent, toLabelAndValue } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { Pane, Spinner, Typography } from \"neetoui\";\nimport { ActionBlock, Select } from \"neetoui/formik\";\nimport { omit, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Body from \"./Body\";\n\nconst CannedResponsesPane = ({\n actionNameOptions,\n areDropdownListsLoading,\n dropdownList,\n isCannedResponsePaneOpen,\n isLoadingPreview,\n macros,\n onApply,\n onCancel,\n previewCannedResponses,\n previewParams,\n variables = [],\n}) => {\n const [cannedResponse, setCannedResponse] = useState(null);\n\n const initialFocusRef = useRef();\n\n const { t } = useTranslation();\n\n const options = macros?.map(({ name, id }) => ({ label: name, value: id }));\n\n const handleSelect = async ({ value }) => {\n await previewCannedResponses(\n { id: value, payload: previewParams },\n { onSuccess: response => setCannedResponse(values(response || {})[0]) }\n );\n };\n\n const handleSubmit = values => {\n onApply({\n cannedResponse,\n setCannedResponse,\n onSettled: onCancel,\n updatedValues: omit([\"cannedResponse\"], values),\n });\n };\n\n const handleCancel = () => {\n onCancel();\n setCannedResponse(null);\n };\n\n return (\n <Pane\n {...{ initialFocusRef }}\n isOpen={isCannedResponsePaneOpen}\n onClose={handleCancel}\n >\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoRules.cannedResponses.title\", PLURAL)}\n </Typography>\n </Pane.Header>\n <Formik\n initialValues={{ cannedResponse: toLabelAndValue(null) }}\n onSubmit={handleSubmit}\n >\n {({ setFieldValue, isSubmitting }) => (\n <Form>\n <Pane.Body>\n <div className=\"flex w-full flex-grow flex-col space-y-4\">\n {areDropdownListsLoading ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n <div className=\"flex flex-col gap-y-4\">\n <Select\n {...{ options }}\n isSearchable\n label={t(\"neetoRules.labels.selectCannedResponse\")}\n name=\"cannedResponse\"\n ref={initialFocusRef}\n onChange={value => {\n setFieldValue(\"cannedResponse\", value);\n handleSelect(value);\n }}\n />\n {isPresent(cannedResponse) && (\n <div className=\"flex flex-col\">\n <Body\n {...{\n actionNameOptions,\n cannedResponse,\n dropdownList,\n setFieldValue,\n variables,\n }}\n isLoading={isLoadingPreview}\n />\n </div>\n )}\n </div>\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: handleCancel }}\n isSubmitting={isSubmitting || isLoadingPreview}\n submitButtonProps={{ label: t(\"neetoRules.common.apply\") }}\n />\n </Pane.Footer>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default CannedResponsesPane;\n"],"names":["CANNED_RESPONSE_INPUT_ACTION_NAMES","CANNED_RESPONSE_RICH_TEXT_ACTION_NAME","CANNED_RESPONSE_ACTION_LABELS","concat","reduce","labelObject","actionName","_objectSpread","_defineProperty","ACTION_OPTIONS","addNote","addCommentOrReply","addTags","removeTags","changePriority","changeStatus","assignAgent","assignGroup","assignTicketFieldValue","ACTION_TYPES_MAP","single_option","multi_option","checkbox","integer","DEFAULT_CHECKBOX_OPTIONS","label","t","value","Action","_ref","id","setFieldValue","_ref$richText","richText","_jsxs","className","children","_jsx","Label","Editor","initialValue","onChange","newValue","_createElement","Input","disabled","key","replace","renderActionValue","actionType","displayValue","join","renderDefaultAction","_ref2","name","trixBody","includes","renderCustomAction","_ref3","actionableId","actionOptions","actionOption","findBy","type","actionValue","isRichText","getActionDropdown","_ref4","status","teams","members","tags","change_status","assign_group","assign_agent","add_tags","remove_tags","getActionType","kind","getDropdownOptions","optionsAttribute","map","_ref5","_toConsumableArray","renderAction","_ref6","_ref6$actionOptions","_ref6$trixBody","isCustomAction","buildActionOptions","_ref7","dropdownOptions","actionNameOptions","variables","actionDropdown","options","option","fields","filter","field","startsWith","fieldOptions","_ref8","attributeOptions","data","what","defaultData","actionable_id","actionable_type","Body","cannedResponse","dropdownList","isLoading","_useTranslation","useTranslation","Spinner","sortedActions","actions","sort","a","b","not","action","CannedResponsesPane","areDropdownListsLoading","isCannedResponsePaneOpen","isLoadingPreview","macros","onApply","onCancel","previewCannedResponses","previewParams","_ref$variables","_useState","useState","_useState2","_slicedToArray","setCannedResponse","initialFocusRef","useRef","handleSelect","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","payload","onSuccess","response","values","stop","_x","apply","arguments","handleSubmit","onSettled","updatedValues","omit","handleCancel","Pane","isOpen","onClose","Header","Typography","style","weight","PLURAL","Formik","initialValues","toLabelAndValue","onSubmit","isSubmitting","Form","Select","isSearchable","ref","isPresent","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps"],"mappings":"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"}
1
+ {"version":3,"file":"CannedResponsesPane.js","sources":["../../app/javascript/src/components/CannedResponsesPane/constants.js","../../app/javascript/src/components/CannedResponsesPane/Action.jsx","../../app/javascript/src/components/CannedResponsesPane/utils.jsx","../../app/javascript/src/components/CannedResponsesPane/Body.jsx","../../app/javascript/src/components/CannedResponsesPane/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst CANNED_RESPONSE_INPUT_ACTION_NAMES = [\n \"assign_agent\",\n \"assign_group\",\n \"remove_tags\",\n \"add_tags\",\n \"change_priority\",\n \"change_status\",\n];\n\nexport const CANNED_RESPONSE_RICH_TEXT_ACTION_NAME = [\"add_note\", \"add_reply\"];\n\nexport const CANNED_RESPONSE_ACTION_LABELS = [\n ...CANNED_RESPONSE_INPUT_ACTION_NAMES,\n ...CANNED_RESPONSE_RICH_TEXT_ACTION_NAME,\n].reduce(\n (labelObject, actionName) => ({\n ...labelObject,\n [actionName]: `neetoRules.labels.${actionName}`,\n }),\n {}\n);\n\nexport const ACTION_OPTIONS = {\n addNote: \"add_note\",\n addCommentOrReply: \"add_reply\",\n addTags: \"add_tags\",\n removeTags: \"remove_tags\",\n changePriority: \"change_priority\",\n changeStatus: \"change_status\",\n assignAgent: \"assign_agent\",\n assignGroup: \"assign_group\",\n assignTicketFieldValue: \"assign_field_value\",\n};\n\nexport const ACTION_TYPES_MAP = {\n single_option: \"dropdown\",\n multi_option: \"multiSelect\",\n checkbox: \"dropdown\",\n integer: \"number\",\n};\n\nexport const DEFAULT_CHECKBOX_OPTIONS = [\n { label: t(\"neetoRules.labels.checked\"), value: true },\n { label: t(\"neetoRules.labels.unchecked\"), value: false },\n];\n","import { Editor } from \"neetoeditor\";\nimport { Input, Label } from \"neetoui\";\n\nconst Action = ({ id, label, setFieldValue, value, richText = false }) => {\n if (richText) {\n return (\n <div className=\"mb-4 space-y-2\" key={id}>\n <Label>{label}</Label>\n <Editor\n initialValue={value}\n onChange={newValue => setFieldValue(id, newValue)}\n />\n </div>\n );\n }\n\n return (\n <Input\n {...{ label }}\n disabled\n className=\"mb-4\"\n key={id}\n value={value.replace(/_/g, \" \")}\n />\n );\n};\n\nexport default Action;\n","import { t } from \"i18next\";\nimport { findBy } from \"neetocist\";\nimport { join } from \"ramda\";\n\nimport Action from \"./Action\";\nimport {\n ACTION_OPTIONS,\n ACTION_TYPES_MAP,\n CANNED_RESPONSE_ACTION_LABELS,\n CANNED_RESPONSE_RICH_TEXT_ACTION_NAME,\n DEFAULT_CHECKBOX_OPTIONS,\n} from \"./constants\";\n\nconst renderActionValue = ({ actionType, displayValue }) => {\n if (actionType === \"multiSelect\") {\n return join(\", \", displayValue);\n }\n\n return displayValue;\n};\n\nconst renderDefaultAction = ({\n id,\n name,\n displayValue,\n setFieldValue,\n trixBody,\n}) => {\n const label = t(CANNED_RESPONSE_ACTION_LABELS[name]);\n\n if (CANNED_RESPONSE_RICH_TEXT_ACTION_NAME.includes(name)) {\n return (\n <Action {...{ id, label, setFieldValue }} richText value={trixBody} />\n );\n }\n\n return <Action {...{ id, label }} value={displayValue} />;\n};\n\nconst renderCustomAction = ({\n id,\n actionableId,\n displayValue,\n actionOptions,\n setFieldValue,\n}) => {\n const actionName = `ticket_field_${actionableId}`;\n const actionOption = findBy({ value: actionName }, actionOptions);\n const label = actionOption?.label;\n const actionType = actionOption?.type;\n const actionValue = renderActionValue({ actionType, displayValue });\n const isRichText = actionType === \"rich-text\";\n\n return (\n <Action\n {...{ id, label, setFieldValue }}\n richText={isRichText}\n value={actionValue}\n />\n );\n};\n\nconst getActionDropdown = ({ status, teams, members, tags }) => ({\n change_status: status || [],\n assign_group: teams || [],\n assign_agent: members || [],\n add_tags: tags || [],\n remove_tags: tags || [],\n});\n\nconst getActionType = kind => ACTION_TYPES_MAP[kind] || kind;\n\nconst getDropdownOptions = (kind, optionsAttribute) => {\n if ([\"single_option\", \"multi_option\"].includes(kind)) {\n return optionsAttribute.map(({ id, label }) => ({\n label,\n value: id,\n }));\n } else if (kind === \"checkbox\") {\n return [...DEFAULT_CHECKBOX_OPTIONS];\n }\n\n return [];\n};\n\nexport const renderAction = ({\n name,\n id,\n actionableId,\n displayValue,\n actionOptions = [],\n setFieldValue,\n trixBody = \"\",\n}) => {\n const isCustomAction = name === ACTION_OPTIONS.assignTicketFieldValue;\n\n return isCustomAction\n ? renderCustomAction({\n id,\n actionableId,\n displayValue,\n actionOptions,\n setFieldValue,\n })\n : renderDefaultAction({ id, name, displayValue, setFieldValue, trixBody });\n};\n\nexport const buildActionOptions = ({\n dropdownOptions,\n actionNameOptions,\n variables,\n}) => {\n const actionDropdown = getActionDropdown(dropdownOptions);\n const options = actionNameOptions.map(option => {\n const dropdownOptions = actionDropdown[option.value];\n\n return dropdownOptions ? { ...option, dropdownOptions } : option;\n });\n\n const fields =\n (dropdownOptions.fields || []).filter(\n field => !field.kind.startsWith(\"system_\")\n ) || [];\n\n const fieldOptions = fields.map(\n ({ id, name, kind, data: attributeOptions }) => ({\n label: t(\"neetoRules.common.assign\", { what: name }),\n value: `ticket_field_${id}`,\n type: getActionType(kind),\n variables,\n defaultData: { actionable_id: id, actionable_type: \"Field\" },\n dropdownOptions: getDropdownOptions(kind, attributeOptions),\n })\n );\n\n return [...options, ...fieldOptions];\n};\n","import { Spinner } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { CANNED_RESPONSE_RICH_TEXT_ACTION_NAME } from \"./constants\";\nimport { buildActionOptions, renderAction } from \"./utils\";\n\nconst Body = ({\n actionNameOptions,\n cannedResponse,\n dropdownList,\n isLoading,\n setFieldValue,\n variables,\n}) => {\n const { t } = useTranslation();\n\n const actionOptions = buildActionOptions({\n dropdownOptions: dropdownList,\n actionNameOptions,\n variables,\n });\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n const sortedActions = cannedResponse.actions.sort((a, b) => {\n if (CANNED_RESPONSE_RICH_TEXT_ACTION_NAME.includes(a.name)) {\n return 1;\n } else if (CANNED_RESPONSE_RICH_TEXT_ACTION_NAME.includes(b.name)) {\n return -1;\n }\n\n return 0;\n });\n\n return (\n <div className=\"overflow-y-auto\">\n {not(cannedResponse)\n ? t(\"neetoRules.common.preview\")\n : sortedActions?.map(action =>\n renderAction({ ...action, actionOptions, setFieldValue })\n )}\n </div>\n );\n};\nexport default Body;\n","import { useRef, useState } from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { isPresent, toLabelAndValue } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { Pane, Spinner, Typography } from \"neetoui\";\nimport { ActionBlock, Select } from \"neetoui/formik\";\nimport { omit, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Body from \"./Body\";\n\nconst CannedResponsesPane = ({\n actionNameOptions,\n areDropdownListsLoading,\n dropdownList,\n isCannedResponsePaneOpen,\n isLoadingPreview,\n macros,\n onApply,\n onCancel,\n previewCannedResponses,\n previewParams,\n variables = [],\n}) => {\n const [cannedResponse, setCannedResponse] = useState(null);\n\n const initialFocusRef = useRef();\n\n const { t } = useTranslation();\n\n const options = macros?.map(({ name, id }) => ({ label: name, value: id }));\n\n const handleSelect = async ({ value }) => {\n await previewCannedResponses(\n { id: value, payload: previewParams },\n { onSuccess: response => setCannedResponse(values(response || {})[0]) }\n );\n };\n\n const handleSubmit = values => {\n onApply({\n cannedResponse,\n setCannedResponse,\n onSettled: onCancel,\n updatedValues: omit([\"cannedResponse\"], values),\n });\n };\n\n const handleCancel = () => {\n onCancel();\n setCannedResponse(null);\n };\n\n return (\n <Pane\n {...{ initialFocusRef }}\n isOpen={isCannedResponsePaneOpen}\n onClose={handleCancel}\n >\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoRules.cannedResponses.title\", PLURAL)}\n </Typography>\n </Pane.Header>\n <Formik\n initialValues={{ cannedResponse: toLabelAndValue(null) }}\n onSubmit={handleSubmit}\n >\n {({ setFieldValue, isSubmitting }) => (\n <Form>\n <Pane.Body>\n <div className=\"flex w-full grow flex-col space-y-4\">\n {areDropdownListsLoading ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n <div className=\"flex flex-col gap-y-4\">\n <Select\n {...{ options }}\n isSearchable\n label={t(\"neetoRules.labels.selectCannedResponse\")}\n name=\"cannedResponse\"\n ref={initialFocusRef}\n onChange={value => {\n setFieldValue(\"cannedResponse\", value);\n handleSelect(value);\n }}\n />\n {isPresent(cannedResponse) && (\n <div className=\"flex flex-col\">\n <Body\n {...{\n actionNameOptions,\n cannedResponse,\n dropdownList,\n setFieldValue,\n variables,\n }}\n isLoading={isLoadingPreview}\n />\n </div>\n )}\n </div>\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: handleCancel }}\n isSubmitting={isSubmitting || isLoadingPreview}\n submitButtonProps={{ label: t(\"neetoRules.common.apply\") }}\n />\n </Pane.Footer>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default CannedResponsesPane;\n"],"names":["CANNED_RESPONSE_INPUT_ACTION_NAMES","CANNED_RESPONSE_RICH_TEXT_ACTION_NAME","CANNED_RESPONSE_ACTION_LABELS","concat","reduce","labelObject","actionName","_objectSpread","_defineProperty","ACTION_OPTIONS","addNote","addCommentOrReply","addTags","removeTags","changePriority","changeStatus","assignAgent","assignGroup","assignTicketFieldValue","ACTION_TYPES_MAP","single_option","multi_option","checkbox","integer","DEFAULT_CHECKBOX_OPTIONS","label","t","value","Action","_ref","id","setFieldValue","_ref$richText","richText","_jsxs","className","children","_jsx","Label","Editor","initialValue","onChange","newValue","_createElement","Input","disabled","key","replace","renderActionValue","actionType","displayValue","join","renderDefaultAction","_ref2","name","trixBody","includes","renderCustomAction","_ref3","actionableId","actionOptions","actionOption","findBy","type","actionValue","isRichText","getActionDropdown","_ref4","status","teams","members","tags","change_status","assign_group","assign_agent","add_tags","remove_tags","getActionType","kind","getDropdownOptions","optionsAttribute","map","_ref5","_toConsumableArray","renderAction","_ref6","_ref6$actionOptions","_ref6$trixBody","isCustomAction","buildActionOptions","_ref7","dropdownOptions","actionNameOptions","variables","actionDropdown","options","option","fields","filter","field","startsWith","fieldOptions","_ref8","attributeOptions","data","what","defaultData","actionable_id","actionable_type","Body","cannedResponse","dropdownList","isLoading","_useTranslation","useTranslation","Spinner","sortedActions","actions","sort","a","b","not","action","CannedResponsesPane","areDropdownListsLoading","isCannedResponsePaneOpen","isLoadingPreview","macros","onApply","onCancel","previewCannedResponses","previewParams","_ref$variables","_useState","useState","_useState2","_slicedToArray","setCannedResponse","initialFocusRef","useRef","handleSelect","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","payload","onSuccess","response","values","stop","_x","apply","arguments","handleSubmit","onSettled","updatedValues","omit","handleCancel","Pane","isOpen","onClose","Header","Typography","style","weight","PLURAL","Formik","initialValues","toLabelAndValue","onSubmit","isSubmitting","Form","Select","isSearchable","ref","isPresent","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps"],"mappings":"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"}
@@ -171,7 +171,7 @@ var getColumnData = function getColumnData(_ref3) {
171
171
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
172
172
  className: "flex items-center justify-between gap-x-3",
173
173
  children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
174
- className: "whitespace-pre-line break-words text-left",
174
+ className: "whitespace-pre-line wrap-break-word text-left",
175
175
  style: "link",
176
176
  onClick: function onClick() {
177
177
  setMoreActionDropdownItems(buildActionDropdownMenuItems(_objectSpread$2({
@@ -1 +1 @@
1
- {"version":3,"file":"NeetoRules.js","sources":["../../app/javascript/src/components/NeetoRules/Header.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/constants.js","../../app/javascript/src/components/NeetoRules/RulesTable/DisableMessage.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/utils.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/index.jsx","../../app/javascript/src/components/NeetoRules/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { Button } from \"neetoui\";\n\nimport { createRoutes } from \"utils\";\n\nconst Header = withT(\n ({\n breadcrumbs,\n automationRulesPath,\n helpPopoverProps = {},\n hasUnfilteredRules,\n headerProps,\n t,\n }) => (\n <NeetoHeader\n {...{ breadcrumbs }}\n title={t(\"neetoRules.common.title\")}\n actionBlock={\n <Button\n className=\"hover:neeto-ui-text-white hover:no-underline\"\n data-cy=\"settings-automation-new-rule-button\"\n data-test-id=\"settings-automation-new-rule-button\"\n iconPosition=\"right\"\n label={t(\"neetoRules.button.addNew\")}\n style=\"primary\"\n to={createRoutes(automationRulesPath).new}\n />\n }\n searchProps={\n hasUnfilteredRules && {\n placeholder: t(\"neetoRules.placeholders.searchRules\"),\n }\n }\n titleHelpPopoverProps={{\n description: t(\"neetoRules.helpText.description\"),\n title: t(\"neetoRules.common.title\"),\n ...helpPopoverProps,\n }}\n {...headerProps}\n />\n )\n);\nexport default memo(Header);\n","export const STATUS_KEYS = { ENABLED: \"enabled\", DISABLED: \"disabled\" };\n\nexport const DEFAULT_INIT_PAGE = 1;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Typography } from \"neetoui\";\nimport { isNotNil } from \"ramda\";\n\nconst DisableMessage = withT(\n ({ t, disabledReason }) =>\n isNotNil(disabledReason) && (\n <div>\n <Typography class=\"text-red-600\" component=\"span\" style=\"body2\">\n {t(disabledReason)}\n </Typography>\n </div>\n )\n);\n\nexport default DisableMessage;\n","import { t } from \"i18next\";\nimport { removeBy, truncate } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Switch, Button } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport DisableMessage from \"./DisableMessage\";\n\nconst buildActionDropdownMenuItems = ({\n rule,\n onClone,\n onDelete,\n moreDropdownItems = [],\n automationRulesPath,\n allowCloning,\n}) => {\n const defaultOptions = [\n ...moreDropdownItems.map(({ onClick, ...others }) => ({\n ...others,\n onClick: () => onClick(rule),\n })),\n {\n key: \"edit\",\n className: \"neeto-ui-btn\",\n \"data-test-id\": \"automation-rules-edit-link\",\n \"data-cy\": \"automation-rules-edit-link\",\n label: t(\"neetoRules.button.edit\"),\n to: buildUrl(createRoutes(automationRulesPath).edit, { ruleId: rule.id }),\n },\n {\n key: \"clone\",\n \"data-test-id\": \"automation-rules-clone-link\",\n \"data-cy\": \"automation-rules-clone-link\",\n label: t(\"neetoRules.button.clone\"),\n onClick: () => onClone(rule.id),\n },\n { key: \"divider\", type: \"divider\" },\n {\n key: \"delete\",\n \"data-test-id\": \"automation-rules-delete-link\",\n \"data-cy\": \"automation-rules-delete-link\",\n label: t(\"neetoRules.button.delete\"),\n onClick: () => onDelete(rule),\n },\n ];\n\n if (!allowCloning) {\n return removeBy({ key: \"clone\" }, defaultOptions);\n }\n\n return defaultOptions;\n};\n\nexport const getColumnData = ({\n handleChangeStatus,\n additionalColumns = [],\n onPreview,\n ...otherProps\n}) => {\n const { setMoreActionDropdownItems } = useUtilityStore.pick();\n\n return [\n {\n title: t(\"neetoRules.labels.name\"),\n dataIndex: \"name\",\n key: \"name\",\n ellipsis: true,\n width: 440,\n render: (name, rule) => (\n <div>\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n className=\"whitespace-pre-line break-words text-left\"\n style=\"link\"\n onClick={() => {\n setMoreActionDropdownItems(\n buildActionDropdownMenuItems({ rule, ...otherProps })\n );\n onPreview(rule.id);\n }}\n >\n {truncate(name, 100)}\n </Button>\n <MoreDropdown\n dropdownButtonProps={{ className: \"mr-1 my-1\" }}\n menuItems={buildActionDropdownMenuItems({ rule, ...otherProps })}\n dropdownProps={{\n strategy: \"fixed\",\n appendTo: () => document.body,\n }}\n />\n </div>\n <DisableMessage disabledReason={rule.disabledReason} />\n </div>\n ),\n },\n {\n title: t(\"neetoRules.labels.active\"),\n key: \"active\",\n width: 140,\n align: \"center\",\n render: (_, rule) => (\n <div className=\"flex justify-center\">\n <Switch\n checked={rule.status === STATUS_KEYS.ENABLED}\n data-test-id=\"automation-rules-state-switch-row\"\n disabled={!!rule.disabledReason}\n onChange={e => {\n handleChangeStatus(e, rule.id);\n }}\n />\n </div>\n ),\n },\n ...additionalColumns,\n ];\n};\n\nexport const renderNoDataHelpText = helpDocUrl => (\n <Trans\n i18nKey=\"neetoRules.noData.helpText\"\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: helpDocUrl }} />,\n }}\n />\n);\n","import { useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { Bar as FilterBar } from \"neetofilters\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Alert, Table, Typography, NoData, Button, Spinner } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport {\n useCloneAutomationRule,\n useDeleteAutomationRule,\n useUpdateAutomationRule,\n} from \"hooks/reactQuery/useAutomationRulesApi\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport { getColumnData, renderNoDataHelpText } from \"./utils\";\n\nconst RulesTable = ({\n url,\n additionalColumns,\n allowReordering,\n automationRulesPath = \"/\",\n onPreview,\n moreDropdownItems = [],\n rules = [],\n totalCount,\n helpDocUrl,\n isLoading,\n onDeleteSuccess,\n onCloneSuccess,\n onUpdateSuccess,\n page,\n setIsReorderPaneOpen,\n setPage,\n allowCloning = true,\n hasUnfilteredRules = true,\n payloadKey = \"rule\",\n}) => {\n const { searchTerm = \"\" } = useQueryParams();\n\n const searchKeywordProps = {\n key: \"search_term\",\n node: \"name\",\n value: searchTerm,\n };\n\n const [selectedRule, setSelectedRule] = useState(null);\n\n const { hidePreviewPane } = useUtilityStore.pick();\n\n const { t } = useTranslation();\n\n const { mutate: updateRule, isPending: isUpdating } =\n useUpdateAutomationRule(url);\n\n const { mutate: cloneRule, isPending: isCloning } =\n useCloneAutomationRule(url);\n\n const { mutate: deleteRule, isPending: isDeleting } =\n useDeleteAutomationRule(url);\n\n const handleChangeStatus = (event, id) => {\n const status = event.target.checked\n ? STATUS_KEYS.ENABLED\n : STATUS_KEYS.DISABLED;\n const payload = { [payloadKey]: { status } };\n updateRule({ id, url, payload }, { onSuccess: () => onUpdateSuccess?.() });\n };\n\n const handleCloneSuccess = () => {\n onCloneSuccess?.();\n hidePreviewPane();\n };\n\n const handleDeleteSuccess = () => {\n onDeleteSuccess?.();\n hidePreviewPane();\n setSelectedRule(null);\n };\n\n const columnData = getColumnData({\n handleChangeStatus,\n additionalColumns,\n onClone: id => cloneRule({ id, url }, { onSuccess: handleCloneSuccess }),\n onDelete: setSelectedRule,\n onPreview,\n automationRulesPath,\n moreDropdownItems,\n allowCloning,\n });\n\n if (isLoading && isEmpty(rules)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n {hasUnfilteredRules && (\n <SubHeader\n leftActionBlock={\n <>\n <Typography className=\"mr-4 font-semibold\" style=\"h4\">\n {t(\"neetoRules.common.automationRuleWithCount\", {\n count: totalCount,\n })}\n </Typography>\n <FilterBar className=\"mb-0\" keyword={searchKeywordProps} />\n </>\n }\n rightActionBlock={\n hasUnfilteredRules &&\n allowReordering && (\n <Button\n disabled={isNotEmpty(searchTerm)}\n label={t(\"neetoRules.common.reorder\")}\n style=\"secondary\"\n onClick={() => setIsReorderPaneOpen(true)}\n />\n )\n }\n />\n )}\n {isNotEmpty(rules) ? (\n <>\n <TableWrapper hasPagination={totalCount > DEFAULT_PAGE_SIZE}>\n <Table\n {...{ columnData, totalCount }}\n fixedHeight\n allowClick={false}\n currentPageNumber={page}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n handlePageChange={setPage}\n loading={isUpdating || isCloning || isDeleting || isLoading}\n rowData={rules.map(item => ({ key: item.id, ...item }))}\n rowSelection={false}\n tableLayout=\"fixed\"\n />\n </TableWrapper>\n <Alert\n isOpen={!!selectedRule}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoRules.button.delete\")}\n title={t(\"neetoRules.deleteAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoRules.deleteAlert.message\"\n values={{ name: selectedRule?.name }}\n />\n }\n onClose={() => setSelectedRule(null)}\n onSubmit={() =>\n deleteRule(\n { id: selectedRule?.id, url },\n { onSuccess: handleDeleteSuccess }\n )\n }\n />\n </>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={t(\"neetoRules.noData.title\")}\n {...(isEmpty(searchTerm) && {\n helpText: helpDocUrl ? renderNoDataHelpText(helpDocUrl) : null,\n primaryButtonProps: {\n label: t(\"neetoRules.button.addNew\"),\n to: createRoutes(automationRulesPath).new,\n },\n })}\n />\n </div>\n )}\n </>\n );\n};\n\nexport default RulesTable;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\n\nimport { useFetchAutomationRules } from \"hooks/reactQuery/useAutomationRulesApi\";\n\nimport { INITIAL_RULES_DATA } from \"./constants\";\nimport Header from \"./Header\";\nimport RulesReorder from \"./RulesReorder\";\nimport RulesTable from \"./RulesTable\";\nimport { DEFAULT_INIT_PAGE } from \"./RulesTable/constants\";\n\nconst NeetoRules = ({\n breadcrumbs,\n automationRulesPath,\n automationRulesEndpoint: url,\n allowReordering = false,\n rulesTableProps = {},\n helpPopoverProps = {},\n deleteRule,\n cloneRule,\n updateRule,\n reorderRules,\n headerProps = {},\n}) => {\n const [isReorderPaneOpen, setIsReorderPaneOpen] = useState(false);\n const helpDocUrl = helpPopoverProps?.helpLinkProps?.href;\n\n const [page, setPage] = useState(DEFAULT_INIT_PAGE);\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const {\n data: { rules, totalCount } = INITIAL_RULES_DATA,\n isLoading,\n isFetching,\n } = useFetchAutomationRules({\n url,\n page,\n pageSize: DEFAULT_PAGE_SIZE,\n searchTerm,\n });\n\n const hasUnfilteredRules = isPresent(searchTerm) || totalCount > 0;\n\n return (\n <Container>\n <Header\n {...{\n automationRulesPath,\n breadcrumbs,\n hasUnfilteredRules,\n headerProps,\n helpPopoverProps,\n }}\n />\n <RulesTable\n {...{\n allowReordering,\n automationRulesPath,\n hasUnfilteredRules,\n helpDocUrl,\n page,\n rules,\n setIsReorderPaneOpen,\n setPage,\n totalCount,\n url,\n ...rulesTableProps,\n }}\n allowCloning={cloneRule?.allowed ?? true}\n isLoading={isLoading || isFetching}\n onCloneSuccess={cloneRule?.onSuccess?.callback}\n onDeleteSuccess={deleteRule?.onSuccess?.callback}\n onUpdateSuccess={updateRule?.onSuccess?.callback}\n />\n {allowReordering && !isLoading && (\n <RulesReorder\n {...{ totalCount, url }}\n isOpen={isReorderPaneOpen}\n onClose={() => setIsReorderPaneOpen(false)}\n onReorderSuccess={reorderRules?.onSuccess?.callback}\n />\n )}\n </Container>\n );\n};\n\nexport default NeetoRules;\n"],"names":["Header","withT","_ref","breadcrumbs","automationRulesPath","_ref$helpPopoverProps","helpPopoverProps","hasUnfilteredRules","headerProps","t","_jsx","NeetoHeader","_objectSpread","title","actionBlock","Button","className","iconPosition","label","style","to","createRoutes","searchProps","placeholder","titleHelpPopoverProps","description","memo","STATUS_KEYS","ENABLED","DISABLED","DEFAULT_INIT_PAGE","DisableMessage","disabledReason","isNotNil","children","Typography","component","buildActionDropdownMenuItems","rule","onClone","onDelete","_ref$moreDropdownItem","moreDropdownItems","allowCloning","defaultOptions","concat","_toConsumableArray","map","_ref2","onClick","others","_objectWithoutProperties","_excluded","key","buildUrl","edit","ruleId","id","type","removeBy","getColumnData","_ref3","handleChangeStatus","_ref3$additionalColum","additionalColumns","onPreview","otherProps","_excluded2","_useUtilityStore","useUtilityStore","store","setMoreActionDropdownItems","shallow","dataIndex","ellipsis","width","render","name","_jsxs","truncate","MoreDropdown","dropdownButtonProps","menuItems","dropdownProps","strategy","appendTo","document","body","align","_","Switch","checked","status","disabled","onChange","e","renderNoDataHelpText","helpDocUrl","Trans","i18nKey","components","a","target","pathname","RulesTable","url","allowReordering","_ref$automationRulesP","_ref$rules","rules","totalCount","isLoading","onDeleteSuccess","onCloneSuccess","onUpdateSuccess","page","setIsReorderPaneOpen","setPage","_ref$allowCloning","_ref$hasUnfilteredRul","_ref$payloadKey","payloadKey","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","_useState","useState","_useState2","_slicedToArray","selectedRule","setSelectedRule","hidePreviewPane","_useTranslation","useTranslation","_useUpdateAutomationR","useUpdateAutomationRule","updateRule","mutate","isUpdating","isPending","_useCloneAutomationRu","useCloneAutomationRule","cloneRule","isCloning","_useDeleteAutomationR","useDeleteAutomationRule","deleteRule","isDeleting","event","payload","_defineProperty","onSuccess","handleCloneSuccess","handleDeleteSuccess","columnData","isEmpty","Spinner","_Fragment","SubHeader","leftActionBlock","count","FilterBar","keyword","rightActionBlock","isNotEmpty","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","Table","fixedHeight","allowClick","currentPageNumber","defaultPageSize","handlePageChange","loading","rowData","item","rowSelection","tableLayout","Alert","isOpen","isSubmitting","submitButtonLabel","message","values","onClose","onSubmit","NoData","helpText","primaryButtonProps","NeetoRules","_helpPopoverProps$hel","_cloneRule$allowed","_cloneRule$onSuccess","_deleteRule$onSuccess","_updateRule$onSuccess","_reorderRules$onSucce","automationRulesEndpoint","_ref$allowReordering","_ref$rulesTableProps","rulesTableProps","reorderRules","_ref$headerProps","isReorderPaneOpen","helpLinkProps","href","_useState3","_useState4","_useFetchAutomationRu","useFetchAutomationRules","pageSize","_useFetchAutomationRu2","data","_useFetchAutomationRu3","INITIAL_RULES_DATA","isFetching","isPresent","Container","allowed","callback","RulesReorder","onReorderSuccess"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAMA,MAAM,GAAGC,gBAAK,CAClB,UAAAC,IAAA,EAAA;AAAA,EAAA,IACEC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IACXC,mBAAmB,GAAAF,IAAA,CAAnBE,mBAAmB;IAAAC,qBAAA,GAAAH,IAAA,CACnBI,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA;IACrBE,kBAAkB,GAAAL,IAAA,CAAlBK,kBAAkB;IAClBC,WAAW,GAAAN,IAAA,CAAXM,WAAW;IACXC,CAAC,GAAAP,IAAA,CAADO,CAAC;AAAA,EAAA,oBAEDC,cAAA,CAACC,WAAW,EAAAC,eAAA,CAAA;AACJT,IAAAA,WAAW,EAAXA,WAAW;AACjBU,IAAAA,KAAK,EAAEJ,CAAC,CAAC,yBAAyB,CAAE;IACpCK,WAAW,eACTJ,cAAA,CAACK,MAAM,EAAA;AACLC,MAAAA,SAAS,EAAC,8CAA8C;AACxD,MAAA,SAAA,EAAQ,qCAAqC;AAC7C,MAAA,cAAA,EAAa,qCAAqC;AAClDC,MAAAA,YAAY,EAAC,OAAO;AACpBC,MAAAA,KAAK,EAAET,CAAC,CAAC,0BAA0B,CAAE;AACrCU,MAAAA,KAAK,EAAC,SAAS;AACfC,MAAAA,EAAE,EAAEC,4BAAY,CAACjB,mBAAmB,CAAC,CAAA,KAAA;AAAK,KAC3C,CACF;IACDkB,WAAW,EACTf,kBAAkB,IAAI;MACpBgB,WAAW,EAAEd,CAAC,CAAC,qCAAqC;KAEvD;AACDe,IAAAA,qBAAqB,EAAAZ,eAAA,CAAA;AACnBa,MAAAA,WAAW,EAAEhB,CAAC,CAAC,iCAAiC,CAAC;MACjDI,KAAK,EAAEJ,CAAC,CAAC,yBAAyB;AAAC,KAAA,EAChCH,gBAAgB;GAEjBE,EAAAA,WAAW,CAChB,CAAC;AAAA,CAEN,CAAC;AACD,eAAekB,aAAAA,UAAI,CAAC1B,MAAM,CAAC;;AC7CpB,IAAM2B,WAAW,GAAG;AAAEC,EAAAA,OAAO,EAAE,SAAS;AAAEC,EAAAA,QAAQ,EAAE;AAAW,CAAC;AAEhE,IAAMC,iBAAiB,GAAG,CAAC;;ACElC,IAAMC,cAAc,GAAG9B,gBAAK,CAC1B,UAAAC,IAAA,EAAA;AAAA,EAAA,IAAGO,CAAC,GAAAP,IAAA,CAADO,CAAC;IAAEuB,cAAc,GAAA9B,IAAA,CAAd8B,cAAc;AAAA,EAAA,OAClBC,cAAQ,CAACD,cAAc,CAAC,iBACtBtB,cAAA,CAAA,KAAA,EAAA;IAAAwB,QAAA,eACExB,cAAA,CAACyB,UAAU,EAAA;AAAC,MAAA,OAAA,EAAM,cAAc;AAACC,MAAAA,SAAS,EAAC,MAAM;AAACjB,MAAAA,KAAK,EAAC,OAAO;MAAAe,QAAA,EAC5DzB,CAAC,CAACuB,cAAc;KACP;AAAC,GACV,CACN;AAAA,CACL,CAAC;;;;;;ACAD,IAAMK,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAAnC,IAAA,EAO5B;AAAA,EAAA,IANJoC,IAAI,GAAApC,IAAA,CAAJoC,IAAI;IACJC,OAAO,GAAArC,IAAA,CAAPqC,OAAO;IACPC,QAAQ,GAAAtC,IAAA,CAARsC,QAAQ;IAAAC,qBAAA,GAAAvC,IAAA,CACRwC,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IACtBrC,mBAAmB,GAAAF,IAAA,CAAnBE,mBAAmB;IACnBuC,YAAY,GAAAzC,IAAA,CAAZyC,YAAY;EAEZ,IAAMC,cAAc,GAAAC,EAAAA,CAAAA,MAAA,CAAAC,kBAAA,CACfJ,iBAAiB,CAACK,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,QAAO,GAAAD,KAAA,CAAPC,OAAO;AAAKC,MAAAA,MAAM,GAAAC,wBAAA,CAAAH,KAAA,EAAAI,SAAA,CAAA;AAAA,IAAA,OAAAxC,eAAA,CAAAA,eAAA,CAAA,EAAA,EACzCsC,MAAM,CAAA,EAAA,EAAA,EAAA;MACTD,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQA,QAAO,CAACX,IAAI,CAAC;AAAA;AAAA,KAAA,CAAA;AAAA,GAC5B,CAAC,CACH,EAAA,CAAA;AACEe,IAAAA,GAAG,EAAE,MAAM;AACXrC,IAAAA,SAAS,EAAE,cAAc;AACzB,IAAA,cAAc,EAAE,4BAA4B;AAC5C,IAAA,SAAS,EAAE,4BAA4B;AACvCE,IAAAA,KAAK,EAAET,SAAC,CAAC,wBAAwB,CAAC;IAClCW,EAAE,EAAEkC,cAAQ,CAACjC,4BAAY,CAACjB,mBAAmB,CAAC,CAACmD,IAAI,EAAE;MAAEC,MAAM,EAAElB,IAAI,CAACmB;KAAI;AAC1E,GAAC,EACD;AACEJ,IAAAA,GAAG,EAAE,OAAO;AACZ,IAAA,cAAc,EAAE,6BAA6B;AAC7C,IAAA,SAAS,EAAE,6BAA6B;AACxCnC,IAAAA,KAAK,EAAET,SAAC,CAAC,yBAAyB,CAAC;IACnCwC,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQV,OAAO,CAACD,IAAI,CAACmB,EAAE,CAAC;AAAA;AACjC,GAAC,EACD;AAAEJ,IAAAA,GAAG,EAAE,SAAS;AAAEK,IAAAA,IAAI,EAAE;AAAU,GAAC,EACnC;AACEL,IAAAA,GAAG,EAAE,QAAQ;AACb,IAAA,cAAc,EAAE,8BAA8B;AAC9C,IAAA,SAAS,EAAE,8BAA8B;AACzCnC,IAAAA,KAAK,EAAET,SAAC,CAAC,0BAA0B,CAAC;IACpCwC,OAAO,EAAE,SAATA,OAAOA,GAAA;MAAA,OAAQT,QAAQ,CAACF,IAAI,CAAC;AAAA;AAC/B,GAAC,CACF,CAAA;EAED,IAAI,CAACK,YAAY,EAAE;AACjB,IAAA,OAAOgB,kBAAQ,CAAC;AAAEN,MAAAA,GAAG,EAAE;KAAS,EAAET,cAAc,CAAC;AACnD;AAEA,EAAA,OAAOA,cAAc;AACvB,CAAC;AAEM,IAAMgB,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,KAAA,EAKpB;AAAA,EAAA,IAJJC,kBAAkB,GAAAD,KAAA,CAAlBC,kBAAkB;IAAAC,qBAAA,GAAAF,KAAA,CAClBG,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IACtBE,SAAS,GAAAJ,KAAA,CAATI,SAAS;AACNC,IAAAA,UAAU,GAAAf,wBAAA,CAAAU,KAAA,EAAAM,UAAA,CAAA;AAEb,EAAA,IAAAC,gBAAA,GAAAC,+BAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,0BAA0B,EAAAD,KAAA,CAAA,4BAAA;AAAA,OAAA;AAAA,KAAA,EAAAE,eAAA,CAAA;IAA1BD,0BAA0B,GAAAH,gBAAA,CAA1BG,0BAA0B;EAElC,OACE,CAAA;AACE1D,IAAAA,KAAK,EAAEJ,SAAC,CAAC,wBAAwB,CAAC;AAClCgE,IAAAA,SAAS,EAAE,MAAM;AACjBpB,IAAAA,GAAG,EAAE,MAAM;AACXqB,IAAAA,QAAQ,EAAE,IAAI;AACdC,IAAAA,KAAK,EAAE,GAAG;AACVC,IAAAA,MAAM,EAAE,SAARA,MAAMA,CAAGC,IAAI,EAAEvC,IAAI,EAAA;AAAA,MAAA,oBACjBwC,eAAA,CAAA,KAAA,EAAA;AAAA5C,QAAAA,QAAA,gBACE4C,eAAA,CAAA,KAAA,EAAA;AAAK9D,UAAAA,SAAS,EAAC,2CAA2C;UAAAkB,QAAA,EAAA,cACxDxB,cAAA,CAACK,MAAM,EAAA;AACLC,YAAAA,SAAS,EAAC,2CAA2C;AACrDG,YAAAA,KAAK,EAAC,MAAM;AACZ8B,YAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;cACbsB,0BAA0B,CACxBlC,4BAA4B,CAAAzB,eAAA,CAAA;AAAG0B,gBAAAA,IAAI,EAAJA;eAAS4B,EAAAA,UAAU,CAAE,CACtD,CAAC;AACDD,cAAAA,SAAS,CAAC3B,IAAI,CAACmB,EAAE,CAAC;aAClB;AAAAvB,YAAAA,QAAA,EAED6C,kBAAQ,CAACF,IAAI,EAAE,GAAG;AAAC,WACd,CAAC,eACTnE,cAAA,CAACsE,YAAY,EAAA;AACXC,YAAAA,mBAAmB,EAAE;AAAEjE,cAAAA,SAAS,EAAE;aAAc;YAChDkE,SAAS,EAAE7C,4BAA4B,CAAAzB,eAAA,CAAA;AAAG0B,cAAAA,IAAI,EAAJA;aAAS4B,EAAAA,UAAU,CAAE,CAAE;AACjEiB,YAAAA,aAAa,EAAE;AACbC,cAAAA,QAAQ,EAAE,OAAO;cACjBC,QAAQ,EAAE,SAAVA,QAAQA,GAAA;gBAAA,OAAQC,QAAQ,CAACC,IAAI;AAAA;AAC/B;AAAE,WACH,CAAC;AAAA,SACC,CAAC,eACN7E,cAAA,CAACqB,cAAc,EAAA;UAACC,cAAc,EAAEM,IAAI,CAACN;AAAe,SAAE,CAAC;AAAA,OACpD,CAAC;AAAA;AAEV,GAAC,EACD;AACEnB,IAAAA,KAAK,EAAEJ,SAAC,CAAC,0BAA0B,CAAC;AACpC4C,IAAAA,GAAG,EAAE,QAAQ;AACbsB,IAAAA,KAAK,EAAE,GAAG;AACVa,IAAAA,KAAK,EAAE,QAAQ;AACfZ,IAAAA,MAAM,EAAE,SAARA,MAAMA,CAAGa,CAAC,EAAEnD,IAAI,EAAA;AAAA,MAAA,oBACd5B,cAAA,CAAA,KAAA,EAAA;AAAKM,QAAAA,SAAS,EAAC,qBAAqB;QAAAkB,QAAA,eAClCxB,cAAA,CAACgF,MAAM,EAAA;AACLC,UAAAA,OAAO,EAAErD,IAAI,CAACsD,MAAM,KAAKjE,WAAW,CAACC,OAAQ;AAC7C,UAAA,cAAA,EAAa,mCAAmC;AAChDiE,UAAAA,QAAQ,EAAE,CAAC,CAACvD,IAAI,CAACN,cAAe;AAChC8D,UAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEC,CAAC,EAAI;AACbjC,YAAAA,kBAAkB,CAACiC,CAAC,EAAEzD,IAAI,CAACmB,EAAE,CAAC;AAChC;SACD;AAAC,OACC,CAAC;AAAA;AAEV,GAAC,CAAAZ,CAAAA,MAAA,CAAAC,kBAAA,CACEkB,iBAAiB,CAAA,CAAA;AAExB,CAAC;AAEM,IAAMgC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGC,UAAU,EAAA;EAAA,oBAC5CvF,cAAA,CAACwF,kBAAK,EAAA;AACJC,IAAAA,OAAO,EAAC,4BAA4B;AACpCC,IAAAA,UAAU,EAAE;MACVC,CAAC,eAAE3F,cAAA,CAACK,MAAM,EAAA;AAACI,QAAAA,KAAK,EAAC,MAAM;AAACmF,QAAAA,MAAM,EAAC,QAAQ;AAAClF,QAAAA,EAAE,EAAE;AAAEmF,UAAAA,QAAQ,EAAEN;AAAW;OAAI;AACzE;AAAE,GACH,CAAC;AAAA,CACH;;;;AC3GD,IAAMO,UAAU,GAAG,SAAbA,UAAUA,CAAAtG,IAAA,EAoBV;AAAA,EAAA,IAnBJuG,GAAG,GAAAvG,IAAA,CAAHuG,GAAG;IACHzC,iBAAiB,GAAA9D,IAAA,CAAjB8D,iBAAiB;IACjB0C,eAAe,GAAAxG,IAAA,CAAfwG,eAAe;IAAAC,qBAAA,GAAAzG,IAAA,CACfE,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAuG,qBAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,qBAAA;IACzB1C,SAAS,GAAA/D,IAAA,CAAT+D,SAAS;IAAAxB,qBAAA,GAAAvC,IAAA,CACTwC,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IAAAmE,UAAA,GAAA1G,IAAA,CACtB2G,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IACVE,UAAU,GAAA5G,IAAA,CAAV4G,UAAU;IACVb,UAAU,GAAA/F,IAAA,CAAV+F,UAAU;IACVc,SAAS,GAAA7G,IAAA,CAAT6G,SAAS;IACTC,eAAe,GAAA9G,IAAA,CAAf8G,eAAe;IACfC,cAAc,GAAA/G,IAAA,CAAd+G,cAAc;IACdC,eAAe,GAAAhH,IAAA,CAAfgH,eAAe;IACfC,IAAI,GAAAjH,IAAA,CAAJiH,IAAI;IACJC,oBAAoB,GAAAlH,IAAA,CAApBkH,oBAAoB;IACpBC,OAAO,GAAAnH,IAAA,CAAPmH,OAAO;IAAAC,iBAAA,GAAApH,IAAA,CACPyC,YAAY;AAAZA,IAAAA,YAAY,GAAA2E,iBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,iBAAA;IAAAC,qBAAA,GAAArH,IAAA,CACnBK,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAgH,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;IAAAC,eAAA,GAAAtH,IAAA,CACzBuH,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,eAAA;AAEnB,EAAA,IAAAE,eAAA,GAA4BC,yBAAc,EAAE;IAAAC,qBAAA,GAAAF,eAAA,CAApCG,UAAU;AAAVA,IAAAA,UAAU,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;AAEvB,EAAA,IAAME,kBAAkB,GAAG;AACzBzE,IAAAA,GAAG,EAAE,aAAa;AAClB0E,IAAAA,IAAI,EAAE,MAAM;AACZC,IAAAA,KAAK,EAAEH;GACR;AAED,EAAA,IAAAI,SAAA,GAAwCC,cAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA/CI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,eAAe,GAAAH,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAA/D,gBAAA,GAAAC,+BAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQiE,QAAAA,eAAe,EAAAjE,KAAA,CAAA,iBAAA;AAAA,OAAA;AAAA,KAAA,EAAAE,eAAA,CAAA;IAAf+D,eAAe,GAAAnE,gBAAA,CAAfmE,eAAe;AAEvB,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBhI,CAAC,GAAA+H,eAAA,CAAD/H,CAAC;AAET,EAAA,IAAAiI,qBAAA,GACEC,6CAAuB,CAAClC,GAAG,CAAC;IADdmC,UAAU,GAAAF,qBAAA,CAAlBG,MAAM;IAAyBC,UAAU,GAAAJ,qBAAA,CAArBK,SAAS;AAGrC,EAAA,IAAAC,qBAAA,GACEC,4CAAsB,CAACxC,GAAG,CAAC;IADbyC,SAAS,GAAAF,qBAAA,CAAjBH,MAAM;IAAwBM,SAAS,GAAAH,qBAAA,CAApBD,SAAS;AAGpC,EAAA,IAAAK,qBAAA,GACEC,6CAAuB,CAAC5C,GAAG,CAAC;IADd6C,UAAU,GAAAF,qBAAA,CAAlBP,MAAM;IAAyBU,UAAU,GAAAH,qBAAA,CAArBL,SAAS;EAGrC,IAAMjF,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAI0F,KAAK,EAAE/F,EAAE,EAAK;AACxC,IAAA,IAAMmC,MAAM,GAAG4D,KAAK,CAAClD,MAAM,CAACX,OAAO,GAC/BhE,WAAW,CAACC,OAAO,GACnBD,WAAW,CAACE,QAAQ;AACxB,IAAA,IAAM4H,OAAO,GAAAC,eAAA,CAAA,EAAA,EAAMjC,UAAU,EAAG;AAAE7B,MAAAA,MAAM,EAANA;AAAO,KAAC,CAAE;AAC5CgD,IAAAA,UAAU,CAAC;AAAEnF,MAAAA,EAAE,EAAFA,EAAE;AAAEgD,MAAAA,GAAG,EAAHA,GAAG;AAAEgD,MAAAA,OAAO,EAAPA;AAAQ,KAAC,EAAE;MAAEE,SAAS,EAAE,SAAXA,SAASA,GAAA;AAAA,QAAA,OAAQzC,eAAe,KAAfA,IAAAA,IAAAA,eAAe,KAAfA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,eAAe,EAAI;AAAA;AAAC,KAAC,CAAC;GAC3E;AAED,EAAA,IAAM0C,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;AAC/B3C,IAAAA,cAAc,KAAdA,IAAAA,IAAAA,cAAc,KAAdA,KAAAA,CAAAA,IAAAA,cAAc,EAAI;AAClBsB,IAAAA,eAAe,EAAE;GAClB;AAED,EAAA,IAAMsB,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAS;AAChC7C,IAAAA,eAAe,KAAfA,IAAAA,IAAAA,eAAe,KAAfA,KAAAA,CAAAA,IAAAA,eAAe,EAAI;AACnBuB,IAAAA,eAAe,EAAE;IACjBD,eAAe,CAAC,IAAI,CAAC;GACtB;EAED,IAAMwB,UAAU,GAAGlG,aAAa,CAAC;AAC/BE,IAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBE,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBzB,IAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEkB,EAAE,EAAA;AAAA,MAAA,OAAIyF,SAAS,CAAC;AAAEzF,QAAAA,EAAE,EAAFA,EAAE;AAAEgD,QAAAA,GAAG,EAAHA;AAAI,OAAC,EAAE;AAAEkD,QAAAA,SAAS,EAAEC;AAAmB,OAAC,CAAC;AAAA,KAAA;AACxEpH,IAAAA,QAAQ,EAAE8F,eAAe;AACzBrE,IAAAA,SAAS,EAATA,SAAS;AACT7D,IAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBsC,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBC,IAAAA,YAAY,EAAZA;AACF,GAAC,CAAC;AAEF,EAAA,IAAIoE,SAAS,IAAIgD,aAAO,CAAClD,KAAK,CAAC,EAAE;AAC/B,IAAA,oBACEnG,cAAA,CAAA,KAAA,EAAA;AAAKM,MAAAA,SAAS,EAAC,gDAAgD;AAAAkB,MAAAA,QAAA,eAC7DxB,cAAA,CAACsJ,OAAO,EAAE,EAAA;AAAC,KACR,CAAC;AAEV;EAEA,oBACElF,eAAA,CAAAmF,mBAAA,EAAA;AAAA/H,IAAAA,QAAA,EACG3B,CAAAA,kBAAkB,iBACjBG,cAAA,CAACwJ,SAAS,EAAA;MACRC,eAAe,eACbrF,eAAA,CAAAmF,mBAAA,EAAA;QAAA/H,QAAA,EAAA,cACExB,cAAA,CAACyB,UAAU,EAAA;AAACnB,UAAAA,SAAS,EAAC,oBAAoB;AAACG,UAAAA,KAAK,EAAC,IAAI;AAAAe,UAAAA,QAAA,EAClDzB,CAAC,CAAC,2CAA2C,EAAE;AAC9C2J,YAAAA,KAAK,EAAEtD;WACR;AAAC,SACQ,CAAC,eACbpG,cAAA,CAAC2J,SAAS,EAAA;AAACrJ,UAAAA,SAAS,EAAC,MAAM;AAACsJ,UAAAA,OAAO,EAAExC;AAAmB,SAAE,CAAC;AAAA,OAC3D,CACH;AACDyC,MAAAA,gBAAgB,EACdhK,kBAAkB,IAClBmG,eAAe,iBACbhG,cAAA,CAACK,MAAM,EAAA;AACL8E,QAAAA,QAAQ,EAAE2E,oBAAU,CAAC3C,UAAU,CAAE;AACjC3G,QAAAA,KAAK,EAAET,CAAC,CAAC,2BAA2B,CAAE;AACtCU,QAAAA,KAAK,EAAC,WAAW;QACjB8B,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQmE,oBAAoB,CAAC,IAAI,CAAC;AAAA;OAC1C;KAGN,CACF,EACAoD,oBAAU,CAAC3D,KAAK,CAAC,gBAChB/B,eAAA,CAAAmF,mBAAA,EAAA;MAAA/H,QAAA,EAAA,cACExB,cAAA,CAAC+J,YAAY,EAAA;QAACC,aAAa,EAAE5D,UAAU,GAAG6D,2BAAkB;QAAAzI,QAAA,eAC1DxB,cAAA,CAACkK,KAAK,EAAA;AACEd,UAAAA,UAAU,EAAVA,UAAU;AAAEhD,UAAAA,UAAU,EAAVA,UAAU;UAC5B+D,WAAW,EAAA,IAAA;AACXC,UAAAA,UAAU,EAAE,KAAM;AAClBC,UAAAA,iBAAiB,EAAE5D,IAAK;AACxB6D,UAAAA,eAAe,EAAEL,2BAAkB;AACnCM,UAAAA,gBAAgB,EAAE5D,OAAQ;AAC1B6D,UAAAA,OAAO,EAAEpC,UAAU,IAAIK,SAAS,IAAII,UAAU,IAAIxC,SAAU;AAC5DoE,UAAAA,OAAO,EAAEtE,KAAK,CAAC9D,GAAG,CAAC,UAAAqI,IAAI,EAAA;AAAA,YAAA,OAAAxK,eAAA,CAAA;cAAOyC,GAAG,EAAE+H,IAAI,CAAC3H;AAAE,aAAA,EAAK2H,IAAI,CAAA;AAAA,WAAG,CAAE;AACxDC,UAAAA,YAAY,EAAE,KAAM;AACpBC,UAAAA,WAAW,EAAC;SACb;AAAC,OACU,CAAC,eACf5K,cAAA,CAAC6K,KAAK,EAAA;QACJC,MAAM,EAAE,CAAC,CAACnD,YAAa;AACvBoD,QAAAA,YAAY,EAAElC,UAAW;AACzBmC,QAAAA,iBAAiB,EAAEjL,CAAC,CAAC,0BAA0B,CAAE;AACjDI,QAAAA,KAAK,EAAEJ,CAAC,CAAC,8BAA8B,CAAE;QACzCkL,OAAO,eACLjL,cAAA,CAACwF,kBAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,gCAAgC;AACxCyF,UAAAA,MAAM,EAAE;AAAE/G,YAAAA,IAAI,EAAEwD,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAExD;AAAK;AAAE,SACtC,CACF;QACDgH,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQvD,eAAe,CAAC,IAAI,CAAC;SAAC;QACrCwD,QAAQ,EAAE,SAAVA,QAAQA,GAAA;AAAA,UAAA,OACNxC,UAAU,CACR;AAAE7F,YAAAA,EAAE,EAAE4E,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAE5E,EAAE;AAAEgD,YAAAA,GAAG,EAAHA;AAAI,WAAC,EAC7B;AAAEkD,YAAAA,SAAS,EAAEE;AAAoB,WACnC,CAAC;AAAA;AACF,OACF,CAAC;KACF,CAAC,gBAEHnJ,cAAA,CAAA,KAAA,EAAA;AAAKM,MAAAA,SAAS,EAAC,gDAAgD;AAAAkB,MAAAA,QAAA,eAC7DxB,cAAA,CAACqL,MAAM,EAAAnL,eAAA,CAAA;QACLC,KAAK,EAAEJ,CAAC,CAAC,yBAAyB;AAAE,OAAA,EAC/BsJ,aAAO,CAAClC,UAAU,CAAC,IAAI;QAC1BmE,QAAQ,EAAE/F,UAAU,GAAGD,oBAAoB,CAACC,UAAU,CAAC,GAAG,IAAI;AAC9DgG,QAAAA,kBAAkB,EAAE;AAClB/K,UAAAA,KAAK,EAAET,CAAC,CAAC,0BAA0B,CAAC;AACpCW,UAAAA,EAAE,EAAEC,4BAAY,CAACjB,mBAAmB,CAAC,CAAA,KAAA;AACvC;AACF,OAAC,CACF;AAAC,KACC,CACN;AAAA,GACD,CAAC;AAEP,CAAC;;;;ACzKD,IAAM8L,UAAU,GAAG,SAAbA,UAAUA,CAAAhM,IAAA,EAYV;EAAA,IAAAiM,qBAAA,EAAAC,kBAAA,EAAAC,oBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA;AAAA,EAAA,IAXJrM,WAAW,GAAAD,IAAA,CAAXC,WAAW;IACXC,mBAAmB,GAAAF,IAAA,CAAnBE,mBAAmB;IACMqG,GAAG,GAAAvG,IAAA,CAA5BuM,uBAAuB;IAAAC,oBAAA,GAAAxM,IAAA,CACvBwG,eAAe;AAAfA,IAAAA,eAAe,GAAAgG,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IAAAC,oBAAA,GAAAzM,IAAA,CACvB0M,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAtM,qBAAA,GAAAH,IAAA,CACpBI,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA;IACrBiJ,UAAU,GAAApJ,IAAA,CAAVoJ,UAAU;IACVJ,SAAS,GAAAhJ,IAAA,CAATgJ,SAAS;IACTN,UAAU,GAAA1I,IAAA,CAAV0I,UAAU;IACViE,YAAY,GAAA3M,IAAA,CAAZ2M,YAAY;IAAAC,gBAAA,GAAA5M,IAAA,CACZM,WAAW;AAAXA,IAAAA,WAAW,GAAAsM,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA;AAEhB,EAAA,IAAA7E,SAAA,GAAkDC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA1D8E,IAAAA,iBAAiB,GAAA5E,UAAA,CAAA,CAAA,CAAA;AAAEf,IAAAA,oBAAoB,GAAAe,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAMlC,UAAU,GAAG3F,gBAAgB,KAAhBA,IAAAA,IAAAA,gBAAgB,gBAAA6L,qBAAA,GAAhB7L,gBAAgB,CAAE0M,aAAa,MAAAb,IAAAA,IAAAA,qBAAA,KAA/BA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAiCc,IAAI;AAExD,EAAA,IAAAC,UAAA,GAAwBhF,cAAQ,CAACpG,iBAAiB,CAAC;IAAAqL,UAAA,GAAA/E,cAAA,CAAA8E,UAAA,EAAA,CAAA,CAAA;AAA5C/F,IAAAA,IAAI,GAAAgG,UAAA,CAAA,CAAA,CAAA;AAAE9F,IAAAA,OAAO,GAAA8F,UAAA,CAAA,CAAA,CAAA;AAEpB,EAAA,IAAAzF,eAAA,GAA4BC,yBAAc,EAAE;IAAAC,qBAAA,GAAAF,eAAA,CAApCG,UAAU;AAAVA,IAAAA,UAAU,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;EAEvB,IAAAwF,qBAAA,GAIIC,6CAAuB,CAAC;AAC1B5G,MAAAA,GAAG,EAAHA,GAAG;AACHU,MAAAA,IAAI,EAAJA,IAAI;AACJmG,MAAAA,QAAQ,EAAE3C,2BAAiB;AAC3B9C,MAAAA,UAAU,EAAVA;AACF,KAAC,CAAC;IAAA0F,sBAAA,GAAAH,qBAAA,CARAI,IAAI;AAAAC,IAAAA,sBAAA,GAAAF,sBAAA,KAA0BG,KAAAA,CAAAA,GAAAA,+BAAkB,GAAAH,sBAAA;IAAxC1G,KAAK,GAAA4G,sBAAA,CAAL5G,KAAK;IAAEC,UAAU,GAAA2G,sBAAA,CAAV3G,UAAU;IACzBC,SAAS,GAAAqG,qBAAA,CAATrG,SAAS;IACT4G,UAAU,GAAAP,qBAAA,CAAVO,UAAU;EAQZ,IAAMpN,kBAAkB,GAAGqN,mBAAS,CAAC/F,UAAU,CAAC,IAAIf,UAAU,GAAG,CAAC;EAElE,oBACEhC,eAAA,CAAC+I,SAAS,EAAA;IAAA3L,QAAA,EAAA,cACRxB,cAAA,CAACV,QAAM,EAAA;AAEHI,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBD,MAAAA,WAAW,EAAXA,WAAW;AACXI,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBC,MAAAA,WAAW,EAAXA,WAAW;AACXF,MAAAA,gBAAgB,EAAhBA;KAEH,CAAC,eACFI,cAAA,CAAC8F,UAAU,EAAA5F,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAAA,aAAA,CAAA;AAEP8F,MAAAA,eAAe,EAAfA,eAAe;AACftG,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBG,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClB0F,MAAAA,UAAU,EAAVA,UAAU;AACVkB,MAAAA,IAAI,EAAJA,IAAI;AACJN,MAAAA,KAAK,EAALA,KAAK;AACLO,MAAAA,oBAAoB,EAApBA,oBAAoB;AACpBC,MAAAA,OAAO,EAAPA,OAAO;AACPP,MAAAA,UAAU,EAAVA,UAAU;AACVL,MAAAA,GAAG,EAAHA;AAAG,KAAA,EACAmG,eAAe,CAAA,CAAA,EAAA,EAAA,EAAA;AAEpBjK,MAAAA,YAAY,EAAAyJ,CAAAA,kBAAA,GAAElD,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAATA,SAAS,CAAE4E,OAAO,MAAA1B,IAAAA,IAAAA,kBAAA,KAAAA,KAAAA,CAAAA,GAAAA,kBAAA,GAAI,IAAK;MACzCrF,SAAS,EAAEA,SAAS,IAAI4G,UAAW;AACnC1G,MAAAA,cAAc,EAAEiC,SAAS,KAATA,IAAAA,IAAAA,SAAS,gBAAAmD,oBAAA,GAATnD,SAAS,CAAES,SAAS,MAAA0C,IAAAA,IAAAA,oBAAA,KAApBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,oBAAA,CAAsB0B,QAAS;AAC/C/G,MAAAA,eAAe,EAAEsC,UAAU,KAAVA,IAAAA,IAAAA,UAAU,gBAAAgD,qBAAA,GAAVhD,UAAU,CAAEK,SAAS,MAAA2C,IAAAA,IAAAA,qBAAA,KAArBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAuByB,QAAS;AACjD7G,MAAAA,eAAe,EAAE0B,UAAU,KAAVA,IAAAA,IAAAA,UAAU,gBAAA2D,qBAAA,GAAV3D,UAAU,CAAEe,SAAS,MAAA,IAAA,IAAA4C,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAArBA,qBAAA,CAAuBwB;KACzC,CAAA,CAAC,EACDrH,eAAe,IAAI,CAACK,SAAS,iBAC5BrG,cAAA,CAACsN,yBAAY,EAAA;AACLlH,MAAAA,UAAU,EAAVA,UAAU;AAAEL,MAAAA,GAAG,EAAHA,GAAG;AACrB+E,MAAAA,MAAM,EAAEuB,iBAAkB;MAC1BlB,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQzE,oBAAoB,CAAC,KAAK,CAAC;OAAC;AAC3C6G,MAAAA,gBAAgB,EAAEpB,YAAY,KAAZA,IAAAA,IAAAA,YAAY,gBAAAL,qBAAA,GAAZK,YAAY,CAAElD,SAAS,MAAA,IAAA,IAAA6C,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAvBA,qBAAA,CAAyBuB;AAAS,KACrD,CACF;AAAA,GACQ,CAAC;AAEhB;;;;"}
1
+ {"version":3,"file":"NeetoRules.js","sources":["../../app/javascript/src/components/NeetoRules/Header.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/constants.js","../../app/javascript/src/components/NeetoRules/RulesTable/DisableMessage.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/utils.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/index.jsx","../../app/javascript/src/components/NeetoRules/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { Button } from \"neetoui\";\n\nimport { createRoutes } from \"utils\";\n\nconst Header = withT(\n ({\n breadcrumbs,\n automationRulesPath,\n helpPopoverProps = {},\n hasUnfilteredRules,\n headerProps,\n t,\n }) => (\n <NeetoHeader\n {...{ breadcrumbs }}\n title={t(\"neetoRules.common.title\")}\n actionBlock={\n <Button\n className=\"hover:neeto-ui-text-white hover:no-underline\"\n data-cy=\"settings-automation-new-rule-button\"\n data-test-id=\"settings-automation-new-rule-button\"\n iconPosition=\"right\"\n label={t(\"neetoRules.button.addNew\")}\n style=\"primary\"\n to={createRoutes(automationRulesPath).new}\n />\n }\n searchProps={\n hasUnfilteredRules && {\n placeholder: t(\"neetoRules.placeholders.searchRules\"),\n }\n }\n titleHelpPopoverProps={{\n description: t(\"neetoRules.helpText.description\"),\n title: t(\"neetoRules.common.title\"),\n ...helpPopoverProps,\n }}\n {...headerProps}\n />\n )\n);\nexport default memo(Header);\n","export const STATUS_KEYS = { ENABLED: \"enabled\", DISABLED: \"disabled\" };\n\nexport const DEFAULT_INIT_PAGE = 1;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Typography } from \"neetoui\";\nimport { isNotNil } from \"ramda\";\n\nconst DisableMessage = withT(\n ({ t, disabledReason }) =>\n isNotNil(disabledReason) && (\n <div>\n <Typography class=\"text-red-600\" component=\"span\" style=\"body2\">\n {t(disabledReason)}\n </Typography>\n </div>\n )\n);\n\nexport default DisableMessage;\n","import { t } from \"i18next\";\nimport { removeBy, truncate } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Switch, Button } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport DisableMessage from \"./DisableMessage\";\n\nconst buildActionDropdownMenuItems = ({\n rule,\n onClone,\n onDelete,\n moreDropdownItems = [],\n automationRulesPath,\n allowCloning,\n}) => {\n const defaultOptions = [\n ...moreDropdownItems.map(({ onClick, ...others }) => ({\n ...others,\n onClick: () => onClick(rule),\n })),\n {\n key: \"edit\",\n className: \"neeto-ui-btn\",\n \"data-test-id\": \"automation-rules-edit-link\",\n \"data-cy\": \"automation-rules-edit-link\",\n label: t(\"neetoRules.button.edit\"),\n to: buildUrl(createRoutes(automationRulesPath).edit, { ruleId: rule.id }),\n },\n {\n key: \"clone\",\n \"data-test-id\": \"automation-rules-clone-link\",\n \"data-cy\": \"automation-rules-clone-link\",\n label: t(\"neetoRules.button.clone\"),\n onClick: () => onClone(rule.id),\n },\n { key: \"divider\", type: \"divider\" },\n {\n key: \"delete\",\n \"data-test-id\": \"automation-rules-delete-link\",\n \"data-cy\": \"automation-rules-delete-link\",\n label: t(\"neetoRules.button.delete\"),\n onClick: () => onDelete(rule),\n },\n ];\n\n if (!allowCloning) {\n return removeBy({ key: \"clone\" }, defaultOptions);\n }\n\n return defaultOptions;\n};\n\nexport const getColumnData = ({\n handleChangeStatus,\n additionalColumns = [],\n onPreview,\n ...otherProps\n}) => {\n const { setMoreActionDropdownItems } = useUtilityStore.pick();\n\n return [\n {\n title: t(\"neetoRules.labels.name\"),\n dataIndex: \"name\",\n key: \"name\",\n ellipsis: true,\n width: 440,\n render: (name, rule) => (\n <div>\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n className=\"whitespace-pre-line wrap-break-word text-left\"\n style=\"link\"\n onClick={() => {\n setMoreActionDropdownItems(\n buildActionDropdownMenuItems({ rule, ...otherProps })\n );\n onPreview(rule.id);\n }}\n >\n {truncate(name, 100)}\n </Button>\n <MoreDropdown\n dropdownButtonProps={{ className: \"mr-1 my-1\" }}\n menuItems={buildActionDropdownMenuItems({ rule, ...otherProps })}\n dropdownProps={{\n strategy: \"fixed\",\n appendTo: () => document.body,\n }}\n />\n </div>\n <DisableMessage disabledReason={rule.disabledReason} />\n </div>\n ),\n },\n {\n title: t(\"neetoRules.labels.active\"),\n key: \"active\",\n width: 140,\n align: \"center\",\n render: (_, rule) => (\n <div className=\"flex justify-center\">\n <Switch\n checked={rule.status === STATUS_KEYS.ENABLED}\n data-test-id=\"automation-rules-state-switch-row\"\n disabled={!!rule.disabledReason}\n onChange={e => {\n handleChangeStatus(e, rule.id);\n }}\n />\n </div>\n ),\n },\n ...additionalColumns,\n ];\n};\n\nexport const renderNoDataHelpText = helpDocUrl => (\n <Trans\n i18nKey=\"neetoRules.noData.helpText\"\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: helpDocUrl }} />,\n }}\n />\n);\n","import { useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { Bar as FilterBar } from \"neetofilters\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Alert, Table, Typography, NoData, Button, Spinner } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport {\n useCloneAutomationRule,\n useDeleteAutomationRule,\n useUpdateAutomationRule,\n} from \"hooks/reactQuery/useAutomationRulesApi\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport { getColumnData, renderNoDataHelpText } from \"./utils\";\n\nconst RulesTable = ({\n url,\n additionalColumns,\n allowReordering,\n automationRulesPath = \"/\",\n onPreview,\n moreDropdownItems = [],\n rules = [],\n totalCount,\n helpDocUrl,\n isLoading,\n onDeleteSuccess,\n onCloneSuccess,\n onUpdateSuccess,\n page,\n setIsReorderPaneOpen,\n setPage,\n allowCloning = true,\n hasUnfilteredRules = true,\n payloadKey = \"rule\",\n}) => {\n const { searchTerm = \"\" } = useQueryParams();\n\n const searchKeywordProps = {\n key: \"search_term\",\n node: \"name\",\n value: searchTerm,\n };\n\n const [selectedRule, setSelectedRule] = useState(null);\n\n const { hidePreviewPane } = useUtilityStore.pick();\n\n const { t } = useTranslation();\n\n const { mutate: updateRule, isPending: isUpdating } =\n useUpdateAutomationRule(url);\n\n const { mutate: cloneRule, isPending: isCloning } =\n useCloneAutomationRule(url);\n\n const { mutate: deleteRule, isPending: isDeleting } =\n useDeleteAutomationRule(url);\n\n const handleChangeStatus = (event, id) => {\n const status = event.target.checked\n ? STATUS_KEYS.ENABLED\n : STATUS_KEYS.DISABLED;\n const payload = { [payloadKey]: { status } };\n updateRule({ id, url, payload }, { onSuccess: () => onUpdateSuccess?.() });\n };\n\n const handleCloneSuccess = () => {\n onCloneSuccess?.();\n hidePreviewPane();\n };\n\n const handleDeleteSuccess = () => {\n onDeleteSuccess?.();\n hidePreviewPane();\n setSelectedRule(null);\n };\n\n const columnData = getColumnData({\n handleChangeStatus,\n additionalColumns,\n onClone: id => cloneRule({ id, url }, { onSuccess: handleCloneSuccess }),\n onDelete: setSelectedRule,\n onPreview,\n automationRulesPath,\n moreDropdownItems,\n allowCloning,\n });\n\n if (isLoading && isEmpty(rules)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n {hasUnfilteredRules && (\n <SubHeader\n leftActionBlock={\n <>\n <Typography className=\"mr-4 font-semibold\" style=\"h4\">\n {t(\"neetoRules.common.automationRuleWithCount\", {\n count: totalCount,\n })}\n </Typography>\n <FilterBar className=\"mb-0\" keyword={searchKeywordProps} />\n </>\n }\n rightActionBlock={\n hasUnfilteredRules &&\n allowReordering && (\n <Button\n disabled={isNotEmpty(searchTerm)}\n label={t(\"neetoRules.common.reorder\")}\n style=\"secondary\"\n onClick={() => setIsReorderPaneOpen(true)}\n />\n )\n }\n />\n )}\n {isNotEmpty(rules) ? (\n <>\n <TableWrapper hasPagination={totalCount > DEFAULT_PAGE_SIZE}>\n <Table\n {...{ columnData, totalCount }}\n fixedHeight\n allowClick={false}\n currentPageNumber={page}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n handlePageChange={setPage}\n loading={isUpdating || isCloning || isDeleting || isLoading}\n rowData={rules.map(item => ({ key: item.id, ...item }))}\n rowSelection={false}\n tableLayout=\"fixed\"\n />\n </TableWrapper>\n <Alert\n isOpen={!!selectedRule}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoRules.button.delete\")}\n title={t(\"neetoRules.deleteAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoRules.deleteAlert.message\"\n values={{ name: selectedRule?.name }}\n />\n }\n onClose={() => setSelectedRule(null)}\n onSubmit={() =>\n deleteRule(\n { id: selectedRule?.id, url },\n { onSuccess: handleDeleteSuccess }\n )\n }\n />\n </>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={t(\"neetoRules.noData.title\")}\n {...(isEmpty(searchTerm) && {\n helpText: helpDocUrl ? renderNoDataHelpText(helpDocUrl) : null,\n primaryButtonProps: {\n label: t(\"neetoRules.button.addNew\"),\n to: createRoutes(automationRulesPath).new,\n },\n })}\n />\n </div>\n )}\n </>\n );\n};\n\nexport default RulesTable;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\n\nimport { useFetchAutomationRules } from \"hooks/reactQuery/useAutomationRulesApi\";\n\nimport { INITIAL_RULES_DATA } from \"./constants\";\nimport Header from \"./Header\";\nimport RulesReorder from \"./RulesReorder\";\nimport RulesTable from \"./RulesTable\";\nimport { DEFAULT_INIT_PAGE } from \"./RulesTable/constants\";\n\nconst NeetoRules = ({\n breadcrumbs,\n automationRulesPath,\n automationRulesEndpoint: url,\n allowReordering = false,\n rulesTableProps = {},\n helpPopoverProps = {},\n deleteRule,\n cloneRule,\n updateRule,\n reorderRules,\n headerProps = {},\n}) => {\n const [isReorderPaneOpen, setIsReorderPaneOpen] = useState(false);\n const helpDocUrl = helpPopoverProps?.helpLinkProps?.href;\n\n const [page, setPage] = useState(DEFAULT_INIT_PAGE);\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const {\n data: { rules, totalCount } = INITIAL_RULES_DATA,\n isLoading,\n isFetching,\n } = useFetchAutomationRules({\n url,\n page,\n pageSize: DEFAULT_PAGE_SIZE,\n searchTerm,\n });\n\n const hasUnfilteredRules = isPresent(searchTerm) || totalCount > 0;\n\n return (\n <Container>\n <Header\n {...{\n automationRulesPath,\n breadcrumbs,\n hasUnfilteredRules,\n headerProps,\n helpPopoverProps,\n }}\n />\n <RulesTable\n {...{\n allowReordering,\n automationRulesPath,\n hasUnfilteredRules,\n helpDocUrl,\n page,\n rules,\n setIsReorderPaneOpen,\n setPage,\n totalCount,\n url,\n ...rulesTableProps,\n }}\n allowCloning={cloneRule?.allowed ?? true}\n isLoading={isLoading || isFetching}\n onCloneSuccess={cloneRule?.onSuccess?.callback}\n onDeleteSuccess={deleteRule?.onSuccess?.callback}\n onUpdateSuccess={updateRule?.onSuccess?.callback}\n />\n {allowReordering && !isLoading && (\n <RulesReorder\n {...{ totalCount, url }}\n isOpen={isReorderPaneOpen}\n onClose={() => setIsReorderPaneOpen(false)}\n onReorderSuccess={reorderRules?.onSuccess?.callback}\n />\n )}\n </Container>\n );\n};\n\nexport default NeetoRules;\n"],"names":["Header","withT","_ref","breadcrumbs","automationRulesPath","_ref$helpPopoverProps","helpPopoverProps","hasUnfilteredRules","headerProps","t","_jsx","NeetoHeader","_objectSpread","title","actionBlock","Button","className","iconPosition","label","style","to","createRoutes","searchProps","placeholder","titleHelpPopoverProps","description","memo","STATUS_KEYS","ENABLED","DISABLED","DEFAULT_INIT_PAGE","DisableMessage","disabledReason","isNotNil","children","Typography","component","buildActionDropdownMenuItems","rule","onClone","onDelete","_ref$moreDropdownItem","moreDropdownItems","allowCloning","defaultOptions","concat","_toConsumableArray","map","_ref2","onClick","others","_objectWithoutProperties","_excluded","key","buildUrl","edit","ruleId","id","type","removeBy","getColumnData","_ref3","handleChangeStatus","_ref3$additionalColum","additionalColumns","onPreview","otherProps","_excluded2","_useUtilityStore","useUtilityStore","store","setMoreActionDropdownItems","shallow","dataIndex","ellipsis","width","render","name","_jsxs","truncate","MoreDropdown","dropdownButtonProps","menuItems","dropdownProps","strategy","appendTo","document","body","align","_","Switch","checked","status","disabled","onChange","e","renderNoDataHelpText","helpDocUrl","Trans","i18nKey","components","a","target","pathname","RulesTable","url","allowReordering","_ref$automationRulesP","_ref$rules","rules","totalCount","isLoading","onDeleteSuccess","onCloneSuccess","onUpdateSuccess","page","setIsReorderPaneOpen","setPage","_ref$allowCloning","_ref$hasUnfilteredRul","_ref$payloadKey","payloadKey","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","_useState","useState","_useState2","_slicedToArray","selectedRule","setSelectedRule","hidePreviewPane","_useTranslation","useTranslation","_useUpdateAutomationR","useUpdateAutomationRule","updateRule","mutate","isUpdating","isPending","_useCloneAutomationRu","useCloneAutomationRule","cloneRule","isCloning","_useDeleteAutomationR","useDeleteAutomationRule","deleteRule","isDeleting","event","payload","_defineProperty","onSuccess","handleCloneSuccess","handleDeleteSuccess","columnData","isEmpty","Spinner","_Fragment","SubHeader","leftActionBlock","count","FilterBar","keyword","rightActionBlock","isNotEmpty","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","Table","fixedHeight","allowClick","currentPageNumber","defaultPageSize","handlePageChange","loading","rowData","item","rowSelection","tableLayout","Alert","isOpen","isSubmitting","submitButtonLabel","message","values","onClose","onSubmit","NoData","helpText","primaryButtonProps","NeetoRules","_helpPopoverProps$hel","_cloneRule$allowed","_cloneRule$onSuccess","_deleteRule$onSuccess","_updateRule$onSuccess","_reorderRules$onSucce","automationRulesEndpoint","_ref$allowReordering","_ref$rulesTableProps","rulesTableProps","reorderRules","_ref$headerProps","isReorderPaneOpen","helpLinkProps","href","_useState3","_useState4","_useFetchAutomationRu","useFetchAutomationRules","pageSize","_useFetchAutomationRu2","data","_useFetchAutomationRu3","INITIAL_RULES_DATA","isFetching","isPresent","Container","allowed","callback","RulesReorder","onReorderSuccess"],"mappings":"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"}