@bigbinary/neeto-rules-frontend 2.5.56 → 2.5.58
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.ready +1 -1
- package/dist/NeetoRulesForm.js +67 -162
- package/dist/NeetoRulesForm.js.map +1 -1
- package/dist/cjs/NeetoRulesForm.js +10 -105
- package/dist/cjs/NeetoRulesForm.js.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/v2/CannedResponsesPane.js +396 -0
- package/dist/cjs/v2/CannedResponsesPane.js.map +1 -0
- package/dist/cjs/v2/NeetoRules.js +486 -0
- package/dist/cjs/v2/NeetoRules.js.map +1 -0
- package/dist/cjs/v2/NeetoRulesForm.js +6740 -0
- package/dist/cjs/v2/NeetoRulesForm.js.map +1 -0
- package/dist/cjs/v2/RulePreview.js +513 -0
- package/dist/cjs/v2/RulePreview.js.map +1 -0
- package/dist/cjs/v2/RulesReorder.js +24 -0
- package/dist/cjs/v2/RulesReorder.js.map +1 -0
- package/dist/cjs/v2/constants.js +8 -0
- package/dist/cjs/v2/constants.js.map +1 -0
- package/dist/cjs/v2/hooks.js +15 -0
- package/dist/cjs/v2/hooks.js.map +1 -0
- package/dist/cjs/v2/index.js +86 -0
- package/dist/cjs/v2/index.js.map +1 -0
- package/dist/constants-CYdcft3h.js +53 -0
- package/dist/constants-CYdcft3h.js.map +1 -0
- package/dist/constants-dLBadaIU.js +60 -0
- package/dist/constants-dLBadaIU.js.map +1 -0
- package/dist/index-BBcadHIi.js +208 -0
- package/dist/index-BBcadHIi.js.map +1 -0
- package/dist/index-CSnQp41c.js +211 -0
- package/dist/index-CSnQp41c.js.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/useCustomDataStore-D7hl6nev.js +74 -0
- package/dist/useCustomDataStore-D7hl6nev.js.map +1 -0
- package/dist/useCustomDataStore-DipT25Pg.js +77 -0
- package/dist/useCustomDataStore-DipT25Pg.js.map +1 -0
- package/dist/useDebouncedUpdate-6Ibug5MF.js +108 -0
- package/dist/useDebouncedUpdate-6Ibug5MF.js.map +1 -0
- package/dist/useDebouncedUpdate-BcPAGgg7.js +103 -0
- package/dist/useDebouncedUpdate-BcPAGgg7.js.map +1 -0
- package/dist/useUtilityStore-BBb39TOj.js +53 -0
- package/dist/useUtilityStore-BBb39TOj.js.map +1 -0
- package/dist/useUtilityStore-DkxAexDw.js +55 -0
- package/dist/useUtilityStore-DkxAexDw.js.map +1 -0
- package/dist/v2/CannedResponsesPane.js +394 -0
- package/dist/v2/CannedResponsesPane.js.map +1 -0
- package/dist/v2/NeetoRules.js +484 -0
- package/dist/v2/NeetoRules.js.map +1 -0
- package/dist/v2/NeetoRulesForm.js +6719 -0
- package/dist/v2/NeetoRulesForm.js.map +1 -0
- package/dist/v2/RulePreview.js +511 -0
- package/dist/v2/RulePreview.js.map +1 -0
- package/dist/v2/RulesReorder.js +18 -0
- package/dist/v2/RulesReorder.js.map +1 -0
- package/dist/v2/constants.js +2 -0
- package/dist/v2/constants.js.map +1 -0
- package/dist/v2/hooks.js +8 -0
- package/dist/v2/hooks.js.map +1 -0
- package/dist/v2/index.js +74 -0
- package/dist/v2/index.js.map +1 -0
- package/package.json +28 -16
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var useCustomDataStore = require('../../useCustomDataStore-DipT25Pg.js');
|
|
4
|
+
require('zustand/shallow');
|
|
5
|
+
require('react');
|
|
6
|
+
require('ramda');
|
|
7
|
+
require('../../useUtilityStore-DkxAexDw.js');
|
|
8
|
+
require('@bigbinary/neeto-commons-frontend/v2/react-utils');
|
|
9
|
+
require('zustand');
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
exports.useActiveField = useCustomDataStore.useActiveField;
|
|
14
|
+
exports.useCustomDataStore = useCustomDataStore.useCustomDataStore;
|
|
15
|
+
//# sourceMappingURL=hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var constants = require('../../index-DFwPrb81.js');
|
|
4
|
+
var v2_CannedResponsesPane = require('./CannedResponsesPane.js');
|
|
5
|
+
var v2_NeetoRules = require('./NeetoRules.js');
|
|
6
|
+
var v2_RulesReorder = require('../../index-CSnQp41c.js');
|
|
7
|
+
var v2_NeetoRulesForm = require('./NeetoRulesForm.js');
|
|
8
|
+
var useCustomDataStore = require('../../useCustomDataStore-DipT25Pg.js');
|
|
9
|
+
var v2_RulePreview = require('./RulePreview.js');
|
|
10
|
+
require('@babel/runtime/helpers/asyncToGenerator');
|
|
11
|
+
require('@babel/runtime/helpers/slicedToArray');
|
|
12
|
+
require('@babel/runtime/regenerator');
|
|
13
|
+
require('react');
|
|
14
|
+
require('@bigbinary/neeto-atoms');
|
|
15
|
+
require('@bigbinary/neeto-atoms/formik');
|
|
16
|
+
require('formik');
|
|
17
|
+
require('@bigbinary/neeto-cist');
|
|
18
|
+
require('@bigbinary/neeto-commons-frontend/v2/constants');
|
|
19
|
+
require('ramda');
|
|
20
|
+
require('react-i18next');
|
|
21
|
+
require('@babel/runtime/helpers/defineProperty');
|
|
22
|
+
require('i18next');
|
|
23
|
+
require('@babel/runtime/helpers/toConsumableArray');
|
|
24
|
+
require('@bigbinary/neeto-editor/Editor');
|
|
25
|
+
require('react/jsx-runtime');
|
|
26
|
+
require('@bigbinary/neeto-commons-frontend/v2/react-utils');
|
|
27
|
+
require('@bigbinary/neeto-molecules/v2/Container');
|
|
28
|
+
require('../../useAutomationRulesApi-C1T2E1AN.js');
|
|
29
|
+
require('@tanstack/react-query');
|
|
30
|
+
require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
31
|
+
require('@babel/runtime/helpers/objectWithoutProperties');
|
|
32
|
+
require('axios');
|
|
33
|
+
require('@bigbinary/neeto-molecules/v2/Header');
|
|
34
|
+
require('../../utils-B3roKiff.js');
|
|
35
|
+
require('@bigbinary/neeto-commons-frontend/initializers');
|
|
36
|
+
require('@bigbinary/neeto-commons-frontend/utils');
|
|
37
|
+
require('zustand/shallow');
|
|
38
|
+
require('@bigbinary/neeto-filters-frontend/v2/Bar');
|
|
39
|
+
require('@bigbinary/neeto-molecules/v2/SubHeader');
|
|
40
|
+
require('../../useUtilityStore-DkxAexDw.js');
|
|
41
|
+
require('zustand');
|
|
42
|
+
require('@bigbinary/neeto-commons-frontend/v2/utils');
|
|
43
|
+
require('@bigbinary/neeto-molecules/v2/MoreDropdown');
|
|
44
|
+
require('@hello-pangea/dnd');
|
|
45
|
+
require('@bigbinary/neeto-icons/Drag');
|
|
46
|
+
require('react-router-dom');
|
|
47
|
+
require('@babel/runtime/helpers/objectDestructuringEmpty');
|
|
48
|
+
require('../../useDebouncedUpdate-6Ibug5MF.js');
|
|
49
|
+
require('@bigbinary/neeto-icons/Plus');
|
|
50
|
+
require('@bigbinary/neeto-icons/Delete');
|
|
51
|
+
require('classnames');
|
|
52
|
+
require('yup');
|
|
53
|
+
require('@bigbinary/neeto-icons/Search');
|
|
54
|
+
require('@bigbinary/neeto-icons/Collapse');
|
|
55
|
+
require('@bigbinary/neeto-icons/Left');
|
|
56
|
+
require('@monaco-editor/react');
|
|
57
|
+
require('@bigbinary/neeto-icons/Help');
|
|
58
|
+
require('@bigbinary/neeto-molecules/DynamicVariables');
|
|
59
|
+
require('@bigbinary/neeto-editor/FormikEditor');
|
|
60
|
+
require('@bigbinary/neeto-icons/Refresh');
|
|
61
|
+
require('@bigbinary/neeto-hotkeys');
|
|
62
|
+
require('@bigbinary/neeto-icons/Check');
|
|
63
|
+
require('@bigbinary/neeto-icons/Close');
|
|
64
|
+
require('react-select/creatable');
|
|
65
|
+
require('@babel/runtime/helpers/toArray');
|
|
66
|
+
require('@bigbinary/neeto-molecules/PhoneNumber');
|
|
67
|
+
require('react-select');
|
|
68
|
+
require('../../constants-dLBadaIU.js');
|
|
69
|
+
require('@bigbinary/neeto-commons-frontend/v2/initializers');
|
|
70
|
+
require('@bigbinary/neeto-editor/utils');
|
|
71
|
+
require('@bigbinary/neeto-icons/Eye');
|
|
72
|
+
require('@bigbinary/neeto-icons/Down');
|
|
73
|
+
require('@babel/runtime/helpers/typeof');
|
|
74
|
+
require('@bigbinary/neeto-editor/EditorContent');
|
|
75
|
+
require('@bigbinary/neeto-icons/Up');
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
exports.AUTOMATION_RULES_QUERY_KEY = constants.AUTOMATION_RULES;
|
|
80
|
+
exports.CannedResponsesPane = v2_CannedResponsesPane;
|
|
81
|
+
exports.NeetoRules = v2_NeetoRules;
|
|
82
|
+
exports.RulesReorder = v2_RulesReorder.RulesReorder;
|
|
83
|
+
exports.NeetoRulesForm = v2_NeetoRulesForm;
|
|
84
|
+
exports.useCustomDataStore = useCustomDataStore.useCustomDataStore;
|
|
85
|
+
exports.RulePreview = v2_RulePreview;
|
|
86
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { t } from 'i18next';
|
|
2
|
+
|
|
3
|
+
var OPERATORS = {
|
|
4
|
+
or: "or_operator",
|
|
5
|
+
and: "and_operator"
|
|
6
|
+
};
|
|
7
|
+
({
|
|
8
|
+
or_operator: t("neetoRules.operators.or"),
|
|
9
|
+
and_operator: t("neetoRules.operators.and")
|
|
10
|
+
});
|
|
11
|
+
var VERB_LABELS = {
|
|
12
|
+
is: t("neetoRules.conditionVerbs.is"),
|
|
13
|
+
is_not: t("neetoRules.conditionVerbs.isNot"),
|
|
14
|
+
contains: t("neetoRules.conditionVerbs.contains"),
|
|
15
|
+
does_not_contain: t("neetoRules.conditionVerbs.doesNotContain"),
|
|
16
|
+
contains_any_of: t("neetoRules.conditionVerbs.containsAnyOf"),
|
|
17
|
+
contains_all_of: t("neetoRules.conditionVerbs.containsAllOf"),
|
|
18
|
+
contains_none_of: t("neetoRules.conditionVerbs.containsNoneOf"),
|
|
19
|
+
starts_with: t("neetoRules.conditionVerbs.startsWith"),
|
|
20
|
+
ends_with: t("neetoRules.conditionVerbs.endsWith"),
|
|
21
|
+
less_than: t("neetoRules.conditionVerbs.lessThan"),
|
|
22
|
+
greater_than: t("neetoRules.conditionVerbs.greaterThan"),
|
|
23
|
+
any_time: t("neetoRules.conditionVerbs.anyTime"),
|
|
24
|
+
during: t("neetoRules.conditionVerbs.during"),
|
|
25
|
+
not_during: t("neetoRules.conditionVerbs.notDuring"),
|
|
26
|
+
any_of: t("neetoRules.conditionVerbs.anyOf"),
|
|
27
|
+
none_of: t("neetoRules.conditionVerbs.noneOf"),
|
|
28
|
+
is_before: t("neetoRules.conditionVerbs.isBefore"),
|
|
29
|
+
is_after: t("neetoRules.conditionVerbs.isAfter")
|
|
30
|
+
};
|
|
31
|
+
var CONDITION_VALUE_TYPES = {
|
|
32
|
+
text: "text",
|
|
33
|
+
number: "number",
|
|
34
|
+
decimal: "decimal",
|
|
35
|
+
url: "url",
|
|
36
|
+
email: "email",
|
|
37
|
+
multiSelect: "multi-select",
|
|
38
|
+
multiSelectCreate: "multi-select-create",
|
|
39
|
+
multiSelectCheckbox: "multi-select-checkbox",
|
|
40
|
+
date: "date",
|
|
41
|
+
time: "time",
|
|
42
|
+
regex: "regex",
|
|
43
|
+
textarea: "textarea",
|
|
44
|
+
dropdown: "dropdown",
|
|
45
|
+
radio: "radio",
|
|
46
|
+
select: "select"
|
|
47
|
+
};
|
|
48
|
+
var INPUT_FIELD_TYPES = ["email", "text", "number", "decimal", "url", "regex"];
|
|
49
|
+
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];
|
|
50
|
+
var MAXIMUM_OPTION_LENGTH = 7;
|
|
51
|
+
|
|
52
|
+
export { CONDITION_VALUE_TYPES as C, FIELDS_WITH_OPTIONS as F, INPUT_FIELD_TYPES as I, MAXIMUM_OPTION_LENGTH as M, OPERATORS as O, VERB_LABELS as V };
|
|
53
|
+
//# sourceMappingURL=constants-CYdcft3h.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-CYdcft3h.js","sources":["../app/javascript/src/v2/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 multiSelect: \"multi-select\",\n multiSelectCreate: \"multi-select-create\",\n multiSelectCheckbox: \"multi-select-checkbox\",\n date: \"date\",\n time: \"time\",\n regex: \"regex\",\n textarea: \"textarea\",\n dropdown: \"dropdown\",\n radio: \"radio\",\n select: \"select\",\n};\n\nconst INPUT_FIELD_TYPES = [\n \"email\",\n \"text\",\n \"number\",\n \"decimal\",\n \"url\",\n \"regex\",\n];\n\nconst FIELDS_WITH_OPTIONS = [\n CONDITION_VALUE_TYPES.multiSelect,\n CONDITION_VALUE_TYPES.multiSelectCreate,\n CONDITION_VALUE_TYPES.multiSelectCheckbox,\n CONDITION_VALUE_TYPES.radio,\n CONDITION_VALUE_TYPES.select,\n CONDITION_VALUE_TYPES.dropdown,\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 FIELDS_WITH_OPTIONS,\n};\n"],"names":["OPERATORS","or","and","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","multiSelect","multiSelectCreate","multiSelectCheckbox","date","time","regex","textarea","dropdown","radio","select","INPUT_FIELD_TYPES","FIELDS_WITH_OPTIONS","MAXIMUM_OPTION_LENGTH"],"mappings":";;AAEA,IAAMA,SAAS,GAAG;AAAEC,EAAAA,EAAE,EAAE,aAAa;AAAEC,EAAAA,GAAG,EAAE;AAAe;CAEnC;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,WAAW,EAAE,cAAc;AAC3BC,EAAAA,iBAAiB,EAAE,qBAAqB;AACxCC,EAAAA,mBAAmB,EAAE,uBAAuB;AAC5CC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,MAAM,EAAE;AACV;AAEA,IAAMC,iBAAiB,GAAG,CACxB,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO;AAGT,IAAMC,mBAAmB,GAAG,CAC1BjB,qBAAqB,CAACM,WAAW,EACjCN,qBAAqB,CAACO,iBAAiB,EACvCP,qBAAqB,CAACQ,mBAAmB,EACzCR,qBAAqB,CAACc,KAAK,EAC3Bd,qBAAqB,CAACe,MAAM,EAC5Bf,qBAAqB,CAACa,QAAQ;AAKhC,IAAMK,qBAAqB,GAAG;;;;"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var i18next = require('i18next');
|
|
4
|
+
|
|
5
|
+
var OPERATORS = {
|
|
6
|
+
or: "or_operator",
|
|
7
|
+
and: "and_operator"
|
|
8
|
+
};
|
|
9
|
+
({
|
|
10
|
+
or_operator: i18next.t("neetoRules.operators.or"),
|
|
11
|
+
and_operator: i18next.t("neetoRules.operators.and")
|
|
12
|
+
});
|
|
13
|
+
var VERB_LABELS = {
|
|
14
|
+
is: i18next.t("neetoRules.conditionVerbs.is"),
|
|
15
|
+
is_not: i18next.t("neetoRules.conditionVerbs.isNot"),
|
|
16
|
+
contains: i18next.t("neetoRules.conditionVerbs.contains"),
|
|
17
|
+
does_not_contain: i18next.t("neetoRules.conditionVerbs.doesNotContain"),
|
|
18
|
+
contains_any_of: i18next.t("neetoRules.conditionVerbs.containsAnyOf"),
|
|
19
|
+
contains_all_of: i18next.t("neetoRules.conditionVerbs.containsAllOf"),
|
|
20
|
+
contains_none_of: i18next.t("neetoRules.conditionVerbs.containsNoneOf"),
|
|
21
|
+
starts_with: i18next.t("neetoRules.conditionVerbs.startsWith"),
|
|
22
|
+
ends_with: i18next.t("neetoRules.conditionVerbs.endsWith"),
|
|
23
|
+
less_than: i18next.t("neetoRules.conditionVerbs.lessThan"),
|
|
24
|
+
greater_than: i18next.t("neetoRules.conditionVerbs.greaterThan"),
|
|
25
|
+
any_time: i18next.t("neetoRules.conditionVerbs.anyTime"),
|
|
26
|
+
during: i18next.t("neetoRules.conditionVerbs.during"),
|
|
27
|
+
not_during: i18next.t("neetoRules.conditionVerbs.notDuring"),
|
|
28
|
+
any_of: i18next.t("neetoRules.conditionVerbs.anyOf"),
|
|
29
|
+
none_of: i18next.t("neetoRules.conditionVerbs.noneOf"),
|
|
30
|
+
is_before: i18next.t("neetoRules.conditionVerbs.isBefore"),
|
|
31
|
+
is_after: i18next.t("neetoRules.conditionVerbs.isAfter")
|
|
32
|
+
};
|
|
33
|
+
var CONDITION_VALUE_TYPES = {
|
|
34
|
+
text: "text",
|
|
35
|
+
number: "number",
|
|
36
|
+
decimal: "decimal",
|
|
37
|
+
url: "url",
|
|
38
|
+
email: "email",
|
|
39
|
+
multiSelect: "multi-select",
|
|
40
|
+
multiSelectCreate: "multi-select-create",
|
|
41
|
+
multiSelectCheckbox: "multi-select-checkbox",
|
|
42
|
+
date: "date",
|
|
43
|
+
time: "time",
|
|
44
|
+
regex: "regex",
|
|
45
|
+
textarea: "textarea",
|
|
46
|
+
dropdown: "dropdown",
|
|
47
|
+
radio: "radio",
|
|
48
|
+
select: "select"
|
|
49
|
+
};
|
|
50
|
+
var INPUT_FIELD_TYPES = ["email", "text", "number", "decimal", "url", "regex"];
|
|
51
|
+
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];
|
|
52
|
+
var MAXIMUM_OPTION_LENGTH = 7;
|
|
53
|
+
|
|
54
|
+
exports.CONDITION_VALUE_TYPES = CONDITION_VALUE_TYPES;
|
|
55
|
+
exports.FIELDS_WITH_OPTIONS = FIELDS_WITH_OPTIONS;
|
|
56
|
+
exports.INPUT_FIELD_TYPES = INPUT_FIELD_TYPES;
|
|
57
|
+
exports.MAXIMUM_OPTION_LENGTH = MAXIMUM_OPTION_LENGTH;
|
|
58
|
+
exports.OPERATORS = OPERATORS;
|
|
59
|
+
exports.VERB_LABELS = VERB_LABELS;
|
|
60
|
+
//# sourceMappingURL=constants-dLBadaIU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-dLBadaIU.js","sources":["../app/javascript/src/v2/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 multiSelect: \"multi-select\",\n multiSelectCreate: \"multi-select-create\",\n multiSelectCheckbox: \"multi-select-checkbox\",\n date: \"date\",\n time: \"time\",\n regex: \"regex\",\n textarea: \"textarea\",\n dropdown: \"dropdown\",\n radio: \"radio\",\n select: \"select\",\n};\n\nconst INPUT_FIELD_TYPES = [\n \"email\",\n \"text\",\n \"number\",\n \"decimal\",\n \"url\",\n \"regex\",\n];\n\nconst FIELDS_WITH_OPTIONS = [\n CONDITION_VALUE_TYPES.multiSelect,\n CONDITION_VALUE_TYPES.multiSelectCreate,\n CONDITION_VALUE_TYPES.multiSelectCheckbox,\n CONDITION_VALUE_TYPES.radio,\n CONDITION_VALUE_TYPES.select,\n CONDITION_VALUE_TYPES.dropdown,\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 FIELDS_WITH_OPTIONS,\n};\n"],"names":["OPERATORS","or","and","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","multiSelect","multiSelectCreate","multiSelectCheckbox","date","time","regex","textarea","dropdown","radio","select","INPUT_FIELD_TYPES","FIELDS_WITH_OPTIONS","MAXIMUM_OPTION_LENGTH"],"mappings":";;;;AAEA,IAAMA,SAAS,GAAG;AAAEC,EAAAA,EAAE,EAAE,aAAa;AAAEC,EAAAA,GAAG,EAAE;AAAe;CAEnC;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,WAAW,EAAE,cAAc;AAC3BC,EAAAA,iBAAiB,EAAE,qBAAqB;AACxCC,EAAAA,mBAAmB,EAAE,uBAAuB;AAC5CC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,MAAM,EAAE;AACV;AAEA,IAAMC,iBAAiB,GAAG,CACxB,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO;AAGT,IAAMC,mBAAmB,GAAG,CAC1BjB,qBAAqB,CAACM,WAAW,EACjCN,qBAAqB,CAACO,iBAAiB,EACvCP,qBAAqB,CAACQ,mBAAmB,EACzCR,qBAAqB,CAACc,KAAK,EAC3Bd,qBAAqB,CAACe,MAAM,EAC5Bf,qBAAqB,CAACa,QAAQ;AAKhC,IAAMK,qBAAqB,GAAG;;;;;;;;;"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
3
|
+
import { useState, useEffect, createElement } from 'react';
|
|
4
|
+
import { Sheet, Spinner, Typography, Button } from '@bigbinary/neeto-atoms';
|
|
5
|
+
import { Draggable, DragDropContext, Droppable } from '@hello-pangea/dnd';
|
|
6
|
+
import Drag from '@bigbinary/neeto-icons/Drag';
|
|
7
|
+
import { equals, clone } from 'ramda';
|
|
8
|
+
import { useTranslation } from 'react-i18next';
|
|
9
|
+
import { u as useFetchAutomationRules, a as useReorderAutomationRules } from './useAutomationRulesApi-C9I3wUZ8.js';
|
|
10
|
+
import { withRouter } from 'react-router-dom';
|
|
11
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
12
|
+
|
|
13
|
+
var INITIAL_RULES_DATA = {
|
|
14
|
+
rules: [],
|
|
15
|
+
totalCount: 0
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
19
|
+
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
20
|
+
var reorderList = function reorderList(_ref) {
|
|
21
|
+
var endIndex = _ref.endIndex,
|
|
22
|
+
firstDisplayOrder = _ref.firstDisplayOrder,
|
|
23
|
+
list = _ref.list,
|
|
24
|
+
startIndex = _ref.startIndex;
|
|
25
|
+
var result = Array.from(list);
|
|
26
|
+
var _result$splice = result.splice(startIndex, 1),
|
|
27
|
+
_result$splice2 = _slicedToArray(_result$splice, 1),
|
|
28
|
+
removed = _result$splice2[0];
|
|
29
|
+
result.splice(endIndex, 0, removed);
|
|
30
|
+
return result.map(function (item, index) {
|
|
31
|
+
return _objectSpread$2(_objectSpread$2({}, item), {}, {
|
|
32
|
+
displayOrder: firstDisplayOrder + index
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
var getDragItemStyle = function getDragItemStyle(isDragging, draggableStyle) {
|
|
37
|
+
return _objectSpread$2(_objectSpread$2({}, draggableStyle), isDragging && {
|
|
38
|
+
zIndex: 99999
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
43
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
44
|
+
var DraggableItem$1 = function DraggableItem(props) {
|
|
45
|
+
var rule = props.rule,
|
|
46
|
+
ruleIndex = props.ruleIndex;
|
|
47
|
+
return /*#__PURE__*/jsx(Draggable, {
|
|
48
|
+
draggableId: "item_".concat(rule.id),
|
|
49
|
+
index: ruleIndex,
|
|
50
|
+
children: function children(provided, snapshot) {
|
|
51
|
+
return /*#__PURE__*/jsxs("div", _objectSpread$1(_objectSpread$1(_objectSpread$1({
|
|
52
|
+
className: "neeto-ui-text-gray-800 mb-3 flex w-full items-center gap-1 font-medium",
|
|
53
|
+
ref: provided.innerRef
|
|
54
|
+
}, provided.draggableProps), provided.dragHandleProps), {}, {
|
|
55
|
+
style: getDragItemStyle(snapshot.isDragging, provided.draggableProps.style),
|
|
56
|
+
children: [/*#__PURE__*/jsx(Drag, {
|
|
57
|
+
className: "neeto-ui-text-gray-400 hover:neeto-ui-text-gray-500 -ms-1 cursor-grab transition-all duration-300 ease-in-out",
|
|
58
|
+
size: 16
|
|
59
|
+
}), /*#__PURE__*/jsx("div", {
|
|
60
|
+
className: "neeto-ui-bg-white neeto-ui-border-gray-300 neeto-ui-rounded flex w-full items-center space-x-4 border p-3",
|
|
61
|
+
"data-testid": "automation-rule-reorder-container",
|
|
62
|
+
children: rule.name
|
|
63
|
+
})]
|
|
64
|
+
}), "list_".concat(rule.id));
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
var DraggableItem = withRouter(DraggableItem$1);
|
|
69
|
+
|
|
70
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
71
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
72
|
+
var RulesReorder = function RulesReorder(_ref) {
|
|
73
|
+
var _rules$0$displayOrder, _rules$;
|
|
74
|
+
var isOpen = _ref.isOpen,
|
|
75
|
+
totalCount = _ref.totalCount,
|
|
76
|
+
url = _ref.url,
|
|
77
|
+
onClose = _ref.onClose,
|
|
78
|
+
onReorderSuccess = _ref.onReorderSuccess;
|
|
79
|
+
var _useState = useState([]),
|
|
80
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
81
|
+
reorderedRules = _useState2[0],
|
|
82
|
+
setReorderedRules = _useState2[1];
|
|
83
|
+
var _useTranslation = useTranslation(),
|
|
84
|
+
t = _useTranslation.t;
|
|
85
|
+
var _useFetchAutomationRu = useFetchAutomationRules({
|
|
86
|
+
pageSize: totalCount,
|
|
87
|
+
url: url
|
|
88
|
+
}, {
|
|
89
|
+
enabled: isOpen
|
|
90
|
+
}),
|
|
91
|
+
_useFetchAutomationRu2 = _useFetchAutomationRu.data,
|
|
92
|
+
_useFetchAutomationRu3 = _useFetchAutomationRu2 === void 0 ? INITIAL_RULES_DATA : _useFetchAutomationRu2,
|
|
93
|
+
rules = _useFetchAutomationRu3.rules,
|
|
94
|
+
isLoading = _useFetchAutomationRu.isLoading;
|
|
95
|
+
var _useReorderAutomation = useReorderAutomationRules(url),
|
|
96
|
+
reOrder = _useReorderAutomation.mutate,
|
|
97
|
+
isPending = _useReorderAutomation.isPending;
|
|
98
|
+
var firstDisplayOrder = (_rules$0$displayOrder = (_rules$ = rules[0]) === null || _rules$ === void 0 ? void 0 : _rules$.displayOrder) !== null && _rules$0$displayOrder !== void 0 ? _rules$0$displayOrder : 1;
|
|
99
|
+
var handleReorderSave = function handleReorderSave() {
|
|
100
|
+
return reOrder({
|
|
101
|
+
url: url,
|
|
102
|
+
payload: {
|
|
103
|
+
reorder: {
|
|
104
|
+
rules: reorderedRules
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}, {
|
|
108
|
+
onSuccess: function onSuccess() {
|
|
109
|
+
onReorderSuccess === null || onReorderSuccess === void 0 || onReorderSuccess();
|
|
110
|
+
onClose();
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
var onDragEnd = function onDragEnd(_ref2) {
|
|
115
|
+
var destination = _ref2.destination,
|
|
116
|
+
source = _ref2.source;
|
|
117
|
+
if (!destination || source.index === destination.index) return;
|
|
118
|
+
var items = reorderList({
|
|
119
|
+
endIndex: destination.index,
|
|
120
|
+
firstDisplayOrder: firstDisplayOrder,
|
|
121
|
+
list: clone(reorderedRules),
|
|
122
|
+
startIndex: source.index
|
|
123
|
+
});
|
|
124
|
+
setReorderedRules(items);
|
|
125
|
+
};
|
|
126
|
+
useEffect(function () {
|
|
127
|
+
setReorderedRules(rules);
|
|
128
|
+
}, [rules]);
|
|
129
|
+
if (isLoading) {
|
|
130
|
+
return /*#__PURE__*/jsx(Sheet, {
|
|
131
|
+
isOpen: isOpen,
|
|
132
|
+
onClose: onClose,
|
|
133
|
+
children: /*#__PURE__*/jsx("div", {
|
|
134
|
+
className: "flex h-full w-full items-center justify-center",
|
|
135
|
+
children: /*#__PURE__*/jsx(Spinner, {})
|
|
136
|
+
})
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
return /*#__PURE__*/jsxs(Sheet, {
|
|
140
|
+
isOpen: isOpen,
|
|
141
|
+
onClose: onClose,
|
|
142
|
+
children: [/*#__PURE__*/jsx(Sheet.Header, {
|
|
143
|
+
children: /*#__PURE__*/jsx(Sheet.Title, {
|
|
144
|
+
children: t("neetoRules.common.reorder")
|
|
145
|
+
})
|
|
146
|
+
}), /*#__PURE__*/jsxs(Sheet.Body, {
|
|
147
|
+
children: [/*#__PURE__*/jsx(Typography, {
|
|
148
|
+
className: "mb-3",
|
|
149
|
+
variant: "body2",
|
|
150
|
+
children: t("neetoRules.description.reorder")
|
|
151
|
+
}), /*#__PURE__*/jsx("div", {
|
|
152
|
+
className: "flex flex-col items-center w-full",
|
|
153
|
+
children: /*#__PURE__*/jsx(DragDropContext, {
|
|
154
|
+
onDragEnd: onDragEnd,
|
|
155
|
+
children: /*#__PURE__*/jsx(Droppable, {
|
|
156
|
+
droppableId: "droppable",
|
|
157
|
+
renderClone: function renderClone(provided, snapshot, rubric) {
|
|
158
|
+
return /*#__PURE__*/jsxs("div", _objectSpread(_objectSpread(_objectSpread({
|
|
159
|
+
className: "neeto-ui-text-gray-800 mb-3 flex w-full items-center gap-1 font-medium",
|
|
160
|
+
ref: provided.innerRef
|
|
161
|
+
}, provided.draggableProps), provided.dragHandleProps), {}, {
|
|
162
|
+
style: getDragItemStyle(snapshot.isDragging, provided.draggableProps.style),
|
|
163
|
+
children: [/*#__PURE__*/jsx(Drag, {
|
|
164
|
+
className: "neeto-ui-text-gray-400 hover:neeto-ui-text-gray-500 -ms-1 cursor-grab transition-all duration-300 ease-in-out",
|
|
165
|
+
size: 16
|
|
166
|
+
}), /*#__PURE__*/jsx("div", {
|
|
167
|
+
className: "neeto-ui-bg-white grow neeto-ui-border-gray-300 neeto-ui-rounded flex items-center space-x-4 border p-3",
|
|
168
|
+
children: /*#__PURE__*/jsx("div", {
|
|
169
|
+
children: reorderedRules[rubric.source.index].name
|
|
170
|
+
})
|
|
171
|
+
})]
|
|
172
|
+
}), "list_".concat(reorderedRules[rubric.source.index].id));
|
|
173
|
+
},
|
|
174
|
+
children: function children(provided) {
|
|
175
|
+
return /*#__PURE__*/jsxs("div", _objectSpread(_objectSpread({
|
|
176
|
+
className: "w-full"
|
|
177
|
+
}, provided.droppableProps), {}, {
|
|
178
|
+
ref: provided.innerRef,
|
|
179
|
+
children: [reorderedRules.map(function (rule, index) {
|
|
180
|
+
return /*#__PURE__*/createElement(DraggableItem, {
|
|
181
|
+
rule: rule,
|
|
182
|
+
key: rule.id,
|
|
183
|
+
ruleIndex: index
|
|
184
|
+
});
|
|
185
|
+
}), provided.placeholder]
|
|
186
|
+
}));
|
|
187
|
+
}
|
|
188
|
+
})
|
|
189
|
+
})
|
|
190
|
+
})]
|
|
191
|
+
}), /*#__PURE__*/jsxs(Sheet.Footer, {
|
|
192
|
+
className: "flex items-center gap-x-2",
|
|
193
|
+
children: [/*#__PURE__*/jsx(Button, {
|
|
194
|
+
disabled: isPending || equals(rules, reorderedRules),
|
|
195
|
+
label: t("neetoRules.common.saveChange"),
|
|
196
|
+
loading: isPending,
|
|
197
|
+
onClick: handleReorderSave
|
|
198
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
199
|
+
label: t("neetoRules.buttons.cancel"),
|
|
200
|
+
variant: "ghost",
|
|
201
|
+
onClick: onClose
|
|
202
|
+
})]
|
|
203
|
+
})]
|
|
204
|
+
});
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
export { INITIAL_RULES_DATA as I, RulesReorder as R };
|
|
208
|
+
//# sourceMappingURL=index-BBcadHIi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BBcadHIi.js","sources":["../app/javascript/src/v2/components/NeetoRules/constants.js","../app/javascript/src/v2/components/NeetoRules/RulesReorder/utils.js","../app/javascript/src/v2/components/NeetoRules/RulesReorder/DraggableItem.jsx","../app/javascript/src/v2/components/NeetoRules/RulesReorder/index.jsx"],"sourcesContent":["export const STATUS_KEYS = { ENABLED: \"enabled\", DISABLED: \"disabled\" };\n\nexport const DEFAULT_INIT_PAGE = 1;\n\nexport const INITIAL_RULES_DATA = { rules: [], totalCount: 0 };\n","export const reorderList = ({\n endIndex,\n firstDisplayOrder,\n list,\n startIndex,\n}) => {\n const result = Array.from(list);\n const [removed] = result.splice(startIndex, 1);\n result.splice(endIndex, 0, removed);\n\n return result.map((item, index) => ({\n ...item,\n displayOrder: firstDisplayOrder + index,\n }));\n};\n\nexport const getDragItemStyle = (isDragging, draggableStyle) => ({\n // styles we need to apply on draggables\n ...draggableStyle,\n\n ...(isDragging && { zIndex: 99999 }),\n});\n","import { Draggable } from \"@hello-pangea/dnd\";\nimport { Drag } from \"neetoicons\";\nimport { withRouter } from \"react-router-dom\";\n\nimport { getDragItemStyle } from \"./utils\";\n\nconst DraggableItem = props => {\n const { rule, ruleIndex } = props;\n\n return (\n <Draggable draggableId={`item_${rule.id}`} index={ruleIndex}>\n {(provided, snapshot) => (\n <div\n className=\"neeto-ui-text-gray-800 mb-3 flex w-full items-center gap-1 font-medium\"\n key={`list_${rule.id}`}\n ref={provided.innerRef}\n {...provided.draggableProps}\n {...provided.dragHandleProps}\n style={getDragItemStyle(\n snapshot.isDragging,\n provided.draggableProps.style\n )}\n >\n <Drag\n className=\"neeto-ui-text-gray-400 hover:neeto-ui-text-gray-500 -ms-1 cursor-grab transition-all duration-300 ease-in-out\"\n size={16}\n />\n <div\n className=\"neeto-ui-bg-white neeto-ui-border-gray-300 neeto-ui-rounded flex w-full items-center space-x-4 border p-3\"\n data-testid=\"automation-rule-reorder-container\"\n >\n {rule.name}\n </div>\n </div>\n )}\n </Draggable>\n );\n};\n\nexport default withRouter(DraggableItem);\n","import { useEffect, useState } from \"react\";\n\nimport { Button, Sheet, Spinner, Typography } from \"@bigbinary/neeto-atoms\";\nimport { DragDropContext, Droppable } from \"@hello-pangea/dnd\";\nimport { Drag } from \"neetoicons\";\nimport { clone, equals } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useFetchAutomationRules,\n useReorderAutomationRules,\n} from \"hooks/reactQuery/useAutomationRulesApi\";\n\nimport DraggableItem from \"./DraggableItem\";\nimport { getDragItemStyle, reorderList } from \"./utils\";\n\nimport { INITIAL_RULES_DATA } from \"../constants\";\n\nconst RulesReorder = ({\n isOpen,\n totalCount,\n url,\n onClose,\n onReorderSuccess,\n}) => {\n const [reorderedRules, setReorderedRules] = useState([]);\n\n const { t } = useTranslation();\n\n const { data: { rules } = INITIAL_RULES_DATA, isLoading } =\n useFetchAutomationRules({ pageSize: totalCount, url }, { enabled: isOpen });\n\n const { mutate: reOrder, isPending } = useReorderAutomationRules(url);\n\n const firstDisplayOrder = rules[0]?.displayOrder ?? 1;\n\n const handleReorderSave = () =>\n reOrder(\n { url, payload: { reorder: { rules: reorderedRules } } },\n {\n onSuccess: () => {\n onReorderSuccess?.();\n onClose();\n },\n }\n );\n\n const onDragEnd = ({ destination, source }) => {\n if (!destination || source.index === destination.index) return;\n\n const items = reorderList({\n endIndex: destination.index,\n firstDisplayOrder,\n list: clone(reorderedRules),\n startIndex: source.index,\n });\n setReorderedRules(items);\n };\n\n useEffect(() => {\n setReorderedRules(rules);\n }, [rules]);\n\n if (isLoading) {\n return (\n <Sheet {...{ isOpen, onClose }}>\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n </Sheet>\n );\n }\n\n return (\n <Sheet {...{ isOpen, onClose }}>\n <Sheet.Header>\n <Sheet.Title>{t(\"neetoRules.common.reorder\")}</Sheet.Title>\n </Sheet.Header>\n <Sheet.Body>\n <Typography className=\"mb-3\" variant=\"body2\">\n {t(\"neetoRules.description.reorder\")}\n </Typography>\n <div className=\"flex flex-col items-center w-full\">\n <DragDropContext {...{ onDragEnd }}>\n <Droppable\n droppableId=\"droppable\"\n renderClone={(provided, snapshot, rubric) => (\n <div\n className=\"neeto-ui-text-gray-800 mb-3 flex w-full items-center gap-1 font-medium\"\n key={`list_${reorderedRules[rubric.source.index].id}`}\n ref={provided.innerRef}\n {...provided.draggableProps}\n {...provided.dragHandleProps}\n style={getDragItemStyle(\n snapshot.isDragging,\n provided.draggableProps.style\n )}\n >\n <Drag\n className=\"neeto-ui-text-gray-400 hover:neeto-ui-text-gray-500 -ms-1 cursor-grab transition-all duration-300 ease-in-out\"\n size={16}\n />\n <div className=\"neeto-ui-bg-white grow neeto-ui-border-gray-300 neeto-ui-rounded flex items-center space-x-4 border p-3\">\n <div>{reorderedRules[rubric.source.index].name}</div>\n </div>\n </div>\n )}\n >\n {provided => (\n <div\n className=\"w-full\"\n {...provided.droppableProps}\n ref={provided.innerRef}\n >\n {reorderedRules.map((rule, index) => (\n <DraggableItem\n {...{ rule }}\n key={rule.id}\n ruleIndex={index}\n />\n ))}\n {provided.placeholder}\n </div>\n )}\n </Droppable>\n </DragDropContext>\n </div>\n </Sheet.Body>\n <Sheet.Footer className=\"flex items-center gap-x-2\">\n <Button\n disabled={isPending || equals(rules, reorderedRules)}\n label={t(\"neetoRules.common.saveChange\")}\n loading={isPending}\n onClick={handleReorderSave}\n />\n <Button\n label={t(\"neetoRules.buttons.cancel\")}\n variant=\"ghost\"\n onClick={onClose}\n />\n </Sheet.Footer>\n </Sheet>\n );\n};\nexport default RulesReorder;\n"],"names":["INITIAL_RULES_DATA","rules","totalCount","reorderList","_ref","endIndex","firstDisplayOrder","list","startIndex","result","Array","from","_result$splice","splice","_result$splice2","_slicedToArray","removed","map","item","index","_objectSpread","displayOrder","getDragItemStyle","isDragging","draggableStyle","zIndex","DraggableItem","props","rule","ruleIndex","_jsx","Draggable","draggableId","concat","id","children","provided","snapshot","_jsxs","className","ref","innerRef","draggableProps","dragHandleProps","style","Drag","size","name","withRouter","RulesReorder","_rules$0$displayOrder","_rules$","isOpen","url","onClose","onReorderSuccess","_useState","useState","_useState2","reorderedRules","setReorderedRules","_useTranslation","useTranslation","t","_useFetchAutomationRu","useFetchAutomationRules","pageSize","enabled","_useFetchAutomationRu2","data","_useFetchAutomationRu3","isLoading","_useReorderAutomation","useReorderAutomationRules","reOrder","mutate","isPending","handleReorderSave","payload","reorder","onSuccess","onDragEnd","_ref2","destination","source","items","clone","useEffect","Sheet","Spinner","Header","Title","Body","Typography","variant","DragDropContext","Droppable","droppableId","renderClone","rubric","droppableProps","_createElement","key","placeholder","Footer","Button","disabled","equals","label","loading","onClick"],"mappings":"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"}
|