@bigbinary/neeto-rules-frontend 2.5.65 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/README.md +7 -3
  2. package/app/javascript/src/translations/en.json +104 -1
  3. package/dist/.ready +1 -1
  4. package/dist/NeetoRules.js +3 -3
  5. package/dist/NeetoRules.js.map +1 -1
  6. package/dist/NeetoRulesBuilder.js +4341 -0
  7. package/dist/NeetoRulesBuilder.js.map +1 -0
  8. package/dist/NeetoRulesForm.js +114 -5534
  9. package/dist/NeetoRulesForm.js.map +1 -1
  10. package/dist/RulePreview.js +1 -1
  11. package/dist/cjs/NeetoRules.js +3 -3
  12. package/dist/cjs/NeetoRules.js.map +1 -1
  13. package/dist/cjs/NeetoRulesBuilder.js +4343 -0
  14. package/dist/cjs/NeetoRulesBuilder.js.map +1 -0
  15. package/dist/cjs/NeetoRulesForm.js +171 -5610
  16. package/dist/cjs/NeetoRulesForm.js.map +1 -1
  17. package/dist/cjs/RulePreview.js +1 -1
  18. package/dist/cjs/hooks.js +6 -6
  19. package/dist/cjs/index.js +17 -11
  20. package/dist/cjs/index.js.map +1 -1
  21. package/dist/cjs/v2/NeetoRulesForm.js +9 -8
  22. package/dist/cjs/v2/NeetoRulesForm.js.map +1 -1
  23. package/dist/cjs/v2/index.js +2 -1
  24. package/dist/cjs/v2/index.js.map +1 -1
  25. package/dist/hooks.js +4 -4
  26. package/dist/index-3f8Yrbst.js +5561 -0
  27. package/dist/index-3f8Yrbst.js.map +1 -0
  28. package/dist/index-CkYo0ca_.js +5511 -0
  29. package/dist/index-CkYo0ca_.js.map +1 -0
  30. package/dist/index.js +15 -10
  31. package/dist/index.js.map +1 -1
  32. package/dist/keyboardShortcuts-BvIE6AHg.js +88 -0
  33. package/dist/keyboardShortcuts-BvIE6AHg.js.map +1 -0
  34. package/dist/keyboardShortcuts-NxcrOxzv.js +92 -0
  35. package/dist/keyboardShortcuts-NxcrOxzv.js.map +1 -0
  36. package/dist/{useActiveField-9aCscxu8.js → useCustomDataStore-BtKYtLVc.js} +12 -12
  37. package/dist/useCustomDataStore-BtKYtLVc.js.map +1 -0
  38. package/dist/{useActiveField-CPw24qyf.js → useCustomDataStore-DxFx8aCf.js} +12 -12
  39. package/dist/useCustomDataStore-DxFx8aCf.js.map +1 -0
  40. package/dist/useDebouncedUpdate-C4iFSO2Q.js +21 -0
  41. package/dist/useDebouncedUpdate-C4iFSO2Q.js.map +1 -0
  42. package/dist/useDebouncedUpdate-CroNcSyb.js +19 -0
  43. package/dist/useDebouncedUpdate-CroNcSyb.js.map +1 -0
  44. package/dist/{useUtilityStore-BV6jVHMM.js → useUtilityStore-CCUYS1mS.js} +9 -2
  45. package/dist/useUtilityStore-CCUYS1mS.js.map +1 -0
  46. package/dist/{useUtilityStore-_59l0Cmi.js → useUtilityStore-C_U20IMX.js} +9 -2
  47. package/dist/useUtilityStore-C_U20IMX.js.map +1 -0
  48. package/dist/v2/NeetoRulesForm.js +2 -1
  49. package/dist/v2/NeetoRulesForm.js.map +1 -1
  50. package/dist/v2/index.js +2 -1
  51. package/dist/v2/index.js.map +1 -1
  52. package/package.json +19 -19
  53. package/dist/useActiveField-9aCscxu8.js.map +0 -1
  54. package/dist/useActiveField-CPw24qyf.js.map +0 -1
  55. package/dist/useDebouncedUpdate-DDFcag0p.js +0 -108
  56. package/dist/useDebouncedUpdate-DDFcag0p.js.map +0 -1
  57. package/dist/useDebouncedUpdate-sW5WvXe0.js +0 -103
  58. package/dist/useDebouncedUpdate-sW5WvXe0.js.map +0 -1
  59. package/dist/useUtilityStore-BV6jVHMM.js.map +0 -1
  60. package/dist/useUtilityStore-_59l0Cmi.js.map +0 -1
package/README.md CHANGED
@@ -4,6 +4,13 @@ The `neeto-rules-nano` facilitates the management of automation rules within
4
4
  neeto applications. The nano exports `@bigbinary/neeto-rules-frontend` NPM
5
5
  package and `neeto-rules-engine` Rails engine.
6
6
 
7
+ > **Revamped sentence-builder (`NeetoRulesBuilder`).** A new natural-language,
8
+ > Monday.com-style rules editor now ships alongside `NeetoRulesForm`. Its
9
+ > integration guide — props, the declarative `schema` contract, how panes are
10
+ > rendered, the payload guarantee, and the feature-flag migration steps — lives
11
+ > in [**`docs/README_REVAMP.md`**](./docs/README_REVAMP.md). Start there when
12
+ > adopting the builder in a new product.
13
+
7
14
  ## Contents
8
15
 
9
16
  1. [Development with Host Application](#development-with-host-application)
@@ -109,7 +116,6 @@ The `NeetoRules` component is used to add the dashboard for automation rules.
109
116
  NOTE: `href` from `helpLinkProps` will be used for displaying the link when
110
117
  showing `NoData` component.
111
118
  4. `rulesTableProps`: Props for the table in the dashboard:
112
-
113
119
  1. `additionalColumns`: To add additional columns to the table. Refer
114
120
  [Table component doc](https://neeto-ui.neeto.com/?path=/docs/components-table--docs).
115
121
 
@@ -804,13 +810,11 @@ action options.
804
810
  Below are the supported actions and fields where help popovers can be displayed:
805
811
 
806
812
  1. Email actions:
807
-
808
813
  - `template`: Displays a help popover next to the template dropdown
809
814
  - `recipientField`: Displays a help popover next to the recipient selection
810
815
  dropdown (lists records with emails)
811
816
 
812
817
  2. SMS actions:
813
-
814
818
  - `template`: Displays a help popover next to the template dropdown
815
819
  - `recipientField`: Displays a help popover next to the recipient selection
816
820
  dropdown (lists records with phone numbers)
@@ -1,8 +1,111 @@
1
1
  {
2
2
  "neetoRules": {
3
+ "builder": {
4
+ "whenThisHappens": "When this happens",
5
+ "selectCondition": "select a condition",
6
+ "selectOperator": "select operator",
7
+ "selectActor": "select someone",
8
+ "selectRecipient": "select recipient",
9
+ "selectFallback": "select",
10
+ "selectNoun": "select {{noun, anyCase}}",
11
+ "send": "send",
12
+ "setDelay": "set delay",
13
+ "thenDoThis": "Then do this",
14
+ "pickTriggerFirst": "Pick a trigger first",
15
+ "automationName": "Automation name",
16
+ "nameYourAutomation": "Name your automation",
17
+ "activateThisAutomation": "Activate this automation",
18
+ "nameSubtitle": "Name this automation. Leave blank to use the auto-generated name.",
19
+ "valueWord": "value",
20
+ "pickValue": "Pick {{field}}",
21
+ "valueSubtitle": "Choose a value to match against.",
22
+ "valuesSubtitle": "Pick one or more values for {{field}}.",
23
+ "waitFor": "Wait for",
24
+ "before": "Before",
25
+ "leadTimeTitle": "Before meeting starts",
26
+ "leadTimeSubtitle": "How long before the meeting starts should this automation run?",
27
+ "setUp": "Set up",
28
+ "setUpAction": "Set up action",
29
+ "setUpMediumLabel": "{{verb}} {{mediumLabel}}",
30
+ "noConfig": "No configuration needed for this action.",
31
+ "noMatches": "No matches",
32
+ "searchPlaceholder": "Search...",
33
+ "config": {
34
+ "subject": "Subject",
35
+ "subjectPlaceholder": "Enter subject",
36
+ "body": "Body",
37
+ "bodyPlaceholder": "Enter the message",
38
+ "note": "Note",
39
+ "message": "Message",
40
+ "value": "Value",
41
+ "keywords": "Keywords",
42
+ "keywordsPlaceholder": "Type and press enter",
43
+ "emailAddresses": "Email addresses",
44
+ "emailPlaceholder": "Enter email addresses",
45
+ "exampleEmail": "oliver@example.com",
46
+ "recipient": "Recipient",
47
+ "smsSegmentHint": "Keep it under 160 characters to stay in one SMS segment.",
48
+ "noOptions": "No options available.",
49
+ "noOptionsFor": "No {{field}} available."
50
+ },
51
+ "aria": {
52
+ "addCondition": "Add a condition",
53
+ "addAnotherCondition": "Add another condition",
54
+ "deleteCondition": "Delete condition",
55
+ "clearTrigger": "Clear trigger",
56
+ "addAnotherAction": "Add another action",
57
+ "deleteAction": "Delete action",
58
+ "addAnotherBookingPage": "Add another booking page",
59
+ "removeBookingPage": "Remove booking page",
60
+ "removeDelay": "Remove delay",
61
+ "increase": "Increase",
62
+ "decrease": "Decrease"
63
+ },
64
+ "panes": {
65
+ "addCondition": "Add a condition",
66
+ "changeTriggers": "Change triggers",
67
+ "changeTrigger": "Change trigger",
68
+ "addTrigger": "Add a trigger",
69
+ "whenEllipsis": "When…",
70
+ "triggerSubtitleMulti": "Pick one or more triggers. The automation runs when any of them happens.",
71
+ "triggerSubtitleReplace": "Pick a different trigger for this row.",
72
+ "triggerSubtitleAdd": "Pick what should set this automation in motion.",
73
+ "actorTitle": "Triggered by...",
74
+ "actorSubtitle": "Pick who triggers this automation.",
75
+ "condFieldSubtitle": "Pick a field to add a condition for.",
76
+ "operatorTitle": "Operator",
77
+ "operatorSubtitle": "Pick how the value should match.",
78
+ "operatorTitleKeywords": "Match keywords how?",
79
+ "operatorSubtitleKeywords": "Pick how to match keywords against {{field}}.",
80
+ "operatorTitleValues": "Match values how?",
81
+ "operatorSubtitleValues": "Pick how to match {{field}}.",
82
+ "operatorTitleExclude": "Match or exclude?",
83
+ "operatorSubtitleExclude": "Pick how to match {{field}}.",
84
+ "operatorTitleNumber": "Compare how?",
85
+ "operatorSubtitleNumber": "Pick how to compare {{field}}.",
86
+ "connectorTitle": "Combine conditions",
87
+ "connectorSubtitle": "Should all conditions match, or any one of them?",
88
+ "connectorAndOption": "and (match all conditions)",
89
+ "connectorOrOption": "or (match any condition)",
90
+ "actionAddTitle": "Add an action",
91
+ "actionSwapTitle": "Change channel",
92
+ "actionAddSubtitle": "Pick what should happen as a result.",
93
+ "actionSwapSubtitle": "Pick a different channel for this action.",
94
+ "recipientTitle": "Send to",
95
+ "recipientSubtitle": "Pick who should receive this.",
96
+ "scopeChangeTitle": "Change booking pages",
97
+ "scopeTitle": "Pick booking pages",
98
+ "scopeSubtitle": "Pick one or more options. The automation runs on any of them."
99
+ },
100
+ "scope": {
101
+ "lead": "On",
102
+ "placeholder": "On these bookings"
103
+ }
104
+ },
3
105
  "common": {
4
106
  "title": "Automation rules",
5
107
  "collapseSidebar": "Collapse sidebar",
108
+ "close": "Close",
6
109
  "back": "Back",
7
110
  "automationRuleWithCount_one": "{{count}} automation rule",
8
111
  "automationRuleWithCount_other": "{{count}} automation rules",
@@ -352,7 +455,7 @@
352
455
  "cancel": "Cancel"
353
456
  },
354
457
  "helpTexts": {
355
- "phoneNumber": "Please enter the number with a + followed by the country code (for example: +918888888888)."
458
+ "phoneNumber": "Please enter each number with a + followed by the country code (for example: +918888888888). You can add multiple numbers."
356
459
  },
357
460
  "messages": {
358
461
  "removeInvalidPhoneNumbers": "Click here to remove invalid phone numbers."
package/dist/.ready CHANGED
@@ -1 +1 @@
1
- Built at 2026-06-18T22:56:02.953Z
1
+ Built at 2026-07-03T19:32:17.867Z
@@ -7,7 +7,7 @@ import { withT, useQueryParams } from '@bigbinary/neeto-commons-frontend/react-u
7
7
  import Container from '@bigbinary/neeto-molecules/Container';
8
8
  import { b as useUpdateAutomationRule, c as useCloneAutomationRule, d as useDeleteAutomationRule, u as useFetchAutomationRules } from './useAutomationRulesApi-C9I3wUZ8.js';
9
9
  import { I as INITIAL_RULES_DATA, R as RulesReorder } from './index-CfUbVR_5.js';
10
- import NeetoHeader from '@bigbinary/neeto-molecules/Header';
10
+ import Header$2 from '@bigbinary/neeto-molecules/Header';
11
11
  import Button from '@bigbinary/neetoui/Button';
12
12
  import { c as createRoutes } from './utils-CfCq6Ltz.js';
13
13
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
@@ -22,7 +22,7 @@ import NoData from '@bigbinary/neetoui/NoData';
22
22
  import Spinner from '@bigbinary/neetoui/Spinner';
23
23
  import { isNotNil, isEmpty } from 'ramda';
24
24
  import { Trans, useTranslation } from 'react-i18next';
25
- import { u as useUtilityStore } from './useUtilityStore-BV6jVHMM.js';
25
+ import { u as useUtilityStore } from './useUtilityStore-CCUYS1mS.js';
26
26
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
27
27
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
28
28
  import { t } from 'i18next';
@@ -49,7 +49,7 @@ var Header$1 = withT(function (_ref) {
49
49
  hasUnfilteredRules = _ref.hasUnfilteredRules,
50
50
  headerProps = _ref.headerProps,
51
51
  t = _ref.t;
52
- return /*#__PURE__*/jsx(NeetoHeader, _objectSpread$3({
52
+ return /*#__PURE__*/jsx(Header$2, _objectSpread$3({
53
53
  breadcrumbs: breadcrumbs,
54
54
  title: t("neetoRules.common.title"),
55
55
  actionBlock: /*#__PURE__*/jsx(Button, {
@@ -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-testid=\"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-testid\": \"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-testid\": \"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-testid\": \"automation-rules-delete-link\",\n label: t(\"neetoRules.button.delete\"),\n onClick: () => onDelete(rule),\n },\n ];\n\n if (!allowCloning) {\n return removeBy({ key: \"clone\" }, defaultOptions);\n }\n\n return defaultOptions;\n};\n\nexport const getColumnData = ({\n handleChangeStatus,\n additionalColumns = [],\n onPreview,\n ...otherProps\n}) => {\n const { setMoreActionDropdownItems } = useUtilityStore.pick();\n\n return [\n {\n title: t(\"neetoRules.labels.name\"),\n dataIndex: \"name\",\n key: \"name\",\n ellipsis: true,\n width: 440,\n render: (name, rule) => (\n <div>\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n className=\"whitespace-pre-line wrap-break-word text-start\"\n style=\"link\"\n onClick={() => {\n setMoreActionDropdownItems(\n buildActionDropdownMenuItems({ rule, ...otherProps })\n );\n onPreview(rule.id);\n }}\n >\n {truncate(name, 100)}\n </Button>\n <MoreDropdown\n dropdownButtonProps={{ className: \"me-1 my-1\" }}\n menuItems={buildActionDropdownMenuItems({ rule, ...otherProps })}\n dropdownProps={{\n strategy: \"fixed\",\n appendTo: () => document.body,\n }}\n />\n </div>\n <DisableMessage disabledReason={rule.disabledReason} />\n </div>\n ),\n },\n {\n title: t(\"neetoRules.labels.active\"),\n key: \"active\",\n width: 140,\n align: \"center\",\n render: (_, rule) => (\n <div className=\"flex justify-center\">\n <Switch\n checked={rule.status === STATUS_KEYS.ENABLED}\n data-testid=\"automation-rules-state-switch-row\"\n disabled={!!rule.disabledReason}\n onChange={e => {\n handleChangeStatus(e, rule.id);\n }}\n />\n </div>\n ),\n },\n ...additionalColumns,\n ];\n};\n\nexport const renderNoDataHelpText = helpDocUrl => (\n <Trans\n i18nKey=\"neetoRules.noData.helpText\"\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: helpDocUrl }} />,\n }}\n />\n);\n","import { useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { Bar as FilterBar } from \"neetofilters\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Alert, Table, Typography, NoData, Button, Spinner } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport {\n useCloneAutomationRule,\n useDeleteAutomationRule,\n useUpdateAutomationRule,\n} from \"hooks/reactQuery/useAutomationRulesApi\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport { getColumnData, renderNoDataHelpText } from \"./utils\";\n\nconst RulesTable = ({\n url,\n additionalColumns,\n allowReordering,\n automationRulesPath = \"/\",\n onPreview,\n moreDropdownItems = [],\n rules = [],\n totalCount,\n helpDocUrl,\n isLoading,\n onDeleteSuccess,\n onCloneSuccess,\n onUpdateSuccess,\n page,\n setIsReorderPaneOpen,\n setPage,\n allowCloning = true,\n hasUnfilteredRules = true,\n payloadKey = \"rule\",\n}) => {\n const { searchTerm = \"\" } = useQueryParams();\n\n const searchKeywordProps = {\n key: \"search_term\",\n node: \"name\",\n value: searchTerm,\n };\n\n const [selectedRule, setSelectedRule] = useState(null);\n\n const { hidePreviewPane } = useUtilityStore.pick();\n\n const { t } = useTranslation();\n\n const { mutate: updateRule, isPending: isUpdating } =\n useUpdateAutomationRule(url);\n\n const { mutate: cloneRule, isPending: isCloning } =\n useCloneAutomationRule(url);\n\n const { mutate: deleteRule, isPending: isDeleting } =\n useDeleteAutomationRule(url);\n\n const handleChangeStatus = (event, id) => {\n const status = event.target.checked\n ? STATUS_KEYS.ENABLED\n : STATUS_KEYS.DISABLED;\n const payload = { [payloadKey]: { status } };\n updateRule({ id, url, payload }, { onSuccess: () => onUpdateSuccess?.() });\n };\n\n const handleCloneSuccess = () => {\n onCloneSuccess?.();\n hidePreviewPane();\n };\n\n const handleDeleteSuccess = () => {\n onDeleteSuccess?.();\n hidePreviewPane();\n setSelectedRule(null);\n };\n\n const columnData = getColumnData({\n handleChangeStatus,\n additionalColumns,\n onClone: id => cloneRule({ id, url }, { onSuccess: handleCloneSuccess }),\n onDelete: setSelectedRule,\n onPreview,\n automationRulesPath,\n moreDropdownItems,\n allowCloning,\n });\n\n if (isLoading && isEmpty(rules)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n {hasUnfilteredRules && (\n <SubHeader\n leftActionBlock={\n <>\n <Typography\n className=\"me-4 font-semibold\"\n data-testid=\"automation-rules-count\"\n style=\"h4\"\n >\n {t(\"neetoRules.common.automationRuleWithCount\", {\n count: totalCount,\n })}\n </Typography>\n <FilterBar className=\"mb-0\" keyword={searchKeywordProps} />\n </>\n }\n rightActionBlock={\n hasUnfilteredRules &&\n allowReordering && (\n <Button\n disabled={isNotEmpty(searchTerm)}\n label={t(\"neetoRules.common.reorder\")}\n style=\"secondary\"\n onClick={() => setIsReorderPaneOpen(true)}\n />\n )\n }\n />\n )}\n {isNotEmpty(rules) ? (\n <>\n <TableWrapper hasPagination={totalCount > DEFAULT_PAGE_SIZE}>\n <Table\n {...{ columnData, totalCount }}\n fixedHeight\n allowClick={false}\n currentPageNumber={page}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n handlePageChange={setPage}\n loading={isUpdating || isCloning || isDeleting || isLoading}\n rowData={rules.map(item => ({ key: item.id, ...item }))}\n rowSelection={false}\n tableLayout=\"fixed\"\n />\n </TableWrapper>\n <Alert\n isOpen={!!selectedRule}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoRules.button.delete\")}\n title={t(\"neetoRules.deleteAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoRules.deleteAlert.message\"\n values={{ name: selectedRule?.name }}\n />\n }\n onClose={() => setSelectedRule(null)}\n onSubmit={() =>\n deleteRule(\n { id: selectedRule?.id, url },\n { onSuccess: handleDeleteSuccess }\n )\n }\n />\n </>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={t(\"neetoRules.noData.title\")}\n {...(isEmpty(searchTerm) && {\n helpText: helpDocUrl ? renderNoDataHelpText(helpDocUrl) : null,\n primaryButtonProps: {\n label: t(\"neetoRules.button.addNew\"),\n to: createRoutes(automationRulesPath).new,\n },\n })}\n />\n </div>\n )}\n </>\n );\n};\n\nexport default RulesTable;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\n\nimport { useFetchAutomationRules } from \"hooks/reactQuery/useAutomationRulesApi\";\n\nimport { INITIAL_RULES_DATA } from \"./constants\";\nimport Header from \"./Header\";\nimport RulesReorder from \"./RulesReorder\";\nimport RulesTable from \"./RulesTable\";\nimport { DEFAULT_INIT_PAGE } from \"./RulesTable/constants\";\n\nconst NeetoRules = ({\n breadcrumbs,\n automationRulesPath,\n automationRulesEndpoint: url,\n allowReordering = false,\n rulesTableProps = {},\n helpPopoverProps = {},\n deleteRule,\n cloneRule,\n updateRule,\n reorderRules,\n headerProps = {},\n}) => {\n const [isReorderPaneOpen, setIsReorderPaneOpen] = useState(false);\n const helpDocUrl = helpPopoverProps?.helpLinkProps?.href;\n\n const [page, setPage] = useState(DEFAULT_INIT_PAGE);\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const {\n data: { rules, totalCount } = INITIAL_RULES_DATA,\n isLoading,\n isFetching,\n } = useFetchAutomationRules({\n url,\n page,\n pageSize: DEFAULT_PAGE_SIZE,\n searchTerm,\n });\n\n const hasUnfilteredRules = isPresent(searchTerm) || totalCount > 0;\n\n return (\n <Container>\n <Header\n {...{\n automationRulesPath,\n breadcrumbs,\n hasUnfilteredRules,\n headerProps,\n helpPopoverProps,\n }}\n />\n <RulesTable\n {...{\n allowReordering,\n automationRulesPath,\n hasUnfilteredRules,\n helpDocUrl,\n page,\n rules,\n setIsReorderPaneOpen,\n setPage,\n totalCount,\n url,\n ...rulesTableProps,\n }}\n allowCloning={cloneRule?.allowed ?? true}\n isLoading={isLoading || isFetching}\n onCloneSuccess={cloneRule?.onSuccess?.callback}\n onDeleteSuccess={deleteRule?.onSuccess?.callback}\n onUpdateSuccess={updateRule?.onSuccess?.callback}\n />\n {allowReordering && !isLoading && (\n <RulesReorder\n {...{ totalCount, url }}\n isOpen={isReorderPaneOpen}\n onClose={() => setIsReorderPaneOpen(false)}\n onReorderSuccess={reorderRules?.onSuccess?.callback}\n />\n )}\n </Container>\n );\n};\n\nexport default NeetoRules;\n"],"names":["Header","withT","_ref","breadcrumbs","automationRulesPath","_ref$helpPopoverProps","helpPopoverProps","hasUnfilteredRules","headerProps","t","_jsx","NeetoHeader","_objectSpread","title","actionBlock","Button","className","iconPosition","label","style","to","createRoutes","searchProps","placeholder","titleHelpPopoverProps","description","memo","STATUS_KEYS","ENABLED","DISABLED","DEFAULT_INIT_PAGE","DisableMessage","disabledReason","isNotNil","children","Typography","component","buildActionDropdownMenuItems","rule","onClone","onDelete","_ref$moreDropdownItem","moreDropdownItems","allowCloning","defaultOptions","concat","_toConsumableArray","map","_ref2","onClick","others","_objectWithoutProperties","_excluded","key","buildUrl","edit","ruleId","id","type","removeBy","getColumnData","_ref3","handleChangeStatus","_ref3$additionalColum","additionalColumns","onPreview","otherProps","_excluded2","_useUtilityStore","useUtilityStore","useShallow","store","setMoreActionDropdownItems","dataIndex","ellipsis","width","render","name","_jsxs","truncate","MoreDropdown","dropdownButtonProps","menuItems","dropdownProps","strategy","appendTo","document","body","align","_","Switch","checked","status","disabled","onChange","e","renderNoDataHelpText","helpDocUrl","Trans","i18nKey","components","a","target","pathname","RulesTable","url","allowReordering","_ref$automationRulesP","_ref$rules","rules","totalCount","isLoading","onDeleteSuccess","onCloneSuccess","onUpdateSuccess","page","setIsReorderPaneOpen","setPage","_ref$allowCloning","_ref$hasUnfilteredRul","_ref$payloadKey","payloadKey","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","_useState","useState","_useState2","_slicedToArray","selectedRule","setSelectedRule","hidePreviewPane","_useTranslation","useTranslation","_useUpdateAutomationR","useUpdateAutomationRule","updateRule","mutate","isUpdating","isPending","_useCloneAutomationRu","useCloneAutomationRule","cloneRule","isCloning","_useDeleteAutomationR","useDeleteAutomationRule","deleteRule","isDeleting","event","payload","_defineProperty","onSuccess","handleCloneSuccess","handleDeleteSuccess","columnData","isEmpty","Spinner","_Fragment","SubHeader","leftActionBlock","count","FilterBar","keyword","rightActionBlock","isNotEmpty","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","Table","fixedHeight","allowClick","currentPageNumber","defaultPageSize","handlePageChange","loading","rowData","item","rowSelection","tableLayout","Alert","isOpen","isSubmitting","submitButtonLabel","message","values","onClose","onSubmit","NoData","helpText","primaryButtonProps","NeetoRules","_helpPopoverProps$hel","_cloneRule$allowed","_cloneRule$onSuccess","_deleteRule$onSuccess","_updateRule$onSuccess","_reorderRules$onSucce","automationRulesEndpoint","_ref$allowReordering","_ref$rulesTableProps","rulesTableProps","reorderRules","_ref$headerProps","isReorderPaneOpen","helpLinkProps","href","_useState3","_useState4","_useFetchAutomationRu","useFetchAutomationRules","pageSize","_useFetchAutomationRu2","data","_useFetchAutomationRu3","INITIAL_RULES_DATA","isFetching","isPresent","Container","allowed","callback","RulesReorder","onReorderSuccess"],"mappings":"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"}
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-testid=\"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-testid\": \"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-testid\": \"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-testid\": \"automation-rules-delete-link\",\n label: t(\"neetoRules.button.delete\"),\n onClick: () => onDelete(rule),\n },\n ];\n\n if (!allowCloning) {\n return removeBy({ key: \"clone\" }, defaultOptions);\n }\n\n return defaultOptions;\n};\n\nexport const getColumnData = ({\n handleChangeStatus,\n additionalColumns = [],\n onPreview,\n ...otherProps\n}) => {\n const { setMoreActionDropdownItems } = useUtilityStore.pick();\n\n return [\n {\n title: t(\"neetoRules.labels.name\"),\n dataIndex: \"name\",\n key: \"name\",\n ellipsis: true,\n width: 440,\n render: (name, rule) => (\n <div>\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n className=\"whitespace-pre-line wrap-break-word text-start\"\n style=\"link\"\n onClick={() => {\n setMoreActionDropdownItems(\n buildActionDropdownMenuItems({ rule, ...otherProps })\n );\n onPreview(rule.id);\n }}\n >\n {truncate(name, 100)}\n </Button>\n <MoreDropdown\n dropdownButtonProps={{ className: \"me-1 my-1\" }}\n menuItems={buildActionDropdownMenuItems({ rule, ...otherProps })}\n dropdownProps={{\n strategy: \"fixed\",\n appendTo: () => document.body,\n }}\n />\n </div>\n <DisableMessage disabledReason={rule.disabledReason} />\n </div>\n ),\n },\n {\n title: t(\"neetoRules.labels.active\"),\n key: \"active\",\n width: 140,\n align: \"center\",\n render: (_, rule) => (\n <div className=\"flex justify-center\">\n <Switch\n checked={rule.status === STATUS_KEYS.ENABLED}\n data-testid=\"automation-rules-state-switch-row\"\n disabled={!!rule.disabledReason}\n onChange={e => {\n handleChangeStatus(e, rule.id);\n }}\n />\n </div>\n ),\n },\n ...additionalColumns,\n ];\n};\n\nexport const renderNoDataHelpText = helpDocUrl => (\n <Trans\n i18nKey=\"neetoRules.noData.helpText\"\n components={{\n a: <Button style=\"link\" target=\"_blank\" to={{ pathname: helpDocUrl }} />,\n }}\n />\n);\n","import { useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { Bar as FilterBar } from \"neetofilters\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Alert, Table, Typography, NoData, Button, Spinner } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport useUtilityStore from \"components/stores/useUtilityStore\";\nimport {\n useCloneAutomationRule,\n useDeleteAutomationRule,\n useUpdateAutomationRule,\n} from \"hooks/reactQuery/useAutomationRulesApi\";\nimport { createRoutes } from \"utils\";\n\nimport { STATUS_KEYS } from \"./constants\";\nimport { getColumnData, renderNoDataHelpText } from \"./utils\";\n\nconst RulesTable = ({\n url,\n additionalColumns,\n allowReordering,\n automationRulesPath = \"/\",\n onPreview,\n moreDropdownItems = [],\n rules = [],\n totalCount,\n helpDocUrl,\n isLoading,\n onDeleteSuccess,\n onCloneSuccess,\n onUpdateSuccess,\n page,\n setIsReorderPaneOpen,\n setPage,\n allowCloning = true,\n hasUnfilteredRules = true,\n payloadKey = \"rule\",\n}) => {\n const { searchTerm = \"\" } = useQueryParams();\n\n const searchKeywordProps = {\n key: \"search_term\",\n node: \"name\",\n value: searchTerm,\n };\n\n const [selectedRule, setSelectedRule] = useState(null);\n\n const { hidePreviewPane } = useUtilityStore.pick();\n\n const { t } = useTranslation();\n\n const { mutate: updateRule, isPending: isUpdating } =\n useUpdateAutomationRule(url);\n\n const { mutate: cloneRule, isPending: isCloning } =\n useCloneAutomationRule(url);\n\n const { mutate: deleteRule, isPending: isDeleting } =\n useDeleteAutomationRule(url);\n\n const handleChangeStatus = (event, id) => {\n const status = event.target.checked\n ? STATUS_KEYS.ENABLED\n : STATUS_KEYS.DISABLED;\n const payload = { [payloadKey]: { status } };\n updateRule({ id, url, payload }, { onSuccess: () => onUpdateSuccess?.() });\n };\n\n const handleCloneSuccess = () => {\n onCloneSuccess?.();\n hidePreviewPane();\n };\n\n const handleDeleteSuccess = () => {\n onDeleteSuccess?.();\n hidePreviewPane();\n setSelectedRule(null);\n };\n\n const columnData = getColumnData({\n handleChangeStatus,\n additionalColumns,\n onClone: id => cloneRule({ id, url }, { onSuccess: handleCloneSuccess }),\n onDelete: setSelectedRule,\n onPreview,\n automationRulesPath,\n moreDropdownItems,\n allowCloning,\n });\n\n if (isLoading && isEmpty(rules)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n {hasUnfilteredRules && (\n <SubHeader\n leftActionBlock={\n <>\n <Typography\n className=\"me-4 font-semibold\"\n data-testid=\"automation-rules-count\"\n style=\"h4\"\n >\n {t(\"neetoRules.common.automationRuleWithCount\", {\n count: totalCount,\n })}\n </Typography>\n <FilterBar className=\"mb-0\" keyword={searchKeywordProps} />\n </>\n }\n rightActionBlock={\n hasUnfilteredRules &&\n allowReordering && (\n <Button\n disabled={isNotEmpty(searchTerm)}\n label={t(\"neetoRules.common.reorder\")}\n style=\"secondary\"\n onClick={() => setIsReorderPaneOpen(true)}\n />\n )\n }\n />\n )}\n {isNotEmpty(rules) ? (\n <>\n <TableWrapper hasPagination={totalCount > DEFAULT_PAGE_SIZE}>\n <Table\n {...{ columnData, totalCount }}\n fixedHeight\n allowClick={false}\n currentPageNumber={page}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n handlePageChange={setPage}\n loading={isUpdating || isCloning || isDeleting || isLoading}\n rowData={rules.map(item => ({ key: item.id, ...item }))}\n rowSelection={false}\n tableLayout=\"fixed\"\n />\n </TableWrapper>\n <Alert\n isOpen={!!selectedRule}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoRules.button.delete\")}\n title={t(\"neetoRules.deleteAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoRules.deleteAlert.message\"\n values={{ name: selectedRule?.name }}\n />\n }\n onClose={() => setSelectedRule(null)}\n onSubmit={() =>\n deleteRule(\n { id: selectedRule?.id, url },\n { onSuccess: handleDeleteSuccess }\n )\n }\n />\n </>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n title={t(\"neetoRules.noData.title\")}\n {...(isEmpty(searchTerm) && {\n helpText: helpDocUrl ? renderNoDataHelpText(helpDocUrl) : null,\n primaryButtonProps: {\n label: t(\"neetoRules.button.addNew\"),\n to: createRoutes(automationRulesPath).new,\n },\n })}\n />\n </div>\n )}\n </>\n );\n};\n\nexport default RulesTable;\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/Container\";\n\nimport { useFetchAutomationRules } from \"hooks/reactQuery/useAutomationRulesApi\";\n\nimport { INITIAL_RULES_DATA } from \"./constants\";\nimport Header from \"./Header\";\nimport RulesReorder from \"./RulesReorder\";\nimport RulesTable from \"./RulesTable\";\nimport { DEFAULT_INIT_PAGE } from \"./RulesTable/constants\";\n\nconst NeetoRules = ({\n breadcrumbs,\n automationRulesPath,\n automationRulesEndpoint: url,\n allowReordering = false,\n rulesTableProps = {},\n helpPopoverProps = {},\n deleteRule,\n cloneRule,\n updateRule,\n reorderRules,\n headerProps = {},\n}) => {\n const [isReorderPaneOpen, setIsReorderPaneOpen] = useState(false);\n const helpDocUrl = helpPopoverProps?.helpLinkProps?.href;\n\n const [page, setPage] = useState(DEFAULT_INIT_PAGE);\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const {\n data: { rules, totalCount } = INITIAL_RULES_DATA,\n isLoading,\n isFetching,\n } = useFetchAutomationRules({\n url,\n page,\n pageSize: DEFAULT_PAGE_SIZE,\n searchTerm,\n });\n\n const hasUnfilteredRules = isPresent(searchTerm) || totalCount > 0;\n\n return (\n <Container>\n <Header\n {...{\n automationRulesPath,\n breadcrumbs,\n hasUnfilteredRules,\n headerProps,\n helpPopoverProps,\n }}\n />\n <RulesTable\n {...{\n allowReordering,\n automationRulesPath,\n hasUnfilteredRules,\n helpDocUrl,\n page,\n rules,\n setIsReorderPaneOpen,\n setPage,\n totalCount,\n url,\n ...rulesTableProps,\n }}\n allowCloning={cloneRule?.allowed ?? true}\n isLoading={isLoading || isFetching}\n onCloneSuccess={cloneRule?.onSuccess?.callback}\n onDeleteSuccess={deleteRule?.onSuccess?.callback}\n onUpdateSuccess={updateRule?.onSuccess?.callback}\n />\n {allowReordering && !isLoading && (\n <RulesReorder\n {...{ totalCount, url }}\n isOpen={isReorderPaneOpen}\n onClose={() => setIsReorderPaneOpen(false)}\n onReorderSuccess={reorderRules?.onSuccess?.callback}\n />\n )}\n </Container>\n );\n};\n\nexport default NeetoRules;\n"],"names":["Header","withT","_ref","breadcrumbs","automationRulesPath","_ref$helpPopoverProps","helpPopoverProps","hasUnfilteredRules","headerProps","t","_jsx","NeetoHeader","_objectSpread","title","actionBlock","Button","className","iconPosition","label","style","to","createRoutes","searchProps","placeholder","titleHelpPopoverProps","description","memo","STATUS_KEYS","ENABLED","DISABLED","DEFAULT_INIT_PAGE","DisableMessage","disabledReason","isNotNil","children","Typography","component","buildActionDropdownMenuItems","rule","onClone","onDelete","_ref$moreDropdownItem","moreDropdownItems","allowCloning","defaultOptions","concat","_toConsumableArray","map","_ref2","onClick","others","_objectWithoutProperties","_excluded","key","buildUrl","edit","ruleId","id","type","removeBy","getColumnData","_ref3","handleChangeStatus","_ref3$additionalColum","additionalColumns","onPreview","otherProps","_excluded2","_useUtilityStore","useUtilityStore","useShallow","store","setMoreActionDropdownItems","dataIndex","ellipsis","width","render","name","_jsxs","truncate","MoreDropdown","dropdownButtonProps","menuItems","dropdownProps","strategy","appendTo","document","body","align","_","Switch","checked","status","disabled","onChange","e","renderNoDataHelpText","helpDocUrl","Trans","i18nKey","components","a","target","pathname","RulesTable","url","allowReordering","_ref$automationRulesP","_ref$rules","rules","totalCount","isLoading","onDeleteSuccess","onCloneSuccess","onUpdateSuccess","page","setIsReorderPaneOpen","setPage","_ref$allowCloning","_ref$hasUnfilteredRul","_ref$payloadKey","payloadKey","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","_useState","useState","_useState2","_slicedToArray","selectedRule","setSelectedRule","hidePreviewPane","_useTranslation","useTranslation","_useUpdateAutomationR","useUpdateAutomationRule","updateRule","mutate","isUpdating","isPending","_useCloneAutomationRu","useCloneAutomationRule","cloneRule","isCloning","_useDeleteAutomationR","useDeleteAutomationRule","deleteRule","isDeleting","event","payload","_defineProperty","onSuccess","handleCloneSuccess","handleDeleteSuccess","columnData","isEmpty","Spinner","_Fragment","SubHeader","leftActionBlock","count","FilterBar","keyword","rightActionBlock","isNotEmpty","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","Table","fixedHeight","allowClick","currentPageNumber","defaultPageSize","handlePageChange","loading","rowData","item","rowSelection","tableLayout","Alert","isOpen","isSubmitting","submitButtonLabel","message","values","onClose","onSubmit","NoData","helpText","primaryButtonProps","NeetoRules","_helpPopoverProps$hel","_cloneRule$allowed","_cloneRule$onSuccess","_deleteRule$onSuccess","_updateRule$onSuccess","_reorderRules$onSucce","automationRulesEndpoint","_ref$allowReordering","_ref$rulesTableProps","rulesTableProps","reorderRules","_ref$headerProps","isReorderPaneOpen","helpLinkProps","href","_useState3","_useState4","_useFetchAutomationRu","useFetchAutomationRules","pageSize","_useFetchAutomationRu2","data","_useFetchAutomationRu3","INITIAL_RULES_DATA","isFetching","isPresent","Container","allowed","callback","RulesReorder","onReorderSuccess"],"mappings":"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"}