@bigbinary/neeto-integrations-frontend 3.1.0 → 3.2.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 (81) hide show
  1. package/dist/Connect.js +99 -0
  2. package/dist/Connect.js.map +1 -0
  3. package/dist/Daily.js +30 -743
  4. package/dist/Daily.js.map +1 -1
  5. package/dist/DailyForm.js +25 -0
  6. package/dist/DailyForm.js.map +1 -0
  7. package/dist/Demo.js +95 -0
  8. package/dist/Demo.js.map +1 -0
  9. package/dist/Finish.js +87 -0
  10. package/dist/Finish.js.map +1 -0
  11. package/dist/Form-5be03668.js +171 -0
  12. package/dist/Form-5be03668.js.map +1 -0
  13. package/dist/Form-be2e5595.js +209 -0
  14. package/dist/Form-be2e5595.js.map +1 -0
  15. package/dist/GoogleCalendar.js +127 -0
  16. package/dist/GoogleCalendar.js.map +1 -0
  17. package/dist/Manage.js +162 -0
  18. package/dist/Manage.js.map +1 -0
  19. package/dist/Modal.js +84 -0
  20. package/dist/Modal.js.map +1 -0
  21. package/dist/Twilio.js +5 -108
  22. package/dist/Twilio.js.map +1 -1
  23. package/dist/ZapierForm.js +7 -101
  24. package/dist/ZapierForm.js.map +1 -1
  25. package/dist/Zoom.js +13 -846
  26. package/dist/Zoom.js.map +1 -1
  27. package/dist/cjs/Connect.js +106 -0
  28. package/dist/cjs/Connect.js.map +1 -0
  29. package/dist/cjs/Daily.js +150 -0
  30. package/dist/cjs/Daily.js.map +1 -0
  31. package/dist/cjs/DailyForm.js +31 -0
  32. package/dist/cjs/DailyForm.js.map +1 -0
  33. package/dist/cjs/Demo.js +102 -0
  34. package/dist/cjs/Demo.js.map +1 -0
  35. package/dist/cjs/Finish.js +113 -0
  36. package/dist/cjs/Finish.js.map +1 -0
  37. package/dist/cjs/GoogleCalendar.js +137 -0
  38. package/dist/cjs/GoogleCalendar.js.map +1 -0
  39. package/dist/cjs/Manage.js +173 -0
  40. package/dist/cjs/Manage.js.map +1 -0
  41. package/dist/cjs/Modal.js +92 -0
  42. package/dist/cjs/Modal.js.map +1 -0
  43. package/dist/{Twilio.cjs.js → cjs/Twilio.js} +22 -125
  44. package/dist/cjs/Twilio.js.map +1 -0
  45. package/dist/{ZapierForm.cjs.js → cjs/ZapierForm.js} +19 -113
  46. package/dist/cjs/ZapierForm.js.map +1 -0
  47. package/dist/cjs/Zoom.js +127 -0
  48. package/dist/cjs/Zoom.js.map +1 -0
  49. package/dist/cjs/index.js +67 -0
  50. package/dist/cjs/index.js.map +1 -0
  51. package/dist/defineProperty-e90a259c.js +43 -0
  52. package/dist/defineProperty-e90a259c.js.map +1 -0
  53. package/dist/defineProperty-f3094d6c.js +45 -0
  54. package/dist/defineProperty-f3094d6c.js.map +1 -0
  55. package/dist/index-2f3a953b.js +86 -0
  56. package/dist/index-2f3a953b.js.map +1 -0
  57. package/dist/index-4bda54e6.js +84 -0
  58. package/dist/index-4bda54e6.js.map +1 -0
  59. package/dist/index.js +49 -1453
  60. package/dist/index.js.map +1 -1
  61. package/dist/query-4f9552ab.js +21 -0
  62. package/dist/query-4f9552ab.js.map +1 -0
  63. package/dist/query-62fcdf0a.js +15 -0
  64. package/dist/query-62fcdf0a.js.map +1 -0
  65. package/dist/slicedToArray-b4278ecd.js +57 -0
  66. package/dist/slicedToArray-b4278ecd.js.map +1 -0
  67. package/dist/slicedToArray-f320d9e7.js +61 -0
  68. package/dist/slicedToArray-f320d9e7.js.map +1 -0
  69. package/package.json +9 -9
  70. package/dist/Daily.cjs.js +0 -896
  71. package/dist/Daily.cjs.js.map +0 -1
  72. package/dist/GoogleCalender.cjs.js +0 -1065
  73. package/dist/GoogleCalender.cjs.js.map +0 -1
  74. package/dist/GoogleCalender.js +0 -1019
  75. package/dist/GoogleCalender.js.map +0 -1
  76. package/dist/Twilio.cjs.js.map +0 -1
  77. package/dist/ZapierForm.cjs.js.map +0 -1
  78. package/dist/Zoom.cjs.js +0 -995
  79. package/dist/Zoom.cjs.js.map +0 -1
  80. package/dist/index.cjs.js +0 -1524
  81. package/dist/index.cjs.js.map +0 -1
@@ -0,0 +1,173 @@
1
+ 'use strict';
2
+
3
+ var defineProperty = require('../defineProperty-f3094d6c.js');
4
+ var classnames = require('classnames');
5
+ var neetoCist = require('@bigbinary/neeto-cist');
6
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
7
+ var Check = require('@bigbinary/neeto-icons/Check');
8
+ var DisconnectAlert = require('@bigbinary/neeto-molecules/IntegrationDisconnectAlert');
9
+ var Button = require('@bigbinary/neetoui/Button');
10
+ var Tooltip = require('@bigbinary/neetoui/Tooltip');
11
+ var Typography = require('@bigbinary/neetoui/Typography');
12
+ var reactI18next = require('react-i18next');
13
+ var jsxRuntime = require('react/jsx-runtime');
14
+
15
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
+
17
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
18
+ var Check__default = /*#__PURE__*/_interopDefaultLegacy(Check);
19
+ var DisconnectAlert__default = /*#__PURE__*/_interopDefaultLegacy(DisconnectAlert);
20
+ var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
21
+ var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
22
+ var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
23
+
24
+ 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; }
25
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { defineProperty._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; }
26
+ var Manage = reactUtils.withT(function (_ref) {
27
+ var t = _ref.t,
28
+ _ref$title = _ref.title,
29
+ title = _ref$title === void 0 ? "" : _ref$title,
30
+ _ref$description = _ref.description,
31
+ description = _ref$description === void 0 ? "" : _ref$description,
32
+ _ref$integration = _ref.integration,
33
+ integration = _ref$integration === void 0 ? "" : _ref$integration,
34
+ _ref$isDisconnectAler = _ref.isDisconnectAlertOpen,
35
+ isDisconnectAlertOpen = _ref$isDisconnectAler === void 0 ? false : _ref$isDisconnectAler,
36
+ _ref$setIsDisconnectA = _ref.setIsDisconnectAlertOpen,
37
+ setIsDisconnectAlertOpen = _ref$setIsDisconnectA === void 0 ? neetoCist.noop : _ref$setIsDisconnectA,
38
+ _ref$isDisconnecting = _ref.isDisconnecting,
39
+ isDisconnecting = _ref$isDisconnecting === void 0 ? false : _ref$isDisconnecting,
40
+ _ref$onConnect = _ref.onConnect,
41
+ onConnect = _ref$onConnect === void 0 ? undefined : _ref$onConnect,
42
+ _ref$onDisconnect = _ref.onDisconnect,
43
+ onDisconnect = _ref$onDisconnect === void 0 ? undefined : _ref$onDisconnect,
44
+ _ref$onClose = _ref.onClose,
45
+ onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
46
+ _ref$Icon = _ref.Icon,
47
+ Icon = _ref$Icon === void 0 ? null : _ref$Icon,
48
+ _ref$isConnected = _ref.isConnected,
49
+ isConnected = _ref$isConnected === void 0 ? false : _ref$isConnected,
50
+ _ref$connectPath = _ref.connectPath,
51
+ connectPath = _ref$connectPath === void 0 ? "" : _ref$connectPath,
52
+ _ref$connectUrl = _ref.connectUrl,
53
+ connectUrl = _ref$connectUrl === void 0 ? "" : _ref$connectUrl,
54
+ _ref$helpDocUrl = _ref.helpDocUrl,
55
+ helpDocUrl = _ref$helpDocUrl === void 0 ? "" : _ref$helpDocUrl,
56
+ _ref$managePath = _ref.managePath,
57
+ managePath = _ref$managePath === void 0 ? "" : _ref$managePath,
58
+ _ref$manageUrl = _ref.manageUrl,
59
+ manageUrl = _ref$manageUrl === void 0 ? "" : _ref$manageUrl,
60
+ _ref$integrationName = _ref.integrationName,
61
+ integrationName = _ref$integrationName === void 0 ? "" : _ref$integrationName,
62
+ _ref$disconnectMessag = _ref.disconnectMessage,
63
+ disconnectMessage = _ref$disconnectMessag === void 0 ? "" : _ref$disconnectMessag,
64
+ _ref$disconnectTitle = _ref.disconnectTitle,
65
+ disconnectTitle = _ref$disconnectTitle === void 0 ? "" : _ref$disconnectTitle,
66
+ _ref$isConnectDisable = _ref.isConnectDisabled,
67
+ isConnectDisabled = _ref$isConnectDisable === void 0 ? false : _ref$isConnectDisable,
68
+ _ref$connectTooltipPr = _ref.connectTooltipProps,
69
+ connectTooltipProps = _ref$connectTooltipPr === void 0 ? null : _ref$connectTooltipPr,
70
+ _ref$buttonProps = _ref.buttonProps,
71
+ buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
72
+ _ref$secondaryButtonP = _ref.secondaryButtonProps,
73
+ secondaryButtonProps = _ref$secondaryButtonP === void 0 ? {} : _ref$secondaryButtonP;
74
+ return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
75
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
76
+ className: "mx-auto w-full max-w-3xl",
77
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
78
+ className: "neeto-ui-border-gray-300 neeto-ui-rounded-xl mt-10 w-full space-y-4 border p-6",
79
+ children: [Icon && /*#__PURE__*/jsxRuntime.jsx(Icon, {
80
+ className: "neeto-ui-text-gray-600",
81
+ size: 48
82
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
83
+ className: "space-y-2",
84
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
85
+ className: "flex items-center space-x-4",
86
+ children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
87
+ className: "neeto-ui-text-gray-800 mb-0.5",
88
+ style: "h2",
89
+ weight: "semibold",
90
+ children: title
91
+ }), isConnected && /*#__PURE__*/jsxRuntime.jsx("div", {
92
+ className: "neeto-ui-bg-success-500 neeto-ui-text-white neeto-ui-rounded-full flex items-center justify-center p-1",
93
+ children: /*#__PURE__*/jsxRuntime.jsx(Check__default["default"], {
94
+ size: 24
95
+ })
96
+ })]
97
+ }), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
98
+ style: "body1",
99
+ weight: "normal",
100
+ className: classnames__default["default"]("neeto-ui-text-gray-800", {
101
+ "break-all": isConnected
102
+ }),
103
+ children: description
104
+ }), helpDocUrl && /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
105
+ className: "neeto-ui-text-gray-800",
106
+ style: "body2",
107
+ weight: "normal",
108
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
109
+ i18nKey: "neetoIntegrations.common.helpDocUrl",
110
+ components: {
111
+ helpLink: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
112
+ href: helpDocUrl,
113
+ style: "link",
114
+ target: "_blank"
115
+ })
116
+ },
117
+ values: {
118
+ integration: integrationName || neetoCist.humanize(integration)
119
+ }
120
+ })
121
+ })]
122
+ }), isConnected ? /*#__PURE__*/jsxRuntime.jsxs("div", {
123
+ className: "space-x-2",
124
+ children: [(managePath || manageUrl) && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], _objectSpread({
125
+ "data-cy": "manage-button",
126
+ href: manageUrl,
127
+ target: manageUrl ? "_blank" : "_self",
128
+ to: managePath,
129
+ label: t("neetoIntegrations.common.manageIntegration", {
130
+ integration: integrationName || neetoCist.humanize(integration)
131
+ })
132
+ }, buttonProps)), onDisconnect && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], _objectSpread({
133
+ "data-cy": "disconnect-button",
134
+ style: "secondary",
135
+ label: t("neetoIntegrations.common.disconnectIntegration", {
136
+ integration: integrationName || neetoCist.humanize(integration)
137
+ }),
138
+ onClick: function onClick() {
139
+ return setIsDisconnectAlertOpen(true);
140
+ }
141
+ }, secondaryButtonProps))]
142
+ }) : /*#__PURE__*/jsxRuntime.jsx("div", {
143
+ children: /*#__PURE__*/jsxRuntime.jsx(Tooltip__default["default"], _objectSpread(_objectSpread({
144
+ disabled: !isConnectDisabled
145
+ }, connectTooltipProps), {}, {
146
+ children: /*#__PURE__*/jsxRuntime.jsx("span", {
147
+ children: (connectPath || connectUrl || onConnect) && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], _objectSpread({
148
+ "data-cy": "connect-button",
149
+ disabled: isConnectDisabled,
150
+ href: connectUrl,
151
+ to: connectPath,
152
+ label: t("neetoIntegrations.common.connectIntegration", {
153
+ integration: integrationName || neetoCist.humanize(integration)
154
+ }),
155
+ onClick: onConnect
156
+ }, buttonProps))
157
+ })
158
+ }))
159
+ })]
160
+ })
161
+ }), /*#__PURE__*/jsxRuntime.jsx(DisconnectAlert__default["default"], {
162
+ isDisconnecting: isDisconnecting,
163
+ onClose: onClose,
164
+ onDisconnect: onDisconnect,
165
+ isOpen: isDisconnectAlertOpen,
166
+ message: disconnectMessage || t("settings.integrations.".concat(integration, ".disconnect.message")),
167
+ title: disconnectTitle || t("settings.integrations.".concat(integration, ".disconnect.title"))
168
+ })]
169
+ });
170
+ });
171
+
172
+ module.exports = Manage;
173
+ //# sourceMappingURL=Manage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Manage.js","sources":["../../app/javascript/src/components/commons/Manage.jsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { humanize, noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport DisconnectAlert from \"neetomolecules/IntegrationDisconnectAlert\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst Manage = withT(\n ({\n t,\n title = \"\",\n description = \"\",\n integration = \"\",\n isDisconnectAlertOpen = false,\n setIsDisconnectAlertOpen = noop,\n isDisconnecting = false,\n onConnect = undefined,\n onDisconnect = undefined,\n onClose = noop,\n Icon = null,\n isConnected = false,\n connectPath = \"\",\n connectUrl = \"\",\n helpDocUrl = \"\",\n managePath = \"\",\n manageUrl = \"\",\n integrationName = \"\",\n disconnectMessage = \"\",\n disconnectTitle = \"\",\n isConnectDisabled = false,\n connectTooltipProps = null,\n buttonProps = {},\n secondaryButtonProps = {},\n }) => (\n <>\n <div className=\"mx-auto w-full max-w-3xl\">\n <div className=\"neeto-ui-border-gray-300 neeto-ui-rounded-xl mt-10 w-full space-y-4 border p-6\">\n {Icon && <Icon className=\"neeto-ui-text-gray-600\" size={48} />}\n <div className=\"space-y-2\">\n <div className=\"flex items-center space-x-4\">\n <Typography\n className=\"neeto-ui-text-gray-800 mb-0.5\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n {isConnected && (\n <div className=\"neeto-ui-bg-success-500 neeto-ui-text-white neeto-ui-rounded-full flex items-center justify-center p-1\">\n <Check size={24} />\n </div>\n )}\n </div>\n <Typography\n style=\"body1\"\n weight=\"normal\"\n className={classNames(\"neeto-ui-text-gray-800\", {\n \"break-all\": isConnected,\n })}\n >\n {description}\n </Typography>\n {helpDocUrl && (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n style=\"body2\"\n weight=\"normal\"\n >\n <Trans\n i18nKey=\"neetoIntegrations.common.helpDocUrl\"\n components={{\n helpLink: (\n <Button href={helpDocUrl} style=\"link\" target=\"_blank\" />\n ),\n }}\n values={{\n integration: integrationName || humanize(integration),\n }}\n />\n </Typography>\n )}\n </div>\n {isConnected ? (\n <div className=\"space-x-2\">\n {(managePath || manageUrl) && (\n <Button\n data-cy=\"manage-button\"\n href={manageUrl}\n target={manageUrl ? \"_blank\" : \"_self\"}\n to={managePath}\n label={t(\"neetoIntegrations.common.manageIntegration\", {\n integration: integrationName || humanize(integration),\n })}\n {...buttonProps}\n />\n )}\n {onDisconnect && (\n <Button\n data-cy=\"disconnect-button\"\n style=\"secondary\"\n label={t(\"neetoIntegrations.common.disconnectIntegration\", {\n integration: integrationName || humanize(integration),\n })}\n onClick={() => setIsDisconnectAlertOpen(true)}\n {...secondaryButtonProps}\n />\n )}\n </div>\n ) : (\n <div>\n <Tooltip disabled={!isConnectDisabled} {...connectTooltipProps}>\n <span>\n {(connectPath || connectUrl || onConnect) && (\n <Button\n data-cy=\"connect-button\"\n disabled={isConnectDisabled}\n href={connectUrl}\n to={connectPath}\n label={t(\"neetoIntegrations.common.connectIntegration\", {\n integration: integrationName || humanize(integration),\n })}\n onClick={onConnect}\n {...buttonProps}\n />\n )}\n </span>\n </Tooltip>\n </div>\n )}\n </div>\n </div>\n <DisconnectAlert\n {...{ isDisconnecting, onClose, onDisconnect }}\n isOpen={isDisconnectAlertOpen}\n message={\n disconnectMessage ||\n t(`settings.integrations.${integration}.disconnect.message`)\n }\n title={\n disconnectTitle ||\n t(`settings.integrations.${integration}.disconnect.title`)\n }\n />\n </>\n )\n);\n\nexport default Manage;\n"],"names":["Manage","withT","_ref","t","_ref$title","title","_ref$description","description","_ref$integration","integration","_ref$isDisconnectAler","isDisconnectAlertOpen","_ref$setIsDisconnectA","setIsDisconnectAlertOpen","noop","_ref$isDisconnecting","isDisconnecting","_ref$onConnect","onConnect","undefined","_ref$onDisconnect","onDisconnect","_ref$onClose","onClose","_ref$Icon","Icon","_ref$isConnected","isConnected","_ref$connectPath","connectPath","_ref$connectUrl","connectUrl","_ref$helpDocUrl","helpDocUrl","_ref$managePath","managePath","_ref$manageUrl","manageUrl","_ref$integrationName","integrationName","_ref$disconnectMessag","disconnectMessage","_ref$disconnectTitle","disconnectTitle","_ref$isConnectDisable","isConnectDisabled","_ref$connectTooltipPr","connectTooltipProps","_ref$buttonProps","buttonProps","_ref$secondaryButtonP","secondaryButtonProps","_jsxs","_Fragment","children","_jsx","className","size","Typography","style","weight","Check","classNames","Trans","i18nKey","components","helpLink","Button","href","target","values","humanize","_objectSpread","to","label","onClick","Tooltip","disabled","DisconnectAlert","isOpen","message","concat"],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ 'use strict';
2
+
3
+ var neetoCist = require('@bigbinary/neeto-cist');
4
+ var NeetoUIModal = require('@bigbinary/neetoui/Modal');
5
+ var classnames = require('classnames');
6
+ var Typography = require('@bigbinary/neetoui/Typography');
7
+ var jsxRuntime = require('react/jsx-runtime');
8
+
9
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
+
11
+ var NeetoUIModal__default = /*#__PURE__*/_interopDefaultLegacy(NeetoUIModal);
12
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
13
+ var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
14
+
15
+ var Stepper = function Stepper(_ref) {
16
+ var _ref$steps = _ref.steps,
17
+ steps = _ref$steps === void 0 ? {} : _ref$steps;
18
+ var isActiveOrCompleted = function isActiveOrCompleted(activeStatus, completedStatus) {
19
+ return activeStatus || completedStatus;
20
+ };
21
+ return /*#__PURE__*/jsxRuntime.jsx("ul", {
22
+ className: "flex gap-4",
23
+ children: steps === null || steps === void 0 ? void 0 : steps.map(function (_ref2) {
24
+ var step = _ref2.step,
25
+ label = _ref2.label,
26
+ isActive = _ref2.isActive,
27
+ isCompleted = _ref2.isCompleted;
28
+ return /*#__PURE__*/jsxRuntime.jsxs("li", {
29
+ className: "flex items-center gap-4",
30
+ children: [step !== "1" && /*#__PURE__*/jsxRuntime.jsx("div", {
31
+ className: classnames__default["default"]("w-10 border-b", {
32
+ "neeto-ui-border-gray-800": isActiveOrCompleted(isActive, isCompleted),
33
+ "neeto-ui-border-gray-400": !isActiveOrCompleted(isActive, isCompleted)
34
+ })
35
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
36
+ className: "flex items-center gap-2",
37
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
38
+ className: classnames__default["default"]("neeto-ui-rounded-full neeto-ui-gray-600 flex h-6 w-6 items-center justify-center border", {
39
+ "neeto-ui-bg-success-600 neeto-ui-border-success-600 neeto-ui-text-white": isActive,
40
+ "neeto-ui-bg-primary-600 neeto-ui-border-primary-600 neeto-ui-text-white": isCompleted,
41
+ "neeto-ui-border-gray-400": !isActiveOrCompleted(isActive, isCompleted)
42
+ }),
43
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
44
+ component: "span",
45
+ style: "body2",
46
+ weight: "normal",
47
+ children: step
48
+ })
49
+ }), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
50
+ style: "body2",
51
+ weight: "normal",
52
+ className: classnames__default["default"]({
53
+ "neeto-ui-text-gray-800": isActiveOrCompleted(isActive, isCompleted),
54
+ "neeto-ui-text-gray-600": !isActiveOrCompleted(isActive, isCompleted)
55
+ }),
56
+ children: label
57
+ })]
58
+ })]
59
+ }, step);
60
+ })
61
+ });
62
+ };
63
+
64
+ var Modal = function Modal(_ref) {
65
+ var _ref$isOpen = _ref.isOpen,
66
+ isOpen = _ref$isOpen === void 0 ? neetoCist.noop : _ref$isOpen,
67
+ _ref$onClose = _ref.onClose,
68
+ onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
69
+ _ref$steps = _ref.steps,
70
+ steps = _ref$steps === void 0 ? {} : _ref$steps,
71
+ children = _ref.children;
72
+ return /*#__PURE__*/jsxRuntime.jsxs(NeetoUIModal__default["default"], {
73
+ isOpen: isOpen,
74
+ onClose: onClose,
75
+ className: "neeto-ui-flex neeto-ui-flex-col neeto-ui-transform-none w-screen overflow-y-auto",
76
+ size: "fullScreen",
77
+ children: [/*#__PURE__*/jsxRuntime.jsx(NeetoUIModal__default["default"].Header, {
78
+ children: /*#__PURE__*/jsxRuntime.jsx(Stepper, {
79
+ steps: steps
80
+ })
81
+ }), /*#__PURE__*/jsxRuntime.jsx(NeetoUIModal__default["default"].Body, {
82
+ className: "neeto-ui-flex neeto-ui-justify-center neeto-ui-flex-grow",
83
+ children: /*#__PURE__*/jsxRuntime.jsx("div", {
84
+ className: "neeto-ui-w-full py-10",
85
+ children: children
86
+ })
87
+ })]
88
+ });
89
+ };
90
+
91
+ module.exports = Modal;
92
+ //# sourceMappingURL=Modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.js","sources":["../../app/javascript/src/components/Modal/Stepper.jsx","../../app/javascript/src/components/Modal/index.jsx"],"sourcesContent":["import classnames from \"classnames\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nconst Stepper = ({ steps = {} }) => {\n const isActiveOrCompleted = (activeStatus, completedStatus) =>\n activeStatus || completedStatus;\n\n return (\n <ul className=\"flex gap-4\">\n {steps?.map(({ step, label, isActive, isCompleted }) => (\n <li className=\"flex items-center gap-4\" key={step}>\n {step !== \"1\" && (\n <div\n className={classnames(\"w-10 border-b\", {\n \"neeto-ui-border-gray-800\": isActiveOrCompleted(\n isActive,\n isCompleted\n ),\n \"neeto-ui-border-gray-400\": !isActiveOrCompleted(\n isActive,\n isCompleted\n ),\n })}\n />\n )}\n <div className=\"flex items-center gap-2\">\n <div\n className={classnames(\n \"neeto-ui-rounded-full neeto-ui-gray-600 flex h-6 w-6 items-center justify-center border\",\n {\n \"neeto-ui-bg-success-600 neeto-ui-border-success-600 neeto-ui-text-white\":\n isActive,\n \"neeto-ui-bg-primary-600 neeto-ui-border-primary-600 neeto-ui-text-white\":\n isCompleted,\n \"neeto-ui-border-gray-400\": !isActiveOrCompleted(\n isActive,\n isCompleted\n ),\n }\n )}\n >\n <Typography component=\"span\" style=\"body2\" weight=\"normal\">\n {step}\n </Typography>\n </div>\n <Typography\n style=\"body2\"\n weight=\"normal\"\n className={classnames({\n \"neeto-ui-text-gray-800\": isActiveOrCompleted(\n isActive,\n isCompleted\n ),\n \"neeto-ui-text-gray-600\": !isActiveOrCompleted(\n isActive,\n isCompleted\n ),\n })}\n >\n {label}\n </Typography>\n </div>\n </li>\n ))}\n </ul>\n );\n};\n\nStepper.propTypes = { steps: PropTypes.array };\n\nexport default Stepper;\n","import { noop } from \"neetocist\";\nimport { Modal as NeetoUIModal } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Stepper from \"./Stepper\";\n\nconst Modal = ({ isOpen = noop, onClose = noop, steps = {}, children }) => (\n <NeetoUIModal\n {...{ isOpen, onClose }}\n className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-transform-none w-screen overflow-y-auto\"\n size=\"fullScreen\"\n >\n <NeetoUIModal.Header>\n <Stepper {...{ steps }} />\n </NeetoUIModal.Header>\n <NeetoUIModal.Body className=\"neeto-ui-flex neeto-ui-justify-center neeto-ui-flex-grow\">\n <div className=\"neeto-ui-w-full py-10\">{children}</div>\n </NeetoUIModal.Body>\n </NeetoUIModal>\n);\n\nModal.propTypes = {\n /**\n * Handler function that is used to open the Modal\n */\n isOpen: PropTypes.bool,\n /**\n * Handler function that is triggered when the Modal's close button is invoked\n */\n onClose: PropTypes.func,\n /**\n * Denote the number of steps\n */\n steps: PropTypes.arrayOf(\n PropTypes.shape({\n step: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n isActive: PropTypes.bool.isRequired,\n isCompleted: PropTypes.bool.isRequired,\n })\n ),\n};\n\nexport default Modal;\n"],"names":["Stepper","_ref","_ref$steps","steps","isActiveOrCompleted","activeStatus","completedStatus","_jsx","className","children","map","_ref2","step","label","isActive","isCompleted","_jsxs","classnames","Typography","component","style","weight","Modal","_ref$isOpen","isOpen","noop","_ref$onClose","onClose","NeetoUIModal","size","Header","Body"],"mappings":"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"}
@@ -1,17 +1,20 @@
1
1
  'use strict';
2
2
 
3
- var react = require('react');
3
+ var defineProperty = require('../defineProperty-f3094d6c.js');
4
+ var React = require('react');
4
5
  var neetoCist = require('@bigbinary/neeto-cist');
5
6
  var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
6
- var FormikFormWrapper = require('@bigbinary/neetoui/formik/Form');
7
+ var FormikForm = require('@bigbinary/neetoui/formik/Form');
7
8
  var ramda = require('ramda');
8
9
  var reactI18next = require('react-i18next');
9
10
  var Input = require('@bigbinary/neetoui/formik/Input');
10
11
  var Select = require('@bigbinary/neetoui/formik/Select');
11
12
  var jsxRuntime = require('react/jsx-runtime');
13
+ var slicedToArray = require('../slicedToArray-f320d9e7.js');
12
14
  var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
13
15
  var reactQuery = require('@tanstack/react-query');
14
16
  var axios = require('axios');
17
+ var query = require('../query-4f9552ab.js');
15
18
  var i18next = require('i18next');
16
19
  var yup = require('yup');
17
20
 
@@ -36,56 +39,15 @@ function _interopNamespace(e) {
36
39
  }
37
40
 
38
41
  var ActionBlock__default = /*#__PURE__*/_interopDefaultLegacy(ActionBlock);
39
- var FormikFormWrapper__default = /*#__PURE__*/_interopDefaultLegacy(FormikFormWrapper);
42
+ var FormikForm__default = /*#__PURE__*/_interopDefaultLegacy(FormikForm);
40
43
  var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
41
44
  var Select__default = /*#__PURE__*/_interopDefaultLegacy(Select);
42
45
  var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
43
46
  var i18next__default = /*#__PURE__*/_interopDefaultLegacy(i18next);
44
47
  var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
45
48
 
46
- function _typeof(o) {
47
- "@babel/helpers - typeof";
48
-
49
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
50
- return typeof o;
51
- } : function (o) {
52
- return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
53
- }, _typeof(o);
54
- }
55
-
56
- function _toPrimitive(input, hint) {
57
- if (_typeof(input) !== "object" || input === null) return input;
58
- var prim = input[Symbol.toPrimitive];
59
- if (prim !== undefined) {
60
- var res = prim.call(input, hint || "default");
61
- if (_typeof(res) !== "object") return res;
62
- throw new TypeError("@@toPrimitive must return a primitive value.");
63
- }
64
- return (hint === "string" ? String : Number)(input);
65
- }
66
-
67
- function _toPropertyKey(arg) {
68
- var key = _toPrimitive(arg, "string");
69
- return _typeof(key) === "symbol" ? key : String(key);
70
- }
71
-
72
- function _defineProperty(obj, key, value) {
73
- key = _toPropertyKey(key);
74
- if (key in obj) {
75
- Object.defineProperty(obj, key, {
76
- value: value,
77
- enumerable: true,
78
- configurable: true,
79
- writable: true
80
- });
81
- } else {
82
- obj[key] = value;
83
- }
84
- return obj;
85
- }
86
-
87
49
  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; }
88
- 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), !0).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; }
50
+ 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), !0).forEach(function (r) { defineProperty._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; }
89
51
  var ConfigurationForm = function ConfigurationForm(_ref) {
90
52
  var _errors$twilioPhoneNu;
91
53
  var phoneNumberOptions = _ref.phoneNumberOptions,
@@ -104,7 +66,7 @@ var ConfigurationForm = function ConfigurationForm(_ref) {
104
66
  errors = formikProps.errors,
105
67
  values = formikProps.values,
106
68
  initialValues = formikProps.initialValues;
107
- react.useEffect(function () {
69
+ React.useEffect(function () {
108
70
  selectedPhoneNumber && setFieldValue("twilioPhoneNumber", selectedPhoneNumber);
109
71
  }, [selectedPhoneNumber, initialValues]);
110
72
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
@@ -145,81 +107,23 @@ var ConfigurationForm = function ConfigurationForm(_ref) {
145
107
  });
146
108
  };
147
109
 
148
- function _arrayWithHoles(arr) {
149
- if (Array.isArray(arr)) return arr;
150
- }
151
-
152
- function _iterableToArrayLimit(r, l) {
153
- var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
154
- if (null != t) {
155
- var e,
156
- n,
157
- i,
158
- u,
159
- a = [],
160
- f = !0,
161
- o = !1;
162
- try {
163
- if (i = (t = t.call(r)).next, 0 === l) {
164
- if (Object(t) !== t) return;
165
- f = !1;
166
- } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
167
- } catch (r) {
168
- o = !0, n = r;
169
- } finally {
170
- try {
171
- if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
172
- } finally {
173
- if (o) throw n;
174
- }
175
- }
176
- return a;
177
- }
178
- }
179
-
180
- function _arrayLikeToArray(arr, len) {
181
- if (len == null || len > arr.length) len = arr.length;
182
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
183
- return arr2;
184
- }
185
-
186
- function _unsupportedIterableToArray(o, minLen) {
187
- if (!o) return;
188
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
189
- var n = Object.prototype.toString.call(o).slice(8, -1);
190
- if (n === "Object" && o.constructor) n = o.constructor.name;
191
- if (n === "Map" || n === "Set") return Array.from(o);
192
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
193
- }
194
-
195
- function _nonIterableRest() {
196
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
197
- }
198
-
199
- function _slicedToArray(arr, i) {
200
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
201
- }
202
-
203
- var INTEGRATIONS_ENGINE_BASE_URL = "/neeto_integrations";
204
- var TWILIO_CONFIGURATION_BASE_URL = "".concat(INTEGRATIONS_ENGINE_BASE_URL, "/twilio/sms_configurations");
205
-
206
110
  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; }
207
- 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), !0).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; }
111
+ 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), !0).forEach(function (r) { defineProperty._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; }
208
112
  var fetchTwilioSmsConfiguration = function fetchTwilioSmsConfiguration(integrable) {
209
- return axios__default["default"].get(TWILIO_CONFIGURATION_BASE_URL, {
113
+ return axios__default["default"].get(query.TWILIO_CONFIGURATION_BASE_URL, {
210
114
  params: integrable
211
115
  });
212
116
  };
213
117
  var removeTwilioConfiguration = function removeTwilioConfiguration() {
214
- return axios__default["default"]["delete"](TWILIO_CONFIGURATION_BASE_URL);
118
+ return axios__default["default"]["delete"](query.TWILIO_CONFIGURATION_BASE_URL);
215
119
  };
216
120
  var getTwilioPhoneNumbers = function getTwilioPhoneNumbers(data) {
217
- return axios__default["default"].get("".concat(TWILIO_CONFIGURATION_BASE_URL, "/new"), {
121
+ return axios__default["default"].get("".concat(query.TWILIO_CONFIGURATION_BASE_URL, "/new"), {
218
122
  params: data
219
123
  });
220
124
  };
221
125
  var createTwilioConfiguration = function createTwilioConfiguration(payload, integrable) {
222
- return axios__default["default"].post(TWILIO_CONFIGURATION_BASE_URL, _objectSpread$1(_objectSpread$1({}, payload), integrable));
126
+ return axios__default["default"].post(query.TWILIO_CONFIGURATION_BASE_URL, _objectSpread$1(_objectSpread$1({}, payload), integrable));
223
127
  };
224
128
  var twilioApi = {
225
129
  fetchTwilioSmsConfiguration: fetchTwilioSmsConfiguration,
@@ -228,17 +132,10 @@ var twilioApi = {
228
132
  createTwilioConfiguration: createTwilioConfiguration
229
133
  };
230
134
 
231
- var QUERY_KEYS = {
232
- TWILIO_SMS_CONFIGURATION: "twilio-sms-configuration",
233
- TWILIO_PHONE_NUMBERS: "twilio-phone-numbers",
234
- DAILY_CO_DETAILS: "daily-co-details",
235
- ZOOM_DETAILS: "zoom-details"
236
- };
237
-
238
135
  var useFetchTwilioSmsConfiguration = function useFetchTwilioSmsConfiguration(_ref) {
239
136
  var integrable = _ref.integrable;
240
137
  return reactQuery.useQuery({
241
- queryKey: [QUERY_KEYS.TWILIO_SMS_CONFIGURATION, integrable === null || integrable === void 0 ? void 0 : integrable.integrableType, integrable === null || integrable === void 0 ? void 0 : integrable.integrableId],
138
+ queryKey: [query.QUERY_KEYS.TWILIO_SMS_CONFIGURATION, integrable === null || integrable === void 0 ? void 0 : integrable.integrableType, integrable === null || integrable === void 0 ? void 0 : integrable.integrableId],
242
139
  queryFn: function queryFn() {
243
140
  return twilioApi.fetchTwilioSmsConfiguration(integrable);
244
141
  },
@@ -258,7 +155,7 @@ var useFetchTwilioPhoneNumbers = function useFetchTwilioPhoneNumbers(_ref2) {
258
155
  var credentials = _ref2.credentials,
259
156
  formRef = _ref2.formRef;
260
157
  return reactQuery.useQuery({
261
- queryKey: [QUERY_KEYS.TWILIO_PHONE_NUMBERS, {
158
+ queryKey: [query.QUERY_KEYS.TWILIO_PHONE_NUMBERS, {
262
159
  credentials: credentials
263
160
  }],
264
161
  queryFn: function queryFn() {
@@ -274,7 +171,7 @@ var useCreateTwilioConfiguration = function useCreateTwilioConfiguration(_ref3)
274
171
  return reactUtils.useMutationWithInvalidation(function (payload) {
275
172
  return twilioApi.createTwilioConfiguration(payload, integrable);
276
173
  }, {
277
- keysToInvalidate: [[QUERY_KEYS.TWILIO_SMS_CONFIGURATION, integrable === null || integrable === void 0 ? void 0 : integrable.integrableType, integrable === null || integrable === void 0 ? void 0 : integrable.integrableId]]
174
+ keysToInvalidate: [[query.QUERY_KEYS.TWILIO_SMS_CONFIGURATION, integrable === null || integrable === void 0 ? void 0 : integrable.integrableType, integrable === null || integrable === void 0 ? void 0 : integrable.integrableId]]
278
175
  });
279
176
  };
280
177
 
@@ -292,7 +189,7 @@ var useTwilio = function useTwilio(_ref) {
292
189
  configuration = _useFetchTwilioSmsCon2 === void 0 ? {} : _useFetchTwilioSmsCon2,
293
190
  isConfigurationLoading = _useFetchTwilioSmsCon.isLoading;
294
191
  var _useStateWithDependen = reactUtils.useStateWithDependency(configuration),
295
- _useStateWithDependen2 = _slicedToArray(_useStateWithDependen, 2),
192
+ _useStateWithDependen2 = slicedToArray._slicedToArray(_useStateWithDependen, 2),
296
193
  credentials = _useStateWithDependen2[0],
297
194
  setCredentials = _useStateWithDependen2[1];
298
195
  var _useFetchTwilioPhoneN = useFetchTwilioPhoneNumbers({
@@ -353,7 +250,7 @@ var buildPhoneNumberOptions = function buildPhoneNumberOptions(phoneNumbers) {
353
250
  };
354
251
 
355
252
  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; }
356
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).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; }
253
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { defineProperty._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; }
357
254
  var Twilio = function Twilio(_ref) {
358
255
  var _ref$integrable = _ref.integrable,
359
256
  integrable = _ref$integrable === void 0 ? null : _ref$integrable,
@@ -363,8 +260,8 @@ var Twilio = function Twilio(_ref) {
363
260
  onConnect = _ref$onConnect === void 0 ? neetoCist.noop : _ref$onConnect;
364
261
  var _useTranslation = reactI18next.useTranslation(),
365
262
  t = _useTranslation.t;
366
- var initialFocusRef = react.useRef();
367
- var formRef = react.useRef();
263
+ var initialFocusRef = React.useRef();
264
+ var formRef = React.useRef();
368
265
  var _useTwilio = useTwilio({
369
266
  onConnect: onConnect,
370
267
  formRef: formRef,
@@ -386,7 +283,7 @@ var Twilio = function Twilio(_ref) {
386
283
  twilioPhoneNumber: selectedPhoneNumber
387
284
  }), values) || isLoading;
388
285
  };
389
- return /*#__PURE__*/jsxRuntime.jsx(FormikFormWrapper__default["default"], {
286
+ return /*#__PURE__*/jsxRuntime.jsx(FormikForm__default["default"], {
390
287
  className: "mx-auto flex w-full max-w-md flex-col p-5",
391
288
  formikProps: {
392
289
  enableReinitialize: true,
@@ -422,4 +319,4 @@ var Twilio = function Twilio(_ref) {
422
319
  };
423
320
 
424
321
  module.exports = Twilio;
425
- //# sourceMappingURL=Twilio.cjs.js.map
322
+ //# sourceMappingURL=Twilio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Twilio.js","sources":["../../app/javascript/src/components/Integrations/Twilio/Form.jsx","../../app/javascript/src/apis/twilio.js","../../app/javascript/src/hooks/reactQuery/useTwilioApi.js","../../app/javascript/src/components/Integrations/Twilio/hooks/useTwilio.js","../../app/javascript/src/components/Integrations/Twilio/utils.js","../../app/javascript/src/components/Integrations/Twilio/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nimport { Input, Select } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ConfigurationForm = ({\n phoneNumberOptions,\n selectedPhoneNumber = null,\n initialFocusRef = null,\n isUsingOverlay = false,\n formikProps = {},\n}) => {\n const { t } = useTranslation();\n const { setFieldValue, setValues, errors, values, initialValues } =\n formikProps;\n\n useEffect(() => {\n selectedPhoneNumber &&\n setFieldValue(\"twilioPhoneNumber\", selectedPhoneNumber);\n }, [selectedPhoneNumber, initialValues]);\n\n return (\n <div className=\"flex w-full flex-col gap-y-4\">\n <div className=\"flex w-full\">\n <Input\n required\n autoFocus={!isUsingOverlay}\n data-testid=\"integrations-twilio-sid\"\n label={t(\"neetoIntegrations.twilio.sid\")}\n name=\"twilioSid\"\n ref={initialFocusRef}\n />\n </div>\n <div className=\"flex w-full\">\n <Input\n required\n data-testid=\"integrations-twilio-auth-token\"\n label={t(\"neetoIntegrations.twilio.authToken\")}\n name=\"twilioAuthToken\"\n />\n </div>\n {phoneNumberOptions && (\n <div className=\"flex w-full\">\n <Select\n error={errors.twilioPhoneNumber?.value}\n label={t(\"neetoIntegrations.common.phNo\")}\n name=\"twilioPhoneNumber\"\n options={phoneNumberOptions}\n size=\"large\"\n onChange={selected =>\n setValues({ ...values, twilioPhoneNumber: selected })\n }\n />\n </div>\n )}\n </div>\n );\n};\n\nexport default ConfigurationForm;\n","import axios from \"axios\";\n\nimport { TWILIO_CONFIGURATION_BASE_URL } from \"src/constants/urls\";\n\nconst fetchTwilioSmsConfiguration = integrable =>\n axios.get(TWILIO_CONFIGURATION_BASE_URL, { params: integrable });\n\nconst removeTwilioConfiguration = () =>\n axios.delete(TWILIO_CONFIGURATION_BASE_URL);\n\nconst getTwilioPhoneNumbers = data =>\n axios.get(`${TWILIO_CONFIGURATION_BASE_URL}/new`, {\n params: data,\n });\n\nconst createTwilioConfiguration = (payload, integrable) =>\n axios.post(TWILIO_CONFIGURATION_BASE_URL, { ...payload, ...integrable });\n\nconst twilioApi = {\n fetchTwilioSmsConfiguration,\n removeTwilioConfiguration,\n getTwilioPhoneNumbers,\n createTwilioConfiguration,\n};\n\nexport default twilioApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { keysToSnakeCase } from \"neetocist\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { prop } from \"ramda\";\n\nimport twilioApi from \"apis/twilio\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchTwilioSmsConfiguration = ({ integrable }) =>\n useQuery({\n queryKey: [\n QUERY_KEYS.TWILIO_SMS_CONFIGURATION,\n integrable?.integrableType,\n integrable?.integrableId,\n ],\n queryFn: () => twilioApi.fetchTwilioSmsConfiguration(integrable),\n select: response => {\n const smsConfiguration = response.smsConfiguration;\n\n return {\n twilioSid: smsConfiguration?.twilioSid ?? \"\",\n twilioAuthToken: smsConfiguration?.twilioAuthToken ?? \"\",\n twilioPhoneNumber: smsConfiguration?.twilioPhoneNumber ?? \"\",\n };\n },\n });\n\nconst useFetchTwilioPhoneNumbers = ({ credentials, formRef }) =>\n useQuery({\n queryKey: [QUERY_KEYS.TWILIO_PHONE_NUMBERS, { credentials }],\n queryFn: () =>\n twilioApi.getTwilioPhoneNumbers(keysToSnakeCase(credentials)),\n enabled:\n !!credentials?.twilio_sid ||\n !!credentials?.twilioSid ||\n !!formRef?.current?.values?.twilioSid ||\n !!formRef?.current?.values?.twilioAuthToken,\n select: prop(\"phoneNumbers\"),\n retry: false,\n });\n\nconst useCreateTwilioConfiguration = ({ integrable }) =>\n useMutationWithInvalidation(\n payload => twilioApi.createTwilioConfiguration(payload, integrable),\n {\n keysToInvalidate: [\n [\n QUERY_KEYS.TWILIO_SMS_CONFIGURATION,\n integrable?.integrableType,\n integrable?.integrableId,\n ],\n ],\n }\n );\n\nexport {\n useCreateTwilioConfiguration,\n useFetchTwilioPhoneNumbers,\n useFetchTwilioSmsConfiguration,\n};\n","import { noop } from \"neetocist\";\nimport { useStateWithDependency } from \"neetocommons/react-utils\";\n\nimport {\n useFetchTwilioPhoneNumbers,\n useCreateTwilioConfiguration,\n useFetchTwilioSmsConfiguration,\n} from \"hooks/reactQuery/useTwilioApi\";\n\nconst useTwilio = ({ onConnect = noop, formRef = null, integrable = null }) => {\n const { data: configuration = {}, isLoading: isConfigurationLoading } =\n useFetchTwilioSmsConfiguration({ integrable });\n const [credentials, setCredentials] = useStateWithDependency(configuration);\n const { data: phoneNumbers, isLoading: isPhoneNumbersLoading } =\n useFetchTwilioPhoneNumbers({ credentials, formRef });\n\n const { mutate: saveConfiguration, isPending: isSubmitting } =\n useCreateTwilioConfiguration({ integrable });\n\n const handleSubmit = values => {\n const payload = {\n twilio_sid: values.twilioSid,\n twilio_auth_token: values.twilioAuthToken,\n twilio_phone_number_sid: values.twilioPhoneNumber?.value,\n };\n\n if (!phoneNumbers && !configuration?.twilioPhoneNumber) {\n setCredentials(payload);\n\n return;\n }\n\n saveConfiguration(payload, { onSuccess: onConnect });\n };\n\n return {\n handleSubmit,\n phoneNumbers,\n isConfigurationLoading,\n isPhoneNumbersLoading,\n isSubmitting,\n configuration,\n };\n};\n\nexport default useTwilio;\n","import i18next from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const buildTwilioConfigurationValidationSchema = isTwilioPhoneRequired =>\n yup.object().shape({\n twilioSid: yup\n .string()\n .required(i18next.t(\"neetoIntegrations.twilio.validations.sidReq\")),\n twilioAuthToken: yup\n .string()\n .required(i18next.t(\"neetoIntegrations.twilio.validations.authTokenReq\")),\n twilioPhoneNumber: isTwilioPhoneRequired\n ? yup.object().shape({\n label: yup.string(),\n value: yup\n .string()\n .required(\n i18next.t(\"neetoIntegrations.twilio.validations.phNumReq\")\n ),\n })\n : null,\n });\n\nexport const buildPhoneNumberOptions = phoneNumbers =>\n phoneNumbers?.map(({ phoneNumber, sid }) => ({\n label: phoneNumber,\n value: sid,\n }));\n","import { useRef } from \"react\";\n\nimport { noop, _findBy } from \"neetocist\";\nimport { ActionBlock, Form as FormikFormWrapper } from \"neetoui/formik\";\nimport { equals } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Form from \"./Form\";\nimport useTwilio from \"./hooks/useTwilio\";\nimport {\n buildPhoneNumberOptions,\n buildTwilioConfigurationValidationSchema,\n} from \"./utils\";\n\nconst Twilio = ({ integrable = null, onClose = noop, onConnect = noop }) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef();\n const formRef = useRef();\n\n const {\n handleSubmit,\n phoneNumbers,\n isConfigurationLoading,\n isPhoneNumbersLoading,\n isSubmitting,\n configuration,\n } = useTwilio({ onConnect, formRef, integrable });\n\n const phoneNumberOptions = buildPhoneNumberOptions(phoneNumbers);\n\n const selectedPhoneNumber = _findBy(\n { label: configuration?.twilioPhoneNumber },\n phoneNumberOptions\n );\n\n const isLoading = isPhoneNumbersLoading || isConfigurationLoading;\n\n const isSubmitDisabled = values =>\n equals(\n { ...configuration, twilioPhoneNumber: selectedPhoneNumber },\n values\n ) || isLoading;\n\n return (\n <FormikFormWrapper\n className=\"mx-auto flex w-full max-w-md flex-col p-5\"\n formikProps={{\n enableReinitialize: true,\n validationSchema: buildTwilioConfigurationValidationSchema(\n !!phoneNumbers\n ),\n initialValues: configuration,\n innerRef: formRef,\n onSubmit: handleSubmit,\n }}\n >\n {formikProps => (\n <>\n <Form\n {...{\n formikProps,\n initialFocusRef,\n phoneNumberOptions,\n selectedPhoneNumber,\n }}\n />\n <div className=\"mt-8\">\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{\n label: phoneNumberOptions\n ? t(\"neetoIntegrations.common.saveChanges\")\n : t(\"neetoIntegrations.common.verify\"),\n disabled: isSubmitDisabled(formikProps.values) || isSubmitting,\n loading:\n isSubmitting ||\n (isPhoneNumbersLoading && !configuration?.twilioAuthToken),\n }}\n />\n </div>\n </>\n )}\n </FormikFormWrapper>\n );\n};\n\nexport default Twilio;\n"],"names":["ConfigurationForm","_ref","_errors$twilioPhoneNu","phoneNumberOptions","_ref$selectedPhoneNum","selectedPhoneNumber","_ref$initialFocusRef","initialFocusRef","_ref$isUsingOverlay","isUsingOverlay","_ref$formikProps","formikProps","_useTranslation","useTranslation","t","setFieldValue","setValues","errors","values","initialValues","useEffect","_jsxs","className","children","_jsx","Input","required","autoFocus","label","name","ref","Select","error","twilioPhoneNumber","value","options","size","onChange","selected","_objectSpread","fetchTwilioSmsConfiguration","integrable","axios","get","TWILIO_CONFIGURATION_BASE_URL","params","removeTwilioConfiguration","getTwilioPhoneNumbers","data","concat","createTwilioConfiguration","payload","post","twilioApi","useFetchTwilioSmsConfiguration","useQuery","queryKey","QUERY_KEYS","TWILIO_SMS_CONFIGURATION","integrableType","integrableId","queryFn","select","response","_smsConfiguration$twi","_smsConfiguration$twi2","_smsConfiguration$twi3","smsConfiguration","twilioSid","twilioAuthToken","useFetchTwilioPhoneNumbers","_ref2","_formRef$current","_formRef$current2","credentials","formRef","TWILIO_PHONE_NUMBERS","keysToSnakeCase","enabled","twilio_sid","current","prop","retry","useCreateTwilioConfiguration","_ref3","useMutationWithInvalidation","keysToInvalidate","useTwilio","_ref$onConnect","onConnect","noop","_ref$formRef","_ref$integrable","_useFetchTwilioSmsCon","_useFetchTwilioSmsCon2","configuration","isConfigurationLoading","isLoading","_useStateWithDependen","useStateWithDependency","_useStateWithDependen2","_slicedToArray","setCredentials","_useFetchTwilioPhoneN","phoneNumbers","isPhoneNumbersLoading","_useCreateTwilioConfi","saveConfiguration","mutate","isSubmitting","isPending","handleSubmit","_values$twilioPhoneNu","twilio_auth_token","twilio_phone_number_sid","onSuccess","buildTwilioConfigurationValidationSchema","isTwilioPhoneRequired","yup","object","shape","string","i18next","buildPhoneNumberOptions","map","phoneNumber","sid","Twilio","_ref$onClose","onClose","useRef","_useTwilio","_findBy","isSubmitDisabled","equals","FormikFormWrapper","enableReinitialize","validationSchema","innerRef","onSubmit","_Fragment","Form","ActionBlock","cancelButtonProps","onClick","submitButtonProps","disabled","loading"],"mappings":"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"}