@bigbinary/neeto-rules-frontend 2.5.15-beta-9 → 2.5.16

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.
Files changed (38) hide show
  1. package/README.md +0 -45
  2. package/app/javascript/src/translations/en.json +9 -35
  3. package/dist/NeetoRules.js +27 -6
  4. package/dist/NeetoRules.js.map +1 -1
  5. package/dist/NeetoRulesForm.js +3250 -4797
  6. package/dist/NeetoRulesForm.js.map +1 -1
  7. package/dist/RulePreview.js +18 -25
  8. package/dist/RulePreview.js.map +1 -1
  9. package/dist/cjs/NeetoRules.js +30 -9
  10. package/dist/cjs/NeetoRules.js.map +1 -1
  11. package/dist/cjs/NeetoRulesForm.js +3702 -5249
  12. package/dist/cjs/NeetoRulesForm.js.map +1 -1
  13. package/dist/cjs/RulePreview.js +19 -26
  14. package/dist/cjs/RulePreview.js.map +1 -1
  15. package/dist/cjs/index.js +15 -19
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/{constants-BkPVd-Gz.js → constants-C0OOtVhT.js} +8 -10
  18. package/dist/constants-C0OOtVhT.js.map +1 -0
  19. package/dist/{constants-DghBXpIM.js → constants-CB5HRjxq.js} +7 -10
  20. package/dist/constants-CB5HRjxq.js.map +1 -0
  21. package/dist/index.js +15 -19
  22. package/dist/index.js.map +1 -1
  23. package/dist/useUtilityStore-BGuo9bko.js +27 -0
  24. package/dist/useUtilityStore-BGuo9bko.js.map +1 -0
  25. package/dist/useUtilityStore-KjKihXb0.js +25 -0
  26. package/dist/useUtilityStore-KjKihXb0.js.map +1 -0
  27. package/dist/utils-BngEaPaz.js +26 -0
  28. package/dist/utils-BngEaPaz.js.map +1 -0
  29. package/dist/utils-CvS2p6ZS.js +23 -0
  30. package/dist/utils-CvS2p6ZS.js.map +1 -0
  31. package/package.json +14 -17
  32. package/types.d.ts +0 -12
  33. package/dist/constants-BkPVd-Gz.js.map +0 -1
  34. package/dist/constants-DghBXpIM.js.map +0 -1
  35. package/dist/useUtilityStore-BcSUEW_u.js +0 -70
  36. package/dist/useUtilityStore-BcSUEW_u.js.map +0 -1
  37. package/dist/useUtilityStore-DhJI92iM.js +0 -74
  38. package/dist/useUtilityStore-DhJI92iM.js.map +0 -1
@@ -7,17 +7,18 @@ var Pane = require('@bigbinary/neetoui/Pane');
7
7
  var Spinner = require('@bigbinary/neetoui/Spinner');
8
8
  var Typography = require('@bigbinary/neetoui/Typography');
9
9
  var reactI18next = require('react-i18next');
10
- var useUtilityStore = require('../useUtilityStore-DhJI92iM.js');
10
+ var useUtilityStore = require('../useUtilityStore-BGuo9bko.js');
11
11
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
12
12
  var react = require('react');
13
13
  var Down = require('@bigbinary/neeto-icons/Down');
14
14
  var Up = require('@bigbinary/neeto-icons/Up');
15
15
  var Button = require('@bigbinary/neetoui/Button');
16
16
  var ramda = require('ramda');
17
+ var utils = require('../utils-BngEaPaz.js');
17
18
  var jsxRuntime = require('react/jsx-runtime');
18
19
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
19
20
  var Tooltip = require('@bigbinary/neetoui/Tooltip');
20
- var constants = require('../constants-BkPVd-Gz.js');
21
+ var constants = require('../constants-C0OOtVhT.js');
21
22
  require('@bigbinary/neeto-commons-frontend/react-utils');
22
23
  require('zustand');
23
24
  require('i18next');
@@ -49,12 +50,10 @@ var ACTION_TYPE = {
49
50
  EMAIL_TO: "emailTo",
50
51
  EMAIL_TO_IDS: "emailToIds",
51
52
  SMS_TO_NUMBERS: "smsToNumbers",
53
+ MULTI_SELECT: "multiSelect",
54
+ SEND_TO_API: "sendToApi",
52
55
  DROPDOWN: "dropdown",
53
- SELECT: "select",
54
- MULTISELECT: "multiSelect",
55
- MULTISELECT_CHECKBOX: "multiSelectCheckbox",
56
- RADIO: "radio",
57
- SEND_TO_API: "sendToApi"
56
+ MULTISELECT: "multiSelect"
58
57
  };
59
58
  var TEXT_FIELDS = [ACTION_TYPE.TEXT, ACTION_TYPE.NUMBER, ACTION_TYPE.DECIMAL, ACTION_TYPE.REGEX, ACTION_TYPE.DATE];
60
59
 
@@ -102,16 +101,6 @@ var getActionDisplayValue = function getActionDisplayValue(action, actionOption)
102
101
  displayValueData.displayValue = getEntityDisplayValue(action, actionOption);
103
102
  return displayValueData;
104
103
  }
105
- case ACTION_TYPE.SELECT:
106
- {
107
- displayValueData.displayValue = getEntityDisplayValue(action, actionOption);
108
- return displayValueData;
109
- }
110
- case ACTION_TYPE.RADIO:
111
- {
112
- displayValueData.displayValue = getEntityDisplayValue(action, actionOption);
113
- return displayValueData;
114
- }
115
104
  case ACTION_TYPE.EMAIL_TO_IDS:
116
105
  {
117
106
  displayValueData.isBulk = true;
@@ -159,7 +148,7 @@ var ActionsDetail = function ActionsDetail(_ref) {
159
148
  var _ref2 = (_getActionDisplayValu = getActionDisplayValue(action, actionOption)) !== null && _getActionDisplayValu !== void 0 ? _getActionDisplayValu : {},
160
149
  displayValue = _ref2.displayValue,
161
150
  isBulk = _ref2.isBulk;
162
- if (actionOption.type === ACTION_TYPE.MULTISELECT || actionOption.type === ACTION_TYPE.MULTISELECT_CHECKBOX) {
151
+ if (actionOption.type === ACTION_TYPE.MULTISELECT) {
163
152
  var values = ramda.pluck("label", actionOption.dropdownOptions.filter(function (_ref3) {
164
153
  var value = _ref3.value;
165
154
  return action.metadata.value.includes(value);
@@ -174,7 +163,7 @@ var ActionsDetail = function ActionsDetail(_ref) {
174
163
  if (!displayValue) return null;
175
164
  if (!isBulk) {
176
165
  var defaultSeparator = actionOption.type === ACTION_TYPE.SEND_TO_API ? t("neetoRules.common.at") : t("neetoRules.common.to");
177
- var separator = useUtilityStore.getSeparator({
166
+ var separator = utils.getSeparator({
178
167
  defaultSeparator: defaultSeparator,
179
168
  selectedField: actionOption
180
169
  });
@@ -265,7 +254,7 @@ var ConditionsDetail = function ConditionsDetail(_ref) {
265
254
  var conditionsList = conditions.value;
266
255
  var allConditions = viewMore && conditionsList.length > PREVIEW_CONDITION_LIMIT ? conditionsList : conditionsList.slice(0, PREVIEW_CONDITION_LIMIT);
267
256
  var allConditionVerbs = _objectSpread(_objectSpread({}, constants.VERB_LABELS), conditionVerbs);
268
- var getLogicalOperator = function getLogicalOperator(joinType) {
257
+ var getLogicOperator = function getLogicOperator(joinType) {
269
258
  return joinType === "or_operator" ? "or" : "and";
270
259
  };
271
260
  var renderConditionValues = function renderConditionValues(condition, conditionOption) {
@@ -290,7 +279,7 @@ var ConditionsDetail = function ConditionsDetail(_ref) {
290
279
  })
291
280
  });
292
281
  }
293
- if (conditionOption.type === "multi-select" || conditionOption.type === "multi-select-checkbox") {
282
+ if (conditionOption.type === "multi-select") {
294
283
  var values = ramda.pluck("label", conditionOption.dropdownOptions.filter(function (_ref2) {
295
284
  var value = _ref2.value;
296
285
  return condition.metadata.values.includes(value);
@@ -306,7 +295,7 @@ var ConditionsDetail = function ConditionsDetail(_ref) {
306
295
  values: condition.metadata.values
307
296
  });
308
297
  }
309
- if (conditionOption.type === "select" || conditionOption.type === "radio" || conditionOption.type === "dropdown") {
298
+ if (conditionOption.type === "dropdown") {
310
299
  return /*#__PURE__*/jsxRuntime.jsx(Typography, {
311
300
  className: "neeto-ui-text-gray-800",
312
301
  style: "h5",
@@ -354,7 +343,7 @@ var ConditionsDetail = function ConditionsDetail(_ref) {
354
343
  className: "neeto-ui-text-gray-800",
355
344
  style: "h5",
356
345
  weight: "semibold",
357
- children: getLogicalOperator(condition.joinType)
346
+ children: getLogicOperator(condition.joinType)
358
347
  }), /*#__PURE__*/jsxRuntime.jsx(Typography, {
359
348
  className: "neeto-ui-text-gray-700",
360
349
  style: "h5",
@@ -478,9 +467,13 @@ var RulePreview = function RulePreview(_ref) {
478
467
  }), /*#__PURE__*/jsxRuntime.jsx(Pane.Body, {
479
468
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
480
469
  className: "mt-2 w-full",
481
- children: [/*#__PURE__*/jsxRuntime.jsx("div", {
470
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
482
471
  className: "mb-6",
483
- children: ruleDetails.entity && /*#__PURE__*/jsxRuntime.jsxs("div", {
472
+ children: [ruleDetails.description && /*#__PURE__*/jsxRuntime.jsx(Typography, {
473
+ className: "my-auto mb-4",
474
+ style: "body2",
475
+ children: ruleDetails.description.value
476
+ }), ruleDetails.entity && /*#__PURE__*/jsxRuntime.jsxs("div", {
484
477
  className: "flex space-x-8",
485
478
  children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
486
479
  className: "neeto-ui-text-gray-800 col-span-1",
@@ -493,7 +486,7 @@ var RulePreview = function RulePreview(_ref) {
493
486
  weight: "normal",
494
487
  children: ruleDetails.entity.value
495
488
  })]
496
- })
489
+ })]
497
490
  }), ruleDetails.events && neetoCist.isNotEmpty(ruleDetails.events) ? /*#__PURE__*/jsxRuntime.jsx(EventsDetail, {
498
491
  conditions: ruleDetails.conditions,
499
492
  events: ruleDetails.events,
@@ -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\";\nimport PropTypes from \"prop-types\";\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\nTitle.propTypes = {\n title: PropTypes.string,\n children: PropTypes.node,\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\";\n\nimport { PREVIEW_CONDITION_LIMIT } from \"./constants\";\nimport MultiSelectValues from \"./MultiSelectValues\";\nimport { getEntityDisplayValue } from \"./utils\";\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 (\n [\"date\", \"decimal\", \"email\", \"number\", \"text\"].includes(\n conditionOption.type\n )\n ) {\n return (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {condition.metadata.value?.toLowerCase()}\n </Typography>\n );\n }\n\n if (conditionOption.type === \"textarea\") {\n return (\n <Tooltip content={condition.metadata.value?.toLowerCase()}>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {t(\"neetoRules.labels.text\")}\n </Typography>\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 <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {getEntityDisplayValue(condition, conditionOption)}\n </Typography>\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 <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {conditionOption?.label.toLowerCase()}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {conditionVerb}\n </Typography>\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 <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.and\", { what: \"\" })}\n </Typography>\n )}\n {!!index && (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {getLogicalOperator(condition.joinType)}\n </Typography>\n )}\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.when\")}\n </Typography>\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","ConditionsDetail","conditions","conditionOptions","_ref$conditionVerbs","conditionVerbs","_ref$hasEvent","hasEvent","conditionsList","allConditions","allConditionVerbs","_objectSpread","VERB_LABELS","getLogicalOperator","joinType","renderConditionValues","condition","conditionOption","_condition$metadata$v","_condition$metadata$v2","Tooltip","content","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":";;;;;;;;;;;;;;;;;;;;;;;;AAGA,IAAMA,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAAA,oBAC9BC,eAAA,CAAAC,mBAAA,EAAA;IAAAF,QAAA,EAAA,cACEG,cAAA,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,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,mDAAmD;AAAAL,MAAAA,QAAA,EAC/DA;AAAQ,KACN,CAAC;AAAA,GACN,CAAC;AAAA,CACJ;;ACZM,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,cAAA,CAAAD,mBAAA,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,eAAA,CAAC+B,cAAQ,EAAA;AAAAhC,QAAAA,QAAA,GACN,CAAC,CAAC+B,GAAG,iBACJ5B,cAAA,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,cAAA,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,gBAAM,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,cAAQ,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,2BAAc,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,WAAK,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,cAAA,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,4BAAY,CAAC;AAC7BD,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBE,QAAAA,aAAa,EAAEpC;AACjB,OAAC,CAAC;MAEF,oBACE3C,eAAA,CAAAC,mBAAA,EAAA;QAAAF,QAAA,EAAA,cACEG,cAAA,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,cAAA,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,eAAA,CAAA,KAAA,EAAA;AAAKI,QAAAA,SAAS,EAAC,WAAW;QAAAL,QAAA,EAAA,cACxBG,cAAA,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,gBAAM,CAAC;MAAER,KAAK,EAAEa,MAAM,CAACuC;AAAK,KAAC,EAAE3B,OAAO,CAAC4B,aAAa,CAAC;AAC1E,IAAA,IAAI,CAACvC,YAAY,EAAE,OAAO,IAAI;IAE9B,oBACE3C,eAAA,CAAAC,mBAAA,EAAA;MAAAF,QAAA,EAAA,cACEG,cAAA,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,eAAA,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,eAAA,CAAA,KAAA,EAAA;AACEI,QAAAA,SAAS,EAAC,qCAAqC;AAC/C,QAAA,SAAA,EAAQ,oBAAoB;QAAAL,QAAA,EAAA,cAG5BG,cAAA,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,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,aAAa;MAAAL,QAAA,eAC1BG,cAAA,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;;;;ACvID,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA9F,IAAA,EAKhB;AAAA,EAAA,IAJJ+F,UAAU,GAAA/F,IAAA,CAAV+F,UAAU;IACVC,gBAAgB,GAAAhG,IAAA,CAAhBgG,gBAAgB;IAAAC,mBAAA,GAAAjG,IAAA,CAChBkG,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,mBAAA;IAAAE,aAAA,GAAAnG,IAAA,CACnBoG,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,aAAA;AAEf,EAAA,IAAAzC,SAAA,GAAgCC,cAAQ,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,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMmC,cAAc,GAAGN,UAAU,CAAC/D,KAAK;AACvC,EAAA,IAAMsE,aAAa,GACjBxC,QAAQ,IAAIuC,cAAc,CAAChC,MAAM,GAAG3D,uBAAuB,GACvD2F,cAAc,GACdA,cAAc,CAAC/B,KAAK,CAAC,CAAC,EAAE5D,uBAAuB,CAAC;EAEtD,IAAM6F,iBAAiB,GAAAC,aAAA,CAAAA,aAAA,CAAQC,EAAAA,EAAAA,qBAAW,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,IACE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC5D,QAAQ,CACrD4D,eAAe,CAAC3D,IAClB,CAAC,EACD;AAAA,MAAA,IAAA4D,qBAAA;MACA,oBACE1G,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAAA6G,CAAAA,qBAAA,GAEhBF,SAAS,CAACpE,QAAQ,CAACT,KAAK,MAAA,IAAA,IAAA+E,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAxBA,qBAAA,CAA0B5E,WAAW;AAAE,OAC9B,CAAC;AAEjB;AAEA,IAAA,IAAI2E,eAAe,CAAC3D,IAAI,KAAK,UAAU,EAAE;AAAA,MAAA,IAAA6D,sBAAA;MACvC,oBACE3G,cAAA,CAAC4G,OAAO,EAAA;AAACC,QAAAA,OAAO,EAAAF,CAAAA,sBAAA,GAAEH,SAAS,CAACpE,QAAQ,CAACT,KAAK,MAAA,IAAA,IAAAgF,sBAAA,KAAxBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,sBAAA,CAA0B7E,WAAW,EAAG;QAAAjC,QAAA,eACxDG,cAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;UAAAP,QAAA,EAEhBgE,CAAC,CAAC,wBAAwB;SACjB;AAAC,OACN,CAAC;AAEd;IAEA,IACE4C,eAAe,CAAC3D,IAAI,KAAK,cAAc,IACvC2D,eAAe,CAAC3D,IAAI,KAAK,uBAAuB,EAChD;AACA,MAAA,IAAMrB,MAAM,GAAG+C,WAAK,CAClB,OAAO,EACPiC,eAAe,CAACpE,eAAe,CAACoC,MAAM,CAAC,UAAAF,KAAA,EAAA;AAAA,QAAA,IAAG5C,KAAK,GAAA4C,KAAA,CAAL5C,KAAK;QAAA,OAC7C6E,SAAS,CAACpE,QAAQ,CAACX,MAAM,CAACoB,QAAQ,CAAClB,KAAK,CAAC;AAAA,OAC3C,CACF,CAAC;MAED,oBACE3B,cAAA,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,CAAC4D,eAAe,CAAC3D,IAAI,CAAC,EAAE;MAC1D,oBACE9C,cAAA,CAACuB,iBAAiB,EAAA;AAChBC,QAAAA,SAAS,EAAEqC,CAAC,CAAC,sBAAsB,CAAE;AACrCpC,QAAAA,MAAM,EAAE+E,SAAS,CAACpE,QAAQ,CAACX;AAAO,OACnC,CAAC;AAEN;AAEA,IAAA,IACEgF,eAAe,CAAC3D,IAAI,KAAK,QAAQ,IACjC2D,eAAe,CAAC3D,IAAI,KAAK,OAAO,IAChC2D,eAAe,CAAC3D,IAAI,KAAK,UAAU,EACnC;MACA,oBACE9C,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAEhBkC,qBAAqB,CAACyE,SAAS,EAAEC,eAAe;AAAC,OACxC,CAAC;AAEjB;AAEA,IAAA,OAAO,IAAI;GACZ;AAED,EAAA,IAAMK,eAAe,GAAG,SAAlBA,eAAeA,CAAGN,SAAS,EAAI;AAAA,IAAA,IAAAO,qBAAA;IACnC,IAAMN,eAAe,GAAGtE,gBAAM,CAC5B;MAAER,KAAK,EAAE6E,SAAS,CAACQ;KAAO,EAC1BrB,gBACF,CAAC;AACD,IAAA,IAAI,CAACc,eAAe,EAAE,OAAO,IAAI;AAEjC,IAAA,IAAMQ,aAAa,GAAAF,CAAAA,qBAAA,GAAGb,iBAAiB,CAACM,SAAS,CAACU,IAAI,CAAC,cAAAH,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjCA,qBAAA,CAAmCjF,WAAW,EAAE;IAEtE,oBACEhC,eAAA,CAAAC,mBAAA,EAAA;MAAAF,QAAA,EAAA,cACEG,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;QAAAP,QAAA,EAEhB4G,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAe,CAAEnE,KAAK,CAACR,WAAW;AAAE,OAC3B,CAAC,eACb9B,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAEhBoH;AAAa,OACJ,CAAC,EACZV,qBAAqB,CAACC,SAAS,EAAEC,eAAe,CAAC;AAAA,KAClD,CAAC;GAEN;EAED,oBACE3G,eAAA,CAAAC,mBAAA,EAAA;AAAAF,IAAAA,QAAA,gBACEG,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,MAAM;MAAAL,QAAA,EAClBoG,aAAa,CAACvE,GAAG,CAAC,UAAC8E,SAAS,EAAErC,KAAK,EAAA;AAAA,QAAA,oBAClCrE,eAAA,CAAA,KAAA,EAAA;AACEI,UAAAA,SAAS,EAAC,qCAAqC;UAAAL,QAAA,EAAA,CAG9C,CAACsE,KAAK,IAAI4B,QAAQ,iBACjB/F,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;AAAAP,YAAAA,QAAA,EAEdgE,CAAC,CAAC,uBAAuB,EAAE;AAAEO,cAAAA,IAAI,EAAE;aAAI;WAC9B,CACb,EACA,CAAC,CAACD,KAAK,iBACNnE,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAEhBwG,kBAAkB,CAACG,SAAS,CAACF,QAAQ;AAAC,WAC7B,CACb,eACDtG,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;YAAAP,QAAA,EAEdgE,CAAC,CAAC,wBAAwB;AAAC,WAClB,CAAC,EACZiD,eAAe,CAACN,SAAS,CAAC;SA3BtBA,EAAAA,SAAS,CAACW,EA4BZ,CAAC;OACP;KACE,CAAC,EACLnB,cAAc,CAAChC,MAAM,GAAG,CAAC,iBACxBhE,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,aAAa;MAAAL,QAAA,eAC1BG,cAAA,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;;AC7LD,IAAM4B,YAAY,GAAG,SAAfA,YAAYA,CAAAzH,IAAA,EAA0C;AAAA,EAAA,IAAA0H,qBAAA;AAAA,EAAA,IAApCC,MAAM,GAAA3H,IAAA,CAAN2H,MAAM;IAAEC,SAAS,GAAA5H,IAAA,CAAT4H,SAAS;IAAE7B,UAAU,GAAA/F,IAAA,CAAV+F,UAAU;AACnD,EAAA,IAAA/B,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EAET,IAAM2D,UAAU,GAAGhD,WAAK,CAAC,MAAM,EAAE8C,MAAM,CAAC3F,KAAK,CAAC;EAC9C,IAAM8F,SAAS,GAAGH,MAAM,CAACI,YAAY,CAACjD,MAAM,CAAC,UAAAkD,KAAK,EAAA;IAAA,OAChDH,UAAU,KAAVA,IAAAA,IAAAA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAE3E,QAAQ,CAAC8E,KAAK,CAAChG,KAAK,CAAC;AAAA,GACnC,CAAC;EAED,IAAMiG,gBAAgB,GAAGzF,gBAAM,CAC7B;IAAER,KAAK,EAAE4F,SAAS,CAAC5F;AAAM,GAAC,EAC1B4F,SAAS,CAACM,OACZ,CAAC;EAED,oBACE/H,eAAA,CAACmF,KAAI,EAAA;AAACrF,IAAAA,KAAK,EAAEiE,CAAC,CAAC,wBAAwB,CAAE;AAAAhE,IAAAA,QAAA,gBACvCC,eAAA,CAAA,KAAA,EAAA;AACEI,MAAAA,SAAS,EAAC,gCAAgC;AAC1C,MAAA,SAAA,EAAQ,uBAAuB;MAAAL,QAAA,EAAA,CAE9B4H,SAAS,CAAC/F,GAAG,CAAC,UAACiG,KAAK,EAAExD,KAAK,EAAA;AAAA,QAAA,oBAC1BrE,eAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,cAAc;AAAAL,UAAAA,QAAA,GAC1B,CAACsE,KAAK,iBACLnE,cAAA,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,cAAA,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,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAEhB8H,KAAK,CAACrF,KAAK,CAACR,WAAW;AAAE,WAChB,CAAC;AAAA,SAAA,EAzBoBqC,KA0B9B,CAAC;AAAA,OACP,CAAC,eACFnE,cAAA,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,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAEhB+H,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,KAAA,CAAA,IAAA,CAAAP,qBAAA,GAAhBO,gBAAgB,CAAEtF,KAAK,cAAA+E,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAvBA,qBAAA,CAAyBvF,WAAW;AAAE,OAC7B,CAAC;AAAA,KACV,CAAC,eACN9B,cAAA,CAACyF,gBAAgB,EAAA;AACTC,MAAAA,UAAU,EAAVA,UAAU;MAChBC,gBAAgB,EAAED,UAAU,CAACC,gBAAiB;MAC9CE,cAAc,EAAEH,UAAU,CAACoC;AAAM,KAClC,CAAC;AAAA,GACE,CAAC;AAEX,CAAC;;AClED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAApI,IAAA,EAAoD;AAAA,EAAA,IAA9CqI,SAAS,GAAArI,IAAA,CAATqI,SAAS;IAAEC,WAAW,GAAAtI,IAAA,CAAXsI,WAAW;IAAEC,MAAM,GAAAvI,IAAA,CAANuI,MAAM;IAAEC,OAAO,GAAAxI,IAAA,CAAPwI,OAAO;AAC5D,EAAA,IAAAxE,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAAuE,gBAAA,GAAAC,+BAAA,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,eAAA,CAAA;IAAxCF,uBAAuB,GAAAH,gBAAA,CAAvBG,uBAAuB;IAAEC,eAAe,GAAAJ,gBAAA,CAAfI,eAAe;EAEhD,oBACExI,cAAA,CAAC0I,IAAI,EAAA;AAAOP,IAAAA,OAAO,EAAPA,OAAO;IAAID,MAAM,EAAEA,MAAM,IAAIM,eAAgB;IAAA3I,QAAA,EACtDmI,SAAS,gBACRhI,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,gDAAgD;AAAAL,MAAAA,QAAA,eAC7DG,cAAA,CAAC2I,OAAO,EAAE,EAAA;AAAC,KACR,CAAC,gBAEN7I,eAAA,CAAAC,mBAAA,EAAA;AAAAF,MAAAA,QAAA,EACEG,cAAAA,cAAA,CAAC0I,IAAI,CAACE,MAAM,EAAA;AAAA/I,QAAAA,QAAA,eACVC,eAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,2CAA2C;UAAAL,QAAA,EAAA,cACxDG,cAAA,CAACC,UAAU,EAAA;AAACC,YAAAA,SAAS,EAAC,cAAc;AAACC,YAAAA,KAAK,EAAC,IAAI;AAACC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAC9DoI,WAAW,CAAClD,IAAI,CAACpD;AAAK,WACb,CAAC,eACb3B,cAAA,CAAC6I,YAAY,EAAA;AACXC,YAAAA,aAAa,EAAE;AAAEC,cAAAA,QAAQ,EAAE;aAAU;AACrCC,YAAAA,SAAS,EAAET;AAAwB,WACpC,CAAC;SACC;AAAC,OACK,CAAC,eACdvI,cAAA,CAAC0I,IAAI,CAACO,IAAI,EAAA;AAAApJ,QAAAA,QAAA,eACRC,eAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,aAAa;AAAAL,UAAAA,QAAA,gBAC1BG,cAAA,CAAA,KAAA,EAAA;AAAKE,YAAAA,SAAS,EAAC,MAAM;AAAAL,YAAAA,QAAA,EAClBoI,WAAW,CAACiB,MAAM,iBACjBpJ,eAAA,CAAA,KAAA,EAAA;AAAKI,cAAAA,SAAS,EAAC,gBAAgB;cAAAL,QAAA,EAAA,cAC7BG,cAAA,CAACC,UAAU,EAAA;AACTC,gBAAAA,SAAS,EAAC,mCAAmC;AAC7CC,gBAAAA,KAAK,EAAC,IAAI;AACVC,gBAAAA,MAAM,EAAC,UAAU;AAAAP,gBAAAA,QAAA,EAEhBoI,WAAW,CAACiB,MAAM,CAAC5G;AAAK,eACf,CAAC,eACbtC,cAAA,CAACC,UAAU,EAAA;AACTC,gBAAAA,SAAS,EAAC,mCAAmC;AAC7CC,gBAAAA,KAAK,EAAC,IAAI;AACVC,gBAAAA,MAAM,EAAC,QAAQ;AAAAP,gBAAAA,QAAA,EAEdoI,WAAW,CAACiB,MAAM,CAACvH;AAAK,eACf,CAAC;aACV;AACN,WACE,CAAC,EACLsG,WAAW,CAACX,MAAM,IAAI6B,oBAAU,CAAClB,WAAW,CAACX,MAAM,CAAC,gBACnDtH,cAAA,CAACoH,YAAY,EAAA;YACX1B,UAAU,EAAEuC,WAAW,CAACvC,UAAW;YACnC4B,MAAM,EAAEW,WAAW,CAACX,MAAO;YAC3BC,SAAS,EAAEU,WAAW,CAACV;AAAU,WAClC,CAAC,gBAEFvH,cAAA,CAACiF,KAAI,EAAA;AAACrF,YAAAA,KAAK,EAAEiE,CAAC,CAAC,wBAAwB,CAAE;YAAAhE,QAAA,eACvCG,cAAA,CAACyF,gBAAgB,EAAA;AACfE,cAAAA,gBAAgB,EAAEsC,WAAW,CAACvC,UAAU,CAACC,gBAAiB;AAC1DE,cAAAA,cAAc,EAAEoC,WAAW,CAACvC,UAAU,CAACoC,KAAM;cAC7CpC,UAAU,EAAEuC,WAAW,CAACvC,UAAW;AACnCK,cAAAA,QAAQ,EAAE;aACX;AAAC,WACE,CACP,eACD/F,cAAA,CAACmD,aAAa,EAAA;YAACC,OAAO,EAAE6E,WAAW,CAAC7E;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\";\nimport PropTypes from \"prop-types\";\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\nTitle.propTypes = {\n title: PropTypes.string,\n children: PropTypes.node,\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 MULTI_SELECT: \"multiSelect\",\n SEND_TO_API: \"sendToApi\",\n DROPDOWN: \"dropdown\",\n MULTISELECT: \"multiSelect\",\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 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 (actionOption.type === ACTION_TYPE.MULTISELECT) {\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\";\n\nimport { PREVIEW_CONDITION_LIMIT } from \"./constants\";\nimport MultiSelectValues from \"./MultiSelectValues\";\nimport { getEntityDisplayValue } from \"./utils\";\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 getLogicOperator = joinType =>\n joinType === \"or_operator\" ? \"or\" : \"and\";\n\n const renderConditionValues = (condition, conditionOption) => {\n if (\n [\"date\", \"decimal\", \"email\", \"number\", \"text\"].includes(\n conditionOption.type\n )\n ) {\n return (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {condition.metadata.value?.toLowerCase()}\n </Typography>\n );\n }\n\n if (conditionOption.type === \"textarea\") {\n return (\n <Tooltip content={condition.metadata.value?.toLowerCase()}>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {t(\"neetoRules.labels.text\")}\n </Typography>\n </Tooltip>\n );\n }\n\n if (conditionOption.type === \"multi-select\") {\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 (conditionOption.type === \"dropdown\") {\n return (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {getEntityDisplayValue(condition, conditionOption)}\n </Typography>\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 <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {conditionOption?.label.toLowerCase()}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {conditionVerb}\n </Typography>\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 <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.and\", { what: \"\" })}\n </Typography>\n )}\n {!!index && (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {getLogicOperator(condition.joinType)}\n </Typography>\n )}\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n weight=\"normal\"\n >\n {t(\"neetoRules.common.when\")}\n </Typography>\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.description && (\n <Typography className=\"my-auto mb-4\" style=\"body2\">\n {ruleDetails.description.value}\n </Typography>\n )}\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","MULTI_SELECT","SEND_TO_API","DROPDOWN","MULTISELECT","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","ConditionsDetail","conditions","conditionOptions","_ref$conditionVerbs","conditionVerbs","_ref$hasEvent","hasEvent","conditionsList","allConditions","allConditionVerbs","_objectSpread","VERB_LABELS","getLogicOperator","joinType","renderConditionValues","condition","conditionOption","_condition$metadata$v","_condition$metadata$v2","Tooltip","content","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","description","entity","isNotEmpty"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAGA,IAAMA,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAAA,oBAC9BC,eAAA,CAAAC,mBAAA,EAAA;IAAAF,QAAA,EAAA,cACEG,cAAA,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,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,mDAAmD;AAAAL,MAAAA,QAAA,EAC/DA;AAAQ,KACN,CAAC;AAAA,GACN,CAAC;AAAA,CACJ;;ACZM,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,YAAY,EAAE,aAAa;AAC3BC,EAAAA,WAAW,EAAE,WAAW;AACxBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,WAAW,EAAE;AACf,CAAC;AAEM,IAAMC,WAAW,GAAG,CACzBd,WAAW,CAACC,IAAI,EAChBD,WAAW,CAACE,MAAM,EAClBF,WAAW,CAACG,OAAO,EACnBH,WAAW,CAACI,KAAK,EACjBJ,WAAW,CAACK,IAAI,CACjB;;ACpBD,IAAMU,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAA1B,IAAA,EAAA;AAAA,EAAA,IAAM2B,SAAS,GAAA3B,IAAA,CAAT2B,SAAS;IAAEC,MAAM,GAAA5B,IAAA,CAAN4B,MAAM;EAAA,oBAC5CvB,cAAA,CAAAD,mBAAA,EAAA;AAAAF,IAAAA,QAAA,EACG0B,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEC,GAAG,CAAC,UAACC,KAAK,EAAEC,GAAG,EAAA;MAAA,oBACtB5B,eAAA,CAAC6B,cAAQ,EAAA;AAAA9B,QAAAA,QAAA,GACN,CAAC,CAAC6B,GAAG,iBACJ1B,cAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;AAAAP,UAAAA,QAAA,EAEdyB;AAAS,SACA,CACb,eACDtB,cAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;AAAAP,UAAAA,QAAA,EAEhB4B,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,gBAAM,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,KAAKtC,WAAW,CAACY,QAAQ;AAAE,MAAA;QACzBsB,gBAAgB,CAACC,YAAY,GAAGZ,qBAAqB,CACnDS,MAAM,EACNC,YACF,CAAC;AAED,QAAA,OAAOC,gBAAgB;AACzB;IACA,KAAKlC,WAAW,CAACQ,YAAY;AAAE,MAAA;QAC7B0B,gBAAgB,CAACE,MAAM,GAAG,IAAI;AAC9BF,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACY,MAAM;AAEtD,QAAA,OAAON,gBAAgB;AACzB;IAEA,KAAKlC,WAAW,CAACO,QAAQ;AAAE,MAAA;AACzB2B,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACG,YAAY;AAEnD,QAAA,OAAOD,gBAAgB;AACzB;IAEA,KAAKlC,WAAW,CAACS,cAAc;AAAE,MAAA;QAC/ByB,gBAAgB,CAACE,MAAM,GAAG,IAAI;AAC9BF,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACa,YAAY;AAE5D,QAAA,OAAOP,gBAAgB;AACzB;IACA,KAAKlC,WAAW,CAACW,WAAW;AAAE,MAAA;AAC5BuB,QAAAA,gBAAgB,CAACC,YAAY,GAAGH,MAAM,CAACJ,QAAQ,CAACc,QAAQ;AAExD,QAAA,OAAOR,gBAAgB;AACzB;AACA,IAAA;AACE,MAAA,OAAO,IAAI;AACf;AACF,CAAC;;ACvCD,IAAMS,aAAa,GAAG,SAAhBA,aAAaA,CAAAtD,IAAA,EAAoB;AAAA,EAAA,IAAduD,OAAO,GAAAvD,IAAA,CAAPuD,OAAO;AAC9B,EAAA,IAAAC,SAAA,GAAgCC,cAAQ,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,2BAAc,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,IAAIH,YAAY,CAACK,IAAI,KAAKtC,WAAW,CAACa,WAAW,EAAE;AACjD,MAAA,IAAMI,MAAM,GAAG+C,WAAK,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,oBACEzB,cAAA,CAACqB,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,KAAKtC,WAAW,CAACW,WAAW,GACzC0C,CAAC,CAAC,sBAAsB,CAAC,GACzBA,CAAC,CAAC,sBAAsB,CAAC;MAE/B,IAAMrC,SAAS,GAAGoD,kBAAY,CAAC;AAC7BD,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBE,QAAAA,aAAa,EAAEpC;AACjB,OAAC,CAAC;MAEF,oBACEzC,eAAA,CAAAC,mBAAA,EAAA;QAAAF,QAAA,EAAA,cACEG,cAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;AAAAP,UAAAA,QAAA,EAEdyB;AAAS,SACA,CAAC,eACbtB,cAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;UAAAP,QAAA,EAEhB4C,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,oBACnCnE,eAAA,CAAA,KAAA,EAAA;AAAKI,QAAAA,SAAS,EAAC,WAAW;QAAAL,QAAA,EAAA,cACxBG,cAAA,CAACC,UAAU,EAAA;AAAaE,UAAAA,KAAK,EAAC,IAAI;AAACC,UAAAA,MAAM,EAAC,UAAU;AAAAP,UAAAA,QAAA,EACjD4B;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,gBAAM,CAAC;MAAER,KAAK,EAAEa,MAAM,CAACuC;AAAK,KAAC,EAAE3B,OAAO,CAAC4B,aAAa,CAAC;AAC1E,IAAA,IAAI,CAACvC,YAAY,EAAE,OAAO,IAAI;IAE9B,oBACEzC,eAAA,CAAAC,mBAAA,EAAA;MAAAF,QAAA,EAAA,cACEG,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;QAAAP,QAAA,EAEhB0C,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,oBACEzC,eAAA,CAACiF,KAAI,EAAA;AAACnF,IAAAA,KAAK,EAAE+D,CAAC,CAAC,wBAAwB,CAAE;IAAA9D,QAAA,EAAA,CACtCgE,UAAU,CAACrC,GAAG,CAAC,UAACc,MAAM,EAAE2B,KAAK,EAAA;AAAA,MAAA,oBAC5BnE,eAAA,CAAA,KAAA,EAAA;AACEI,QAAAA,SAAS,EAAC,qCAAqC;AAC/C,QAAA,SAAA,EAAQ,oBAAoB;QAAAL,QAAA,EAAA,cAG5BG,cAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,QAAQ;UAAAP,QAAA,EAEdmE,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,iBACrB9D,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,aAAa;MAAAL,QAAA,eAC1BG,cAAA,CAACgF,MAAM,EAAA;AACLC,QAAAA,IAAI,EAAE,CAAC1B,QAAQ,GAAG2B,IAAI,GAAGC,EAAG;AAC5BC,QAAAA,IAAI,EAAC,OAAO;AACZjF,QAAAA,KAAK,EAAC,MAAM;AACZiC,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;;;;ACpID,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA5F,IAAA,EAKhB;AAAA,EAAA,IAJJ6F,UAAU,GAAA7F,IAAA,CAAV6F,UAAU;IACVC,gBAAgB,GAAA9F,IAAA,CAAhB8F,gBAAgB;IAAAC,mBAAA,GAAA/F,IAAA,CAChBgG,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,mBAAA;IAAAE,aAAA,GAAAjG,IAAA,CACnBkG,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,aAAA;AAEf,EAAA,IAAAzC,SAAA,GAAgCC,cAAQ,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,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMmC,cAAc,GAAGN,UAAU,CAAC/D,KAAK;AACvC,EAAA,IAAMsE,aAAa,GACjBxC,QAAQ,IAAIuC,cAAc,CAAChC,MAAM,GAAGzD,uBAAuB,GACvDyF,cAAc,GACdA,cAAc,CAAC/B,KAAK,CAAC,CAAC,EAAE1D,uBAAuB,CAAC;EAEtD,IAAM2F,iBAAiB,GAAAC,aAAA,CAAAA,aAAA,CAAQC,EAAAA,EAAAA,qBAAW,CAAKP,EAAAA,cAAc,CAAE;AAE/D,EAAA,IAAMQ,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,QAAQ,EAAA;AAAA,IAAA,OAC/BA,QAAQ,KAAK,aAAa,GAAG,IAAI,GAAG,KAAK;AAAA,GAAA;EAE3C,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,SAAS,EAAEC,eAAe,EAAK;AAC5D,IAAA,IACE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC5D,QAAQ,CACrD4D,eAAe,CAAC3D,IAClB,CAAC,EACD;AAAA,MAAA,IAAA4D,qBAAA;MACA,oBACExG,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAAA2G,CAAAA,qBAAA,GAEhBF,SAAS,CAACpE,QAAQ,CAACT,KAAK,MAAA,IAAA,IAAA+E,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAxBA,qBAAA,CAA0B5E,WAAW;AAAE,OAC9B,CAAC;AAEjB;AAEA,IAAA,IAAI2E,eAAe,CAAC3D,IAAI,KAAK,UAAU,EAAE;AAAA,MAAA,IAAA6D,sBAAA;MACvC,oBACEzG,cAAA,CAAC0G,OAAO,EAAA;AAACC,QAAAA,OAAO,EAAAF,CAAAA,sBAAA,GAAEH,SAAS,CAACpE,QAAQ,CAACT,KAAK,MAAA,IAAA,IAAAgF,sBAAA,KAAxBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,sBAAA,CAA0B7E,WAAW,EAAG;QAAA/B,QAAA,eACxDG,cAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAC,wBAAwB;AAClCC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;UAAAP,QAAA,EAEhB8D,CAAC,CAAC,wBAAwB;SACjB;AAAC,OACN,CAAC;AAEd;AAEA,IAAA,IAAI4C,eAAe,CAAC3D,IAAI,KAAK,cAAc,EAAE;AAC3C,MAAA,IAAMrB,MAAM,GAAG+C,WAAK,CAClB,OAAO,EACPiC,eAAe,CAACpE,eAAe,CAACoC,MAAM,CAAC,UAAAF,KAAA,EAAA;AAAA,QAAA,IAAG5C,KAAK,GAAA4C,KAAA,CAAL5C,KAAK;QAAA,OAC7C6E,SAAS,CAACpE,QAAQ,CAACX,MAAM,CAACoB,QAAQ,CAAClB,KAAK,CAAC;AAAA,OAC3C,CACF,CAAC;MAED,oBACEzB,cAAA,CAACqB,iBAAiB,EAAA;AACVE,QAAAA,MAAM,EAANA,MAAM;QACZD,SAAS,EAAEqC,CAAC,CAAC,sBAAsB;AAAE,OACtC,CAAC;AAEN;IAEA,IAAI,CAAC,qBAAqB,CAAC,CAAChB,QAAQ,CAAC4D,eAAe,CAAC3D,IAAI,CAAC,EAAE;MAC1D,oBACE5C,cAAA,CAACqB,iBAAiB,EAAA;AAChBC,QAAAA,SAAS,EAAEqC,CAAC,CAAC,sBAAsB,CAAE;AACrCpC,QAAAA,MAAM,EAAE+E,SAAS,CAACpE,QAAQ,CAACX;AAAO,OACnC,CAAC;AAEN;AAEA,IAAA,IAAIgF,eAAe,CAAC3D,IAAI,KAAK,UAAU,EAAE;MACvC,oBACE5C,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAEhBgC,qBAAqB,CAACyE,SAAS,EAAEC,eAAe;AAAC,OACxC,CAAC;AAEjB;AAEA,IAAA,OAAO,IAAI;GACZ;AAED,EAAA,IAAMK,eAAe,GAAG,SAAlBA,eAAeA,CAAGN,SAAS,EAAI;AAAA,IAAA,IAAAO,qBAAA;IACnC,IAAMN,eAAe,GAAGtE,gBAAM,CAC5B;MAAER,KAAK,EAAE6E,SAAS,CAACQ;KAAO,EAC1BrB,gBACF,CAAC;AACD,IAAA,IAAI,CAACc,eAAe,EAAE,OAAO,IAAI;AAEjC,IAAA,IAAMQ,aAAa,GAAAF,CAAAA,qBAAA,GAAGb,iBAAiB,CAACM,SAAS,CAACU,IAAI,CAAC,cAAAH,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjCA,qBAAA,CAAmCjF,WAAW,EAAE;IAEtE,oBACE9B,eAAA,CAAAC,mBAAA,EAAA;MAAAF,QAAA,EAAA,cACEG,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;QAAAP,QAAA,EAEhB0G,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAe,CAAEnE,KAAK,CAACR,WAAW;AAAE,OAC3B,CAAC,eACb5B,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAEhBkH;AAAa,OACJ,CAAC,EACZV,qBAAqB,CAACC,SAAS,EAAEC,eAAe,CAAC;AAAA,KAClD,CAAC;GAEN;EAED,oBACEzG,eAAA,CAAAC,mBAAA,EAAA;AAAAF,IAAAA,QAAA,gBACEG,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,MAAM;MAAAL,QAAA,EAClBkG,aAAa,CAACvE,GAAG,CAAC,UAAC8E,SAAS,EAAErC,KAAK,EAAA;AAAA,QAAA,oBAClCnE,eAAA,CAAA,KAAA,EAAA;AACEI,UAAAA,SAAS,EAAC,qCAAqC;UAAAL,QAAA,EAAA,CAG9C,CAACoE,KAAK,IAAI4B,QAAQ,iBACjB7F,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;AAAAP,YAAAA,QAAA,EAEd8D,CAAC,CAAC,uBAAuB,EAAE;AAAEO,cAAAA,IAAI,EAAE;aAAI;WAC9B,CACb,EACA,CAAC,CAACD,KAAK,iBACNjE,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAEhBsG,gBAAgB,CAACG,SAAS,CAACF,QAAQ;AAAC,WAC3B,CACb,eACDpG,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;YAAAP,QAAA,EAEd8D,CAAC,CAAC,wBAAwB;AAAC,WAClB,CAAC,EACZiD,eAAe,CAACN,SAAS,CAAC;SA3BtBA,EAAAA,SAAS,CAACW,EA4BZ,CAAC;OACP;KACE,CAAC,EACLnB,cAAc,CAAChC,MAAM,GAAG,CAAC,iBACxB9D,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,aAAa;MAAAL,QAAA,eAC1BG,cAAA,CAACgF,MAAM,EAAA;AACLC,QAAAA,IAAI,EAAE,CAAC1B,QAAQ,GAAG2B,IAAI,GAAGC,EAAG;AAC5BC,QAAAA,IAAI,EAAC,OAAO;AACZjF,QAAAA,KAAK,EAAC,MAAM;AACZiC,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;;ACtLD,IAAM4B,YAAY,GAAG,SAAfA,YAAYA,CAAAvH,IAAA,EAA0C;AAAA,EAAA,IAAAwH,qBAAA;AAAA,EAAA,IAApCC,MAAM,GAAAzH,IAAA,CAANyH,MAAM;IAAEC,SAAS,GAAA1H,IAAA,CAAT0H,SAAS;IAAE7B,UAAU,GAAA7F,IAAA,CAAV6F,UAAU;AACnD,EAAA,IAAA/B,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EAET,IAAM2D,UAAU,GAAGhD,WAAK,CAAC,MAAM,EAAE8C,MAAM,CAAC3F,KAAK,CAAC;EAC9C,IAAM8F,SAAS,GAAGH,MAAM,CAACI,YAAY,CAACjD,MAAM,CAAC,UAAAkD,KAAK,EAAA;IAAA,OAChDH,UAAU,KAAVA,IAAAA,IAAAA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAE3E,QAAQ,CAAC8E,KAAK,CAAChG,KAAK,CAAC;AAAA,GACnC,CAAC;EAED,IAAMiG,gBAAgB,GAAGzF,gBAAM,CAC7B;IAAER,KAAK,EAAE4F,SAAS,CAAC5F;AAAM,GAAC,EAC1B4F,SAAS,CAACM,OACZ,CAAC;EAED,oBACE7H,eAAA,CAACiF,KAAI,EAAA;AAACnF,IAAAA,KAAK,EAAE+D,CAAC,CAAC,wBAAwB,CAAE;AAAA9D,IAAAA,QAAA,gBACvCC,eAAA,CAAA,KAAA,EAAA;AACEI,MAAAA,SAAS,EAAC,gCAAgC;AAC1C,MAAA,SAAA,EAAQ,uBAAuB;MAAAL,QAAA,EAAA,CAE9B0H,SAAS,CAAC/F,GAAG,CAAC,UAACiG,KAAK,EAAExD,KAAK,EAAA;AAAA,QAAA,oBAC1BnE,eAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,cAAc;AAAAL,UAAAA,QAAA,GAC1B,CAACoE,KAAK,iBACLjE,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,gCAAgC;AAC1CC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;YAAAP,QAAA,EAEd8D,CAAC,CAAC,wBAAwB;WACjB,CACb,EACA,CAAC,CAACM,KAAK,iBACNjE,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,gCAAgC;AAC1CC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,QAAQ;YAAAP,QAAA,EAEd8D,CAAC,CAAC,sBAAsB;AAAC,WAChB,CACb,eACD3D,cAAA,CAACC,UAAU,EAAA;AACTC,YAAAA,SAAS,EAAC,wBAAwB;AAClCC,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAEhB4H,KAAK,CAACrF,KAAK,CAACR,WAAW;AAAE,WAChB,CAAC;AAAA,SAAA,EAzBoBqC,KA0B9B,CAAC;AAAA,OACP,CAAC,eACFjE,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,QAAQ;QAAAP,QAAA,EAEd8D,CAAC,CAAC,sBAAsB;AAAC,OAChB,CAAC,eACb3D,cAAA,CAACC,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,wBAAwB;AAClCC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAP,QAAAA,QAAA,EAEhB6H,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,KAAA,CAAA,IAAA,CAAAP,qBAAA,GAAhBO,gBAAgB,CAAEtF,KAAK,cAAA+E,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAvBA,qBAAA,CAAyBvF,WAAW;AAAE,OAC7B,CAAC;AAAA,KACV,CAAC,eACN5B,cAAA,CAACuF,gBAAgB,EAAA;AACTC,MAAAA,UAAU,EAAVA,UAAU;MAChBC,gBAAgB,EAAED,UAAU,CAACC,gBAAiB;MAC9CE,cAAc,EAAEH,UAAU,CAACoC;AAAM,KAClC,CAAC;AAAA,GACE,CAAC;AAEX,CAAC;;AClED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAAlI,IAAA,EAAoD;AAAA,EAAA,IAA9CmI,SAAS,GAAAnI,IAAA,CAATmI,SAAS;IAAEC,WAAW,GAAApI,IAAA,CAAXoI,WAAW;IAAEC,MAAM,GAAArI,IAAA,CAANqI,MAAM;IAAEC,OAAO,GAAAtI,IAAA,CAAPsI,OAAO;AAC5D,EAAA,IAAAxE,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAAuE,gBAAA,GAAAC,+BAAA,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,eAAA,CAAA;IAAxCF,uBAAuB,GAAAH,gBAAA,CAAvBG,uBAAuB;IAAEC,eAAe,GAAAJ,gBAAA,CAAfI,eAAe;EAEhD,oBACEtI,cAAA,CAACwI,IAAI,EAAA;AAAOP,IAAAA,OAAO,EAAPA,OAAO;IAAID,MAAM,EAAEA,MAAM,IAAIM,eAAgB;IAAAzI,QAAA,EACtDiI,SAAS,gBACR9H,cAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,gDAAgD;AAAAL,MAAAA,QAAA,eAC7DG,cAAA,CAACyI,OAAO,EAAE,EAAA;AAAC,KACR,CAAC,gBAEN3I,eAAA,CAAAC,mBAAA,EAAA;AAAAF,MAAAA,QAAA,EACEG,cAAAA,cAAA,CAACwI,IAAI,CAACE,MAAM,EAAA;AAAA7I,QAAAA,QAAA,eACVC,eAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,2CAA2C;UAAAL,QAAA,EAAA,cACxDG,cAAA,CAACC,UAAU,EAAA;AAACC,YAAAA,SAAS,EAAC,cAAc;AAACC,YAAAA,KAAK,EAAC,IAAI;AAACC,YAAAA,MAAM,EAAC,UAAU;AAAAP,YAAAA,QAAA,EAC9DkI,WAAW,CAAClD,IAAI,CAACpD;AAAK,WACb,CAAC,eACbzB,cAAA,CAAC2I,YAAY,EAAA;AACXC,YAAAA,aAAa,EAAE;AAAEC,cAAAA,QAAQ,EAAE;aAAU;AACrCC,YAAAA,SAAS,EAAET;AAAwB,WACpC,CAAC;SACC;AAAC,OACK,CAAC,eACdrI,cAAA,CAACwI,IAAI,CAACO,IAAI,EAAA;AAAAlJ,QAAAA,QAAA,eACRC,eAAA,CAAA,KAAA,EAAA;AAAKI,UAAAA,SAAS,EAAC,aAAa;AAAAL,UAAAA,QAAA,gBAC1BC,eAAA,CAAA,KAAA,EAAA;AAAKI,YAAAA,SAAS,EAAC,MAAM;AAAAL,YAAAA,QAAA,GAClBkI,WAAW,CAACiB,WAAW,iBACtBhJ,cAAA,CAACC,UAAU,EAAA;AAACC,cAAAA,SAAS,EAAC,cAAc;AAACC,cAAAA,KAAK,EAAC,OAAO;AAAAN,cAAAA,QAAA,EAC/CkI,WAAW,CAACiB,WAAW,CAACvH;AAAK,aACpB,CACb,EACAsG,WAAW,CAACkB,MAAM,iBACjBnJ,eAAA,CAAA,KAAA,EAAA;AAAKI,cAAAA,SAAS,EAAC,gBAAgB;cAAAL,QAAA,EAAA,cAC7BG,cAAA,CAACC,UAAU,EAAA;AACTC,gBAAAA,SAAS,EAAC,mCAAmC;AAC7CC,gBAAAA,KAAK,EAAC,IAAI;AACVC,gBAAAA,MAAM,EAAC,UAAU;AAAAP,gBAAAA,QAAA,EAEhBkI,WAAW,CAACkB,MAAM,CAAC7G;AAAK,eACf,CAAC,eACbpC,cAAA,CAACC,UAAU,EAAA;AACTC,gBAAAA,SAAS,EAAC,mCAAmC;AAC7CC,gBAAAA,KAAK,EAAC,IAAI;AACVC,gBAAAA,MAAM,EAAC,QAAQ;AAAAP,gBAAAA,QAAA,EAEdkI,WAAW,CAACkB,MAAM,CAACxH;AAAK,eACf,CAAC;AAAA,aACV,CACN;AAAA,WACE,CAAC,EACLsG,WAAW,CAACX,MAAM,IAAI8B,oBAAU,CAACnB,WAAW,CAACX,MAAM,CAAC,gBACnDpH,cAAA,CAACkH,YAAY,EAAA;YACX1B,UAAU,EAAEuC,WAAW,CAACvC,UAAW;YACnC4B,MAAM,EAAEW,WAAW,CAACX,MAAO;YAC3BC,SAAS,EAAEU,WAAW,CAACV;AAAU,WAClC,CAAC,gBAEFrH,cAAA,CAAC+E,KAAI,EAAA;AAACnF,YAAAA,KAAK,EAAE+D,CAAC,CAAC,wBAAwB,CAAE;YAAA9D,QAAA,eACvCG,cAAA,CAACuF,gBAAgB,EAAA;AACfE,cAAAA,gBAAgB,EAAEsC,WAAW,CAACvC,UAAU,CAACC,gBAAiB;AAC1DE,cAAAA,cAAc,EAAEoC,WAAW,CAACvC,UAAU,CAACoC,KAAM;cAC7CpC,UAAU,EAAEuC,WAAW,CAACvC,UAAW;AACnCK,cAAAA,QAAQ,EAAE;aACX;AAAC,WACE,CACP,eACD7F,cAAA,CAACiD,aAAa,EAAA;YAACC,OAAO,EAAE6E,WAAW,CAAC7E;AAAQ,WAAE,CAAC;SAC5C;AAAC,OACG,CAAC;KACZ;AACH,GACG,CAAC;AAEX;;;;"}
package/dist/cjs/index.js CHANGED
@@ -32,18 +32,20 @@ require('@bigbinary/neeto-commons-frontend/react-utils');
32
32
  require('@bigbinary/neeto-molecules/Container');
33
33
  require('@bigbinary/neeto-molecules/Header');
34
34
  require('@bigbinary/neetoui/Button');
35
- require('../useUtilityStore-DhJI92iM.js');
36
- require('zustand');
35
+ require('../utils-BngEaPaz.js');
37
36
  require('zustand/shallow');
38
37
  require('@bigbinary/neeto-molecules/SubHeader');
39
38
  require('@bigbinary/neeto-molecules/TableWrapper');
40
39
  require('@bigbinary/neetoui/Alert');
41
40
  require('@bigbinary/neetoui/Table');
42
41
  require('@bigbinary/neetoui/NoData');
42
+ require('../useUtilityStore-BGuo9bko.js');
43
+ require('zustand');
43
44
  require('@babel/runtime/helpers/objectWithoutProperties');
44
45
  require('@bigbinary/neeto-commons-frontend/utils');
45
46
  require('@bigbinary/neeto-molecules/MoreDropdown');
46
47
  require('@bigbinary/neetoui/Switch');
48
+ require('@bigbinary/neetoui/Tooltip');
47
49
  require('@hello-pangea/dnd');
48
50
  require('@bigbinary/neeto-icons/Reorder');
49
51
  require('@tanstack/react-query');
@@ -54,23 +56,16 @@ require('@bigbinary/neeto-icons/Plus');
54
56
  require('@bigbinary/neeto-icons/Delete');
55
57
  require('@bigbinary/neeto-icons/Refresh');
56
58
  require('classnames');
57
- require('yup');
58
- require('@bigbinary/neetoui/formik/Radio');
59
- require('@bigbinary/neetoui/managers');
60
- require('@bigbinary/neeto-icons/Collapse');
61
- require('@bigbinary/neeto-icons/Left');
59
+ require('@bigbinary/neeto-icons/Check');
60
+ require('@bigbinary/neeto-icons/Search');
61
+ require('@bigbinary/neetoui/Dropdown');
62
62
  require('@bigbinary/neetoui/formik/Textarea');
63
- require('@bigbinary/neetoui/formik/Input');
64
- require('@bigbinary/neetoui/formik/Switch');
65
- require('@monaco-editor/react');
66
- require('@bigbinary/neeto-icons/Help');
67
- require('@bigbinary/neeto-molecules/DynamicVariables');
68
63
  require('@bigbinary/neetoui/Select');
69
64
  require('@bigbinary/neetoui/DatePicker');
70
- require('@bigbinary/neetoui/formik/MultiEmailInput');
71
65
  require('@bigbinary/neeto-editor/FormikEditor');
66
+ require('@bigbinary/neetoui/formik/MultiEmailInput');
67
+ require('@bigbinary/neetoui/formik/Input');
72
68
  require('@bigbinary/neeto-hotkeys');
73
- require('@bigbinary/neeto-icons/Check');
74
69
  require('@bigbinary/neeto-icons/Close');
75
70
  require('@bigbinary/neetoui/Checkbox');
76
71
  require('react-select/creatable');
@@ -78,14 +73,15 @@ require('@babel/runtime/helpers/toArray');
78
73
  require('@bigbinary/neeto-molecules/PhoneNumber');
79
74
  require('@bigbinary/neetoui/Tag');
80
75
  require('react-select');
81
- require('../constants-BkPVd-Gz.js');
82
- require('@bigbinary/neetoui/Radio');
76
+ require('yup');
83
77
  require('@bigbinary/neeto-editor/utils');
78
+ require('../constants-C0OOtVhT.js');
84
79
  require('@bigbinary/neeto-icons/Eye');
85
- require('@bigbinary/neeto-icons/Down');
86
- require('@bigbinary/neetoui/Dropdown');
87
- require('@bigbinary/neetoui/Tooltip');
80
+ require('@bigbinary/neetoui/Popover');
81
+ require('@bigbinary/neetoui/formik/Radio');
82
+ require('@bigbinary/neeto-icons/Help');
88
83
  require('@babel/runtime/helpers/typeof');
84
+ require('@bigbinary/neeto-icons/Down');
89
85
  require('@bigbinary/neeto-icons/Up');
90
86
 
91
87
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,10 +6,10 @@ var OPERATORS = {
6
6
  or: "or_operator",
7
7
  and: "and_operator"
8
8
  };
9
- ({
9
+ var OPERATOR_LABELS = {
10
10
  or_operator: i18next.t("neetoRules.operators.or"),
11
11
  and_operator: i18next.t("neetoRules.operators.and")
12
- });
12
+ };
13
13
  var VERB_LABELS = {
14
14
  is: i18next.t("neetoRules.conditionVerbs.is"),
15
15
  is_not: i18next.t("neetoRules.conditionVerbs.isNot"),
@@ -36,22 +36,20 @@ var CONDITION_VALUE_TYPES = {
36
36
  decimal: "decimal",
37
37
  url: "url",
38
38
  email: "email",
39
+ dropdown: "dropdown",
39
40
  multiSelect: "multi-select",
40
41
  multiSelectCreate: "multi-select-create",
41
- multiSelectCheckbox: "multi-select-checkbox",
42
42
  date: "date",
43
43
  regex: "regex",
44
- textarea: "textarea",
45
- dropdown: "dropdown",
46
- radio: "radio",
47
- select: "select"
44
+ textarea: "textarea"
48
45
  };
49
46
  var INPUT_FIELD_TYPES = ["email", "text", "number", "decimal", "url", "regex"];
50
- var FIELDS_WITH_OPTIONS = [CONDITION_VALUE_TYPES.multiSelect, CONDITION_VALUE_TYPES.multiSelectCreate, CONDITION_VALUE_TYPES.multiSelectCheckbox, CONDITION_VALUE_TYPES.radio, CONDITION_VALUE_TYPES.select, CONDITION_VALUE_TYPES.dropdown];
47
+ var MAXIMUM_OPTION_LENGTH = 7;
51
48
 
52
49
  exports.CONDITION_VALUE_TYPES = CONDITION_VALUE_TYPES;
53
- exports.FIELDS_WITH_OPTIONS = FIELDS_WITH_OPTIONS;
54
50
  exports.INPUT_FIELD_TYPES = INPUT_FIELD_TYPES;
51
+ exports.MAXIMUM_OPTION_LENGTH = MAXIMUM_OPTION_LENGTH;
55
52
  exports.OPERATORS = OPERATORS;
53
+ exports.OPERATOR_LABELS = OPERATOR_LABELS;
56
54
  exports.VERB_LABELS = VERB_LABELS;
57
- //# sourceMappingURL=constants-BkPVd-Gz.js.map
55
+ //# sourceMappingURL=constants-C0OOtVhT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants-C0OOtVhT.js","sources":["../app/javascript/src/components/NeetoRulesForm/Element/Conditions/constants.js"],"sourcesContent":["import { t } from \"i18next\";\n\nconst OPERATORS = { or: \"or_operator\", and: \"and_operator\" };\n\nconst OPERATOR_LABELS = {\n or_operator: t(\"neetoRules.operators.or\"),\n and_operator: t(\"neetoRules.operators.and\"),\n};\n\nconst VERB_LABELS = {\n is: t(\"neetoRules.conditionVerbs.is\"),\n is_not: t(\"neetoRules.conditionVerbs.isNot\"),\n contains: t(\"neetoRules.conditionVerbs.contains\"),\n does_not_contain: t(\"neetoRules.conditionVerbs.doesNotContain\"),\n contains_any_of: t(\"neetoRules.conditionVerbs.containsAnyOf\"),\n contains_all_of: t(\"neetoRules.conditionVerbs.containsAllOf\"),\n contains_none_of: t(\"neetoRules.conditionVerbs.containsNoneOf\"),\n starts_with: t(\"neetoRules.conditionVerbs.startsWith\"),\n ends_with: t(\"neetoRules.conditionVerbs.endsWith\"),\n less_than: t(\"neetoRules.conditionVerbs.lessThan\"),\n greater_than: t(\"neetoRules.conditionVerbs.greaterThan\"),\n any_time: t(\"neetoRules.conditionVerbs.anyTime\"),\n during: t(\"neetoRules.conditionVerbs.during\"),\n not_during: t(\"neetoRules.conditionVerbs.notDuring\"),\n any_of: t(\"neetoRules.conditionVerbs.anyOf\"),\n none_of: t(\"neetoRules.conditionVerbs.noneOf\"),\n is_before: t(\"neetoRules.conditionVerbs.isBefore\"),\n is_after: t(\"neetoRules.conditionVerbs.isAfter\"),\n};\n\nconst CONDITION_VALUE_TYPES = {\n text: \"text\",\n number: \"number\",\n decimal: \"decimal\",\n url: \"url\",\n email: \"email\",\n dropdown: \"dropdown\",\n multiSelect: \"multi-select\",\n multiSelectCreate: \"multi-select-create\",\n date: \"date\",\n regex: \"regex\",\n textarea: \"textarea\",\n};\n\nconst INPUT_FIELD_TYPES = [\n \"email\",\n \"text\",\n \"number\",\n \"decimal\",\n \"url\",\n \"regex\",\n];\n\nconst DATETIME_FORMAT = { date: \"DD/MM/YYYY\", time: \"HH:mm a\" };\n\nconst MAXIMUM_OPTION_LENGTH = 7;\n\nexport {\n OPERATORS,\n OPERATOR_LABELS,\n VERB_LABELS,\n CONDITION_VALUE_TYPES,\n DATETIME_FORMAT,\n MAXIMUM_OPTION_LENGTH,\n INPUT_FIELD_TYPES,\n};\n"],"names":["OPERATORS","or","and","OPERATOR_LABELS","or_operator","t","and_operator","VERB_LABELS","is","is_not","contains","does_not_contain","contains_any_of","contains_all_of","contains_none_of","starts_with","ends_with","less_than","greater_than","any_time","during","not_during","any_of","none_of","is_before","is_after","CONDITION_VALUE_TYPES","text","number","decimal","url","email","dropdown","multiSelect","multiSelectCreate","date","regex","textarea","INPUT_FIELD_TYPES","MAXIMUM_OPTION_LENGTH"],"mappings":";;;;AAEA,IAAMA,SAAS,GAAG;AAAEC,EAAAA,EAAE,EAAE,aAAa;AAAEC,EAAAA,GAAG,EAAE;AAAe;AAE3D,IAAMC,eAAe,GAAG;AACtBC,EAAAA,WAAW,EAAEC,SAAC,CAAC,yBAAyB,CAAC;EACzCC,YAAY,EAAED,SAAC,CAAC,0BAA0B;AAC5C;AAEA,IAAME,WAAW,GAAG;AAClBC,EAAAA,EAAE,EAAEH,SAAC,CAAC,8BAA8B,CAAC;AACrCI,EAAAA,MAAM,EAAEJ,SAAC,CAAC,iCAAiC,CAAC;AAC5CK,EAAAA,QAAQ,EAAEL,SAAC,CAAC,oCAAoC,CAAC;AACjDM,EAAAA,gBAAgB,EAAEN,SAAC,CAAC,0CAA0C,CAAC;AAC/DO,EAAAA,eAAe,EAAEP,SAAC,CAAC,yCAAyC,CAAC;AAC7DQ,EAAAA,eAAe,EAAER,SAAC,CAAC,yCAAyC,CAAC;AAC7DS,EAAAA,gBAAgB,EAAET,SAAC,CAAC,0CAA0C,CAAC;AAC/DU,EAAAA,WAAW,EAAEV,SAAC,CAAC,sCAAsC,CAAC;AACtDW,EAAAA,SAAS,EAAEX,SAAC,CAAC,oCAAoC,CAAC;AAClDY,EAAAA,SAAS,EAAEZ,SAAC,CAAC,oCAAoC,CAAC;AAClDa,EAAAA,YAAY,EAAEb,SAAC,CAAC,uCAAuC,CAAC;AACxDc,EAAAA,QAAQ,EAAEd,SAAC,CAAC,mCAAmC,CAAC;AAChDe,EAAAA,MAAM,EAAEf,SAAC,CAAC,kCAAkC,CAAC;AAC7CgB,EAAAA,UAAU,EAAEhB,SAAC,CAAC,qCAAqC,CAAC;AACpDiB,EAAAA,MAAM,EAAEjB,SAAC,CAAC,iCAAiC,CAAC;AAC5CkB,EAAAA,OAAO,EAAElB,SAAC,CAAC,kCAAkC,CAAC;AAC9CmB,EAAAA,SAAS,EAAEnB,SAAC,CAAC,oCAAoC,CAAC;EAClDoB,QAAQ,EAAEpB,SAAC,CAAC,mCAAmC;AACjD;AAEA,IAAMqB,qBAAqB,GAAG;AAC5BC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,WAAW,EAAE,cAAc;AAC3BC,EAAAA,iBAAiB,EAAE,qBAAqB;AACxCC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,QAAQ,EAAE;AACZ;AAEA,IAAMC,iBAAiB,GAAG,CACxB,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO;AAKHC,IAAAA,qBAAqB,GAAG;;;;;;;;;"}
@@ -4,10 +4,10 @@ var OPERATORS = {
4
4
  or: "or_operator",
5
5
  and: "and_operator"
6
6
  };
7
- ({
7
+ var OPERATOR_LABELS = {
8
8
  or_operator: t("neetoRules.operators.or"),
9
9
  and_operator: t("neetoRules.operators.and")
10
- });
10
+ };
11
11
  var VERB_LABELS = {
12
12
  is: t("neetoRules.conditionVerbs.is"),
13
13
  is_not: t("neetoRules.conditionVerbs.isNot"),
@@ -34,18 +34,15 @@ var CONDITION_VALUE_TYPES = {
34
34
  decimal: "decimal",
35
35
  url: "url",
36
36
  email: "email",
37
+ dropdown: "dropdown",
37
38
  multiSelect: "multi-select",
38
39
  multiSelectCreate: "multi-select-create",
39
- multiSelectCheckbox: "multi-select-checkbox",
40
40
  date: "date",
41
41
  regex: "regex",
42
- textarea: "textarea",
43
- dropdown: "dropdown",
44
- radio: "radio",
45
- select: "select"
42
+ textarea: "textarea"
46
43
  };
47
44
  var INPUT_FIELD_TYPES = ["email", "text", "number", "decimal", "url", "regex"];
48
- var FIELDS_WITH_OPTIONS = [CONDITION_VALUE_TYPES.multiSelect, CONDITION_VALUE_TYPES.multiSelectCreate, CONDITION_VALUE_TYPES.multiSelectCheckbox, CONDITION_VALUE_TYPES.radio, CONDITION_VALUE_TYPES.select, CONDITION_VALUE_TYPES.dropdown];
45
+ var MAXIMUM_OPTION_LENGTH = 7;
49
46
 
50
- export { CONDITION_VALUE_TYPES as C, FIELDS_WITH_OPTIONS as F, INPUT_FIELD_TYPES as I, OPERATORS as O, VERB_LABELS as V };
51
- //# sourceMappingURL=constants-DghBXpIM.js.map
47
+ export { CONDITION_VALUE_TYPES as C, INPUT_FIELD_TYPES as I, MAXIMUM_OPTION_LENGTH as M, OPERATOR_LABELS as O, VERB_LABELS as V, OPERATORS as a };
48
+ //# sourceMappingURL=constants-CB5HRjxq.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants-CB5HRjxq.js","sources":["../app/javascript/src/components/NeetoRulesForm/Element/Conditions/constants.js"],"sourcesContent":["import { t } from \"i18next\";\n\nconst OPERATORS = { or: \"or_operator\", and: \"and_operator\" };\n\nconst OPERATOR_LABELS = {\n or_operator: t(\"neetoRules.operators.or\"),\n and_operator: t(\"neetoRules.operators.and\"),\n};\n\nconst VERB_LABELS = {\n is: t(\"neetoRules.conditionVerbs.is\"),\n is_not: t(\"neetoRules.conditionVerbs.isNot\"),\n contains: t(\"neetoRules.conditionVerbs.contains\"),\n does_not_contain: t(\"neetoRules.conditionVerbs.doesNotContain\"),\n contains_any_of: t(\"neetoRules.conditionVerbs.containsAnyOf\"),\n contains_all_of: t(\"neetoRules.conditionVerbs.containsAllOf\"),\n contains_none_of: t(\"neetoRules.conditionVerbs.containsNoneOf\"),\n starts_with: t(\"neetoRules.conditionVerbs.startsWith\"),\n ends_with: t(\"neetoRules.conditionVerbs.endsWith\"),\n less_than: t(\"neetoRules.conditionVerbs.lessThan\"),\n greater_than: t(\"neetoRules.conditionVerbs.greaterThan\"),\n any_time: t(\"neetoRules.conditionVerbs.anyTime\"),\n during: t(\"neetoRules.conditionVerbs.during\"),\n not_during: t(\"neetoRules.conditionVerbs.notDuring\"),\n any_of: t(\"neetoRules.conditionVerbs.anyOf\"),\n none_of: t(\"neetoRules.conditionVerbs.noneOf\"),\n is_before: t(\"neetoRules.conditionVerbs.isBefore\"),\n is_after: t(\"neetoRules.conditionVerbs.isAfter\"),\n};\n\nconst CONDITION_VALUE_TYPES = {\n text: \"text\",\n number: \"number\",\n decimal: \"decimal\",\n url: \"url\",\n email: \"email\",\n dropdown: \"dropdown\",\n multiSelect: \"multi-select\",\n multiSelectCreate: \"multi-select-create\",\n date: \"date\",\n regex: \"regex\",\n textarea: \"textarea\",\n};\n\nconst INPUT_FIELD_TYPES = [\n \"email\",\n \"text\",\n \"number\",\n \"decimal\",\n \"url\",\n \"regex\",\n];\n\nconst DATETIME_FORMAT = { date: \"DD/MM/YYYY\", time: \"HH:mm a\" };\n\nconst MAXIMUM_OPTION_LENGTH = 7;\n\nexport {\n OPERATORS,\n OPERATOR_LABELS,\n VERB_LABELS,\n CONDITION_VALUE_TYPES,\n DATETIME_FORMAT,\n MAXIMUM_OPTION_LENGTH,\n INPUT_FIELD_TYPES,\n};\n"],"names":["OPERATORS","or","and","OPERATOR_LABELS","or_operator","t","and_operator","VERB_LABELS","is","is_not","contains","does_not_contain","contains_any_of","contains_all_of","contains_none_of","starts_with","ends_with","less_than","greater_than","any_time","during","not_during","any_of","none_of","is_before","is_after","CONDITION_VALUE_TYPES","text","number","decimal","url","email","dropdown","multiSelect","multiSelectCreate","date","regex","textarea","INPUT_FIELD_TYPES","MAXIMUM_OPTION_LENGTH"],"mappings":";;AAEA,IAAMA,SAAS,GAAG;AAAEC,EAAAA,EAAE,EAAE,aAAa;AAAEC,EAAAA,GAAG,EAAE;AAAe;AAE3D,IAAMC,eAAe,GAAG;AACtBC,EAAAA,WAAW,EAAEC,CAAC,CAAC,yBAAyB,CAAC;EACzCC,YAAY,EAAED,CAAC,CAAC,0BAA0B;AAC5C;AAEA,IAAME,WAAW,GAAG;AAClBC,EAAAA,EAAE,EAAEH,CAAC,CAAC,8BAA8B,CAAC;AACrCI,EAAAA,MAAM,EAAEJ,CAAC,CAAC,iCAAiC,CAAC;AAC5CK,EAAAA,QAAQ,EAAEL,CAAC,CAAC,oCAAoC,CAAC;AACjDM,EAAAA,gBAAgB,EAAEN,CAAC,CAAC,0CAA0C,CAAC;AAC/DO,EAAAA,eAAe,EAAEP,CAAC,CAAC,yCAAyC,CAAC;AAC7DQ,EAAAA,eAAe,EAAER,CAAC,CAAC,yCAAyC,CAAC;AAC7DS,EAAAA,gBAAgB,EAAET,CAAC,CAAC,0CAA0C,CAAC;AAC/DU,EAAAA,WAAW,EAAEV,CAAC,CAAC,sCAAsC,CAAC;AACtDW,EAAAA,SAAS,EAAEX,CAAC,CAAC,oCAAoC,CAAC;AAClDY,EAAAA,SAAS,EAAEZ,CAAC,CAAC,oCAAoC,CAAC;AAClDa,EAAAA,YAAY,EAAEb,CAAC,CAAC,uCAAuC,CAAC;AACxDc,EAAAA,QAAQ,EAAEd,CAAC,CAAC,mCAAmC,CAAC;AAChDe,EAAAA,MAAM,EAAEf,CAAC,CAAC,kCAAkC,CAAC;AAC7CgB,EAAAA,UAAU,EAAEhB,CAAC,CAAC,qCAAqC,CAAC;AACpDiB,EAAAA,MAAM,EAAEjB,CAAC,CAAC,iCAAiC,CAAC;AAC5CkB,EAAAA,OAAO,EAAElB,CAAC,CAAC,kCAAkC,CAAC;AAC9CmB,EAAAA,SAAS,EAAEnB,CAAC,CAAC,oCAAoC,CAAC;EAClDoB,QAAQ,EAAEpB,CAAC,CAAC,mCAAmC;AACjD;AAEA,IAAMqB,qBAAqB,GAAG;AAC5BC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,WAAW,EAAE,cAAc;AAC3BC,EAAAA,iBAAiB,EAAE,qBAAqB;AACxCC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,QAAQ,EAAE;AACZ;AAEA,IAAMC,iBAAiB,GAAG,CACxB,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO;AAKHC,IAAAA,qBAAqB,GAAG;;;;"}
package/dist/index.js CHANGED
@@ -30,18 +30,20 @@ import '@bigbinary/neeto-commons-frontend/react-utils';
30
30
  import '@bigbinary/neeto-molecules/Container';
31
31
  import '@bigbinary/neeto-molecules/Header';
32
32
  import '@bigbinary/neetoui/Button';
33
- import './useUtilityStore-BcSUEW_u.js';
34
- import 'zustand';
33
+ import './utils-CvS2p6ZS.js';
35
34
  import 'zustand/shallow';
36
35
  import '@bigbinary/neeto-molecules/SubHeader';
37
36
  import '@bigbinary/neeto-molecules/TableWrapper';
38
37
  import '@bigbinary/neetoui/Alert';
39
38
  import '@bigbinary/neetoui/Table';
40
39
  import '@bigbinary/neetoui/NoData';
40
+ import './useUtilityStore-KjKihXb0.js';
41
+ import 'zustand';
41
42
  import '@babel/runtime/helpers/objectWithoutProperties';
42
43
  import '@bigbinary/neeto-commons-frontend/utils';
43
44
  import '@bigbinary/neeto-molecules/MoreDropdown';
44
45
  import '@bigbinary/neetoui/Switch';
46
+ import '@bigbinary/neetoui/Tooltip';
45
47
  import '@hello-pangea/dnd';
46
48
  import '@bigbinary/neeto-icons/Reorder';
47
49
  import '@tanstack/react-query';
@@ -52,23 +54,16 @@ import '@bigbinary/neeto-icons/Plus';
52
54
  import '@bigbinary/neeto-icons/Delete';
53
55
  import '@bigbinary/neeto-icons/Refresh';
54
56
  import 'classnames';
55
- import 'yup';
56
- import '@bigbinary/neetoui/formik/Radio';
57
- import '@bigbinary/neetoui/managers';
58
- import '@bigbinary/neeto-icons/Collapse';
59
- import '@bigbinary/neeto-icons/Left';
57
+ import '@bigbinary/neeto-icons/Check';
58
+ import '@bigbinary/neeto-icons/Search';
59
+ import '@bigbinary/neetoui/Dropdown';
60
60
  import '@bigbinary/neetoui/formik/Textarea';
61
- import '@bigbinary/neetoui/formik/Input';
62
- import '@bigbinary/neetoui/formik/Switch';
63
- import '@monaco-editor/react';
64
- import '@bigbinary/neeto-icons/Help';
65
- import '@bigbinary/neeto-molecules/DynamicVariables';
66
61
  import '@bigbinary/neetoui/Select';
67
62
  import '@bigbinary/neetoui/DatePicker';
68
- import '@bigbinary/neetoui/formik/MultiEmailInput';
69
63
  import '@bigbinary/neeto-editor/FormikEditor';
64
+ import '@bigbinary/neetoui/formik/MultiEmailInput';
65
+ import '@bigbinary/neetoui/formik/Input';
70
66
  import '@bigbinary/neeto-hotkeys';
71
- import '@bigbinary/neeto-icons/Check';
72
67
  import '@bigbinary/neeto-icons/Close';
73
68
  import '@bigbinary/neetoui/Checkbox';
74
69
  import 'react-select/creatable';
@@ -76,13 +71,14 @@ import '@babel/runtime/helpers/toArray';
76
71
  import '@bigbinary/neeto-molecules/PhoneNumber';
77
72
  import '@bigbinary/neetoui/Tag';
78
73
  import 'react-select';
79
- import './constants-DghBXpIM.js';
80
- import '@bigbinary/neetoui/Radio';
74
+ import 'yup';
81
75
  import '@bigbinary/neeto-editor/utils';
76
+ import './constants-CB5HRjxq.js';
82
77
  import '@bigbinary/neeto-icons/Eye';
83
- import '@bigbinary/neeto-icons/Down';
84
- import '@bigbinary/neetoui/Dropdown';
85
- import '@bigbinary/neetoui/Tooltip';
78
+ import '@bigbinary/neetoui/Popover';
79
+ import '@bigbinary/neetoui/formik/Radio';
80
+ import '@bigbinary/neeto-icons/Help';
86
81
  import '@babel/runtime/helpers/typeof';
82
+ import '@bigbinary/neeto-icons/Down';
87
83
  import '@bigbinary/neeto-icons/Up';
88
84
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,27 @@
1
+ 'use strict';
2
+
3
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
4
+ var zustand = require('zustand');
5
+
6
+ /** @type {import("neetocommons/react-utils").ZustandStoreHook} */
7
+ var useUtilityStore = zustand.create(reactUtils.withImmutableActions(function (set) {
8
+ return {
9
+ moreActionDropdownItems: [],
10
+ showPreviewPane: false,
11
+ setMoreActionDropdownItems: function setMoreActionDropdownItems(items) {
12
+ return set({
13
+ moreActionDropdownItems: items,
14
+ showPreviewPane: true
15
+ });
16
+ },
17
+ hidePreviewPane: function hidePreviewPane() {
18
+ return set({
19
+ moreActionDropdownItems: [],
20
+ showPreviewPane: false
21
+ });
22
+ }
23
+ };
24
+ }));
25
+
26
+ exports.useUtilityStore = useUtilityStore;
27
+ //# sourceMappingURL=useUtilityStore-BGuo9bko.js.map