@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.
- package/README.md +0 -45
- package/app/javascript/src/translations/en.json +9 -35
- package/dist/NeetoRules.js +27 -6
- package/dist/NeetoRules.js.map +1 -1
- package/dist/NeetoRulesForm.js +3250 -4797
- package/dist/NeetoRulesForm.js.map +1 -1
- package/dist/RulePreview.js +18 -25
- package/dist/RulePreview.js.map +1 -1
- package/dist/cjs/NeetoRules.js +30 -9
- package/dist/cjs/NeetoRules.js.map +1 -1
- package/dist/cjs/NeetoRulesForm.js +3702 -5249
- package/dist/cjs/NeetoRulesForm.js.map +1 -1
- package/dist/cjs/RulePreview.js +19 -26
- package/dist/cjs/RulePreview.js.map +1 -1
- package/dist/cjs/index.js +15 -19
- package/dist/cjs/index.js.map +1 -1
- package/dist/{constants-BkPVd-Gz.js → constants-C0OOtVhT.js} +8 -10
- package/dist/constants-C0OOtVhT.js.map +1 -0
- package/dist/{constants-DghBXpIM.js → constants-CB5HRjxq.js} +7 -10
- package/dist/constants-CB5HRjxq.js.map +1 -0
- package/dist/index.js +15 -19
- package/dist/index.js.map +1 -1
- package/dist/useUtilityStore-BGuo9bko.js +27 -0
- package/dist/useUtilityStore-BGuo9bko.js.map +1 -0
- package/dist/useUtilityStore-KjKihXb0.js +25 -0
- package/dist/useUtilityStore-KjKihXb0.js.map +1 -0
- package/dist/utils-BngEaPaz.js +26 -0
- package/dist/utils-BngEaPaz.js.map +1 -0
- package/dist/utils-CvS2p6ZS.js +23 -0
- package/dist/utils-CvS2p6ZS.js.map +1 -0
- package/package.json +14 -17
- package/types.d.ts +0 -12
- package/dist/constants-BkPVd-Gz.js.map +0 -1
- package/dist/constants-DghBXpIM.js.map +0 -1
- package/dist/useUtilityStore-BcSUEW_u.js +0 -70
- package/dist/useUtilityStore-BcSUEW_u.js.map +0 -1
- package/dist/useUtilityStore-DhJI92iM.js +0 -74
- package/dist/useUtilityStore-DhJI92iM.js.map +0 -1
package/dist/RulePreview.js
CHANGED
|
@@ -5,17 +5,18 @@ import Pane from '@bigbinary/neetoui/Pane';
|
|
|
5
5
|
import Spinner from '@bigbinary/neetoui/Spinner';
|
|
6
6
|
import Typography from '@bigbinary/neetoui/Typography';
|
|
7
7
|
import { useTranslation } from 'react-i18next';
|
|
8
|
-
import {
|
|
8
|
+
import { u as useUtilityStore } from './useUtilityStore-KjKihXb0.js';
|
|
9
9
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
10
10
|
import { Fragment as Fragment$1, useState } from 'react';
|
|
11
11
|
import Down from '@bigbinary/neeto-icons/Down';
|
|
12
12
|
import Up from '@bigbinary/neeto-icons/Up';
|
|
13
13
|
import Button from '@bigbinary/neetoui/Button';
|
|
14
14
|
import { pluck } from 'ramda';
|
|
15
|
+
import { g as getSeparator } from './utils-CvS2p6ZS.js';
|
|
15
16
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
16
17
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
17
18
|
import Tooltip from '@bigbinary/neetoui/Tooltip';
|
|
18
|
-
import { V as VERB_LABELS } from './constants-
|
|
19
|
+
import { V as VERB_LABELS } from './constants-CB5HRjxq.js';
|
|
19
20
|
import '@bigbinary/neeto-commons-frontend/react-utils';
|
|
20
21
|
import 'zustand';
|
|
21
22
|
import 'i18next';
|
|
@@ -47,12 +48,10 @@ var ACTION_TYPE = {
|
|
|
47
48
|
EMAIL_TO: "emailTo",
|
|
48
49
|
EMAIL_TO_IDS: "emailToIds",
|
|
49
50
|
SMS_TO_NUMBERS: "smsToNumbers",
|
|
51
|
+
MULTI_SELECT: "multiSelect",
|
|
52
|
+
SEND_TO_API: "sendToApi",
|
|
50
53
|
DROPDOWN: "dropdown",
|
|
51
|
-
|
|
52
|
-
MULTISELECT: "multiSelect",
|
|
53
|
-
MULTISELECT_CHECKBOX: "multiSelectCheckbox",
|
|
54
|
-
RADIO: "radio",
|
|
55
|
-
SEND_TO_API: "sendToApi"
|
|
54
|
+
MULTISELECT: "multiSelect"
|
|
56
55
|
};
|
|
57
56
|
var TEXT_FIELDS = [ACTION_TYPE.TEXT, ACTION_TYPE.NUMBER, ACTION_TYPE.DECIMAL, ACTION_TYPE.REGEX, ACTION_TYPE.DATE];
|
|
58
57
|
|
|
@@ -100,16 +99,6 @@ var getActionDisplayValue = function getActionDisplayValue(action, actionOption)
|
|
|
100
99
|
displayValueData.displayValue = getEntityDisplayValue(action, actionOption);
|
|
101
100
|
return displayValueData;
|
|
102
101
|
}
|
|
103
|
-
case ACTION_TYPE.SELECT:
|
|
104
|
-
{
|
|
105
|
-
displayValueData.displayValue = getEntityDisplayValue(action, actionOption);
|
|
106
|
-
return displayValueData;
|
|
107
|
-
}
|
|
108
|
-
case ACTION_TYPE.RADIO:
|
|
109
|
-
{
|
|
110
|
-
displayValueData.displayValue = getEntityDisplayValue(action, actionOption);
|
|
111
|
-
return displayValueData;
|
|
112
|
-
}
|
|
113
102
|
case ACTION_TYPE.EMAIL_TO_IDS:
|
|
114
103
|
{
|
|
115
104
|
displayValueData.isBulk = true;
|
|
@@ -157,7 +146,7 @@ var ActionsDetail = function ActionsDetail(_ref) {
|
|
|
157
146
|
var _ref2 = (_getActionDisplayValu = getActionDisplayValue(action, actionOption)) !== null && _getActionDisplayValu !== void 0 ? _getActionDisplayValu : {},
|
|
158
147
|
displayValue = _ref2.displayValue,
|
|
159
148
|
isBulk = _ref2.isBulk;
|
|
160
|
-
if (actionOption.type === ACTION_TYPE.MULTISELECT
|
|
149
|
+
if (actionOption.type === ACTION_TYPE.MULTISELECT) {
|
|
161
150
|
var values = pluck("label", actionOption.dropdownOptions.filter(function (_ref3) {
|
|
162
151
|
var value = _ref3.value;
|
|
163
152
|
return action.metadata.value.includes(value);
|
|
@@ -263,7 +252,7 @@ var ConditionsDetail = function ConditionsDetail(_ref) {
|
|
|
263
252
|
var conditionsList = conditions.value;
|
|
264
253
|
var allConditions = viewMore && conditionsList.length > PREVIEW_CONDITION_LIMIT ? conditionsList : conditionsList.slice(0, PREVIEW_CONDITION_LIMIT);
|
|
265
254
|
var allConditionVerbs = _objectSpread(_objectSpread({}, VERB_LABELS), conditionVerbs);
|
|
266
|
-
var
|
|
255
|
+
var getLogicOperator = function getLogicOperator(joinType) {
|
|
267
256
|
return joinType === "or_operator" ? "or" : "and";
|
|
268
257
|
};
|
|
269
258
|
var renderConditionValues = function renderConditionValues(condition, conditionOption) {
|
|
@@ -288,7 +277,7 @@ var ConditionsDetail = function ConditionsDetail(_ref) {
|
|
|
288
277
|
})
|
|
289
278
|
});
|
|
290
279
|
}
|
|
291
|
-
if (conditionOption.type === "multi-select"
|
|
280
|
+
if (conditionOption.type === "multi-select") {
|
|
292
281
|
var values = pluck("label", conditionOption.dropdownOptions.filter(function (_ref2) {
|
|
293
282
|
var value = _ref2.value;
|
|
294
283
|
return condition.metadata.values.includes(value);
|
|
@@ -304,7 +293,7 @@ var ConditionsDetail = function ConditionsDetail(_ref) {
|
|
|
304
293
|
values: condition.metadata.values
|
|
305
294
|
});
|
|
306
295
|
}
|
|
307
|
-
if (conditionOption.type === "
|
|
296
|
+
if (conditionOption.type === "dropdown") {
|
|
308
297
|
return /*#__PURE__*/jsx(Typography, {
|
|
309
298
|
className: "neeto-ui-text-gray-800",
|
|
310
299
|
style: "h5",
|
|
@@ -352,7 +341,7 @@ var ConditionsDetail = function ConditionsDetail(_ref) {
|
|
|
352
341
|
className: "neeto-ui-text-gray-800",
|
|
353
342
|
style: "h5",
|
|
354
343
|
weight: "semibold",
|
|
355
|
-
children:
|
|
344
|
+
children: getLogicOperator(condition.joinType)
|
|
356
345
|
}), /*#__PURE__*/jsx(Typography, {
|
|
357
346
|
className: "neeto-ui-text-gray-700",
|
|
358
347
|
style: "h5",
|
|
@@ -476,9 +465,13 @@ var RulePreview = function RulePreview(_ref) {
|
|
|
476
465
|
}), /*#__PURE__*/jsx(Pane.Body, {
|
|
477
466
|
children: /*#__PURE__*/jsxs("div", {
|
|
478
467
|
className: "mt-2 w-full",
|
|
479
|
-
children: [/*#__PURE__*/
|
|
468
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
480
469
|
className: "mb-6",
|
|
481
|
-
children: ruleDetails.
|
|
470
|
+
children: [ruleDetails.description && /*#__PURE__*/jsx(Typography, {
|
|
471
|
+
className: "my-auto mb-4",
|
|
472
|
+
style: "body2",
|
|
473
|
+
children: ruleDetails.description.value
|
|
474
|
+
}), ruleDetails.entity && /*#__PURE__*/jsxs("div", {
|
|
482
475
|
className: "flex space-x-8",
|
|
483
476
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
484
477
|
className: "neeto-ui-text-gray-800 col-span-1",
|
|
@@ -491,7 +484,7 @@ var RulePreview = function RulePreview(_ref) {
|
|
|
491
484
|
weight: "normal",
|
|
492
485
|
children: ruleDetails.entity.value
|
|
493
486
|
})]
|
|
494
|
-
})
|
|
487
|
+
})]
|
|
495
488
|
}), ruleDetails.events && isNotEmpty(ruleDetails.events) ? /*#__PURE__*/jsx(EventsDetail, {
|
|
496
489
|
conditions: ruleDetails.conditions,
|
|
497
490
|
events: ruleDetails.events,
|
package/dist/RulePreview.js.map
CHANGED
|
@@ -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":"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"}
|
|
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":"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"}
|
package/dist/cjs/NeetoRules.js
CHANGED
|
@@ -10,7 +10,7 @@ var Container = require('@bigbinary/neeto-molecules/Container');
|
|
|
10
10
|
var RulesReorder = require('../index-DGlpB-_C.js');
|
|
11
11
|
var NeetoHeader = require('@bigbinary/neeto-molecules/Header');
|
|
12
12
|
var Button = require('@bigbinary/neetoui/Button');
|
|
13
|
-
var
|
|
13
|
+
var utils = require('../utils-BngEaPaz.js');
|
|
14
14
|
var jsxRuntime = require('react/jsx-runtime');
|
|
15
15
|
var shallow = require('zustand/shallow');
|
|
16
16
|
var SubHeader = require('@bigbinary/neeto-molecules/SubHeader');
|
|
@@ -22,12 +22,14 @@ var NoData = require('@bigbinary/neetoui/NoData');
|
|
|
22
22
|
var Spinner = require('@bigbinary/neetoui/Spinner');
|
|
23
23
|
var ramda = require('ramda');
|
|
24
24
|
var reactI18next = require('react-i18next');
|
|
25
|
+
var useUtilityStore = require('../useUtilityStore-BGuo9bko.js');
|
|
25
26
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
26
27
|
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
27
28
|
var i18next = require('i18next');
|
|
28
|
-
var utils = require('@bigbinary/neeto-commons-frontend/utils');
|
|
29
|
+
var utils$1 = require('@bigbinary/neeto-commons-frontend/utils');
|
|
29
30
|
var MoreDropdown = require('@bigbinary/neeto-molecules/MoreDropdown');
|
|
30
31
|
var Switch = require('@bigbinary/neetoui/Switch');
|
|
32
|
+
var Tooltip = require('@bigbinary/neetoui/Tooltip');
|
|
31
33
|
require('@hello-pangea/dnd');
|
|
32
34
|
require('@bigbinary/neeto-icons/Reorder');
|
|
33
35
|
require('@bigbinary/neetoui/Pane');
|
|
@@ -57,7 +59,7 @@ var Header = reactUtils.withT(function (_ref) {
|
|
|
57
59
|
iconPosition: "right",
|
|
58
60
|
label: t("neetoRules.button.addNew"),
|
|
59
61
|
style: "primary",
|
|
60
|
-
to:
|
|
62
|
+
to: utils.createRoutes(automationRulesPath)["new"]
|
|
61
63
|
}),
|
|
62
64
|
searchProps: hasUnfilteredRules && {
|
|
63
65
|
placeholder: t("neetoRules.placeholders.searchRules")
|
|
@@ -115,7 +117,7 @@ var buildActionDropdownMenuItems = function buildActionDropdownMenuItems(_ref) {
|
|
|
115
117
|
"data-test-id": "automation-rules-edit-link",
|
|
116
118
|
"data-cy": "automation-rules-edit-link",
|
|
117
119
|
label: i18next.t("neetoRules.button.edit"),
|
|
118
|
-
to: utils.buildUrl(
|
|
120
|
+
to: utils$1.buildUrl(utils.createRoutes(automationRulesPath).edit, {
|
|
119
121
|
ruleId: rule.id
|
|
120
122
|
})
|
|
121
123
|
}, {
|
|
@@ -178,21 +180,40 @@ var getColumnData = function getColumnData(_ref3) {
|
|
|
178
180
|
},
|
|
179
181
|
children: neetoCist.truncate(name, 100)
|
|
180
182
|
}), /*#__PURE__*/jsxRuntime.jsx(MoreDropdown, {
|
|
181
|
-
menuItems: buildActionDropdownMenuItems(_objectSpread$2({
|
|
182
|
-
rule: rule
|
|
183
|
-
}, otherProps)),
|
|
184
183
|
dropdownProps: {
|
|
185
184
|
strategy: "fixed",
|
|
186
185
|
appendTo: function appendTo() {
|
|
187
186
|
return document.body;
|
|
188
187
|
}
|
|
189
|
-
}
|
|
188
|
+
},
|
|
189
|
+
menuItems: buildActionDropdownMenuItems(_objectSpread$2({
|
|
190
|
+
rule: rule
|
|
191
|
+
}, otherProps))
|
|
190
192
|
})]
|
|
191
193
|
}), /*#__PURE__*/jsxRuntime.jsx(DisableMessage, {
|
|
192
194
|
disabledReason: rule.disabledReason
|
|
193
195
|
})]
|
|
194
196
|
});
|
|
195
197
|
}
|
|
198
|
+
}, {
|
|
199
|
+
title: i18next.t("neetoRules.labels.description"),
|
|
200
|
+
dataIndex: "description",
|
|
201
|
+
key: "description",
|
|
202
|
+
width: 390,
|
|
203
|
+
render: function render(description) {
|
|
204
|
+
return neetoCist.isPresent(description) ? /*#__PURE__*/jsxRuntime.jsx(Tooltip, {
|
|
205
|
+
content: description,
|
|
206
|
+
position: "bottom",
|
|
207
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
208
|
+
className: "line-clamp-2 whitespace-pre-line",
|
|
209
|
+
style: "body2",
|
|
210
|
+
children: description
|
|
211
|
+
})
|
|
212
|
+
}) : /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
213
|
+
style: "body2",
|
|
214
|
+
children: "-"
|
|
215
|
+
});
|
|
216
|
+
}
|
|
196
217
|
}, {
|
|
197
218
|
title: i18next.t("neetoRules.labels.active"),
|
|
198
219
|
key: "active",
|
|
@@ -398,7 +419,7 @@ var RulesTable = function RulesTable(_ref) {
|
|
|
398
419
|
helpText: helpDocUrl ? renderNoDataHelpText(helpDocUrl) : null,
|
|
399
420
|
primaryButtonProps: {
|
|
400
421
|
label: t("neetoRules.button.addNew"),
|
|
401
|
-
to:
|
|
422
|
+
to: utils.createRoutes(automationRulesPath)["new"]
|
|
402
423
|
}
|
|
403
424
|
}))
|
|
404
425
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeetoRules.js","sources":["../../app/javascript/src/components/NeetoRules/Header.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/constants.js","../../app/javascript/src/components/NeetoRules/RulesTable/DisableMessage.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/utils.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/index.jsx","../../app/javascript/src/components/NeetoRules/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { Button } from \"neetoui\";\n\nimport { createRoutes } from \"utils\";\n\nconst Header = withT(\n ({\n breadcrumbs,\n automationRulesPath,\n helpPopoverProps = {},\n hasUnfilteredRules,\n headerProps,\n t,\n }) => (\n <NeetoHeader\n {...{ breadcrumbs }}\n title={t(\"neetoRules.common.title\")}\n actionBlock={\n <Button\n className=\"hover:neeto-ui-text-white hover:no-underline\"\n data-cy=\"settings-automation-new-rule-button\"\n data-test-id=\"settings-automation-new-rule-button\"\n iconPosition=\"right\"\n label={t(\"neetoRules.button.addNew\")}\n style=\"primary\"\n to={createRoutes(automationRulesPath).new}\n />\n }\n searchProps={\n hasUnfilteredRules && {\n placeholder: t(\"neetoRules.placeholders.searchRules\"),\n }\n }\n titleHelpPopoverProps={{\n description: t(\"neetoRules.helpText.description\"),\n title: t(\"neetoRules.common.title\"),\n ...helpPopoverProps,\n }}\n {...headerProps}\n />\n )\n);\nexport default memo(Header);\n","export const STATUS_KEYS = { ENABLED: \"enabled\", DISABLED: \"disabled\" };\n\nexport const DEFAULT_INIT_PAGE = 1;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Typography } from \"neetoui\";\nimport { isNotNil } from \"ramda\";\n\nconst DisableMessage = withT(\n ({ t, disabledReason }) =>\n isNotNil(disabledReason) && (\n <div>\n <Typography class=\"text-red-600\" component=\"span\" style=\"body2\">\n {t(disabledReason)}\n </Typography>\n </div>\n )\n);\n\nexport default DisableMessage;\n","import { t } from \"i18next\";\nimport { removeBy, truncate } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Switch, Button } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport DisableMessage from \"./DisableMessage\";\n\nconst buildActionDropdownMenuItems = ({\n rule,\n onClone,\n onDelete,\n moreDropdownItems = [],\n automationRulesPath,\n allowCloning,\n}) => {\n const defaultOptions = [\n ...moreDropdownItems.map(({ onClick, ...others }) => ({\n ...others,\n onClick: () => onClick(rule),\n })),\n {\n key: \"edit\",\n className: \"neeto-ui-btn\",\n \"data-test-id\": \"automation-rules-edit-link\",\n \"data-cy\": \"automation-rules-edit-link\",\n label: t(\"neetoRules.button.edit\"),\n to: buildUrl(createRoutes(automationRulesPath).edit, { ruleId: rule.id }),\n },\n {\n key: \"clone\",\n \"data-test-id\": \"automation-rules-clone-link\",\n \"data-cy\": \"automation-rules-clone-link\",\n label: t(\"neetoRules.button.clone\"),\n onClick: () => onClone(rule.id),\n },\n { key: \"divider\", type: \"divider\" },\n {\n key: \"delete\",\n \"data-test-id\": \"automation-rules-delete-link\",\n \"data-cy\": \"automation-rules-delete-link\",\n label: t(\"neetoRules.button.delete\"),\n onClick: () => onDelete(rule),\n },\n ];\n\n if (!allowCloning) {\n return removeBy({ key: \"clone\" }, defaultOptions);\n }\n\n return defaultOptions;\n};\n\nexport const getColumnData = ({\n handleChangeStatus,\n additionalColumns = [],\n onPreview,\n ...otherProps\n}) => {\n const { setMoreActionDropdownItems } = useUtilityStore.pick();\n\n return [\n {\n title: t(\"neetoRules.labels.name\"),\n dataIndex: \"name\",\n key: \"name\",\n ellipsis: true,\n width: 440,\n render: (name, rule) => (\n <div>\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n className=\"whitespace-pre-line break-words text-left\"\n style=\"link\"\n onClick={() => {\n setMoreActionDropdownItems(\n buildActionDropdownMenuItems({ rule, ...otherProps })\n );\n onPreview(rule.id);\n }}\n >\n {truncate(name, 100)}\n </Button>\n <MoreDropdown\n menuItems={buildActionDropdownMenuItems({ rule, ...otherProps })}\n dropdownProps={{\n strategy: \"fixed\",\n appendTo: () => document.body,\n }}\n />\n </div>\n <DisableMessage disabledReason={rule.disabledReason} />\n </div>\n ),\n },\n {\n title: t(\"neetoRules.labels.active\"),\n key: \"active\",\n width: 140,\n align: \"center\",\n render: (_, rule) => (\n <div className=\"flex justify-center\">\n <Switch\n checked={rule.status === STATUS_KEYS.ENABLED}\n data-test-id=\"automation-rules-state-switch-row\"\n disabled={!!rule.disabledReason}\n onChange={e => {\n handleChangeStatus(e, rule.id);\n }}\n />\n </div>\n ),\n },\n ...additionalColumns,\n ];\n};\n\nexport const renderNoDataHelpText = helpDocUrl => (\n <Trans\n i18nKey=\"neetoRules.noData.helpText\"\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: helpDocUrl }} />,\n }}\n />\n);\n","import { useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Alert, Table, Typography, NoData, Button, Spinner } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport {\n useCloneAutomationRule,\n useDeleteAutomationRule,\n useUpdateAutomationRule,\n} from \"hooks/reactQuery/useAutomationRulesApi\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport { getColumnData, renderNoDataHelpText } from \"./utils\";\n\nconst RulesTable = ({\n url,\n additionalColumns,\n allowReordering,\n automationRulesPath = \"/\",\n onPreview,\n moreDropdownItems = [],\n rules = [],\n totalCount,\n helpDocUrl,\n isLoading,\n onDeleteSuccess,\n onCloneSuccess,\n onUpdateSuccess,\n page,\n setIsReorderPaneOpen,\n setPage,\n allowCloning = true,\n hasUnfilteredRules = true,\n payloadKey = \"rule\",\n}) => {\n const { searchTerm = \"\" } = useQueryParams();\n\n const [selectedRule, setSelectedRule] = useState(null);\n\n const { hidePreviewPane } = useUtilityStore.pick();\n\n const { t } = useTranslation();\n\n const { mutate: updateRule, isPending: isUpdating } =\n useUpdateAutomationRule(url);\n\n const { mutate: cloneRule, isPending: isCloning } =\n useCloneAutomationRule(url);\n\n const { mutate: deleteRule, isPending: isDeleting } =\n useDeleteAutomationRule(url);\n\n const handleChangeStatus = (event, id) => {\n const status = event.target.checked\n ? STATUS_KEYS.ENABLED\n : STATUS_KEYS.DISABLED;\n const payload = { [payloadKey]: { status } };\n updateRule({ id, url, payload }, { onSuccess: () => onUpdateSuccess?.() });\n };\n\n const handleCloneSuccess = () => {\n onCloneSuccess?.();\n hidePreviewPane();\n };\n\n const handleDeleteSuccess = () => {\n onDeleteSuccess?.();\n hidePreviewPane();\n setSelectedRule(null);\n };\n\n const columnData = getColumnData({\n handleChangeStatus,\n additionalColumns,\n onClone: id => cloneRule({ id, url }, { onSuccess: handleCloneSuccess }),\n onDelete: setSelectedRule,\n onPreview,\n automationRulesPath,\n moreDropdownItems,\n allowCloning,\n });\n\n if (isLoading && isEmpty(rules)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n {hasUnfilteredRules && (\n <SubHeader\n leftActionBlock={\n <Typography className=\"mr-4 font-semibold\" style=\"h4\">\n {t(\"neetoRules.common.automationRuleWithCount\", {\n count: totalCount,\n })}\n </Typography>\n }\n rightActionBlock={\n hasUnfilteredRules &&\n allowReordering && (\n <Button\n disabled={isNotEmpty(searchTerm)}\n label={t(\"neetoRules.common.reorder\")}\n style=\"secondary\"\n onClick={() => setIsReorderPaneOpen(true)}\n />\n )\n }\n />\n )}\n {isNotEmpty(rules) ? (\n <>\n <TableWrapper hasPagination={totalCount > DEFAULT_PAGE_SIZE}>\n <Table\n {...{ columnData, totalCount }}\n fixedHeight\n allowClick={false}\n currentPageNumber={page}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n handlePageChange={setPage}\n loading={isUpdating || isCloning || isDeleting || isLoading}\n rowData={rules.map(item => ({ key: item.id, ...item }))}\n rowSelection={false}\n scroll={{ x: 0 }}\n tableLayout=\"fixed\"\n />\n </TableWrapper>\n <Alert\n isOpen={!!selectedRule}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoRules.button.delete\")}\n title={t(\"neetoRules.deleteAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoRules.deleteAlert.message\"\n values={{ name: selectedRule?.name }}\n />\n }\n onClose={() => setSelectedRule(null)}\n onSubmit={() =>\n deleteRule(\n { id: selectedRule?.id, url },\n { onSuccess: handleDeleteSuccess }\n )\n }\n />\n </>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={t(\"neetoRules.noData.title\")}\n {...(isEmpty(searchTerm) && {\n helpText: helpDocUrl ? renderNoDataHelpText(helpDocUrl) : null,\n primaryButtonProps: {\n label: t(\"neetoRules.button.addNew\"),\n to: createRoutes(automationRulesPath).new,\n },\n })}\n />\n </div>\n )}\n </>\n );\n};\n\nexport default RulesTable;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\n\nimport { useFetchAutomationRules } from \"hooks/reactQuery/useAutomationRulesApi\";\n\nimport { INITIAL_RULES_DATA } from \"./constants\";\nimport Header from \"./Header\";\nimport RulesReorder from \"./RulesReorder\";\nimport RulesTable from \"./RulesTable\";\nimport { DEFAULT_INIT_PAGE } from \"./RulesTable/constants\";\n\nconst NeetoRules = ({\n breadcrumbs,\n automationRulesPath,\n automationRulesEndpoint: url,\n allowReordering = false,\n rulesTableProps = {},\n helpPopoverProps = {},\n deleteRule,\n cloneRule,\n updateRule,\n reorderRules,\n headerProps = {},\n}) => {\n const [isReorderPaneOpen, setIsReorderPaneOpen] = useState(false);\n const helpDocUrl = helpPopoverProps?.helpLinkProps?.href;\n\n const [page, setPage] = useState(DEFAULT_INIT_PAGE);\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const {\n data: { rules, totalCount } = INITIAL_RULES_DATA,\n isLoading,\n isFetching,\n } = useFetchAutomationRules({\n url,\n page,\n pageSize: DEFAULT_PAGE_SIZE,\n searchTerm,\n });\n\n const hasUnfilteredRules = isPresent(searchTerm) || totalCount > 0;\n\n return (\n <Container>\n <Header\n {...{\n automationRulesPath,\n breadcrumbs,\n hasUnfilteredRules,\n headerProps,\n helpPopoverProps,\n }}\n />\n <RulesTable\n {...{\n allowReordering,\n automationRulesPath,\n hasUnfilteredRules,\n helpDocUrl,\n page,\n rules,\n setIsReorderPaneOpen,\n setPage,\n totalCount,\n url,\n ...rulesTableProps,\n }}\n allowCloning={cloneRule?.allowed ?? true}\n isLoading={isLoading || isFetching}\n onCloneSuccess={cloneRule?.onSuccess?.callback}\n onDeleteSuccess={deleteRule?.onSuccess?.callback}\n onUpdateSuccess={updateRule?.onSuccess?.callback}\n />\n {allowReordering && !isLoading && (\n <RulesReorder\n {...{ totalCount, url }}\n isOpen={isReorderPaneOpen}\n onClose={() => setIsReorderPaneOpen(false)}\n onReorderSuccess={reorderRules?.onSuccess?.callback}\n />\n )}\n </Container>\n );\n};\n\nexport default NeetoRules;\n"],"names":["Header","withT","_ref","breadcrumbs","automationRulesPath","_ref$helpPopoverProps","helpPopoverProps","hasUnfilteredRules","headerProps","t","_jsx","NeetoHeader","_objectSpread","title","actionBlock","Button","className","iconPosition","label","style","to","createRoutes","searchProps","placeholder","titleHelpPopoverProps","description","memo","STATUS_KEYS","ENABLED","DISABLED","DEFAULT_INIT_PAGE","DisableMessage","disabledReason","isNotNil","children","Typography","component","buildActionDropdownMenuItems","rule","onClone","onDelete","_ref$moreDropdownItem","moreDropdownItems","allowCloning","defaultOptions","concat","_toConsumableArray","map","_ref2","onClick","others","_objectWithoutProperties","_excluded","key","buildUrl","edit","ruleId","id","type","removeBy","getColumnData","_ref3","handleChangeStatus","_ref3$additionalColum","additionalColumns","onPreview","otherProps","_excluded2","_useUtilityStore","useUtilityStore","store","setMoreActionDropdownItems","shallow","dataIndex","ellipsis","width","render","name","_jsxs","truncate","MoreDropdown","menuItems","dropdownProps","strategy","appendTo","document","body","align","_","Switch","checked","status","disabled","onChange","e","renderNoDataHelpText","helpDocUrl","Trans","i18nKey","components","a","target","pathname","RulesTable","url","allowReordering","_ref$automationRulesP","_ref$rules","rules","totalCount","isLoading","onDeleteSuccess","onCloneSuccess","onUpdateSuccess","page","setIsReorderPaneOpen","setPage","_ref$allowCloning","_ref$hasUnfilteredRul","_ref$payloadKey","payloadKey","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","_useState","useState","_useState2","_slicedToArray","selectedRule","setSelectedRule","hidePreviewPane","_useTranslation","useTranslation","_useUpdateAutomationR","useUpdateAutomationRule","updateRule","mutate","isUpdating","isPending","_useCloneAutomationRu","useCloneAutomationRule","cloneRule","isCloning","_useDeleteAutomationR","useDeleteAutomationRule","deleteRule","isDeleting","event","payload","_defineProperty","onSuccess","handleCloneSuccess","handleDeleteSuccess","columnData","isEmpty","Spinner","_Fragment","SubHeader","leftActionBlock","count","rightActionBlock","isNotEmpty","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","Table","fixedHeight","allowClick","currentPageNumber","defaultPageSize","handlePageChange","loading","rowData","item","rowSelection","scroll","x","tableLayout","Alert","isOpen","isSubmitting","submitButtonLabel","message","values","onClose","onSubmit","NoData","helpText","primaryButtonProps","NeetoRules","_helpPopoverProps$hel","_cloneRule$allowed","_cloneRule$onSuccess","_deleteRule$onSuccess","_updateRule$onSuccess","_reorderRules$onSucce","automationRulesEndpoint","_ref$allowReordering","_ref$rulesTableProps","rulesTableProps","reorderRules","_ref$headerProps","isReorderPaneOpen","helpLinkProps","href","_useState3","_useState4","_useFetchAutomationRu","useFetchAutomationRules","pageSize","_useFetchAutomationRu2","data","_useFetchAutomationRu3","INITIAL_RULES_DATA","isFetching","isPresent","Container","allowed","callback","RulesReorder","onReorderSuccess"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NeetoRules.js","sources":["../../app/javascript/src/components/NeetoRules/Header.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/constants.js","../../app/javascript/src/components/NeetoRules/RulesTable/DisableMessage.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/utils.jsx","../../app/javascript/src/components/NeetoRules/RulesTable/index.jsx","../../app/javascript/src/components/NeetoRules/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport NeetoHeader from \"neetomolecules/Header\";\nimport { Button } from \"neetoui\";\n\nimport { createRoutes } from \"utils\";\n\nconst Header = withT(\n ({\n breadcrumbs,\n automationRulesPath,\n helpPopoverProps = {},\n hasUnfilteredRules,\n headerProps,\n t,\n }) => (\n <NeetoHeader\n {...{ breadcrumbs }}\n title={t(\"neetoRules.common.title\")}\n actionBlock={\n <Button\n className=\"hover:neeto-ui-text-white hover:no-underline\"\n data-cy=\"settings-automation-new-rule-button\"\n data-test-id=\"settings-automation-new-rule-button\"\n iconPosition=\"right\"\n label={t(\"neetoRules.button.addNew\")}\n style=\"primary\"\n to={createRoutes(automationRulesPath).new}\n />\n }\n searchProps={\n hasUnfilteredRules && {\n placeholder: t(\"neetoRules.placeholders.searchRules\"),\n }\n }\n titleHelpPopoverProps={{\n description: t(\"neetoRules.helpText.description\"),\n title: t(\"neetoRules.common.title\"),\n ...helpPopoverProps,\n }}\n {...headerProps}\n />\n )\n);\nexport default memo(Header);\n","export const STATUS_KEYS = { ENABLED: \"enabled\", DISABLED: \"disabled\" };\n\nexport const DEFAULT_INIT_PAGE = 1;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Typography } from \"neetoui\";\nimport { isNotNil } from \"ramda\";\n\nconst DisableMessage = withT(\n ({ t, disabledReason }) =>\n isNotNil(disabledReason) && (\n <div>\n <Typography class=\"text-red-600\" component=\"span\" style=\"body2\">\n {t(disabledReason)}\n </Typography>\n </div>\n )\n);\n\nexport default DisableMessage;\n","import { t } from \"i18next\";\nimport { isPresent, removeBy, truncate } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Switch, Button, Typography, Tooltip } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport DisableMessage from \"./DisableMessage\";\n\nconst buildActionDropdownMenuItems = ({\n rule,\n onClone,\n onDelete,\n moreDropdownItems = [],\n automationRulesPath,\n allowCloning,\n}) => {\n const defaultOptions = [\n ...moreDropdownItems.map(({ onClick, ...others }) => ({\n ...others,\n onClick: () => onClick(rule),\n })),\n {\n key: \"edit\",\n className: \"neeto-ui-btn\",\n \"data-test-id\": \"automation-rules-edit-link\",\n \"data-cy\": \"automation-rules-edit-link\",\n label: t(\"neetoRules.button.edit\"),\n to: buildUrl(createRoutes(automationRulesPath).edit, { ruleId: rule.id }),\n },\n {\n key: \"clone\",\n \"data-test-id\": \"automation-rules-clone-link\",\n \"data-cy\": \"automation-rules-clone-link\",\n label: t(\"neetoRules.button.clone\"),\n onClick: () => onClone(rule.id),\n },\n { key: \"divider\", type: \"divider\" },\n {\n key: \"delete\",\n \"data-test-id\": \"automation-rules-delete-link\",\n \"data-cy\": \"automation-rules-delete-link\",\n label: t(\"neetoRules.button.delete\"),\n onClick: () => onDelete(rule),\n },\n ];\n\n if (!allowCloning) {\n return removeBy({ key: \"clone\" }, defaultOptions);\n }\n\n return defaultOptions;\n};\n\nexport const getColumnData = ({\n handleChangeStatus,\n additionalColumns = [],\n onPreview,\n ...otherProps\n}) => {\n const { setMoreActionDropdownItems } = useUtilityStore.pick();\n\n return [\n {\n title: t(\"neetoRules.labels.name\"),\n dataIndex: \"name\",\n key: \"name\",\n ellipsis: true,\n width: 440,\n render: (name, rule) => (\n <div>\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n className=\"whitespace-pre-line break-words text-left\"\n style=\"link\"\n onClick={() => {\n setMoreActionDropdownItems(\n buildActionDropdownMenuItems({ rule, ...otherProps })\n );\n onPreview(rule.id);\n }}\n >\n {truncate(name, 100)}\n </Button>\n <MoreDropdown\n dropdownProps={{\n strategy: \"fixed\",\n appendTo: () => document.body,\n }}\n menuItems={buildActionDropdownMenuItems({\n rule,\n ...otherProps,\n })}\n />\n </div>\n <DisableMessage disabledReason={rule.disabledReason} />\n </div>\n ),\n },\n {\n title: t(\"neetoRules.labels.description\"),\n dataIndex: \"description\",\n key: \"description\",\n width: 390,\n render: description =>\n isPresent(description) ? (\n <Tooltip content={description} position=\"bottom\">\n <Typography\n className=\"line-clamp-2 whitespace-pre-line\"\n style=\"body2\"\n >\n {description}\n </Typography>\n </Tooltip>\n ) : (\n <Typography style=\"body2\">-</Typography>\n ),\n },\n {\n title: t(\"neetoRules.labels.active\"),\n key: \"active\",\n width: 140,\n align: \"center\",\n render: (_, rule) => (\n <div className=\"flex justify-center\">\n <Switch\n checked={rule.status === STATUS_KEYS.ENABLED}\n data-test-id=\"automation-rules-state-switch-row\"\n disabled={!!rule.disabledReason}\n onChange={e => {\n handleChangeStatus(e, rule.id);\n }}\n />\n </div>\n ),\n },\n ...additionalColumns,\n ];\n};\n\nexport const renderNoDataHelpText = helpDocUrl => (\n <Trans\n i18nKey=\"neetoRules.noData.helpText\"\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: helpDocUrl }} />,\n }}\n />\n);\n","import { useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Alert, Table, Typography, NoData, Button, Spinner } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport {\n useCloneAutomationRule,\n useDeleteAutomationRule,\n useUpdateAutomationRule,\n} from \"hooks/reactQuery/useAutomationRulesApi\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport { getColumnData, renderNoDataHelpText } from \"./utils\";\n\nconst RulesTable = ({\n url,\n additionalColumns,\n allowReordering,\n automationRulesPath = \"/\",\n onPreview,\n moreDropdownItems = [],\n rules = [],\n totalCount,\n helpDocUrl,\n isLoading,\n onDeleteSuccess,\n onCloneSuccess,\n onUpdateSuccess,\n page,\n setIsReorderPaneOpen,\n setPage,\n allowCloning = true,\n hasUnfilteredRules = true,\n payloadKey = \"rule\",\n}) => {\n const { searchTerm = \"\" } = useQueryParams();\n\n const [selectedRule, setSelectedRule] = useState(null);\n\n const { hidePreviewPane } = useUtilityStore.pick();\n\n const { t } = useTranslation();\n\n const { mutate: updateRule, isPending: isUpdating } =\n useUpdateAutomationRule(url);\n\n const { mutate: cloneRule, isPending: isCloning } =\n useCloneAutomationRule(url);\n\n const { mutate: deleteRule, isPending: isDeleting } =\n useDeleteAutomationRule(url);\n\n const handleChangeStatus = (event, id) => {\n const status = event.target.checked\n ? STATUS_KEYS.ENABLED\n : STATUS_KEYS.DISABLED;\n const payload = { [payloadKey]: { status } };\n updateRule({ id, url, payload }, { onSuccess: () => onUpdateSuccess?.() });\n };\n\n const handleCloneSuccess = () => {\n onCloneSuccess?.();\n hidePreviewPane();\n };\n\n const handleDeleteSuccess = () => {\n onDeleteSuccess?.();\n hidePreviewPane();\n setSelectedRule(null);\n };\n\n const columnData = getColumnData({\n handleChangeStatus,\n additionalColumns,\n onClone: id => cloneRule({ id, url }, { onSuccess: handleCloneSuccess }),\n onDelete: setSelectedRule,\n onPreview,\n automationRulesPath,\n moreDropdownItems,\n allowCloning,\n });\n\n if (isLoading && isEmpty(rules)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n {hasUnfilteredRules && (\n <SubHeader\n leftActionBlock={\n <Typography className=\"mr-4 font-semibold\" style=\"h4\">\n {t(\"neetoRules.common.automationRuleWithCount\", {\n count: totalCount,\n })}\n </Typography>\n }\n rightActionBlock={\n hasUnfilteredRules &&\n allowReordering && (\n <Button\n disabled={isNotEmpty(searchTerm)}\n label={t(\"neetoRules.common.reorder\")}\n style=\"secondary\"\n onClick={() => setIsReorderPaneOpen(true)}\n />\n )\n }\n />\n )}\n {isNotEmpty(rules) ? (\n <>\n <TableWrapper hasPagination={totalCount > DEFAULT_PAGE_SIZE}>\n <Table\n {...{ columnData, totalCount }}\n fixedHeight\n allowClick={false}\n currentPageNumber={page}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n handlePageChange={setPage}\n loading={isUpdating || isCloning || isDeleting || isLoading}\n rowData={rules.map(item => ({ key: item.id, ...item }))}\n rowSelection={false}\n scroll={{ x: 0 }}\n tableLayout=\"fixed\"\n />\n </TableWrapper>\n <Alert\n isOpen={!!selectedRule}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoRules.button.delete\")}\n title={t(\"neetoRules.deleteAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoRules.deleteAlert.message\"\n values={{ name: selectedRule?.name }}\n />\n }\n onClose={() => setSelectedRule(null)}\n onSubmit={() =>\n deleteRule(\n { id: selectedRule?.id, url },\n { onSuccess: handleDeleteSuccess }\n )\n }\n />\n </>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={t(\"neetoRules.noData.title\")}\n {...(isEmpty(searchTerm) && {\n helpText: helpDocUrl ? renderNoDataHelpText(helpDocUrl) : null,\n primaryButtonProps: {\n label: t(\"neetoRules.button.addNew\"),\n to: createRoutes(automationRulesPath).new,\n },\n })}\n />\n </div>\n )}\n </>\n );\n};\n\nexport default RulesTable;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\n\nimport { useFetchAutomationRules } from \"hooks/reactQuery/useAutomationRulesApi\";\n\nimport { INITIAL_RULES_DATA } from \"./constants\";\nimport Header from \"./Header\";\nimport RulesReorder from \"./RulesReorder\";\nimport RulesTable from \"./RulesTable\";\nimport { DEFAULT_INIT_PAGE } from \"./RulesTable/constants\";\n\nconst NeetoRules = ({\n breadcrumbs,\n automationRulesPath,\n automationRulesEndpoint: url,\n allowReordering = false,\n rulesTableProps = {},\n helpPopoverProps = {},\n deleteRule,\n cloneRule,\n updateRule,\n reorderRules,\n headerProps = {},\n}) => {\n const [isReorderPaneOpen, setIsReorderPaneOpen] = useState(false);\n const helpDocUrl = helpPopoverProps?.helpLinkProps?.href;\n\n const [page, setPage] = useState(DEFAULT_INIT_PAGE);\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const {\n data: { rules, totalCount } = INITIAL_RULES_DATA,\n isLoading,\n isFetching,\n } = useFetchAutomationRules({\n url,\n page,\n pageSize: DEFAULT_PAGE_SIZE,\n searchTerm,\n });\n\n const hasUnfilteredRules = isPresent(searchTerm) || totalCount > 0;\n\n return (\n <Container>\n <Header\n {...{\n automationRulesPath,\n breadcrumbs,\n hasUnfilteredRules,\n headerProps,\n helpPopoverProps,\n }}\n />\n <RulesTable\n {...{\n allowReordering,\n automationRulesPath,\n hasUnfilteredRules,\n helpDocUrl,\n page,\n rules,\n setIsReorderPaneOpen,\n setPage,\n totalCount,\n url,\n ...rulesTableProps,\n }}\n allowCloning={cloneRule?.allowed ?? true}\n isLoading={isLoading || isFetching}\n onCloneSuccess={cloneRule?.onSuccess?.callback}\n onDeleteSuccess={deleteRule?.onSuccess?.callback}\n onUpdateSuccess={updateRule?.onSuccess?.callback}\n />\n {allowReordering && !isLoading && (\n <RulesReorder\n {...{ totalCount, url }}\n isOpen={isReorderPaneOpen}\n onClose={() => setIsReorderPaneOpen(false)}\n onReorderSuccess={reorderRules?.onSuccess?.callback}\n />\n )}\n </Container>\n );\n};\n\nexport default NeetoRules;\n"],"names":["Header","withT","_ref","breadcrumbs","automationRulesPath","_ref$helpPopoverProps","helpPopoverProps","hasUnfilteredRules","headerProps","t","_jsx","NeetoHeader","_objectSpread","title","actionBlock","Button","className","iconPosition","label","style","to","createRoutes","searchProps","placeholder","titleHelpPopoverProps","description","memo","STATUS_KEYS","ENABLED","DISABLED","DEFAULT_INIT_PAGE","DisableMessage","disabledReason","isNotNil","children","Typography","component","buildActionDropdownMenuItems","rule","onClone","onDelete","_ref$moreDropdownItem","moreDropdownItems","allowCloning","defaultOptions","concat","_toConsumableArray","map","_ref2","onClick","others","_objectWithoutProperties","_excluded","key","buildUrl","edit","ruleId","id","type","removeBy","getColumnData","_ref3","handleChangeStatus","_ref3$additionalColum","additionalColumns","onPreview","otherProps","_excluded2","_useUtilityStore","useUtilityStore","store","setMoreActionDropdownItems","shallow","dataIndex","ellipsis","width","render","name","_jsxs","truncate","MoreDropdown","dropdownProps","strategy","appendTo","document","body","menuItems","isPresent","Tooltip","content","position","align","_","Switch","checked","status","disabled","onChange","e","renderNoDataHelpText","helpDocUrl","Trans","i18nKey","components","a","target","pathname","RulesTable","url","allowReordering","_ref$automationRulesP","_ref$rules","rules","totalCount","isLoading","onDeleteSuccess","onCloneSuccess","onUpdateSuccess","page","setIsReorderPaneOpen","setPage","_ref$allowCloning","_ref$hasUnfilteredRul","_ref$payloadKey","payloadKey","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","_useState","useState","_useState2","_slicedToArray","selectedRule","setSelectedRule","hidePreviewPane","_useTranslation","useTranslation","_useUpdateAutomationR","useUpdateAutomationRule","updateRule","mutate","isUpdating","isPending","_useCloneAutomationRu","useCloneAutomationRule","cloneRule","isCloning","_useDeleteAutomationR","useDeleteAutomationRule","deleteRule","isDeleting","event","payload","_defineProperty","onSuccess","handleCloneSuccess","handleDeleteSuccess","columnData","isEmpty","Spinner","_Fragment","SubHeader","leftActionBlock","count","rightActionBlock","isNotEmpty","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","Table","fixedHeight","allowClick","currentPageNumber","defaultPageSize","handlePageChange","loading","rowData","item","rowSelection","scroll","x","tableLayout","Alert","isOpen","isSubmitting","submitButtonLabel","message","values","onClose","onSubmit","NoData","helpText","primaryButtonProps","NeetoRules","_helpPopoverProps$hel","_cloneRule$allowed","_cloneRule$onSuccess","_deleteRule$onSuccess","_updateRule$onSuccess","_reorderRules$onSucce","automationRulesEndpoint","_ref$allowReordering","_ref$rulesTableProps","rulesTableProps","reorderRules","_ref$headerProps","isReorderPaneOpen","helpLinkProps","href","_useState3","_useState4","_useFetchAutomationRu","useFetchAutomationRules","pageSize","_useFetchAutomationRu2","data","_useFetchAutomationRu3","INITIAL_RULES_DATA","isFetching","Container","allowed","callback","RulesReorder","onReorderSuccess"],"mappings":"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"}
|