@bigbinary/neeto-integrations-frontend 2.5.2 → 2.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Twilio.cjs.js +22 -21
- package/dist/Twilio.cjs.js.map +1 -1
- package/dist/Twilio.js +22 -21
- package/dist/Twilio.js.map +1 -1
- package/dist/index.cjs.js +22 -21
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +22 -21
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/types.d.ts +1 -1
package/dist/Twilio.cjs.js
CHANGED
|
@@ -488,13 +488,15 @@ var useFetchTwilioSmsConfiguration = function useFetchTwilioSmsConfiguration() {
|
|
|
488
488
|
});
|
|
489
489
|
};
|
|
490
490
|
var useFetchTwilioPhoneNumbers = function useFetchTwilioPhoneNumbers(_ref) {
|
|
491
|
-
var
|
|
491
|
+
var _formRef$current, _formRef$current$valu, _formRef$current2, _formRef$current2$val;
|
|
492
|
+
var credentials = _ref.credentials,
|
|
493
|
+
formRef = _ref.formRef;
|
|
492
494
|
return reactQuery.useQuery([QUERY_KEYS.TWILIO_PHONE_NUMBERS, {
|
|
493
495
|
credentials: credentials
|
|
494
496
|
}], function () {
|
|
495
497
|
return twilioApi.getTwilioPhoneNumbers(neetoCist.keysToSnakeCase(credentials));
|
|
496
498
|
}, {
|
|
497
|
-
enabled: !!(credentials !== null && credentials !== void 0 && credentials.twilio_sid) || !!(credentials !== null && credentials !== void 0 && credentials.twilioSid),
|
|
499
|
+
enabled: !!(credentials !== null && credentials !== void 0 && credentials.twilio_sid) || !!(credentials !== null && credentials !== void 0 && credentials.twilioSid) || !!(formRef !== null && formRef !== void 0 && (_formRef$current = formRef.current) !== null && _formRef$current !== void 0 && (_formRef$current$valu = _formRef$current.values) !== null && _formRef$current$valu !== void 0 && _formRef$current$valu.twilioSid) || !!(formRef !== null && formRef !== void 0 && (_formRef$current2 = formRef.current) !== null && _formRef$current2 !== void 0 && (_formRef$current2$val = _formRef$current2.values) !== null && _formRef$current2$val !== void 0 && _formRef$current2$val.twilioAuthToken),
|
|
498
500
|
select: ramda.prop("phoneNumbers"),
|
|
499
501
|
retry: false
|
|
500
502
|
});
|
|
@@ -512,8 +514,10 @@ var useTwilio = function useTwilio(_ref) {
|
|
|
512
514
|
onSave = _ref$onSave === void 0 ? neetoCist.noop : _ref$onSave,
|
|
513
515
|
_ref$setSteps = _ref.setSteps,
|
|
514
516
|
setSteps = _ref$setSteps === void 0 ? neetoCist.noop : _ref$setSteps,
|
|
515
|
-
_ref$
|
|
516
|
-
|
|
517
|
+
_ref$onConnect = _ref.onConnect,
|
|
518
|
+
onConnect = _ref$onConnect === void 0 ? neetoCist.noop : _ref$onConnect,
|
|
519
|
+
_ref$formRef = _ref.formRef,
|
|
520
|
+
formRef = _ref$formRef === void 0 ? null : _ref$formRef;
|
|
517
521
|
var _useFetchTwilioSmsCon = useFetchTwilioSmsConfiguration(),
|
|
518
522
|
configuration = _useFetchTwilioSmsCon.data,
|
|
519
523
|
isConfigurationLoading = _useFetchTwilioSmsCon.isLoading,
|
|
@@ -523,20 +527,14 @@ var useTwilio = function useTwilio(_ref) {
|
|
|
523
527
|
credentials = _useStateWithDependen2[0],
|
|
524
528
|
setCredentials = _useStateWithDependen2[1];
|
|
525
529
|
var _useFetchTwilioPhoneN = useFetchTwilioPhoneNumbers({
|
|
526
|
-
credentials: credentials
|
|
530
|
+
credentials: credentials,
|
|
531
|
+
formRef: formRef
|
|
527
532
|
}),
|
|
528
533
|
phoneNumbers = _useFetchTwilioPhoneN.data,
|
|
529
534
|
isPhoneNumbersLoading = _useFetchTwilioPhoneN.isLoading;
|
|
530
535
|
var _useCreateTwilioConfi = useCreateTwilioConfiguration(),
|
|
531
536
|
saveConfiguration = _useCreateTwilioConfi.mutate,
|
|
532
537
|
isSubmitting = _useCreateTwilioConfi.isLoading;
|
|
533
|
-
var _useConnect = useConnect(),
|
|
534
|
-
installIntegration = _useConnect.mutate;
|
|
535
|
-
var connectTwilioApp = function connectTwilioApp() {
|
|
536
|
-
return installIntegration({
|
|
537
|
-
id: "twilio"
|
|
538
|
-
}, {});
|
|
539
|
-
};
|
|
540
538
|
React.useEffect(function () {
|
|
541
539
|
if (!(configuration !== null && configuration !== void 0 && configuration.twilioPhoneNumber)) return;
|
|
542
540
|
setSteps(function (steps) {
|
|
@@ -561,8 +559,8 @@ var useTwilio = function useTwilio(_ref) {
|
|
|
561
559
|
saveConfiguration(payload, {
|
|
562
560
|
onSuccess: function onSuccess() {
|
|
563
561
|
onSave();
|
|
564
|
-
connectTwilioApp();
|
|
565
562
|
refetchTwilioSmsConfiguration();
|
|
563
|
+
onConnect === null || onConnect === void 0 ? void 0 : onConnect();
|
|
566
564
|
}
|
|
567
565
|
});
|
|
568
566
|
};
|
|
@@ -596,17 +594,19 @@ var TwilioConfiguration = function TwilioConfiguration(_ref) {
|
|
|
596
594
|
onSave = _ref$onSave === void 0 ? neetoCist.noop : _ref$onSave,
|
|
597
595
|
_ref$setSteps = _ref.setSteps,
|
|
598
596
|
setSteps = _ref$setSteps === void 0 ? neetoCist.noop : _ref$setSteps,
|
|
599
|
-
_ref$
|
|
600
|
-
|
|
597
|
+
_ref$onConnect = _ref.onConnect,
|
|
598
|
+
onConnect = _ref$onConnect === void 0 ? neetoCist.noop : _ref$onConnect,
|
|
601
599
|
_ref$isModal = _ref.isModal,
|
|
602
600
|
isModal = _ref$isModal === void 0 ? false : _ref$isModal;
|
|
603
601
|
var _useTranslation = reactI18next.useTranslation(),
|
|
604
602
|
t = _useTranslation.t;
|
|
605
603
|
var initialFocusRef = React.useRef();
|
|
604
|
+
var formRef = React.useRef();
|
|
606
605
|
var _useTwilio = useTwilio({
|
|
607
606
|
onSave: onSave,
|
|
608
607
|
setSteps: setSteps,
|
|
609
|
-
|
|
608
|
+
onConnect: onConnect,
|
|
609
|
+
formRef: formRef
|
|
610
610
|
}),
|
|
611
611
|
handleSubmit = _useTwilio.handleSubmit,
|
|
612
612
|
phoneNumbers = _useTwilio.phoneNumbers,
|
|
@@ -647,7 +647,7 @@ var TwilioConfiguration = function TwilioConfiguration(_ref) {
|
|
|
647
647
|
submitButtonProps: {
|
|
648
648
|
label: phoneNumberOptions ? t("neetoIntegrations.common.saveChanges") : t("neetoIntegrations.common.verify"),
|
|
649
649
|
disabled: isSubmitDisabled(values),
|
|
650
|
-
loading: isSubmitting || isPhoneNumbersLoading && !configuration.twilioAuthToken
|
|
650
|
+
loading: isSubmitting || isPhoneNumbersLoading && !(configuration !== null && configuration !== void 0 && configuration.twilioAuthToken)
|
|
651
651
|
}
|
|
652
652
|
});
|
|
653
653
|
};
|
|
@@ -666,6 +666,7 @@ var TwilioConfiguration = function TwilioConfiguration(_ref) {
|
|
|
666
666
|
enableReinitialize: true,
|
|
667
667
|
validationSchema: buildTwilioConfigurationValidationSchema(!!phoneNumbers),
|
|
668
668
|
initialValues: configuration,
|
|
669
|
+
innerRef: formRef,
|
|
669
670
|
onSubmit: handleSubmit
|
|
670
671
|
}
|
|
671
672
|
}, function (formikProps) {
|
|
@@ -678,8 +679,8 @@ var TwilioConfiguration = function TwilioConfiguration(_ref) {
|
|
|
678
679
|
var Twilio = function Twilio(_ref) {
|
|
679
680
|
var _ref$onClose = _ref.onClose,
|
|
680
681
|
onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
|
|
681
|
-
_ref$
|
|
682
|
-
|
|
682
|
+
_ref$onConnect = _ref.onConnect,
|
|
683
|
+
onConnect = _ref$onConnect === void 0 ? neetoCist.noop : _ref$onConnect;
|
|
683
684
|
var _useState = React.useState(TWILIO_INTEGRATION_STEPS),
|
|
684
685
|
_useState2 = _slicedToArray(_useState, 2),
|
|
685
686
|
steps = _useState2[0],
|
|
@@ -691,8 +692,8 @@ var Twilio = function Twilio(_ref) {
|
|
|
691
692
|
}, /*#__PURE__*/React__default["default"].createElement(TwilioConfiguration, {
|
|
692
693
|
isModal: true,
|
|
693
694
|
setSteps: setSteps,
|
|
694
|
-
|
|
695
|
-
|
|
695
|
+
onCancel: onClose,
|
|
696
|
+
onConnect: onConnect
|
|
696
697
|
}));
|
|
697
698
|
};
|
|
698
699
|
|
package/dist/Twilio.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Twilio.cjs.js","sources":["../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/components/Modal/Stepper.jsx","../src/components/Modal/index.jsx","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../src/components/Steps/Connect.jsx","../src/components/Steps/Demo.jsx","../src/components/Steps/Finish.jsx","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../src/components/Integrations/Twilio/constants.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../src/components/Integrations/Twilio/TwilioConfiguration/Form.jsx","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../src/constants/urls.js","../src/apis/twilio.js","../src/constants/query.js","../src/hooks/reactQuery/useTwilioApi.js","../src/components/Integrations/Twilio/TwilioConfiguration/hooks/useTwilio.js","../src/components/Integrations/Twilio/TwilioConfiguration/utils.js","../src/components/Integrations/Twilio/TwilioConfiguration/index.jsx","../src/components/Integrations/Twilio/index.jsx"],"sourcesContent":["export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import React from \"react\";\n\nimport 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 React from \"react\";\n\nimport { 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 className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-transform-none w-screen overflow-y-auto\"\n isOpen={isOpen}\n size=\"fullScreen\"\n onClose={onClose}\n >\n <NeetoUIModal.Header>\n <Stepper steps={steps} />\n </NeetoUIModal.Header>\n <NeetoUIModal.Body className=\"neeto-ui-flex neeto-ui-justify-center neeto-ui-items-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","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Typography, Button } from \"neetoui\";\nimport { PropTypes } from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Connect = ({\n Icon,\n title = \"\",\n description = \"\",\n buttonProps = {},\n onConnect = noop,\n children,\n}) => {\n const { t } = useTranslation();\n\n return (\n <div className=\"mx-auto w-full max-w-lg\">\n <Icon size={48} />\n <Typography\n className=\"neeto-ui-text-gray-800 mb-0.5 mt-6\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-700 mb-8\"\n style=\"body1\"\n weight=\"normal\"\n >\n {description}\n </Typography>\n {children}\n <Button\n label={t(\"neetoIntegrations.common.connect\")}\n onClick={onConnect}\n {...buttonProps}\n />\n </div>\n );\n};\n\nConnect.prototypes = {\n /**\n * To specify the Icon to be shown\n */\n Icon: PropTypes.node,\n /**\n * To specify the title of the connect component\n */\n title: PropTypes.string,\n /**\n * To specify the description for connect component\n */\n description: PropTypes.string,\n /**\n * To specify the props for the connect button\n */\n buttonProps: PropTypes.object,\n /**\n * Handler function that is triggered when the connect button is clicked.\n */\n onConnect: PropTypes.func,\n};\n\nexport default Connect;\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Typography, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isYouTubeLink, renderText } from \"./utils\";\n\nconst Demo = ({\n title = \"\",\n subtitle = \"\",\n iframeTitle = \"\",\n onClose = noop,\n videoUrl = \"\",\n children,\n}) => {\n const { t } = useTranslation();\n\n const renderVideo = videoUrl =>\n isYouTubeLink(videoUrl) ? (\n <div className=\"intrinsic-container intrinsic-container-16x9\">\n <iframe\n allowFullScreen\n className=\"border-none\"\n frameBorder=\"0\"\n id=\"ytplayer\"\n src={videoUrl}\n type=\"text/html\"\n title={renderText(\n iframeTitle,\n t(\"neetoIntegrations.demo.iFrameTitle\")\n )}\n />\n </div>\n ) : (\n <video\n autoPlay\n controls\n muted\n className=\"max-w-3xl cursor-pointer md:max-w-xl\"\n id=\"walkthrough-video\"\n >\n <source src={videoUrl} />\n </video>\n );\n\n return (\n <div className=\"mx-auto max-w-3xl md:max-w-xl\">\n <Typography\n className=\"neeto-ui-text-gray-800 mt-4 py-2\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {renderText(title, t(\"neetoIntegrations.demo.title\"))}\n </Typography>\n <Typography style=\"body2\" weight=\"light\">\n {renderText(subtitle, t(\"neetoIntegrations.demo.subtitle\"))}\n </Typography>\n {children}\n {videoUrl && <div className=\"py-10\">{renderVideo(videoUrl)}</div>}\n <div className=\"flex w-full items-start space-x-2\">\n <Button\n label={t(\"neetoIntegrations.common.finish\")}\n onClick={onClose}\n />\n </div>\n </div>\n );\n};\n\nDemo.prototypes = {\n /**\n * To specify whether the integration modal should be opened or closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the walkthrough video link\n */\n videoUrl: PropTypes.string,\n /**\n * To specify the title of the demo component\n */\n title: PropTypes.string,\n /**\n * To specify the subtitle of the demo component\n */\n subtitle: PropTypes.string,\n /**\n * To specify the title of the video in the iframe\n */\n iframeTitle: PropTypes.string,\n};\n\nexport default Demo;\n","import React from \"react\";\n\nimport { isNotEmpty, noop } from \"neetocist\";\nimport { Typography, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SuccessIcon from \"assets/images/success\";\n\nconst Finish = ({\n onClick = noop,\n title = \"\",\n buttonProps = {},\n secondaryButtonProps = {},\n children,\n}) => {\n const { t } = useTranslation();\n\n return (\n <div className=\"neeto-ui-w-full mx-auto max-w-lg\">\n <SuccessIcon />\n <Typography\n className=\"neeto-ui-text-gray-800 mb-8 mt-4\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n {children}\n <div className=\"flex w-full items-start space-x-2\">\n <Button\n label={t(\"neetoIntegrations.common.continue\")}\n onClick={onClick}\n {...buttonProps}\n />\n {isNotEmpty(secondaryButtonProps) && (\n <Button style=\"secondary\" {...secondaryButtonProps} />\n )}\n </div>\n </div>\n );\n};\n\nFinish.prototypes = {\n /**\n * To specify whether the integration modal should be opened or closed.\n */\n onClick: PropTypes.func,\n /**\n * To show the title of the Finish component\n */\n title: PropTypes.string,\n /**\n * To specify props for primary button\n */\n buttonProps: PropTypes.object,\n /**\n * To specify props for secondary button\n */\n secondaryButtonProps: PropTypes.object,\n};\n\nexport default Finish;\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import i18next from \"i18next\";\n\nexport const TWILIO_INTEGRATION_STEPS = [\n {\n step: \"1\",\n label: i18next.t(\"neetoIntegrations.steps.configure\"),\n isActive: true,\n isCompleted: false,\n },\n];\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import React, { 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-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 arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","export const TWILIO_CONFIGURATION_BASE_URL =\n \"/neeto_integrations/twilio/sms_configurations\";\n","import axios from \"axios\";\n\nimport { TWILIO_CONFIGURATION_BASE_URL } from \"src/constants/urls\";\n\nconst twilioApi = {\n fetchTwilioSmsConfiguration: () => axios.get(TWILIO_CONFIGURATION_BASE_URL),\n removeTwilioConfiguration: () => axios.delete(TWILIO_CONFIGURATION_BASE_URL),\n getTwilioPhoneNumbers: data =>\n axios.get(`${TWILIO_CONFIGURATION_BASE_URL}/new`, {\n params: data,\n }),\n createTwilioConfiguration: payload =>\n axios.post(TWILIO_CONFIGURATION_BASE_URL, payload),\n};\n\nexport default twilioApi;\n","export const QUERY_KEYS = {\n TWILIO_SMS_CONFIGURATION: \"twilio-sms-configuration\",\n TWILIO_PHONE_NUMBERS: \"twilio-phone-numbers\",\n};\n","import { keysToSnakeCase } from \"neetocist\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { prop } from \"ramda\";\nimport { useQuery } from \"react-query\";\n\nimport twilioApi from \"apis/twilio\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchTwilioSmsConfiguration = () =>\n useQuery(\n QUERY_KEYS.TWILIO_SMS_CONFIGURATION,\n twilioApi.fetchTwilioSmsConfiguration,\n {\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 );\n\nconst useFetchTwilioPhoneNumbers = ({ credentials }) =>\n useQuery(\n [QUERY_KEYS.TWILIO_PHONE_NUMBERS, { credentials }],\n () => twilioApi.getTwilioPhoneNumbers(keysToSnakeCase(credentials)),\n {\n enabled: !!credentials?.twilio_sid || !!credentials?.twilioSid,\n select: prop(\"phoneNumbers\"),\n retry: false,\n }\n );\n\nconst useCreateTwilioConfiguration = () =>\n useMutationWithInvalidation(twilioApi.createTwilioConfiguration, {\n keysToInvalidate: [QUERY_KEYS.TWILIO_SMS_CONFIGURATION],\n });\n\nexport {\n useCreateTwilioConfiguration,\n useFetchTwilioPhoneNumbers,\n useFetchTwilioSmsConfiguration,\n};\n","import { useEffect } from \"react\";\n\nimport { 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 = ({ onSave = noop, setSteps = noop, useConnect = noop }) => {\n const {\n data: configuration,\n isLoading: isConfigurationLoading,\n refetch: refetchTwilioSmsConfiguration,\n } = useFetchTwilioSmsConfiguration();\n const [credentials, setCredentials] = useStateWithDependency(configuration);\n const { data: phoneNumbers, isLoading: isPhoneNumbersLoading } =\n useFetchTwilioPhoneNumbers({ credentials });\n\n const { mutate: saveConfiguration, isLoading: isSubmitting } =\n useCreateTwilioConfiguration();\n\n const { mutate: installIntegration } = useConnect();\n const connectTwilioApp = () => installIntegration({ id: \"twilio\" }, {});\n\n useEffect(() => {\n if (!configuration?.twilioPhoneNumber) return;\n setSteps(steps => {\n const stepsClone = [...steps];\n stepsClone[0] = { ...steps[0], isCompleted: true };\n\n return stepsClone;\n });\n }, [configuration]);\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, {\n onSuccess: () => {\n onSave();\n connectTwilioApp();\n refetchTwilioSmsConfiguration();\n },\n });\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","import React, { useRef } from \"react\";\n\nimport { noop, _findBy } from \"neetocist\";\nimport { Modal } from \"neetoui\";\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 { buildTwilioConfigurationValidationSchema } from \"./utils\";\n\nconst TwilioConfiguration = ({\n onCancel = noop,\n onSave = noop,\n setSteps = noop,\n useConnect = noop,\n isModal = false,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef();\n const {\n handleSubmit,\n phoneNumbers,\n isConfigurationLoading,\n isPhoneNumbersLoading,\n isSubmitting,\n configuration,\n } = useTwilio({ onSave, setSteps, useConnect });\n\n const phoneNumberOptions = phoneNumbers?.map(({ phoneNumber, sid }) => ({\n label: phoneNumber,\n value: sid,\n }));\n\n const selectedPhoneNumber = _findBy(\n { label: configuration?.twilioPhoneNumber },\n phoneNumberOptions\n );\n\n const wrapInModalBody = children => <Modal.Body>{children}</Modal.Body>;\n const wrapInModalFooter = children => <Modal.Footer>{children}</Modal.Footer>;\n const isLoading = isPhoneNumbersLoading || isConfigurationLoading;\n\n const isSubmitDisabled = values =>\n equals(\n { ...configuration, twilioPhoneNumber: selectedPhoneNumber },\n values\n ) || isLoading;\n\n const renderActionBlock = values => (\n <ActionBlock\n cancelButtonProps={{ onClick: onCancel, disabled: false }}\n className=\"space-x-3\"\n submitButtonProps={{\n label: phoneNumberOptions\n ? t(\"neetoIntegrations.common.saveChanges\")\n : t(\"neetoIntegrations.common.verify\"),\n disabled: isSubmitDisabled(values),\n loading:\n isSubmitting ||\n (isPhoneNumbersLoading && !configuration.twilioAuthToken),\n }}\n />\n );\n\n const renderForm = formikProps => (\n <Form\n formikProps={formikProps}\n initialFocusRef={initialFocusRef}\n isUsingOverlay={isModal}\n phoneNumberOptions={phoneNumberOptions}\n selectedPhoneNumber={selectedPhoneNumber}\n />\n );\n\n return (\n <FormikFormWrapper\n className=\"mx-auto flex w-full max-w-md flex-col\"\n formikProps={{\n enableReinitialize: true,\n validationSchema: buildTwilioConfigurationValidationSchema(\n !!phoneNumbers\n ),\n initialValues: configuration,\n onSubmit: handleSubmit,\n }}\n >\n {formikProps =>\n isModal ? (\n <>\n {wrapInModalBody(renderForm(formikProps))}\n {wrapInModalFooter(renderActionBlock(formikProps.values))}\n </>\n ) : (\n <>\n renderForm(formikProps)\n <div className=\"mt-4 flex items-center gap-x-2\">\n {renderActionBlock(formikProps.values)}\n </div>\n </>\n )\n }\n </FormikFormWrapper>\n );\n};\n\nexport default TwilioConfiguration;\n","import React, { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\n\nimport { Modal } from \"index\";\n\nimport { TWILIO_INTEGRATION_STEPS } from \"./constants\";\nimport TwilioConfiguration from \"./TwilioConfiguration\";\n\nconst Twilio = ({ onClose = noop, useConnect = noop }) => {\n const [steps, setSteps] = useState(TWILIO_INTEGRATION_STEPS);\n\n return (\n <Modal isOpen steps={steps} onClose={onClose}>\n <TwilioConfiguration\n isModal\n setSteps={setSteps}\n useConnect={useConnect}\n onCancel={onClose}\n />\n </Modal>\n );\n};\n\nexport default Twilio;\n"],"names":["_arrayWithHoles","arr","Array","isArray","_iterableToArrayLimit","i","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","call","next","Object","done","push","value","length","err","_arrayLikeToArray","len","arr2","_unsupportedIterableToArray","o","minLen","arrayLikeToArray","n","prototype","toString","slice","constructor","name","from","test","_nonIterableRest","TypeError","_slicedToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","Stepper","_ref","_ref$steps","steps","isActiveOrCompleted","activeStatus","completedStatus","React","createElement","className","map","_ref2","step","label","isActive","isCompleted","key","classnames","Typography","component","style","weight","Modal","_ref$isOpen","isOpen","noop","_ref$onClose","onClose","children","NeetoUIModal","size","Header","Body","ReactPropTypesSecret","ReactPropTypesSecret_1","require$$0","emptyFunction","emptyFunctionWithReset","resetWarningCache","factoryWithThrowingShims","shim","props","propName","componentName","location","propFullName","secret","Error","isRequired","getShim","ReactPropTypes","array","bigint","bool","func","number","object","string","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","propTypesModule","exports","Icon","title","description","buttonProps","onConnect","videoUrl","subtitle","iframeTitle","onClick","secondaryButtonProps","e","t","r","document","a","s","prepend","d","singleTag","container","querySelector","getElementsByTagName","u","indexOf","c","charCodeAt","substring","styleSheet","cssText","appendChild","createTextNode","setAttribute","attributes","keys","insertAdjacentElement","TWILIO_INTEGRATION_STEPS","i18next","_typeof","obj","_toPrimitive","input","hint","prim","toPrimitive","undefined","res","String","Number","_toPropertyKey","arg","_defineProperty","toPropertyKey","defineProperty","enumerable","configurable","writable","ConfigurationForm","_errors$twilioPhoneNu","phoneNumberOptions","_ref$selectedPhoneNum","selectedPhoneNumber","_ref$initialFocusRef","initialFocusRef","_ref$isUsingOverlay","isUsingOverlay","_ref$formikProps","formikProps","_useTranslation","useTranslation","setFieldValue","setValues","errors","values","initialValues","useEffect","Input","required","autoFocus","ref","Select","error","twilioPhoneNumber","options","onChange","selected","_objectSpread","_arrayWithoutHoles","_iterableToArray","iter","_nonIterableSpread","_toConsumableArray","arrayWithoutHoles","iterableToArray","nonIterableSpread","TWILIO_CONFIGURATION_BASE_URL","twilioApi","fetchTwilioSmsConfiguration","axios","get","removeTwilioConfiguration","getTwilioPhoneNumbers","data","concat","params","createTwilioConfiguration","payload","post","QUERY_KEYS","TWILIO_SMS_CONFIGURATION","TWILIO_PHONE_NUMBERS","useFetchTwilioSmsConfiguration","useQuery","select","response","_smsConfiguration$twi","_smsConfiguration$twi2","_smsConfiguration$twi3","smsConfiguration","twilioSid","twilioAuthToken","useFetchTwilioPhoneNumbers","credentials","keysToSnakeCase","enabled","twilio_sid","prop","retry","useCreateTwilioConfiguration","useMutationWithInvalidation","keysToInvalidate","useTwilio","_ref$onSave","onSave","_ref$setSteps","setSteps","_ref$useConnect","useConnect","_useFetchTwilioSmsCon","configuration","isConfigurationLoading","isLoading","refetchTwilioSmsConfiguration","refetch","_useStateWithDependen","useStateWithDependency","_useStateWithDependen2","setCredentials","_useFetchTwilioPhoneN","phoneNumbers","isPhoneNumbersLoading","_useCreateTwilioConfi","saveConfiguration","mutate","isSubmitting","_useConnect","installIntegration","connectTwilioApp","id","stepsClone","handleSubmit","_values$twilioPhoneNu","twilio_auth_token","twilio_phone_number_sid","onSuccess","buildTwilioConfigurationValidationSchema","isTwilioPhoneRequired","yup","TwilioConfiguration","_ref$onCancel","onCancel","_ref$isModal","isModal","useRef","_useTwilio","phoneNumber","sid","_findBy","wrapInModalBody","wrapInModalFooter","Footer","isSubmitDisabled","equals","renderActionBlock","ActionBlock","cancelButtonProps","disabled","submitButtonProps","loading","renderForm","Form","FormikFormWrapper","enableReinitialize","validationSchema","onSubmit","Fragment","Twilio","_useState","useState","_useState2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Twilio.cjs.js","sources":["../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/components/Modal/Stepper.jsx","../src/components/Modal/index.jsx","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../src/components/Steps/Connect.jsx","../src/components/Steps/Demo.jsx","../src/components/Steps/Finish.jsx","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../src/components/Integrations/Twilio/constants.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../src/components/Integrations/Twilio/TwilioConfiguration/Form.jsx","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../src/constants/urls.js","../src/apis/twilio.js","../src/constants/query.js","../src/hooks/reactQuery/useTwilioApi.js","../src/components/Integrations/Twilio/TwilioConfiguration/hooks/useTwilio.js","../src/components/Integrations/Twilio/TwilioConfiguration/utils.js","../src/components/Integrations/Twilio/TwilioConfiguration/index.jsx","../src/components/Integrations/Twilio/index.jsx"],"sourcesContent":["export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import React from \"react\";\n\nimport 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 React from \"react\";\n\nimport { 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 className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-transform-none w-screen overflow-y-auto\"\n isOpen={isOpen}\n size=\"fullScreen\"\n onClose={onClose}\n >\n <NeetoUIModal.Header>\n <Stepper steps={steps} />\n </NeetoUIModal.Header>\n <NeetoUIModal.Body className=\"neeto-ui-flex neeto-ui-justify-center neeto-ui-items-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","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Typography, Button } from \"neetoui\";\nimport { PropTypes } from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Connect = ({\n Icon,\n title = \"\",\n description = \"\",\n buttonProps = {},\n onConnect = noop,\n children,\n}) => {\n const { t } = useTranslation();\n\n return (\n <div className=\"mx-auto w-full max-w-lg\">\n <Icon size={48} />\n <Typography\n className=\"neeto-ui-text-gray-800 mb-0.5 mt-6\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-700 mb-8\"\n style=\"body1\"\n weight=\"normal\"\n >\n {description}\n </Typography>\n {children}\n <Button\n label={t(\"neetoIntegrations.common.connect\")}\n onClick={onConnect}\n {...buttonProps}\n />\n </div>\n );\n};\n\nConnect.prototypes = {\n /**\n * To specify the Icon to be shown\n */\n Icon: PropTypes.node,\n /**\n * To specify the title of the connect component\n */\n title: PropTypes.string,\n /**\n * To specify the description for connect component\n */\n description: PropTypes.string,\n /**\n * To specify the props for the connect button\n */\n buttonProps: PropTypes.object,\n /**\n * Handler function that is triggered when the connect button is clicked.\n */\n onConnect: PropTypes.func,\n};\n\nexport default Connect;\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Typography, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isYouTubeLink, renderText } from \"./utils\";\n\nconst Demo = ({\n title = \"\",\n subtitle = \"\",\n iframeTitle = \"\",\n onClose = noop,\n videoUrl = \"\",\n children,\n}) => {\n const { t } = useTranslation();\n\n const renderVideo = videoUrl =>\n isYouTubeLink(videoUrl) ? (\n <div className=\"intrinsic-container intrinsic-container-16x9\">\n <iframe\n allowFullScreen\n className=\"border-none\"\n frameBorder=\"0\"\n id=\"ytplayer\"\n src={videoUrl}\n type=\"text/html\"\n title={renderText(\n iframeTitle,\n t(\"neetoIntegrations.demo.iFrameTitle\")\n )}\n />\n </div>\n ) : (\n <video\n autoPlay\n controls\n muted\n className=\"max-w-3xl cursor-pointer md:max-w-xl\"\n id=\"walkthrough-video\"\n >\n <source src={videoUrl} />\n </video>\n );\n\n return (\n <div className=\"mx-auto max-w-3xl md:max-w-xl\">\n <Typography\n className=\"neeto-ui-text-gray-800 mt-4 py-2\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {renderText(title, t(\"neetoIntegrations.demo.title\"))}\n </Typography>\n <Typography style=\"body2\" weight=\"light\">\n {renderText(subtitle, t(\"neetoIntegrations.demo.subtitle\"))}\n </Typography>\n {children}\n {videoUrl && <div className=\"py-10\">{renderVideo(videoUrl)}</div>}\n <div className=\"flex w-full items-start space-x-2\">\n <Button\n label={t(\"neetoIntegrations.common.finish\")}\n onClick={onClose}\n />\n </div>\n </div>\n );\n};\n\nDemo.prototypes = {\n /**\n * To specify whether the integration modal should be opened or closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the walkthrough video link\n */\n videoUrl: PropTypes.string,\n /**\n * To specify the title of the demo component\n */\n title: PropTypes.string,\n /**\n * To specify the subtitle of the demo component\n */\n subtitle: PropTypes.string,\n /**\n * To specify the title of the video in the iframe\n */\n iframeTitle: PropTypes.string,\n};\n\nexport default Demo;\n","import React from \"react\";\n\nimport { isNotEmpty, noop } from \"neetocist\";\nimport { Typography, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SuccessIcon from \"assets/images/success\";\n\nconst Finish = ({\n onClick = noop,\n title = \"\",\n buttonProps = {},\n secondaryButtonProps = {},\n children,\n}) => {\n const { t } = useTranslation();\n\n return (\n <div className=\"neeto-ui-w-full mx-auto max-w-lg\">\n <SuccessIcon />\n <Typography\n className=\"neeto-ui-text-gray-800 mb-8 mt-4\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n {children}\n <div className=\"flex w-full items-start space-x-2\">\n <Button\n label={t(\"neetoIntegrations.common.continue\")}\n onClick={onClick}\n {...buttonProps}\n />\n {isNotEmpty(secondaryButtonProps) && (\n <Button style=\"secondary\" {...secondaryButtonProps} />\n )}\n </div>\n </div>\n );\n};\n\nFinish.prototypes = {\n /**\n * To specify whether the integration modal should be opened or closed.\n */\n onClick: PropTypes.func,\n /**\n * To show the title of the Finish component\n */\n title: PropTypes.string,\n /**\n * To specify props for primary button\n */\n buttonProps: PropTypes.object,\n /**\n * To specify props for secondary button\n */\n secondaryButtonProps: PropTypes.object,\n};\n\nexport default Finish;\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import i18next from \"i18next\";\n\nexport const TWILIO_INTEGRATION_STEPS = [\n {\n step: \"1\",\n label: i18next.t(\"neetoIntegrations.steps.configure\"),\n isActive: true,\n isCompleted: false,\n },\n];\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import React, { 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-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 arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","export const TWILIO_CONFIGURATION_BASE_URL =\n \"/neeto_integrations/twilio/sms_configurations\";\n","import axios from \"axios\";\n\nimport { TWILIO_CONFIGURATION_BASE_URL } from \"src/constants/urls\";\n\nconst twilioApi = {\n fetchTwilioSmsConfiguration: () => axios.get(TWILIO_CONFIGURATION_BASE_URL),\n removeTwilioConfiguration: () => axios.delete(TWILIO_CONFIGURATION_BASE_URL),\n getTwilioPhoneNumbers: data =>\n axios.get(`${TWILIO_CONFIGURATION_BASE_URL}/new`, {\n params: data,\n }),\n createTwilioConfiguration: payload =>\n axios.post(TWILIO_CONFIGURATION_BASE_URL, payload),\n};\n\nexport default twilioApi;\n","export const QUERY_KEYS = {\n TWILIO_SMS_CONFIGURATION: \"twilio-sms-configuration\",\n TWILIO_PHONE_NUMBERS: \"twilio-phone-numbers\",\n};\n","import { keysToSnakeCase } from \"neetocist\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { prop } from \"ramda\";\nimport { useQuery } from \"react-query\";\n\nimport twilioApi from \"apis/twilio\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nconst useFetchTwilioSmsConfiguration = () =>\n useQuery(\n QUERY_KEYS.TWILIO_SMS_CONFIGURATION,\n twilioApi.fetchTwilioSmsConfiguration,\n {\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 );\n\nconst useFetchTwilioPhoneNumbers = ({ credentials, formRef }) =>\n useQuery(\n [QUERY_KEYS.TWILIO_PHONE_NUMBERS, { credentials }],\n () => twilioApi.getTwilioPhoneNumbers(keysToSnakeCase(credentials)),\n {\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 );\n\nconst useCreateTwilioConfiguration = () =>\n useMutationWithInvalidation(twilioApi.createTwilioConfiguration, {\n keysToInvalidate: [QUERY_KEYS.TWILIO_SMS_CONFIGURATION],\n });\n\nexport {\n useCreateTwilioConfiguration,\n useFetchTwilioPhoneNumbers,\n useFetchTwilioSmsConfiguration,\n};\n","import { useEffect } from \"react\";\n\nimport { 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 = ({\n onSave = noop,\n setSteps = noop,\n onConnect = noop,\n formRef = null,\n}) => {\n const {\n data: configuration,\n isLoading: isConfigurationLoading,\n refetch: refetchTwilioSmsConfiguration,\n } = useFetchTwilioSmsConfiguration();\n const [credentials, setCredentials] = useStateWithDependency(configuration);\n const { data: phoneNumbers, isLoading: isPhoneNumbersLoading } =\n useFetchTwilioPhoneNumbers({ credentials, formRef });\n\n const { mutate: saveConfiguration, isLoading: isSubmitting } =\n useCreateTwilioConfiguration();\n\n useEffect(() => {\n if (!configuration?.twilioPhoneNumber) return;\n setSteps(steps => {\n const stepsClone = [...steps];\n stepsClone[0] = { ...steps[0], isCompleted: true };\n\n return stepsClone;\n });\n }, [configuration]);\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, {\n onSuccess: () => {\n onSave();\n refetchTwilioSmsConfiguration();\n onConnect?.();\n },\n });\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","import React, { useRef } from \"react\";\n\nimport { noop, _findBy } from \"neetocist\";\nimport { Modal } from \"neetoui\";\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 { buildTwilioConfigurationValidationSchema } from \"./utils\";\n\nconst TwilioConfiguration = ({\n onCancel = noop,\n onSave = noop,\n setSteps = noop,\n onConnect = noop,\n isModal = false,\n}) => {\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({ onSave, setSteps, onConnect, formRef });\n\n const phoneNumberOptions = phoneNumbers?.map(({ phoneNumber, sid }) => ({\n label: phoneNumber,\n value: sid,\n }));\n\n const selectedPhoneNumber = _findBy(\n { label: configuration?.twilioPhoneNumber },\n phoneNumberOptions\n );\n\n const wrapInModalBody = children => <Modal.Body>{children}</Modal.Body>;\n const wrapInModalFooter = children => <Modal.Footer>{children}</Modal.Footer>;\n const isLoading = isPhoneNumbersLoading || isConfigurationLoading;\n\n const isSubmitDisabled = values =>\n equals(\n { ...configuration, twilioPhoneNumber: selectedPhoneNumber },\n values\n ) || isLoading;\n\n const renderActionBlock = values => (\n <ActionBlock\n cancelButtonProps={{ onClick: onCancel, disabled: false }}\n className=\"space-x-3\"\n submitButtonProps={{\n label: phoneNumberOptions\n ? t(\"neetoIntegrations.common.saveChanges\")\n : t(\"neetoIntegrations.common.verify\"),\n disabled: isSubmitDisabled(values),\n loading:\n isSubmitting ||\n (isPhoneNumbersLoading && !configuration?.twilioAuthToken),\n }}\n />\n );\n\n const renderForm = formikProps => (\n <Form\n formikProps={formikProps}\n initialFocusRef={initialFocusRef}\n isUsingOverlay={isModal}\n phoneNumberOptions={phoneNumberOptions}\n selectedPhoneNumber={selectedPhoneNumber}\n />\n );\n\n return (\n <FormikFormWrapper\n className=\"mx-auto flex w-full max-w-md flex-col\"\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 isModal ? (\n <>\n {wrapInModalBody(renderForm(formikProps))}\n {wrapInModalFooter(renderActionBlock(formikProps.values))}\n </>\n ) : (\n <>\n renderForm(formikProps)\n <div className=\"mt-4 flex items-center gap-x-2\">\n {renderActionBlock(formikProps.values)}\n </div>\n </>\n )\n }\n </FormikFormWrapper>\n );\n};\n\nexport default TwilioConfiguration;\n","import React, { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\n\nimport { Modal } from \"index\";\n\nimport { TWILIO_INTEGRATION_STEPS } from \"./constants\";\nimport TwilioConfiguration from \"./TwilioConfiguration\";\n\nconst Twilio = ({ onClose = noop, onConnect = noop }) => {\n const [steps, setSteps] = useState(TWILIO_INTEGRATION_STEPS);\n\n return (\n <Modal isOpen steps={steps} onClose={onClose}>\n <TwilioConfiguration\n isModal\n setSteps={setSteps}\n onCancel={onClose}\n onConnect={onConnect}\n />\n </Modal>\n );\n};\n\nexport default Twilio;\n"],"names":["_arrayWithHoles","arr","Array","isArray","_iterableToArrayLimit","i","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","call","next","Object","done","push","value","length","err","_arrayLikeToArray","len","arr2","_unsupportedIterableToArray","o","minLen","arrayLikeToArray","n","prototype","toString","slice","constructor","name","from","test","_nonIterableRest","TypeError","_slicedToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","Stepper","_ref","_ref$steps","steps","isActiveOrCompleted","activeStatus","completedStatus","React","createElement","className","map","_ref2","step","label","isActive","isCompleted","key","classnames","Typography","component","style","weight","Modal","_ref$isOpen","isOpen","noop","_ref$onClose","onClose","children","NeetoUIModal","size","Header","Body","ReactPropTypesSecret","ReactPropTypesSecret_1","require$$0","emptyFunction","emptyFunctionWithReset","resetWarningCache","factoryWithThrowingShims","shim","props","propName","componentName","location","propFullName","secret","Error","isRequired","getShim","ReactPropTypes","array","bigint","bool","func","number","object","string","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","propTypesModule","exports","Icon","title","description","buttonProps","onConnect","videoUrl","subtitle","iframeTitle","onClick","secondaryButtonProps","e","t","r","document","a","s","prepend","d","singleTag","container","querySelector","getElementsByTagName","u","indexOf","c","charCodeAt","substring","styleSheet","cssText","appendChild","createTextNode","setAttribute","attributes","keys","insertAdjacentElement","TWILIO_INTEGRATION_STEPS","i18next","_typeof","obj","_toPrimitive","input","hint","prim","toPrimitive","undefined","res","String","Number","_toPropertyKey","arg","_defineProperty","toPropertyKey","defineProperty","enumerable","configurable","writable","ConfigurationForm","_errors$twilioPhoneNu","phoneNumberOptions","_ref$selectedPhoneNum","selectedPhoneNumber","_ref$initialFocusRef","initialFocusRef","_ref$isUsingOverlay","isUsingOverlay","_ref$formikProps","formikProps","_useTranslation","useTranslation","setFieldValue","setValues","errors","values","initialValues","useEffect","Input","required","autoFocus","ref","Select","error","twilioPhoneNumber","options","onChange","selected","_objectSpread","_arrayWithoutHoles","_iterableToArray","iter","_nonIterableSpread","_toConsumableArray","arrayWithoutHoles","iterableToArray","nonIterableSpread","TWILIO_CONFIGURATION_BASE_URL","twilioApi","fetchTwilioSmsConfiguration","axios","get","removeTwilioConfiguration","getTwilioPhoneNumbers","data","concat","params","createTwilioConfiguration","payload","post","QUERY_KEYS","TWILIO_SMS_CONFIGURATION","TWILIO_PHONE_NUMBERS","useFetchTwilioSmsConfiguration","useQuery","select","response","_smsConfiguration$twi","_smsConfiguration$twi2","_smsConfiguration$twi3","smsConfiguration","twilioSid","twilioAuthToken","useFetchTwilioPhoneNumbers","_formRef$current","_formRef$current$valu","_formRef$current2","_formRef$current2$val","credentials","formRef","keysToSnakeCase","enabled","twilio_sid","current","prop","retry","useCreateTwilioConfiguration","useMutationWithInvalidation","keysToInvalidate","useTwilio","_ref$onSave","onSave","_ref$setSteps","setSteps","_ref$onConnect","_ref$formRef","_useFetchTwilioSmsCon","configuration","isConfigurationLoading","isLoading","refetchTwilioSmsConfiguration","refetch","_useStateWithDependen","useStateWithDependency","_useStateWithDependen2","setCredentials","_useFetchTwilioPhoneN","phoneNumbers","isPhoneNumbersLoading","_useCreateTwilioConfi","saveConfiguration","mutate","isSubmitting","stepsClone","handleSubmit","_values$twilioPhoneNu","twilio_auth_token","twilio_phone_number_sid","onSuccess","buildTwilioConfigurationValidationSchema","isTwilioPhoneRequired","yup","TwilioConfiguration","_ref$onCancel","onCancel","_ref$isModal","isModal","useRef","_useTwilio","phoneNumber","sid","_findBy","wrapInModalBody","wrapInModalFooter","Footer","isSubmitDisabled","equals","renderActionBlock","ActionBlock","cancelButtonProps","disabled","submitButtonProps","loading","renderForm","Form","FormikFormWrapper","enableReinitialize","validationSchema","innerRef","onSubmit","Fragment","Twilio","_useState","useState","_useState2"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAe,SAASA,eAAeA,CAACC,GAAG,EAAE;EAC3C,IAAIC,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,EAAE,OAAOA,GAAG,CAAA;AACpC;;ACFe,SAASG,qBAAqBA,CAACH,GAAG,EAAEI,CAAC,EAAE;EACpD,IAAIC,EAAE,GAAG,IAAI,IAAIL,GAAG,GAAG,IAAI,GAAG,WAAW,IAAI,OAAOM,MAAM,IAAIN,GAAG,CAACM,MAAM,CAACC,QAAQ,CAAC,IAAIP,GAAG,CAAC,YAAY,CAAC,CAAA;EACvG,IAAI,IAAI,IAAIK,EAAE,EAAE;AACd,IAAA,IAAIG,EAAE;MACJC,EAAE;MACFC,EAAE;MACFC,EAAE;AACFC,MAAAA,IAAI,GAAG,EAAE;MACTC,EAAE,GAAG,CAAC,CAAC;MACPC,EAAE,GAAG,CAAC,CAAC,CAAA;IACT,IAAI;AACF,MAAA,IAAIJ,EAAE,GAAG,CAACL,EAAE,GAAGA,EAAE,CAACU,IAAI,CAACf,GAAG,CAAC,EAAEgB,IAAI,EAAE,CAAC,KAAKZ,CAAC,EAAE;AAC1C,QAAA,IAAIa,MAAM,CAACZ,EAAE,CAAC,KAAKA,EAAE,EAAE,OAAA;QACvBQ,EAAE,GAAG,CAAC,CAAC,CAAA;AACT,OAAC,MAAM,OAAO,EAAEA,EAAE,GAAG,CAACL,EAAE,GAAGE,EAAE,CAACK,IAAI,CAACV,EAAE,CAAC,EAAEa,IAAI,CAAC,KAAKN,IAAI,CAACO,IAAI,CAACX,EAAE,CAACY,KAAK,CAAC,EAAER,IAAI,CAACS,MAAM,KAAKjB,CAAC,CAAC,EAAES,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;KACpG,CAAC,OAAOS,GAAG,EAAE;AACZR,MAAAA,EAAE,GAAG,CAAC,CAAC,EAAEL,EAAE,GAAGa,GAAG,CAAA;AACnB,KAAC,SAAS;MACR,IAAI;QACF,IAAI,CAACT,EAAE,IAAI,IAAI,IAAIR,EAAE,CAAC,QAAQ,CAAC,KAAKM,EAAE,GAAGN,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAEY,MAAM,CAACN,EAAE,CAAC,KAAKA,EAAE,CAAC,EAAE,OAAA;AAC/E,OAAC,SAAS;QACR,IAAIG,EAAE,EAAE,MAAML,EAAE,CAAA;AAClB,OAAA;AACF,KAAA;AACA,IAAA,OAAOG,IAAI,CAAA;AACb,GAAA;AACF;;AC1Be,SAASW,iBAAiBA,CAACvB,GAAG,EAAEwB,GAAG,EAAE;AAClD,EAAA,IAAIA,GAAG,IAAI,IAAI,IAAIA,GAAG,GAAGxB,GAAG,CAACqB,MAAM,EAAEG,GAAG,GAAGxB,GAAG,CAACqB,MAAM,CAAA;AACrD,EAAA,KAAK,IAAIjB,CAAC,GAAG,CAAC,EAAEqB,IAAI,GAAG,IAAIxB,KAAK,CAACuB,GAAG,CAAC,EAAEpB,CAAC,GAAGoB,GAAG,EAAEpB,CAAC,EAAE,EAAEqB,IAAI,CAACrB,CAAC,CAAC,GAAGJ,GAAG,CAACI,CAAC,CAAC,CAAA;AACrE,EAAA,OAAOqB,IAAI,CAAA;AACb;;ACHe,SAASC,2BAA2BA,CAACC,CAAC,EAAEC,MAAM,EAAE;EAC7D,IAAI,CAACD,CAAC,EAAE,OAAA;EACR,IAAI,OAAOA,CAAC,KAAK,QAAQ,EAAE,OAAOE,iBAAgB,CAACF,CAAC,EAAEC,MAAM,CAAC,CAAA;AAC7D,EAAA,IAAIE,CAAC,GAAGb,MAAM,CAACc,SAAS,CAACC,QAAQ,CAACjB,IAAI,CAACY,CAAC,CAAC,CAACM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AACtD,EAAA,IAAIH,CAAC,KAAK,QAAQ,IAAIH,CAAC,CAACO,WAAW,EAAEJ,CAAC,GAAGH,CAAC,CAACO,WAAW,CAACC,IAAI,CAAA;AAC3D,EAAA,IAAIL,CAAC,KAAK,KAAK,IAAIA,CAAC,KAAK,KAAK,EAAE,OAAO7B,KAAK,CAACmC,IAAI,CAACT,CAAC,CAAC,CAAA;AACpD,EAAA,IAAIG,CAAC,KAAK,WAAW,IAAI,0CAA0C,CAACO,IAAI,CAACP,CAAC,CAAC,EAAE,OAAOD,iBAAgB,CAACF,CAAC,EAAEC,MAAM,CAAC,CAAA;AACjH;;ACRe,SAASU,gBAAgBA,GAAG;AACzC,EAAA,MAAM,IAAIC,SAAS,CAAC,2IAA2I,CAAC,CAAA;AAClK;;ACEe,SAASC,cAAcA,CAACxC,GAAG,EAAEI,CAAC,EAAE;EAC7C,OAAOqC,eAAc,CAACzC,GAAG,CAAC,IAAI0C,qBAAoB,CAAC1C,GAAG,EAAEI,CAAC,CAAC,IAAIuC,2BAA0B,CAAC3C,GAAG,EAAEI,CAAC,CAAC,IAAIwC,gBAAe,EAAE,CAAA;AACvH;;ACAA,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAAuB;AAAA,EAAA,IAAAC,UAAA,GAAAD,IAAA,CAAjBE,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,UAAA,CAAA;AAC3B,EAAA,IAAME,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,YAAY,EAAEC,eAAe,EAAA;IAAA,OACxDD,YAAY,IAAIC,eAAe,CAAA;AAAA,GAAA,CAAA;EAEjC,oBACEC,yBAAA,CAAAC,aAAA,CAAA,IAAA,EAAA;AAAIC,IAAAA,SAAS,EAAC,YAAA;GACXN,EAAAA,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEO,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,IAAI,GAAAD,KAAA,CAAJC,IAAI;MAAEC,KAAK,GAAAF,KAAA,CAALE,KAAK;MAAEC,QAAQ,GAAAH,KAAA,CAARG,QAAQ;MAAEC,WAAW,GAAAJ,KAAA,CAAXI,WAAW,CAAA;IAAA,oBAC/CR,yBAAA,CAAAC,aAAA,CAAA,IAAA,EAAA;AAAIC,MAAAA,SAAS,EAAC,yBAAyB;AAACO,MAAAA,GAAG,EAAEJ,IAAAA;AAAK,KAAA,EAC/CA,IAAI,KAAK,GAAG,iBACXL,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAEQ,8BAAU,CAAC,eAAe,EAAE;AACrC,QAAA,0BAA0B,EAAEb,mBAAmB,CAC7CU,QAAQ,EACRC,WAAW,CACZ;AACD,QAAA,0BAA0B,EAAE,CAACX,mBAAmB,CAC9CU,QAAQ,EACRC,WAAW,CAAA;OAEd,CAAA;KAEJ,CAAA,eACDR,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,yBAAA;KACbF,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAEQ,8BAAU,CACnB,yFAAyF,EACzF;AACE,QAAA,yEAAyE,EACvEH,QAAQ;AACV,QAAA,yEAAyE,EACvEC,WAAW;AACb,QAAA,0BAA0B,EAAE,CAACX,mBAAmB,CAC9CU,QAAQ,EACRC,WAAW,CAAA;OAEd,CAAA;AACD,KAAA,eAEFR,yBAAA,CAAAC,aAAA,CAACU,kBAAU,EAAA;AAACC,MAAAA,SAAS,EAAC,MAAM;AAACC,MAAAA,KAAK,EAAC,OAAO;AAACC,MAAAA,MAAM,EAAC,QAAA;KAC/CT,EAAAA,IAAI,CACM,CACT,eACNL,yBAAA,CAAAC,aAAA,CAACU,kBAAU,EAAA;AACTE,MAAAA,KAAK,EAAC,OAAO;AACbC,MAAAA,MAAM,EAAC,QAAQ;MACfZ,SAAS,EAAEQ,8BAAU,CAAC;AACpB,QAAA,wBAAwB,EAAEb,mBAAmB,CAC3CU,QAAQ,EACRC,WAAW,CACZ;AACD,QAAA,wBAAwB,EAAE,CAACX,mBAAmB,CAC5CU,QAAQ,EACRC,WAAW,CAAA;OAEd,CAAA;KAEAF,EAAAA,KAAK,CACK,CACT,CACH,CAAA;AAAA,GACN,CAAC,CACC,CAAA;AAET,CAAC;;AC7DD,IAAMS,KAAK,GAAG,SAARA,KAAKA,CAAArB,IAAA,EAAA;AAAA,EAAA,IAAAsB,WAAA,GAAAtB,IAAA,CAAMuB,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAGE,KAAAA,CAAAA,GAAAA,cAAI,GAAAF,WAAA;IAAAG,YAAA,GAAAzB,IAAA,CAAE0B,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAGD,KAAAA,CAAAA,GAAAA,cAAI,GAAAC,YAAA;IAAAxB,UAAA,GAAAD,IAAA,CAAEE,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,UAAA;IAAE0B,QAAQ,GAAA3B,IAAA,CAAR2B,QAAQ,CAAA;AAAA,EAAA,oBAClErB,yBAAA,CAAAC,aAAA,CAACqB,aAAY,EAAA;AACXpB,IAAAA,SAAS,EAAC,kFAAkF;AAC5Fe,IAAAA,MAAM,EAAEA,MAAO;AACfM,IAAAA,IAAI,EAAC,YAAY;AACjBH,IAAAA,OAAO,EAAEA,OAAAA;AAAQ,GAAA,eAEjBpB,yBAAA,CAAAC,aAAA,CAACqB,aAAY,CAACE,MAAM,EAAA,IAAA,eAClBxB,yBAAA,CAAAC,aAAA,CAACR,OAAO,EAAA;AAACG,IAAAA,KAAK,EAAEA,KAAAA;GAAS,CAAA,CACL,eACtBI,yBAAA,CAAAC,aAAA,CAACqB,aAAY,CAACG,IAAI,EAAA;AAACvB,IAAAA,SAAS,EAAC,gFAAA;GAC3BF,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,uBAAA;GAAyBmB,EAAAA,QAAQ,CAAO,CACrC,CACP,CAAA;AAAA,CAChB;;;;;;;;;;ACbD,IAAIK,sBAAoB,GAAG,8CAA8C,CAAA;AAEzE,IAAAC,sBAAc,GAAGD,sBAAoB;;;;;;;;ACFrC,IAAIA,oBAAoB,GAAGE,sBAAqC,CAAA;AAEhE,SAASC,aAAaA,GAAG,EAAE;AAC3B,SAASC,sBAAsBA,GAAG,EAAE;AACpCA,sBAAsB,CAACC,iBAAiB,GAAGF,aAAa,CAAA;AAExD,IAAAG,wBAAc,GAAG,SAAjBA,wBAAcA,GAAc;AAC1B,EAAA,SAASC,IAAIA,CAACC,KAAK,EAAEC,QAAQ,EAAEC,aAAa,EAAEC,QAAQ,EAAEC,YAAY,EAAEC,MAAM,EAAE;IAC5E,IAAIA,MAAM,KAAKb,oBAAoB,EAAE;AACzC;AACM,MAAA,OAAA;AACD,KAAA;IACD,IAAIxD,GAAG,GAAG,IAAIsE,KAAK,CACjB,sFAAsF,GACtF,+CAA+C,GAC/C,gDAAgD,CACjD,CAAA;IACDtE,GAAG,CAACa,IAAI,GAAG,qBAAqB,CAAA;AAChC,IAAA,MAAMb,GAAG,CAAA;AACb,GAAA;EACE+D,IAAI,CAACQ,UAAU,GAAGR,IAAI,CAAA;EACtB,SAASS,OAAOA,GAAG;AACjB,IAAA,OAAOT,IAAI,CAAA;AACf,GAAA;AACA;AACA;AACE,EAAA,IAAIU,cAAc,GAAG;AACnBC,IAAAA,KAAK,EAAEX,IAAI;AACXY,IAAAA,MAAM,EAAEZ,IAAI;AACZa,IAAAA,IAAI,EAAEb,IAAI;AACVc,IAAAA,IAAI,EAAEd,IAAI;AACVe,IAAAA,MAAM,EAAEf,IAAI;AACZgB,IAAAA,MAAM,EAAEhB,IAAI;AACZiB,IAAAA,MAAM,EAAEjB,IAAI;AACZkB,IAAAA,MAAM,EAAElB,IAAI;AAEZmB,IAAAA,GAAG,EAAEnB,IAAI;AACToB,IAAAA,OAAO,EAAEX,OAAO;AAChBY,IAAAA,OAAO,EAAErB,IAAI;AACbsB,IAAAA,WAAW,EAAEtB,IAAI;AACjBuB,IAAAA,UAAU,EAAEd,OAAO;AACnBe,IAAAA,IAAI,EAAExB,IAAI;AACVyB,IAAAA,QAAQ,EAAEhB,OAAO;AACjBiB,IAAAA,KAAK,EAAEjB,OAAO;AACdkB,IAAAA,SAAS,EAAElB,OAAO;AAClBmB,IAAAA,KAAK,EAAEnB,OAAO;AACdoB,IAAAA,KAAK,EAAEpB,OAAO;AAEdqB,IAAAA,cAAc,EAAEjC,sBAAsB;AACtCC,IAAAA,iBAAiB,EAAEF,aAAAA;GACpB,CAAA;EAEDc,cAAc,CAACqB,SAAS,GAAGrB,cAAc,CAAA;AAEzC,EAAA,OAAOA,cAAc,CAAA;AACvB,CAAC;;;;;;;;AClDM;AACP;AACA;AACEsB,EAAAA,SAAc,CAAAC,OAAA,GAAGtC,wBAAqC,EAAE,CAAA;AAC1D;;CC0BqB;AACnB;AACF;AACA;EACEuC,IAAI,EAAEH,2BAAS,CAACP,IAAI;AACpB;AACF;AACA;EACEW,KAAK,EAAEJ,2BAAS,CAACd,MAAM;AACvB;AACF;AACA;EACEmB,WAAW,EAAEL,2BAAS,CAACd,MAAM;AAC7B;AACF;AACA;EACEoB,WAAW,EAAEN,2BAAS,CAACf,MAAM;AAC7B;AACF;AACA;EACEsB,SAAS,EAAEP,2BAAS,CAACjB,IAAAA;AACvB,EAAC;;CCMiB;AAChB;AACF;AACA;EACE3B,OAAO,EAAE4C,iBAAS,CAACjB,IAAI;AACvB;AACF;AACA;EACEyB,QAAQ,EAAER,iBAAS,CAACd,MAAM;AAC1B;AACF;AACA;EACEkB,KAAK,EAAEJ,iBAAS,CAACd,MAAM;AACvB;AACF;AACA;EACEuB,QAAQ,EAAET,iBAAS,CAACd,MAAM;AAC1B;AACF;AACA;EACEwB,WAAW,EAAEV,iBAAS,CAACd,MAAAA;AACzB,EAAC;;CCjDmB;AAClB;AACF;AACA;EACEyB,OAAO,EAAEX,iBAAS,CAACjB,IAAI;AACvB;AACF;AACA;EACEqB,KAAK,EAAEJ,iBAAS,CAACd,MAAM;AACvB;AACF;AACA;EACEoB,WAAW,EAAEN,iBAAS,CAACf,MAAM;AAC7B;AACF;AACA;EACE2B,oBAAoB,EAAEZ,iBAAS,CAACf,MAAAA;AAClC,EAAC;;AC5DD,IAAI4B,CAAC,GAAC,EAAE;AAACC,EAAAA,CAAC,GAAC,EAAE,CAAA;AAAC,SAASpG,CAACA,CAACA,CAAC,EAACqG,CAAC,EAAC;AAAC,EAAA,IAAGrG,CAAC,IAAE,WAAW,IAAE,OAAOsG,QAAQ,EAAC;AAAC,IAAA,IAAIC,CAAC;MAACC,CAAC,GAAC,CAAC,CAAC,KAAGH,CAAC,CAACI,OAAO,GAAC,SAAS,GAAC,QAAQ;AAACC,MAAAA,CAAC,GAAC,CAAC,CAAC,KAAGL,CAAC,CAACM,SAAS;MAACrI,CAAC,GAAC,QAAQ,IAAE,OAAO+H,CAAC,CAACO,SAAS,GAACN,QAAQ,CAACO,aAAa,CAACR,CAAC,CAACO,SAAS,CAAC,GAACN,QAAQ,CAACQ,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AAAC,IAAA,IAAGJ,CAAC,EAAC;AAAC,MAAA,IAAIK,CAAC,GAACZ,CAAC,CAACa,OAAO,CAAC1I,CAAC,CAAC,CAAA;MAAC,CAAC,CAAC,KAAGyI,CAAC,KAAGA,CAAC,GAACZ,CAAC,CAAC9G,IAAI,CAACf,CAAC,CAAC,GAAC,CAAC,EAAC8H,CAAC,CAACW,CAAC,CAAC,GAAC,EAAE,CAAC,EAACR,CAAC,GAACH,CAAC,CAACW,CAAC,CAAC,IAAEX,CAAC,CAACW,CAAC,CAAC,CAACP,CAAC,CAAC,GAACJ,CAAC,CAACW,CAAC,CAAC,CAACP,CAAC,CAAC,GAACJ,CAAC,CAACW,CAAC,CAAC,CAACP,CAAC,CAAC,GAACS,CAAC,EAAE,CAAA;AAAA,KAAC,MAAKV,CAAC,GAACU,CAAC,EAAE,CAAA;AAAC,IAAA,KAAK,KAAGjH,CAAC,CAACkH,UAAU,CAAC,CAAC,CAAC,KAAGlH,CAAC,GAACA,CAAC,CAACmH,SAAS,CAAC,CAAC,CAAC,CAAC,EAACZ,CAAC,CAACa,UAAU,GAACb,CAAC,CAACa,UAAU,CAACC,OAAO,IAAErH,CAAC,GAACuG,CAAC,CAACe,WAAW,CAAChB,QAAQ,CAACiB,cAAc,CAACvH,CAAC,CAAC,CAAC,CAAA;AAAA,GAAA;EAAC,SAASiH,CAACA,GAAE;AAAC,IAAA,IAAId,CAAC,GAACG,QAAQ,CAAC/E,aAAa,CAAC,OAAO,CAAC,CAAA;IAAC,IAAG4E,CAAC,CAACqB,YAAY,CAAC,MAAM,EAAC,UAAU,CAAC,EAACnB,CAAC,CAACoB,UAAU,EAAC,KAAI,IAAIrB,CAAC,GAACjH,MAAM,CAACuI,IAAI,CAACrB,CAAC,CAACoB,UAAU,CAAC,EAACzH,CAAC,GAAC,CAAC,EAACA,CAAC,GAACoG,CAAC,CAAC7G,MAAM,EAACS,CAAC,EAAE,EAACmG,CAAC,CAACqB,YAAY,CAACpB,CAAC,CAACpG,CAAC,CAAC,EAACqG,CAAC,CAACoB,UAAU,CAACrB,CAAC,CAACpG,CAAC,CAAC,CAAC,CAAC,CAAA;IAAC,IAAIuG,CAAC,GAAC,SAAS,KAAGC,CAAC,GAAC,YAAY,GAAC,WAAW,CAAA;IAAC,OAAOlI,CAAC,CAACqJ,qBAAqB,CAACpB,CAAC,EAACJ,CAAC,CAAC,EAACA,CAAC,CAAA;AAAA,GAAA;AAAC;;;;;ACE9tB,IAAMyB,wBAAwB,GAAG,CACtC;AACEjG,EAAAA,IAAI,EAAE,GAAG;AACTC,EAAAA,KAAK,EAAEiG,2BAAO,CAACzB,CAAC,CAAC,mCAAmC,CAAC;AACrDvE,EAAAA,QAAQ,EAAE,IAAI;AACdC,EAAAA,WAAW,EAAE,KAAA;AACf,CAAC,CACF;;ACTc,SAASgG,OAAOA,CAACC,GAAG,EAAE;EACnC,yBAAyB,CAAA;;AAEzB,EAAA,OAAOD,OAAO,GAAG,UAAU,IAAI,OAAOtJ,MAAM,IAAI,QAAQ,IAAI,OAAOA,MAAM,CAACC,QAAQ,GAAG,UAAUsJ,GAAG,EAAE;AAClG,IAAA,OAAO,OAAOA,GAAG,CAAA;GAClB,GAAG,UAAUA,GAAG,EAAE;IACjB,OAAOA,GAAG,IAAI,UAAU,IAAI,OAAOvJ,MAAM,IAAIuJ,GAAG,CAAC3H,WAAW,KAAK5B,MAAM,IAAIuJ,GAAG,KAAKvJ,MAAM,CAACyB,SAAS,GAAG,QAAQ,GAAG,OAAO8H,GAAG,CAAA;AAC7H,GAAC,EAAED,OAAO,CAACC,GAAG,CAAC,CAAA;AACjB;;ACPe,SAASC,YAAYA,CAACC,KAAK,EAAEC,IAAI,EAAE;AAChD,EAAA,IAAIJ,OAAO,CAACG,KAAK,CAAC,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,EAAE,OAAOA,KAAK,CAAA;AAC/D,EAAA,IAAIE,IAAI,GAAGF,KAAK,CAACzJ,MAAM,CAAC4J,WAAW,CAAC,CAAA;EACpC,IAAID,IAAI,KAAKE,SAAS,EAAE;IACtB,IAAIC,GAAG,GAAGH,IAAI,CAAClJ,IAAI,CAACgJ,KAAK,EAAEC,IAAI,IAAI,SAAS,CAAC,CAAA;IAC7C,IAAIJ,OAAO,CAACQ,GAAG,CAAC,KAAK,QAAQ,EAAE,OAAOA,GAAG,CAAA;AACzC,IAAA,MAAM,IAAI7H,SAAS,CAAC,8CAA8C,CAAC,CAAA;AACrE,GAAA;EACA,OAAO,CAACyH,IAAI,KAAK,QAAQ,GAAGK,MAAM,GAAGC,MAAM,EAAEP,KAAK,CAAC,CAAA;AACrD;;ACRe,SAASQ,cAAcA,CAACC,GAAG,EAAE;AAC1C,EAAA,IAAI3G,GAAG,GAAGqG,YAAW,CAACM,GAAG,EAAE,QAAQ,CAAC,CAAA;AACpC,EAAA,OAAOZ,OAAO,CAAC/F,GAAG,CAAC,KAAK,QAAQ,GAAGA,GAAG,GAAGwG,MAAM,CAACxG,GAAG,CAAC,CAAA;AACtD;;ACJe,SAAS4G,eAAeA,CAACZ,GAAG,EAAEhG,GAAG,EAAEzC,KAAK,EAAE;AACvDyC,EAAAA,GAAG,GAAG6G,cAAa,CAAC7G,GAAG,CAAC,CAAA;EACxB,IAAIA,GAAG,IAAIgG,GAAG,EAAE;AACd5I,IAAAA,MAAM,CAAC0J,cAAc,CAACd,GAAG,EAAEhG,GAAG,EAAE;AAC9BzC,MAAAA,KAAK,EAAEA,KAAK;AACZwJ,MAAAA,UAAU,EAAE,IAAI;AAChBC,MAAAA,YAAY,EAAE,IAAI;AAClBC,MAAAA,QAAQ,EAAE,IAAA;AACZ,KAAC,CAAC,CAAA;AACJ,GAAC,MAAM;AACLjB,IAAAA,GAAG,CAAChG,GAAG,CAAC,GAAGzC,KAAK,CAAA;AAClB,GAAA;AACA,EAAA,OAAOyI,GAAG,CAAA;AACZ;;;;ACTA,IAAMkB,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAjI,IAAA,EAMjB;AAAA,EAAA,IAAAkI,qBAAA,CAAA;AAAA,EAAA,IALJC,kBAAkB,GAAAnI,IAAA,CAAlBmI,kBAAkB;IAAAC,qBAAA,GAAApI,IAAA,CAClBqI,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;IAAAE,oBAAA,GAAAtI,IAAA,CAC1BuI,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,oBAAA;IAAAE,mBAAA,GAAAxI,IAAA,CACtByI,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,mBAAA;IAAAE,gBAAA,GAAA1I,IAAA,CACtB2I,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA,CAAA;EAEhB,IAAAE,eAAA,GAAcC,2BAAc,EAAE;IAAtBzD,CAAC,GAAAwD,eAAA,CAADxD,CAAC,CAAA;AACT,EAAA,IAAQ0D,aAAa,GACnBH,WAAW,CADLG,aAAa;IAAEC,SAAS,GAC9BJ,WAAW,CADUI,SAAS;IAAEC,MAAM,GACtCL,WAAW,CADqBK,MAAM;IAAEC,MAAM,GAC9CN,WAAW,CAD6BM,MAAM;IAAEC,aAAa,GAC7DP,WAAW,CADqCO,aAAa,CAAA;AAG/DC,EAAAA,eAAS,CAAC,YAAM;AACdd,IAAAA,mBAAmB,IACjBS,aAAa,CAAC,mBAAmB,EAAET,mBAAmB,CAAC,CAAA;AAC3D,GAAC,EAAE,CAACA,mBAAmB,EAAEa,aAAa,CAAC,CAAC,CAAA;EAExC,oBACE5I,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,4BAAA;GACbF,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,aAAA;AAAa,GAAA,eAC1BF,yBAAA,CAAAC,aAAA,CAAC6I,YAAK,EAAA;IACJC,QAAQ,EAAA,IAAA;IACRC,SAAS,EAAE,CAACb,cAAe;AAC3B,IAAA,aAAA,EAAY,yBAAyB;AACrC7H,IAAAA,KAAK,EAAEwE,CAAC,CAAC,8BAA8B,CAAE;AACzC/F,IAAAA,IAAI,EAAC,WAAW;AAChBkK,IAAAA,GAAG,EAAEhB,eAAAA;AAAgB,GAAA,CACrB,CACE,eACNjI,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,aAAA;AAAa,GAAA,eAC1BF,yBAAA,CAAAC,aAAA,CAAC6I,YAAK,EAAA;IACJC,QAAQ,EAAA,IAAA;AACR,IAAA,aAAA,EAAY,gCAAgC;AAC5CzI,IAAAA,KAAK,EAAEwE,CAAC,CAAC,oCAAoC,CAAE;AAC/C/F,IAAAA,IAAI,EAAC,iBAAA;AAAiB,GAAA,CACtB,CACE,EACL8I,kBAAkB,iBACjB7H,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,aAAA;AAAa,GAAA,eAC1BF,yBAAA,CAAAC,aAAA,CAACiJ,aAAM,EAAA;IACLC,KAAK,EAAA,CAAAvB,qBAAA,GAAEc,MAAM,CAACU,iBAAiB,MAAA,IAAA,IAAAxB,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAxBA,qBAAA,CAA0B5J,KAAM;AACvCsC,IAAAA,KAAK,EAAEwE,CAAC,CAAC,+BAA+B,CAAE;AAC1C/F,IAAAA,IAAI,EAAC,mBAAmB;AACxBsK,IAAAA,OAAO,EAAExB,kBAAmB;AAC5BtG,IAAAA,IAAI,EAAC,OAAO;IACZ+H,QAAQ,EAAE,SAAAA,QAAAA,CAAAC,QAAQ,EAAA;AAAA,MAAA,OAChBd,SAAS,CAAAe,eAAA,CAAAA,eAAA,KAAMb,MAAM,CAAA,EAAA,EAAA,EAAA;AAAES,QAAAA,iBAAiB,EAAEG,QAAAA;OAAW,CAAA,CAAA,CAAA;AAAA,KAAA;AACtD,GAAA,CACD,CAEL,CACG,CAAA;AAEV,CAAC;;ACxDc,SAASE,kBAAkBA,CAAC7M,GAAG,EAAE;EAC9C,IAAIC,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,EAAE,OAAO6B,iBAAgB,CAAC7B,GAAG,CAAC,CAAA;AACtD;;ACHe,SAAS8M,gBAAgBA,CAACC,IAAI,EAAE;EAC7C,IAAI,OAAOzM,MAAM,KAAK,WAAW,IAAIyM,IAAI,CAACzM,MAAM,CAACC,QAAQ,CAAC,IAAI,IAAI,IAAIwM,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,OAAO9M,KAAK,CAACmC,IAAI,CAAC2K,IAAI,CAAC,CAAA;AAC3H;;ACFe,SAASC,kBAAkBA,GAAG;AAC3C,EAAA,MAAM,IAAIzK,SAAS,CAAC,sIAAsI,CAAC,CAAA;AAC7J;;ACEe,SAAS0K,kBAAkBA,CAACjN,GAAG,EAAE;AAC9C,EAAA,OAAOkN,kBAAiB,CAAClN,GAAG,CAAC,IAAImN,gBAAe,CAACnN,GAAG,CAAC,IAAI2C,2BAA0B,CAAC3C,GAAG,CAAC,IAAIoN,kBAAiB,EAAE,CAAA;AACjH;;ACNO,IAAMC,6BAA6B,GACxC,+CAA+C;;ACGjD,IAAMC,SAAS,GAAG;EAChBC,2BAA2B,EAAE,SAAAA,2BAAA,GAAA;AAAA,IAAA,OAAMC,yBAAK,CAACC,GAAG,CAACJ,6BAA6B,CAAC,CAAA;AAAA,GAAA;EAC3EK,yBAAyB,EAAE,SAAAA,yBAAA,GAAA;AAAA,IAAA,OAAMF,yBAAK,CAAA,QAAA,CAAO,CAACH,6BAA6B,CAAC,CAAA;AAAA,GAAA;EAC5EM,qBAAqB,EAAE,SAAAA,qBAAAA,CAAAC,IAAI,EAAA;AAAA,IAAA,OACzBJ,yBAAK,CAACC,GAAG,IAAAI,MAAA,CAAIR,6BAA6B,EAAQ,MAAA,CAAA,EAAA;AAChDS,MAAAA,MAAM,EAAEF,IAAAA;AACV,KAAC,CAAC,CAAA;AAAA,GAAA;EACJG,yBAAyB,EAAE,SAAAA,yBAAAA,CAAAC,OAAO,EAAA;AAAA,IAAA,OAChCR,yBAAK,CAACS,IAAI,CAACZ,6BAA6B,EAAEW,OAAO,CAAC,CAAA;AAAA,GAAA;AACtD,CAAC;;ACbM,IAAME,UAAU,GAAG;AACxBC,EAAAA,wBAAwB,EAAE,0BAA0B;AACpDC,EAAAA,oBAAoB,EAAE,sBAAA;AACxB,CAAC;;ACKD,IAAMC,8BAA8B,GAAG,SAAjCA,8BAA8BA,GAAA;EAAA,OAClCC,mBAAQ,CACNJ,UAAU,CAACC,wBAAwB,EACnCb,SAAS,CAACC,2BAA2B,EACrC;AACEgB,IAAAA,MAAM,EAAE,SAAAA,MAAAC,CAAAA,QAAQ,EAAI;AAAA,MAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,CAAA;AAClB,MAAA,IAAMC,gBAAgB,GAAGJ,QAAQ,CAACI,gBAAgB,CAAA;MAElD,OAAO;AACLC,QAAAA,SAAS,EAAAJ,CAAAA,qBAAA,GAAEG,gBAAgB,aAAhBA,gBAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,gBAAgB,CAAEC,SAAS,MAAAJ,IAAAA,IAAAA,qBAAA,KAAAA,KAAAA,CAAAA,GAAAA,qBAAA,GAAI,EAAE;AAC5CK,QAAAA,eAAe,EAAAJ,CAAAA,sBAAA,GAAEE,gBAAgB,aAAhBA,gBAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,gBAAgB,CAAEE,eAAe,MAAAJ,IAAAA,IAAAA,sBAAA,KAAAA,KAAAA,CAAAA,GAAAA,sBAAA,GAAI,EAAE;AACxDlC,QAAAA,iBAAiB,EAAAmC,CAAAA,sBAAA,GAAEC,gBAAgB,aAAhBA,gBAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,gBAAgB,CAAEpC,iBAAiB,MAAA,IAAA,IAAAmC,sBAAA,KAAA,KAAA,CAAA,GAAAA,sBAAA,GAAI,EAAA;OAC3D,CAAA;AACH,KAAA;AACF,GAAC,CACF,CAAA;AAAA,CAAA,CAAA;AAEH,IAAMI,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAAjM,IAAA,EAAA;AAAA,EAAA,IAAAkM,gBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA,CAAA;AAAA,EAAA,IAAMC,WAAW,GAAAtM,IAAA,CAAXsM,WAAW;IAAEC,OAAO,GAAAvM,IAAA,CAAPuM,OAAO,CAAA;AAAA,EAAA,OACxDf,mBAAQ,CACN,CAACJ,UAAU,CAACE,oBAAoB,EAAE;AAAEgB,IAAAA,WAAW,EAAXA,WAAAA;AAAY,GAAC,CAAC,EAClD,YAAA;IAAA,OAAM9B,SAAS,CAACK,qBAAqB,CAAC2B,yBAAe,CAACF,WAAW,CAAC,CAAC,CAAA;GACnE,EAAA;AACEG,IAAAA,OAAO,EACL,CAAC,EAACH,WAAW,aAAXA,WAAW,KAAA,KAAA,CAAA,IAAXA,WAAW,CAAEI,UAAU,CAAA,IACzB,CAAC,EAACJ,WAAW,KAAXA,IAAAA,IAAAA,WAAW,KAAXA,KAAAA,CAAAA,IAAAA,WAAW,CAAEP,SAAS,CACxB,IAAA,CAAC,EAACQ,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,IAAA,CAAAL,gBAAA,GAAPK,OAAO,CAAEI,OAAO,cAAAT,gBAAA,KAAA,KAAA,CAAA,IAAA,CAAAC,qBAAA,GAAhBD,gBAAA,CAAkBjD,MAAM,MAAA,IAAA,IAAAkD,qBAAA,KAAxBA,KAAAA,CAAAA,IAAAA,qBAAA,CAA0BJ,SAAS,KACrC,CAAC,EAACQ,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAAH,KAAAA,CAAAA,IAAAA,CAAAA,iBAAA,GAAPG,OAAO,CAAEI,OAAO,MAAAP,IAAAA,IAAAA,iBAAA,gBAAAC,qBAAA,GAAhBD,iBAAA,CAAkBnD,MAAM,MAAAoD,IAAAA,IAAAA,qBAAA,KAAxBA,KAAAA,CAAAA,IAAAA,qBAAA,CAA0BL,eAAe,CAAA;AAC7CP,IAAAA,MAAM,EAAEmB,UAAI,CAAC,cAAc,CAAC;AAC5BC,IAAAA,KAAK,EAAE,KAAA;AACT,GAAC,CACF,CAAA;AAAA,CAAA,CAAA;AAEH,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA4BA,GAAA;AAAA,EAAA,OAChCC,sCAA2B,CAACvC,SAAS,CAACS,yBAAyB,EAAE;AAC/D+B,IAAAA,gBAAgB,EAAE,CAAC5B,UAAU,CAACC,wBAAwB,CAAA;AACxD,GAAC,CAAC,CAAA;AAAA,CAAA;;;;AChCJ,IAAM4B,SAAS,GAAG,SAAZA,SAASA,CAAAjN,IAAA,EAKT;AAAA,EAAA,IAAAkN,WAAA,GAAAlN,IAAA,CAJJmN,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG1L,KAAAA,CAAAA,GAAAA,cAAI,GAAA0L,WAAA;IAAAE,aAAA,GAAApN,IAAA,CACbqN,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG5L,KAAAA,CAAAA,GAAAA,cAAI,GAAA4L,aAAA;IAAAE,cAAA,GAAAtN,IAAA,CACf6E,SAAS;AAATA,IAAAA,SAAS,GAAAyI,cAAA,KAAG9L,KAAAA,CAAAA,GAAAA,cAAI,GAAA8L,cAAA;IAAAC,YAAA,GAAAvN,IAAA,CAChBuM,OAAO;AAAPA,IAAAA,OAAO,GAAAgB,YAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,YAAA,CAAA;EAEd,IAAAC,qBAAA,GAIIjC,8BAA8B,EAAE;IAH5BkC,aAAa,GAAAD,qBAAA,CAAnB1C,IAAI;IACO4C,sBAAsB,GAAAF,qBAAA,CAAjCG,SAAS;IACAC,6BAA6B,GAAAJ,qBAAA,CAAtCK,OAAO,CAAA;AAET,EAAA,IAAAC,qBAAA,GAAsCC,iCAAsB,CAACN,aAAa,CAAC;IAAAO,sBAAA,GAAAtO,cAAA,CAAAoO,qBAAA,EAAA,CAAA,CAAA;AAApExB,IAAAA,WAAW,GAAA0B,sBAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,cAAc,GAAAD,sBAAA,CAAA,CAAA,CAAA,CAAA;EAClC,IAAAE,qBAAA,GACEjC,0BAA0B,CAAC;AAAEK,MAAAA,WAAW,EAAXA,WAAW;AAAEC,MAAAA,OAAO,EAAPA,OAAAA;AAAQ,KAAC,CAAC;IADxC4B,YAAY,GAAAD,qBAAA,CAAlBpD,IAAI;IAA2BsD,qBAAqB,GAAAF,qBAAA,CAAhCP,SAAS,CAAA;EAGrC,IAAAU,qBAAA,GACEvB,4BAA4B,EAAE;IADhBwB,iBAAiB,GAAAD,qBAAA,CAAzBE,MAAM;IAAgCC,YAAY,GAAAH,qBAAA,CAAvBV,SAAS,CAAA;AAG5CxE,EAAAA,eAAS,CAAC,YAAM;IACd,IAAI,EAACsE,aAAa,KAAbA,IAAAA,IAAAA,aAAa,eAAbA,aAAa,CAAE/D,iBAAiB,CAAE,EAAA,OAAA;IACvC2D,QAAQ,CAAC,UAAAnN,KAAK,EAAI;AAChB,MAAA,IAAMuO,UAAU,GAAAtE,kBAAA,CAAOjK,KAAK,CAAC,CAAA;MAC7BuO,UAAU,CAAC,CAAC,CAAC,GAAA3E,eAAA,CAAAA,eAAA,CAAQ5J,EAAAA,EAAAA,KAAK,CAAC,CAAC,CAAC,CAAA,EAAA,EAAA,EAAA;AAAEY,QAAAA,WAAW,EAAE,IAAA;OAAM,CAAA,CAAA;AAElD,MAAA,OAAO2N,UAAU,CAAA;AACnB,KAAC,CAAC,CAAA;AACJ,GAAC,EAAE,CAAChB,aAAa,CAAC,CAAC,CAAA;AAEnB,EAAA,IAAMiB,YAAY,GAAG,SAAfA,YAAYA,CAAGzF,MAAM,EAAI;AAAA,IAAA,IAAA0F,qBAAA,CAAA;AAC7B,IAAA,IAAMzD,OAAO,GAAG;MACdwB,UAAU,EAAEzD,MAAM,CAAC8C,SAAS;MAC5B6C,iBAAiB,EAAE3F,MAAM,CAAC+C,eAAe;MACzC6C,uBAAuB,EAAA,CAAAF,qBAAA,GAAE1F,MAAM,CAACS,iBAAiB,MAAAiF,IAAAA,IAAAA,qBAAA,KAAxBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA0BrQ,KAAAA;KACpD,CAAA;IAED,IAAI,CAAC6P,YAAY,IAAI,EAACV,aAAa,KAAbA,IAAAA,IAAAA,aAAa,KAAbA,KAAAA,CAAAA,IAAAA,aAAa,CAAE/D,iBAAiB,CAAE,EAAA;MACtDuE,cAAc,CAAC/C,OAAO,CAAC,CAAA;AAEvB,MAAA,OAAA;AACF,KAAA;IAEAoD,iBAAiB,CAACpD,OAAO,EAAE;MACzB4D,SAAS,EAAE,SAAAA,SAAAA,GAAM;AACf3B,QAAAA,MAAM,EAAE,CAAA;AACRS,QAAAA,6BAA6B,EAAE,CAAA;AAC/B/I,QAAAA,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,EAAI,CAAA;AACf,OAAA;AACF,KAAC,CAAC,CAAA;GACH,CAAA;EAED,OAAO;AACL6J,IAAAA,YAAY,EAAZA,YAAY;AACZP,IAAAA,YAAY,EAAZA,YAAY;AACZT,IAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBU,IAAAA,qBAAqB,EAArBA,qBAAqB;AACrBI,IAAAA,YAAY,EAAZA,YAAY;AACZf,IAAAA,aAAa,EAAbA,aAAAA;GACD,CAAA;AACH,CAAC;;AClEM,IAAMsB,wCAAwC,GAAG,SAA3CA,wCAAwCA,CAAGC,qBAAqB,EAAA;AAAA,EAAA,OAC3EC,cAAG,CAAC1L,MAAM,EAAE,CAACY,KAAK,CAAC;AACjB4H,IAAAA,SAAS,EAAEkD,cAAG,CACXzL,MAAM,EAAE,CACR6F,QAAQ,CAACxC,2BAAO,CAACzB,CAAC,CAAC,6CAA6C,CAAC,CAAC;AACrE4G,IAAAA,eAAe,EAAEiD,cAAG,CACjBzL,MAAM,EAAE,CACR6F,QAAQ,CAACxC,2BAAO,CAACzB,CAAC,CAAC,mDAAmD,CAAC,CAAC;IAC3EsE,iBAAiB,EAAEsF,qBAAqB,GACpCC,cAAG,CAAC1L,MAAM,EAAE,CAACY,KAAK,CAAC;AACjBvD,MAAAA,KAAK,EAAEqO,cAAG,CAACzL,MAAM,EAAE;AACnBlF,MAAAA,KAAK,EAAE2Q,cAAG,CACPzL,MAAM,EAAE,CACR6F,QAAQ,CACPxC,2BAAO,CAACzB,CAAC,CAAC,+CAA+C,CAAC,CAAA;AAEhE,KAAC,CAAC,GACF,IAAA;AACN,GAAC,CAAC,CAAA;AAAA,CAAA;;;;ACTJ,IAAM8J,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAlP,IAAA,EAMnB;AAAA,EAAA,IAAAmP,aAAA,GAAAnP,IAAA,CALJoP,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG3N,KAAAA,CAAAA,GAAAA,cAAI,GAAA2N,aAAA;IAAAjC,WAAA,GAAAlN,IAAA,CACfmN,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG1L,KAAAA,CAAAA,GAAAA,cAAI,GAAA0L,WAAA;IAAAE,aAAA,GAAApN,IAAA,CACbqN,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG5L,KAAAA,CAAAA,GAAAA,cAAI,GAAA4L,aAAA;IAAAE,cAAA,GAAAtN,IAAA,CACf6E,SAAS;AAATA,IAAAA,SAAS,GAAAyI,cAAA,KAAG9L,KAAAA,CAAAA,GAAAA,cAAI,GAAA8L,cAAA;IAAA+B,YAAA,GAAArP,IAAA,CAChBsP,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,YAAA,CAAA;EAEf,IAAAzG,eAAA,GAAcC,2BAAc,EAAE;IAAtBzD,CAAC,GAAAwD,eAAA,CAADxD,CAAC,CAAA;EACT,IAAMmD,eAAe,GAAGgH,YAAM,EAAE,CAAA;EAChC,IAAMhD,OAAO,GAAGgD,YAAM,EAAE,CAAA;EAExB,IAAAC,UAAA,GAOIvC,SAAS,CAAC;AAAEE,MAAAA,MAAM,EAANA,MAAM;AAAEE,MAAAA,QAAQ,EAARA,QAAQ;AAAExI,MAAAA,SAAS,EAATA,SAAS;AAAE0H,MAAAA,OAAO,EAAPA,OAAAA;AAAQ,KAAC,CAAC;IANrDmC,YAAY,GAAAc,UAAA,CAAZd,YAAY;IACZP,YAAY,GAAAqB,UAAA,CAAZrB,YAAY;IACZT,sBAAsB,GAAA8B,UAAA,CAAtB9B,sBAAsB;IACtBU,qBAAqB,GAAAoB,UAAA,CAArBpB,qBAAqB;IACrBI,YAAY,GAAAgB,UAAA,CAAZhB,YAAY;IACZf,aAAa,GAAA+B,UAAA,CAAb/B,aAAa,CAAA;EAGf,IAAMtF,kBAAkB,GAAGgG,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAE1N,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAG+O,WAAW,GAAA/O,KAAA,CAAX+O,WAAW;MAAEC,GAAG,GAAAhP,KAAA,CAAHgP,GAAG,CAAA;IAAA,OAAQ;AACtE9O,MAAAA,KAAK,EAAE6O,WAAW;AAClBnR,MAAAA,KAAK,EAAEoR,GAAAA;KACR,CAAA;AAAA,GAAC,CAAC,CAAA;EAEH,IAAMrH,mBAAmB,GAAGsH,iBAAO,CACjC;AAAE/O,IAAAA,KAAK,EAAE6M,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,aAAa,CAAE/D,iBAAAA;GAAmB,EAC3CvB,kBAAkB,CACnB,CAAA;AAED,EAAA,IAAMyH,eAAe,GAAG,SAAlBA,eAAeA,CAAGjO,QAAQ,EAAA;IAAA,oBAAIrB,yBAAA,CAAAC,aAAA,CAACc,aAAK,CAACU,IAAI,EAAEJ,IAAAA,EAAAA,QAAQ,CAAc,CAAA;AAAA,GAAA,CAAA;AACvE,EAAA,IAAMkO,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGlO,QAAQ,EAAA;IAAA,oBAAIrB,yBAAA,CAAAC,aAAA,CAACc,aAAK,CAACyO,MAAM,EAAEnO,IAAAA,EAAAA,QAAQ,CAAgB,CAAA;AAAA,GAAA,CAAA;AAC7E,EAAA,IAAMgM,SAAS,GAAGS,qBAAqB,IAAIV,sBAAsB,CAAA;AAEjE,EAAA,IAAMqC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAG9G,MAAM,EAAA;AAAA,IAAA,OAC7B+G,YAAM,CAAAlG,aAAA,CAAAA,aAAA,KACC2D,aAAa,CAAA,EAAA,EAAA,EAAA;AAAE/D,MAAAA,iBAAiB,EAAErB,mBAAAA;KACvCY,CAAAA,EAAAA,MAAM,CACP,IAAI0E,SAAS,CAAA;AAAA,GAAA,CAAA;AAEhB,EAAA,IAAMsC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGhH,MAAM,EAAA;AAAA,IAAA,oBAC9B3I,yBAAA,CAAAC,aAAA,CAAC2P,kBAAW,EAAA;AACVC,MAAAA,iBAAiB,EAAE;AAAElL,QAAAA,OAAO,EAAEmK,QAAQ;AAAEgB,QAAAA,QAAQ,EAAE,KAAA;OAAQ;AAC1D5P,MAAAA,SAAS,EAAC,WAAW;AACrB6P,MAAAA,iBAAiB,EAAE;QACjBzP,KAAK,EAAEuH,kBAAkB,GACrB/C,CAAC,CAAC,sCAAsC,CAAC,GACzCA,CAAC,CAAC,iCAAiC,CAAC;AACxCgL,QAAAA,QAAQ,EAAEL,gBAAgB,CAAC9G,MAAM,CAAC;AAClCqH,QAAAA,OAAO,EACL9B,YAAY,IACXJ,qBAAqB,IAAI,EAACX,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,IAAbA,aAAa,CAAEzB,eAAe,CAAA;AAC7D,OAAA;KACA,CAAA,CAAA;GACH,CAAA;AAED,EAAA,IAAMuE,UAAU,GAAG,SAAbA,UAAUA,CAAG5H,WAAW,EAAA;AAAA,IAAA,oBAC5BrI,yBAAA,CAAAC,aAAA,CAACiQ,iBAAI,EAAA;AACH7H,MAAAA,WAAW,EAAEA,WAAY;AACzBJ,MAAAA,eAAe,EAAEA,eAAgB;AACjCE,MAAAA,cAAc,EAAE6G,OAAQ;AACxBnH,MAAAA,kBAAkB,EAAEA,kBAAmB;AACvCE,MAAAA,mBAAmB,EAAEA,mBAAAA;KACrB,CAAA,CAAA;GACH,CAAA;AAED,EAAA,oBACE/H,yBAAA,CAAAC,aAAA,CAACkQ,WAAiB,EAAA;AAChBjQ,IAAAA,SAAS,EAAC,uCAAuC;AACjDmI,IAAAA,WAAW,EAAE;AACX+H,MAAAA,kBAAkB,EAAE,IAAI;AACxBC,MAAAA,gBAAgB,EAAE5B,wCAAwC,CACxD,CAAC,CAACZ,YAAY,CACf;AACDjF,MAAAA,aAAa,EAAEuE,aAAa;AAC5BmD,MAAAA,QAAQ,EAAErE,OAAO;AACjBsE,MAAAA,QAAQ,EAAEnC,YAAAA;AACZ,KAAA;AAAE,GAAA,EAED,UAAA/F,WAAW,EAAA;AAAA,IAAA,OACV2G,OAAO,gBACLhP,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAwQ,QAAA,EACGlB,IAAAA,EAAAA,eAAe,CAACW,UAAU,CAAC5H,WAAW,CAAC,CAAC,EACxCkH,iBAAiB,CAACI,iBAAiB,CAACtH,WAAW,CAACM,MAAM,CAAC,CAAC,CACxD,gBAEH3I,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAwQ,QAAA,EAAA,IAAA,EAAE,yBAEA,eAAAxQ,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,gCAAA;AAAgC,KAAA,EAC5CyP,iBAAiB,CAACtH,WAAW,CAACM,MAAM,CAAC,CAClC,CAET,CAAA;GAEe,CAAA,CAAA;AAExB,CAAC;;ACnGD,IAAM8H,MAAM,GAAG,SAATA,MAAMA,CAAA/Q,IAAA,EAA6C;AAAA,EAAA,IAAAyB,YAAA,GAAAzB,IAAA,CAAvC0B,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAGD,KAAAA,CAAAA,GAAAA,cAAI,GAAAC,YAAA;IAAA6L,cAAA,GAAAtN,IAAA,CAAE6E,SAAS;AAATA,IAAAA,SAAS,GAAAyI,cAAA,KAAG9L,KAAAA,CAAAA,GAAAA,cAAI,GAAA8L,cAAA,CAAA;AAChD,EAAA,IAAA0D,SAAA,GAA0BC,cAAQ,CAACrK,wBAAwB,CAAC;IAAAsK,UAAA,GAAAxR,cAAA,CAAAsR,SAAA,EAAA,CAAA,CAAA;AAArD9Q,IAAAA,KAAK,GAAAgR,UAAA,CAAA,CAAA,CAAA;AAAE7D,IAAAA,QAAQ,GAAA6D,UAAA,CAAA,CAAA,CAAA,CAAA;AAEtB,EAAA,oBACE5Q,yBAAA,CAAAC,aAAA,CAACc,KAAK,EAAA;IAACE,MAAM,EAAA,IAAA;AAACrB,IAAAA,KAAK,EAAEA,KAAM;AAACwB,IAAAA,OAAO,EAAEA,OAAAA;AAAQ,GAAA,eAC3CpB,yBAAA,CAAAC,aAAA,CAAC2O,mBAAmB,EAAA;IAClBI,OAAO,EAAA,IAAA;AACPjC,IAAAA,QAAQ,EAAEA,QAAS;AACnB+B,IAAAA,QAAQ,EAAE1N,OAAQ;AAClBmD,IAAAA,SAAS,EAAEA,SAAAA;AAAU,GAAA,CACrB,CACI,CAAA;AAEZ;;;;"}
|
package/dist/Twilio.js
CHANGED
|
@@ -460,13 +460,15 @@ var useFetchTwilioSmsConfiguration = function useFetchTwilioSmsConfiguration() {
|
|
|
460
460
|
});
|
|
461
461
|
};
|
|
462
462
|
var useFetchTwilioPhoneNumbers = function useFetchTwilioPhoneNumbers(_ref) {
|
|
463
|
-
var
|
|
463
|
+
var _formRef$current, _formRef$current$valu, _formRef$current2, _formRef$current2$val;
|
|
464
|
+
var credentials = _ref.credentials,
|
|
465
|
+
formRef = _ref.formRef;
|
|
464
466
|
return useQuery([QUERY_KEYS.TWILIO_PHONE_NUMBERS, {
|
|
465
467
|
credentials: credentials
|
|
466
468
|
}], function () {
|
|
467
469
|
return twilioApi.getTwilioPhoneNumbers(keysToSnakeCase(credentials));
|
|
468
470
|
}, {
|
|
469
|
-
enabled: !!(credentials !== null && credentials !== void 0 && credentials.twilio_sid) || !!(credentials !== null && credentials !== void 0 && credentials.twilioSid),
|
|
471
|
+
enabled: !!(credentials !== null && credentials !== void 0 && credentials.twilio_sid) || !!(credentials !== null && credentials !== void 0 && credentials.twilioSid) || !!(formRef !== null && formRef !== void 0 && (_formRef$current = formRef.current) !== null && _formRef$current !== void 0 && (_formRef$current$valu = _formRef$current.values) !== null && _formRef$current$valu !== void 0 && _formRef$current$valu.twilioSid) || !!(formRef !== null && formRef !== void 0 && (_formRef$current2 = formRef.current) !== null && _formRef$current2 !== void 0 && (_formRef$current2$val = _formRef$current2.values) !== null && _formRef$current2$val !== void 0 && _formRef$current2$val.twilioAuthToken),
|
|
470
472
|
select: prop("phoneNumbers"),
|
|
471
473
|
retry: false
|
|
472
474
|
});
|
|
@@ -484,8 +486,10 @@ var useTwilio = function useTwilio(_ref) {
|
|
|
484
486
|
onSave = _ref$onSave === void 0 ? noop : _ref$onSave,
|
|
485
487
|
_ref$setSteps = _ref.setSteps,
|
|
486
488
|
setSteps = _ref$setSteps === void 0 ? noop : _ref$setSteps,
|
|
487
|
-
_ref$
|
|
488
|
-
|
|
489
|
+
_ref$onConnect = _ref.onConnect,
|
|
490
|
+
onConnect = _ref$onConnect === void 0 ? noop : _ref$onConnect,
|
|
491
|
+
_ref$formRef = _ref.formRef,
|
|
492
|
+
formRef = _ref$formRef === void 0 ? null : _ref$formRef;
|
|
489
493
|
var _useFetchTwilioSmsCon = useFetchTwilioSmsConfiguration(),
|
|
490
494
|
configuration = _useFetchTwilioSmsCon.data,
|
|
491
495
|
isConfigurationLoading = _useFetchTwilioSmsCon.isLoading,
|
|
@@ -495,20 +499,14 @@ var useTwilio = function useTwilio(_ref) {
|
|
|
495
499
|
credentials = _useStateWithDependen2[0],
|
|
496
500
|
setCredentials = _useStateWithDependen2[1];
|
|
497
501
|
var _useFetchTwilioPhoneN = useFetchTwilioPhoneNumbers({
|
|
498
|
-
credentials: credentials
|
|
502
|
+
credentials: credentials,
|
|
503
|
+
formRef: formRef
|
|
499
504
|
}),
|
|
500
505
|
phoneNumbers = _useFetchTwilioPhoneN.data,
|
|
501
506
|
isPhoneNumbersLoading = _useFetchTwilioPhoneN.isLoading;
|
|
502
507
|
var _useCreateTwilioConfi = useCreateTwilioConfiguration(),
|
|
503
508
|
saveConfiguration = _useCreateTwilioConfi.mutate,
|
|
504
509
|
isSubmitting = _useCreateTwilioConfi.isLoading;
|
|
505
|
-
var _useConnect = useConnect(),
|
|
506
|
-
installIntegration = _useConnect.mutate;
|
|
507
|
-
var connectTwilioApp = function connectTwilioApp() {
|
|
508
|
-
return installIntegration({
|
|
509
|
-
id: "twilio"
|
|
510
|
-
}, {});
|
|
511
|
-
};
|
|
512
510
|
useEffect(function () {
|
|
513
511
|
if (!(configuration !== null && configuration !== void 0 && configuration.twilioPhoneNumber)) return;
|
|
514
512
|
setSteps(function (steps) {
|
|
@@ -533,8 +531,8 @@ var useTwilio = function useTwilio(_ref) {
|
|
|
533
531
|
saveConfiguration(payload, {
|
|
534
532
|
onSuccess: function onSuccess() {
|
|
535
533
|
onSave();
|
|
536
|
-
connectTwilioApp();
|
|
537
534
|
refetchTwilioSmsConfiguration();
|
|
535
|
+
onConnect === null || onConnect === void 0 ? void 0 : onConnect();
|
|
538
536
|
}
|
|
539
537
|
});
|
|
540
538
|
};
|
|
@@ -568,17 +566,19 @@ var TwilioConfiguration = function TwilioConfiguration(_ref) {
|
|
|
568
566
|
onSave = _ref$onSave === void 0 ? noop : _ref$onSave,
|
|
569
567
|
_ref$setSteps = _ref.setSteps,
|
|
570
568
|
setSteps = _ref$setSteps === void 0 ? noop : _ref$setSteps,
|
|
571
|
-
_ref$
|
|
572
|
-
|
|
569
|
+
_ref$onConnect = _ref.onConnect,
|
|
570
|
+
onConnect = _ref$onConnect === void 0 ? noop : _ref$onConnect,
|
|
573
571
|
_ref$isModal = _ref.isModal,
|
|
574
572
|
isModal = _ref$isModal === void 0 ? false : _ref$isModal;
|
|
575
573
|
var _useTranslation = useTranslation(),
|
|
576
574
|
t = _useTranslation.t;
|
|
577
575
|
var initialFocusRef = useRef();
|
|
576
|
+
var formRef = useRef();
|
|
578
577
|
var _useTwilio = useTwilio({
|
|
579
578
|
onSave: onSave,
|
|
580
579
|
setSteps: setSteps,
|
|
581
|
-
|
|
580
|
+
onConnect: onConnect,
|
|
581
|
+
formRef: formRef
|
|
582
582
|
}),
|
|
583
583
|
handleSubmit = _useTwilio.handleSubmit,
|
|
584
584
|
phoneNumbers = _useTwilio.phoneNumbers,
|
|
@@ -619,7 +619,7 @@ var TwilioConfiguration = function TwilioConfiguration(_ref) {
|
|
|
619
619
|
submitButtonProps: {
|
|
620
620
|
label: phoneNumberOptions ? t("neetoIntegrations.common.saveChanges") : t("neetoIntegrations.common.verify"),
|
|
621
621
|
disabled: isSubmitDisabled(values),
|
|
622
|
-
loading: isSubmitting || isPhoneNumbersLoading && !configuration.twilioAuthToken
|
|
622
|
+
loading: isSubmitting || isPhoneNumbersLoading && !(configuration !== null && configuration !== void 0 && configuration.twilioAuthToken)
|
|
623
623
|
}
|
|
624
624
|
});
|
|
625
625
|
};
|
|
@@ -638,6 +638,7 @@ var TwilioConfiguration = function TwilioConfiguration(_ref) {
|
|
|
638
638
|
enableReinitialize: true,
|
|
639
639
|
validationSchema: buildTwilioConfigurationValidationSchema(!!phoneNumbers),
|
|
640
640
|
initialValues: configuration,
|
|
641
|
+
innerRef: formRef,
|
|
641
642
|
onSubmit: handleSubmit
|
|
642
643
|
}
|
|
643
644
|
}, function (formikProps) {
|
|
@@ -650,8 +651,8 @@ var TwilioConfiguration = function TwilioConfiguration(_ref) {
|
|
|
650
651
|
var Twilio = function Twilio(_ref) {
|
|
651
652
|
var _ref$onClose = _ref.onClose,
|
|
652
653
|
onClose = _ref$onClose === void 0 ? noop : _ref$onClose,
|
|
653
|
-
_ref$
|
|
654
|
-
|
|
654
|
+
_ref$onConnect = _ref.onConnect,
|
|
655
|
+
onConnect = _ref$onConnect === void 0 ? noop : _ref$onConnect;
|
|
655
656
|
var _useState = useState(TWILIO_INTEGRATION_STEPS),
|
|
656
657
|
_useState2 = _slicedToArray(_useState, 2),
|
|
657
658
|
steps = _useState2[0],
|
|
@@ -663,8 +664,8 @@ var Twilio = function Twilio(_ref) {
|
|
|
663
664
|
}, /*#__PURE__*/React.createElement(TwilioConfiguration, {
|
|
664
665
|
isModal: true,
|
|
665
666
|
setSteps: setSteps,
|
|
666
|
-
|
|
667
|
-
|
|
667
|
+
onCancel: onClose,
|
|
668
|
+
onConnect: onConnect
|
|
668
669
|
}));
|
|
669
670
|
};
|
|
670
671
|
|