@bigbinary/neeto-integrations-frontend 2.1.0 → 2.2.0-beta1

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.
@@ -0,0 +1,1011 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var neetoCist = require('@bigbinary/neeto-cist');
5
+ var misc = require('@bigbinary/neeto-icons/misc');
6
+ var PageLoader = require('@bigbinary/neeto-molecules/PageLoader');
7
+ var reactI18next = require('react-i18next');
8
+ var classnames = require('classnames');
9
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
10
+ var neetoIcons = require('@bigbinary/neeto-icons');
11
+ var Button = require('@bigbinary/neetoui/Button');
12
+ var Tooltip = require('@bigbinary/neetoui/Tooltip');
13
+ var Typography = require('@bigbinary/neetoui/Typography');
14
+ require('@bigbinary/neeto-molecules/IntegrationCard');
15
+ var DisconnectAlert = require('@bigbinary/neeto-molecules/IntegrationDisconnectAlert');
16
+ var WalkthroughModal = require('@bigbinary/neeto-molecules/IntegrationWalkthroughModal');
17
+ var i18next = require('i18next');
18
+ var reactQuery = require('@tanstack/react-query');
19
+ var constants = require('@bigbinary/neeto-commons-frontend/constants');
20
+ var axios = require('axios');
21
+ var Container = require('@bigbinary/neeto-molecules/Container');
22
+ var Header = require('@bigbinary/neeto-molecules/Header');
23
+ var HelpPopover = require('@bigbinary/neeto-molecules/HelpPopover');
24
+ var Input = require('@bigbinary/neetoui/formik/Input');
25
+ var FormikForm = require('@bigbinary/neetoui/formik/Form');
26
+ var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
27
+ var reactRouterDom = require('react-router-dom');
28
+ var jsxRuntime = require('react/jsx-runtime');
29
+ var utils = require('@bigbinary/neeto-commons-frontend/utils');
30
+ require('@bigbinary/neetoui/Callout');
31
+ require('ramda');
32
+ require('@bigbinary/neetoui/formik/Select');
33
+ var yup = require('yup');
34
+ require('@bigbinary/neetoui/Modal');
35
+ var CopyToClipboardButton = require('@bigbinary/neeto-molecules/CopyToClipboardButton');
36
+
37
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
38
+
39
+ function _interopNamespace(e) {
40
+ if (e && e.__esModule) return e;
41
+ var n = Object.create(null);
42
+ if (e) {
43
+ Object.keys(e).forEach(function (k) {
44
+ if (k !== 'default') {
45
+ var d = Object.getOwnPropertyDescriptor(e, k);
46
+ Object.defineProperty(n, k, d.get ? d : {
47
+ enumerable: true,
48
+ get: function () { return e[k]; }
49
+ });
50
+ }
51
+ });
52
+ }
53
+ n["default"] = e;
54
+ return Object.freeze(n);
55
+ }
56
+
57
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
58
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
59
+ var PageLoader__default = /*#__PURE__*/_interopDefaultLegacy(PageLoader);
60
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
61
+ var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
62
+ var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
63
+ var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
64
+ var DisconnectAlert__default = /*#__PURE__*/_interopDefaultLegacy(DisconnectAlert);
65
+ var WalkthroughModal__default = /*#__PURE__*/_interopDefaultLegacy(WalkthroughModal);
66
+ var i18next__default = /*#__PURE__*/_interopDefaultLegacy(i18next);
67
+ var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
68
+ var Container__default = /*#__PURE__*/_interopDefaultLegacy(Container);
69
+ var Header__default = /*#__PURE__*/_interopDefaultLegacy(Header);
70
+ var HelpPopover__default = /*#__PURE__*/_interopDefaultLegacy(HelpPopover);
71
+ var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
72
+ var FormikForm__default = /*#__PURE__*/_interopDefaultLegacy(FormikForm);
73
+ var ActionBlock__default = /*#__PURE__*/_interopDefaultLegacy(ActionBlock);
74
+ var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
75
+ var CopyToClipboardButton__default = /*#__PURE__*/_interopDefaultLegacy(CopyToClipboardButton);
76
+
77
+ function _arrayWithHoles(arr) {
78
+ if (Array.isArray(arr)) return arr;
79
+ }
80
+
81
+ function _iterableToArrayLimit(r, l) {
82
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
83
+ if (null != t) {
84
+ var e,
85
+ n,
86
+ i,
87
+ u,
88
+ a = [],
89
+ f = !0,
90
+ o = !1;
91
+ try {
92
+ if (i = (t = t.call(r)).next, 0 === l) {
93
+ if (Object(t) !== t) return;
94
+ f = !1;
95
+ } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
96
+ } catch (r) {
97
+ o = !0, n = r;
98
+ } finally {
99
+ try {
100
+ if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
101
+ } finally {
102
+ if (o) throw n;
103
+ }
104
+ }
105
+ return a;
106
+ }
107
+ }
108
+
109
+ function _arrayLikeToArray(arr, len) {
110
+ if (len == null || len > arr.length) len = arr.length;
111
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
112
+ return arr2;
113
+ }
114
+
115
+ function _unsupportedIterableToArray(o, minLen) {
116
+ if (!o) return;
117
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
118
+ var n = Object.prototype.toString.call(o).slice(8, -1);
119
+ if (n === "Object" && o.constructor) n = o.constructor.name;
120
+ if (n === "Map" || n === "Set") return Array.from(o);
121
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
122
+ }
123
+
124
+ function _nonIterableRest() {
125
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
126
+ }
127
+
128
+ function _slicedToArray(arr, i) {
129
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
130
+ }
131
+
132
+ function _typeof(o) {
133
+ "@babel/helpers - typeof";
134
+
135
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
136
+ return typeof o;
137
+ } : function (o) {
138
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
139
+ }, _typeof(o);
140
+ }
141
+
142
+ function _toPrimitive(input, hint) {
143
+ if (_typeof(input) !== "object" || input === null) return input;
144
+ var prim = input[Symbol.toPrimitive];
145
+ if (prim !== undefined) {
146
+ var res = prim.call(input, hint || "default");
147
+ if (_typeof(res) !== "object") return res;
148
+ throw new TypeError("@@toPrimitive must return a primitive value.");
149
+ }
150
+ return (hint === "string" ? String : Number)(input);
151
+ }
152
+
153
+ function _toPropertyKey(arg) {
154
+ var key = _toPrimitive(arg, "string");
155
+ return _typeof(key) === "symbol" ? key : String(key);
156
+ }
157
+
158
+ function _defineProperty(obj, key, value) {
159
+ key = _toPropertyKey(key);
160
+ if (key in obj) {
161
+ Object.defineProperty(obj, key, {
162
+ value: value,
163
+ enumerable: true,
164
+ configurable: true,
165
+ writable: true
166
+ });
167
+ } else {
168
+ obj[key] = value;
169
+ }
170
+ return obj;
171
+ }
172
+
173
+ var INTEGRATIONS_ENGINE_BASE_URL = "/neeto_integrations";
174
+ var INTEGRATIONS_ENGINE_DAILY_URL = "".concat(INTEGRATIONS_ENGINE_BASE_URL, "/daily");
175
+ var INTEGRATIONS_ENGINE_ZOOM_URL = "".concat(INTEGRATIONS_ENGINE_BASE_URL, "/zoom");
176
+ var INTEGRATION_DETAILS_URL = "".concat(INTEGRATIONS_ENGINE_BASE_URL, "/status");
177
+
178
+ var create = function create(payload) {
179
+ return axios__default["default"].post(INTEGRATIONS_ENGINE_DAILY_URL, {
180
+ daily: payload
181
+ });
182
+ };
183
+ var show$1 = function show() {
184
+ return axios__default["default"].get(INTEGRATIONS_ENGINE_DAILY_URL);
185
+ };
186
+ var destroy$1 = function destroy() {
187
+ return axios__default["default"]["delete"](INTEGRATIONS_ENGINE_DAILY_URL);
188
+ };
189
+ var dailiesApi = {
190
+ create: create,
191
+ show: show$1,
192
+ destroy: destroy$1
193
+ };
194
+
195
+ var QUERY_KEYS = {
196
+ TWILIO_SMS_CONFIGURATION: "twilio-sms-configuration",
197
+ TWILIO_PHONE_NUMBERS: "twilio-phone-numbers",
198
+ DAILY_CO_DETAILS: "daily-co-details",
199
+ ZOOM_DETAILS: "zoom-details"
200
+ };
201
+
202
+ function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
203
+ function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
204
+ var useCreateDaily = function useCreateDaily() {
205
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
206
+ return reactUtils.useMutationWithInvalidation(dailiesApi.create, _objectSpread$4({
207
+ keysToInvalidate: [QUERY_KEYS.DAILY_CO_DETAILS]
208
+ }, options));
209
+ };
210
+ var useFetchDaily = function useFetchDaily() {
211
+ return reactQuery.useQuery({
212
+ queryKey: [QUERY_KEYS.DAILY_CO_DETAILS],
213
+ queryFn: dailiesApi.show,
214
+ staleTime: constants.DEFAULT_STALE_TIME
215
+ });
216
+ };
217
+ var useDestroyDaily = function useDestroyDaily(_ref) {
218
+ var onSuccess = _ref.onSuccess;
219
+ return reactUtils.useMutationWithInvalidation(dailiesApi.destroy, {
220
+ keysToInvalidate: [QUERY_KEYS.DAILY_CO_DETAILS],
221
+ onSuccess: onSuccess
222
+ });
223
+ };
224
+
225
+ function _objectWithoutPropertiesLoose(source, excluded) {
226
+ if (source == null) return {};
227
+ var target = {};
228
+ var sourceKeys = Object.keys(source);
229
+ var key, i;
230
+ for (i = 0; i < sourceKeys.length; i++) {
231
+ key = sourceKeys[i];
232
+ if (excluded.indexOf(key) >= 0) continue;
233
+ target[key] = source[key];
234
+ }
235
+ return target;
236
+ }
237
+
238
+ function _objectWithoutProperties(source, excluded) {
239
+ if (source == null) return {};
240
+ var target = _objectWithoutPropertiesLoose(source, excluded);
241
+ var key, i;
242
+ if (Object.getOwnPropertySymbols) {
243
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
244
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
245
+ key = sourceSymbolKeys[i];
246
+ if (excluded.indexOf(key) >= 0) continue;
247
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
248
+ target[key] = source[key];
249
+ }
250
+ }
251
+ return target;
252
+ }
253
+
254
+ var _excluded = ["className", "children"];
255
+ function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
256
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
257
+ var ExternalLink = function ExternalLink(_ref) {
258
+ var _ref$className = _ref.className,
259
+ className = _ref$className === void 0 ? "" : _ref$className,
260
+ _ref$children = _ref.children,
261
+ children = _ref$children === void 0 ? null : _ref$children,
262
+ props = _objectWithoutProperties(_ref, _excluded);
263
+ return /*#__PURE__*/jsxRuntime.jsx("a", _objectSpread$3(_objectSpread$3({
264
+ className: classnames__default["default"](["neeto-ui-text-primary-800 hover:neeto-ui-text-primary-800 visited:neeto-ui-text-primary-600 font-medium", className])
265
+ }, props), {}, {
266
+ children: children
267
+ }));
268
+ };
269
+ var ExternalLink$1 = /*#__PURE__*/React__default["default"].memo(ExternalLink);
270
+
271
+ var MANAGE_DAILY_CO_FORM_INITIAL_VALUES = {
272
+ apiKey: ""
273
+ };
274
+ var DAILY_CO_VALIDATION_SCHEMA = yup__namespace.object().shape({
275
+ apiKey: yup__namespace.string().trim().required(i18next.t("neetoIntegrations.errors.required", {
276
+ entity: i18next.t("neetoIntegrations.daily.apiKey")
277
+ }))
278
+ });
279
+
280
+ var Form = function Form(_ref) {
281
+ var helpDocUrl = _ref.helpDocUrl,
282
+ videoUrl = _ref.videoUrl,
283
+ onConnect = _ref.onConnect,
284
+ breadcrumbs = _ref.breadcrumbs;
285
+ var _useTranslation = reactI18next.useTranslation(),
286
+ t = _useTranslation.t;
287
+ var history = reactRouterDom.useHistory();
288
+ var _useState = React.useState(false),
289
+ _useState2 = _slicedToArray(_useState, 2),
290
+ isDemoModalOpen = _useState2[0],
291
+ setIsDemoModalOpen = _useState2[1];
292
+ var _useCreateDaily = useCreateDaily({
293
+ onSuccess: function onSuccess() {
294
+ return onConnect === null || onConnect === void 0 ? void 0 : onConnect();
295
+ }
296
+ }),
297
+ createDaily = _useCreateDaily.mutate,
298
+ isConnecting = _useCreateDaily.isPending;
299
+ var handleSubmit = function handleSubmit(payload) {
300
+ return createDaily(payload);
301
+ };
302
+ if (isConnecting) {
303
+ return /*#__PURE__*/jsxRuntime.jsx(PageLoader__default["default"], {});
304
+ }
305
+ return /*#__PURE__*/jsxRuntime.jsxs(Container__default["default"], {
306
+ isHeaderFixed: true,
307
+ children: [/*#__PURE__*/jsxRuntime.jsx(Header__default["default"], {
308
+ breadcrumbs: breadcrumbs,
309
+ title: /*#__PURE__*/jsxRuntime.jsxs("span", {
310
+ className: "flex items-center gap-2",
311
+ children: [t("neetoIntegrations.daily.connect.title"), /*#__PURE__*/jsxRuntime.jsx(HelpPopover__default["default"], {
312
+ title: t("neetoIntegrations.daily.connect.title"),
313
+ description: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
314
+ i18nKey: "neetoIntegrations.daily.helpDoc",
315
+ components: {
316
+ externalLink: /*#__PURE__*/jsxRuntime.jsx(ExternalLink$1, {
317
+ "data-cy": "api-key-help-doc-link",
318
+ href: helpDocUrl,
319
+ rel: "noreferrer",
320
+ target: "_blank"
321
+ })
322
+ }
323
+ }),
324
+ helpLinkProps: {
325
+ label: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
326
+ className: "mt-8",
327
+ label: t("neetoIntegrations.daily.walkthroughText"),
328
+ style: "link",
329
+ onClick: function onClick() {
330
+ return setIsDemoModalOpen(true);
331
+ }
332
+ })
333
+ }
334
+ })]
335
+ })
336
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
337
+ className: "mx-auto w-full max-w-md",
338
+ children: [/*#__PURE__*/jsxRuntime.jsx(FormikForm__default["default"], {
339
+ formikProps: {
340
+ initialValues: MANAGE_DAILY_CO_FORM_INITIAL_VALUES,
341
+ validationSchema: DAILY_CO_VALIDATION_SCHEMA,
342
+ onSubmit: handleSubmit
343
+ },
344
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
345
+ className: "mt-14 w-full space-y-2",
346
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
347
+ className: "block min-h-20",
348
+ children: /*#__PURE__*/jsxRuntime.jsx(Input__default["default"], {
349
+ autoFocus: true,
350
+ required: true,
351
+ label: t("neetoIntegrations.daily.apiKey"),
352
+ name: "apiKey"
353
+ })
354
+ }), /*#__PURE__*/jsxRuntime.jsx(ActionBlock__default["default"], {
355
+ cancelButtonProps: {
356
+ onClick: function onClick() {
357
+ return history.goBack();
358
+ }
359
+ },
360
+ isSubmitting: isConnecting,
361
+ submitButtonProps: {
362
+ label: t("neetoIntegrations.common.connect")
363
+ }
364
+ })]
365
+ })
366
+ }), /*#__PURE__*/jsxRuntime.jsx(WalkthroughModal__default["default"], {
367
+ videoUrl: videoUrl,
368
+ isOpen: isDemoModalOpen,
369
+ onClose: function onClose() {
370
+ return setIsDemoModalOpen(false);
371
+ }
372
+ })]
373
+ })]
374
+ });
375
+ };
376
+ var Form$1 = reactUtils.withTitle(Form, i18next__default["default"].t("neetoIntegrations.browserTitles.integrations.dailyco"));
377
+
378
+ var Manage$1 = function Manage$1(_ref) {
379
+ var description = _ref.description,
380
+ onDisconnect = _ref.onDisconnect;
381
+ var _useState = React.useState(false),
382
+ _useState2 = _slicedToArray(_useState, 2),
383
+ isDisconnectAlertOpen = _useState2[0],
384
+ setIsDisconnectAlertOpen = _useState2[1];
385
+ var _useFetchDaily = useFetchDaily(),
386
+ _useFetchDaily$data = _useFetchDaily.data,
387
+ _useFetchDaily$data2 = _useFetchDaily$data === void 0 ? {} : _useFetchDaily$data,
388
+ _useFetchDaily$data2$ = _useFetchDaily$data2.metadata,
389
+ metadata = _useFetchDaily$data2$ === void 0 ? {} : _useFetchDaily$data2$,
390
+ isFetching = _useFetchDaily.isFetching;
391
+ var _ref2 = metadata || {},
392
+ _ref2$apiKey = _ref2.apiKey,
393
+ apiKey = _ref2$apiKey === void 0 ? null : _ref2$apiKey;
394
+ var _useTranslation = reactI18next.useTranslation(),
395
+ t = _useTranslation.t;
396
+ var _useDestroyDaily = useDestroyDaily({
397
+ onSuccess: function onSuccess() {
398
+ setIsDisconnectAlertOpen(false);
399
+ onDisconnect === null || onDisconnect === void 0 || onDisconnect();
400
+ }
401
+ }),
402
+ destroyIntegration = _useDestroyDaily.mutate,
403
+ isDisconnecting = _useDestroyDaily.isPending;
404
+ var isConnected = neetoCist.isPresent(apiKey);
405
+ var handleDisconnect = function handleDisconnect() {
406
+ return destroyIntegration("daily");
407
+ };
408
+ if (isFetching || isDisconnecting) return /*#__PURE__*/jsxRuntime.jsx(PageLoader__default["default"], {});
409
+ return /*#__PURE__*/jsxRuntime.jsx(Manage, {
410
+ isConnected: isConnected,
411
+ isDisconnectAlertOpen: isDisconnectAlertOpen,
412
+ isDisconnecting: isDisconnecting,
413
+ setIsDisconnectAlertOpen: setIsDisconnectAlertOpen,
414
+ Icon: misc.Daily,
415
+ connectPath: utils.buildUrl(window.location.pathname, {
416
+ connect: true
417
+ }),
418
+ integration: "daily",
419
+ description: isConnected ? /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
420
+ i18nKey: "neetoIntegrations.daily.yourApiKey",
421
+ values: {
422
+ apiKey: apiKey
423
+ },
424
+ components: {
425
+ wrapper: /*#__PURE__*/jsxRuntime.jsx("div", {
426
+ className: "neeto-ui-rounded-md mt-2 flex items-center justify-between gap-x-3 border px-3 py-2"
427
+ }),
428
+ span: /*#__PURE__*/jsxRuntime.jsx("span", {
429
+ className: "break-all text-sm"
430
+ }),
431
+ copy: /*#__PURE__*/jsxRuntime.jsx(CopyToClipboardButton__default["default"], {
432
+ className: "flex-shrink-0 self-start",
433
+ style: "text",
434
+ value: apiKey
435
+ })
436
+ }
437
+ }) : description,
438
+ title: isConnected ? t("neetoIntegrations.daily.connected") : t("neetoIntegrations.daily.connect.account"),
439
+ onClose: function onClose() {
440
+ return setIsDisconnectAlertOpen(false);
441
+ },
442
+ onDisconnect: handleDisconnect
443
+ });
444
+ };
445
+
446
+ var Daily = function Daily(_ref) {
447
+ var _ref$isOnboarding = _ref.isOnboarding,
448
+ isOnboarding = _ref$isOnboarding === void 0 ? false : _ref$isOnboarding,
449
+ _ref$helpDocUrl = _ref.helpDocUrl,
450
+ helpDocUrl = _ref$helpDocUrl === void 0 ? "" : _ref$helpDocUrl,
451
+ _ref$videoUrl = _ref.videoUrl,
452
+ videoUrl = _ref$videoUrl === void 0 ? "" : _ref$videoUrl,
453
+ _ref$description = _ref.description,
454
+ description = _ref$description === void 0 ? "" : _ref$description,
455
+ _ref$onConnect = _ref.onConnect,
456
+ onConnect = _ref$onConnect === void 0 ? neetoCist.noop : _ref$onConnect,
457
+ _ref$onDisconnect = _ref.onDisconnect,
458
+ onDisconnect = _ref$onDisconnect === void 0 ? neetoCist.noop : _ref$onDisconnect;
459
+ var _useQueryParams = reactUtils.useQueryParams(),
460
+ connect = _useQueryParams.connect;
461
+ var _useFetchDaily = useFetchDaily(),
462
+ _useFetchDaily$data = _useFetchDaily.data,
463
+ _useFetchDaily$data2 = _useFetchDaily$data === void 0 ? {} : _useFetchDaily$data,
464
+ _useFetchDaily$data2$ = _useFetchDaily$data2.metadata,
465
+ metadata = _useFetchDaily$data2$ === void 0 ? {} : _useFetchDaily$data2$;
466
+ var _ref2 = metadata || {},
467
+ _ref2$apiKey = _ref2.apiKey,
468
+ apiKey = _ref2$apiKey === void 0 ? null : _ref2$apiKey;
469
+ if (neetoCist.isPresent(apiKey) && !isOnboarding || !connect) {
470
+ return /*#__PURE__*/jsxRuntime.jsx(Manage$1, {
471
+ description: description,
472
+ onDisconnect: onDisconnect
473
+ });
474
+ }
475
+ return /*#__PURE__*/jsxRuntime.jsx(Form$1, {
476
+ helpDocUrl: helpDocUrl,
477
+ onConnect: onConnect,
478
+ videoUrl: videoUrl
479
+ });
480
+ };
481
+ reactUtils.withTitle(Daily, i18next__default["default"].t("neetoIntegrations.browserTitles.integrations.dailyco"));
482
+
483
+ [{
484
+ step: "1",
485
+ label: i18next.t("neetoIntegrations.common.connect"),
486
+ isActive: true,
487
+ isCompleted: false
488
+ }, {
489
+ step: "2",
490
+ label: i18next.t("neetoIntegrations.common.finish"),
491
+ isActive: false,
492
+ isCompleted: false
493
+ }];
494
+ ({
495
+ connect: i18next.t("neetoIntegrations.common.connect"),
496
+ finish: i18next.t("neetoIntegrations.common.finish")
497
+ });
498
+
499
+ function getDefaultExportFromCjs (x) {
500
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
501
+ }
502
+
503
+ var propTypes = {exports: {}};
504
+
505
+ /**
506
+ * Copyright (c) 2013-present, Facebook, Inc.
507
+ *
508
+ * This source code is licensed under the MIT license found in the
509
+ * LICENSE file in the root directory of this source tree.
510
+ */
511
+ var ReactPropTypesSecret$1 = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
512
+ var ReactPropTypesSecret_1 = ReactPropTypesSecret$1;
513
+
514
+ /**
515
+ * Copyright (c) 2013-present, Facebook, Inc.
516
+ *
517
+ * This source code is licensed under the MIT license found in the
518
+ * LICENSE file in the root directory of this source tree.
519
+ */
520
+ var ReactPropTypesSecret = ReactPropTypesSecret_1;
521
+ function emptyFunction() {}
522
+ function emptyFunctionWithReset() {}
523
+ emptyFunctionWithReset.resetWarningCache = emptyFunction;
524
+ var factoryWithThrowingShims = function factoryWithThrowingShims() {
525
+ function shim(props, propName, componentName, location, propFullName, secret) {
526
+ if (secret === ReactPropTypesSecret) {
527
+ // It is still safe when called from React.
528
+ return;
529
+ }
530
+ var err = new Error('Calling PropTypes validators directly is not supported by the `prop-types` package. ' + 'Use PropTypes.checkPropTypes() to call them. ' + 'Read more at http://fb.me/use-check-prop-types');
531
+ err.name = 'Invariant Violation';
532
+ throw err;
533
+ }
534
+ shim.isRequired = shim;
535
+ function getShim() {
536
+ return shim;
537
+ }
538
+ // Important!
539
+ // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
540
+ var ReactPropTypes = {
541
+ array: shim,
542
+ bigint: shim,
543
+ bool: shim,
544
+ func: shim,
545
+ number: shim,
546
+ object: shim,
547
+ string: shim,
548
+ symbol: shim,
549
+ any: shim,
550
+ arrayOf: getShim,
551
+ element: shim,
552
+ elementType: shim,
553
+ instanceOf: getShim,
554
+ node: shim,
555
+ objectOf: getShim,
556
+ oneOf: getShim,
557
+ oneOfType: getShim,
558
+ shape: getShim,
559
+ exact: getShim,
560
+ checkPropTypes: emptyFunctionWithReset,
561
+ resetWarningCache: emptyFunction
562
+ };
563
+ ReactPropTypes.PropTypes = ReactPropTypes;
564
+ return ReactPropTypes;
565
+ };
566
+
567
+ /**
568
+ * Copyright (c) 2013-present, Facebook, Inc.
569
+ *
570
+ * This source code is licensed under the MIT license found in the
571
+ * LICENSE file in the root directory of this source tree.
572
+ */
573
+ {
574
+ // By explicitly using `prop-types` you are opting into new production behavior.
575
+ // http://fb.me/prop-types-in-prod
576
+ propTypes.exports = factoryWithThrowingShims();
577
+ }
578
+ var propTypesExports = propTypes.exports;
579
+ var PropTypes = /*@__PURE__*/getDefaultExportFromCjs(propTypesExports);
580
+
581
+ function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
582
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
583
+ var Connect = reactUtils.withT(function (_ref) {
584
+ var t = _ref.t,
585
+ Icon = _ref.Icon,
586
+ _ref$title = _ref.title,
587
+ title = _ref$title === void 0 ? "" : _ref$title,
588
+ _ref$description = _ref.description,
589
+ description = _ref$description === void 0 ? "" : _ref$description,
590
+ _ref$buttonProps = _ref.buttonProps,
591
+ buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
592
+ _ref$onConnect = _ref.onConnect,
593
+ onConnect = _ref$onConnect === void 0 ? neetoCist.noop : _ref$onConnect,
594
+ children = _ref.children,
595
+ secondaryButtonProps = _ref.secondaryButtonProps;
596
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
597
+ className: "mx-auto w-full max-w-3xl",
598
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
599
+ className: "mb-6 flex flex-col gap-y-2",
600
+ children: [/*#__PURE__*/jsxRuntime.jsx(Icon, {
601
+ size: 48
602
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
603
+ className: "flex flex-col gap-y-1",
604
+ children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
605
+ style: "h2",
606
+ children: title
607
+ }), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
608
+ style: "body2",
609
+ children: description
610
+ })]
611
+ })]
612
+ }), children, /*#__PURE__*/jsxRuntime.jsxs("div", {
613
+ className: "flex w-full items-center gap-x-3",
614
+ children: [/*#__PURE__*/jsxRuntime.jsx(Button__default["default"], _objectSpread$2({
615
+ label: t("neetoIntegrations.common.connect"),
616
+ onClick: onConnect
617
+ }, buttonProps)), secondaryButtonProps && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], _objectSpread$2({
618
+ style: "secondary"
619
+ }, secondaryButtonProps))]
620
+ })]
621
+ });
622
+ });
623
+ Connect.prototypes = {
624
+ /**
625
+ * To specify the Icon to be shown
626
+ */
627
+ Icon: PropTypes.node,
628
+ /**
629
+ * To specify the title of the connect component
630
+ */
631
+ title: PropTypes.string,
632
+ /**
633
+ * To specify the description for connect component
634
+ */
635
+ description: PropTypes.string,
636
+ /**
637
+ * To specify the props for the connect button
638
+ */
639
+ buttonProps: PropTypes.object,
640
+ /**
641
+ * Handler function that is triggered when the connect button is clicked.
642
+ */
643
+ onConnect: PropTypes.func
644
+ };
645
+
646
+ ({
647
+ /**
648
+ * To specify whether the integration modal should be opened or closed.
649
+ */
650
+ onClose: PropTypes.func,
651
+ /**
652
+ * To specify the walkthrough video link
653
+ */
654
+ videoUrl: PropTypes.string,
655
+ /**
656
+ * To specify the title of the demo component
657
+ */
658
+ title: PropTypes.string,
659
+ /**
660
+ * To specify the subtitle of the demo component
661
+ */
662
+ subtitle: PropTypes.string,
663
+ /**
664
+ * To specify the title of the video in the iframe
665
+ */
666
+ iframeTitle: PropTypes.string
667
+ });
668
+
669
+ var _path, _defs;
670
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
671
+ const SvgSuccess = props => /*#__PURE__*/React__namespace.createElement("svg", _extends({
672
+ xmlns: "http://www.w3.org/2000/svg",
673
+ xmlnsXlink: "http://www.w3.org/1999/xlink",
674
+ width: 72,
675
+ height: 72,
676
+ fill: "none"
677
+ }, props), _path || (_path = /*#__PURE__*/React__namespace.createElement("path", {
678
+ fill: "url(#success_svg__a)",
679
+ d: "M0 0h72v72H0z"
680
+ })), _defs || (_defs = /*#__PURE__*/React__namespace.createElement("defs", null, /*#__PURE__*/React__namespace.createElement("pattern", {
681
+ id: "success_svg__a",
682
+ width: 1,
683
+ height: 1,
684
+ patternContentUnits: "objectBoundingBox"
685
+ }, /*#__PURE__*/React__namespace.createElement("use", {
686
+ xlinkHref: "#success_svg__b",
687
+ transform: "scale(.0029)"
688
+ })), /*#__PURE__*/React__namespace.createElement("image", {
689
+ xlinkHref: "data:image/png;base64,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WkH/ssvowWQz/YBFlR9ZwAICIBBXAqH1YL0OD+gniPJkO18J3kBp9lTfTfSi+yrepx+Li6hNPxZpEACBeBIIrcB6MXogzynR+Y4q6k0zkpIv/0/E5X8eVtgFArElEMoQgU/hAbz4L7ZfEzQcBEojEEoP1sPwAES1tPMKuUAABJhAKAXW5fAARBVfDRAAASMEQhcicCk8AFE1cjqhEBAAgWwCofNgDYYHIKrZZwLWQQAEjBMIncA6DA9AVI2fQigQBEAgF4FQhQjkMurTXkEbuDGVuRrUzXaIajdQsAkEQMB9AqHyYNvK6Tz+RShEXCGq7p87qAEEQKAHAqES2B7CAxDVHjobu0EABLwlEJoQQY7wAETV2/MFtYEACBRBIDQebFZ4AKJaRAfjUBAAAf8IhEZgyaKUSNO4suG0RE0F6B8y1AwCIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAAC7hD4/8l256QQPdLRAAAAAElFTkSuQmCC",
690
+ id: "success_svg__b",
691
+ width: 344,
692
+ height: 344
693
+ }))));
694
+
695
+ function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
696
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
697
+ var Finish = reactUtils.withT(function (_ref) {
698
+ var t = _ref.t,
699
+ _ref$onClick = _ref.onClick,
700
+ onClick = _ref$onClick === void 0 ? neetoCist.noop : _ref$onClick,
701
+ _ref$title = _ref.title,
702
+ title = _ref$title === void 0 ? "" : _ref$title,
703
+ _ref$buttonProps = _ref.buttonProps,
704
+ buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
705
+ _ref$secondaryButtonP = _ref.secondaryButtonProps,
706
+ secondaryButtonProps = _ref$secondaryButtonP === void 0 ? {} : _ref$secondaryButtonP,
707
+ children = _ref.children;
708
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
709
+ className: "mx-auto w-full max-w-3xl",
710
+ children: [/*#__PURE__*/jsxRuntime.jsx(SvgSuccess, {}), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
711
+ className: "mb-6 mt-4",
712
+ style: "h2",
713
+ weight: "semibold",
714
+ children: title
715
+ }), children, /*#__PURE__*/jsxRuntime.jsxs("div", {
716
+ className: "flex w-full items-center gap-x-2",
717
+ children: [/*#__PURE__*/jsxRuntime.jsx(Button__default["default"], _objectSpread$1({
718
+ onClick: onClick,
719
+ label: t("neetoIntegrations.common.continue")
720
+ }, buttonProps)), neetoCist.isNotEmpty(secondaryButtonProps) && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], _objectSpread$1({
721
+ style: "secondary"
722
+ }, secondaryButtonProps))]
723
+ })]
724
+ });
725
+ });
726
+ Finish.prototypes = {
727
+ /**
728
+ * To specify whether the integration modal should be opened or closed.
729
+ */
730
+ onClick: PropTypes.func,
731
+ /**
732
+ * To show the title of the Finish component
733
+ */
734
+ title: PropTypes.string,
735
+ /**
736
+ * To specify props for primary button
737
+ */
738
+ buttonProps: PropTypes.object,
739
+ /**
740
+ * To specify props for secondary button
741
+ */
742
+ secondaryButtonProps: PropTypes.object
743
+ };
744
+
745
+ var e = [],
746
+ t = [];
747
+ function n(n, r) {
748
+ if (n && "undefined" != typeof document) {
749
+ var a,
750
+ s = !0 === r.prepend ? "prepend" : "append",
751
+ d = !0 === r.singleTag,
752
+ i = "string" == typeof r.container ? document.querySelector(r.container) : document.getElementsByTagName("head")[0];
753
+ if (d) {
754
+ var u = e.indexOf(i);
755
+ -1 === u && (u = e.push(i) - 1, t[u] = {}), a = t[u] && t[u][s] ? t[u][s] : t[u][s] = c();
756
+ } else a = c();
757
+ 65279 === n.charCodeAt(0) && (n = n.substring(1)), a.styleSheet ? a.styleSheet.cssText += n : a.appendChild(document.createTextNode(n));
758
+ }
759
+ function c() {
760
+ var e = document.createElement("style");
761
+ 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]]);
762
+ var a = "prepend" === s ? "afterbegin" : "beforeend";
763
+ return i.insertAdjacentElement(a, e), e;
764
+ }
765
+ }
766
+
767
+ var css = ".intrinsic-container{height:0;overflow:hidden;position:relative}.intrinsic-container-16x9{padding-bottom:56.25%}.intrinsic-container-4x3{padding-bottom:75%}.intrinsic-container iframe{height:100%;left:0;position:absolute;top:0;width:100%}";
768
+ n(css,{});
769
+
770
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
771
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
772
+ var Manage = reactUtils.withT(function (_ref) {
773
+ var t = _ref.t,
774
+ _ref$title = _ref.title,
775
+ title = _ref$title === void 0 ? "" : _ref$title,
776
+ _ref$description = _ref.description,
777
+ description = _ref$description === void 0 ? "" : _ref$description,
778
+ _ref$integration = _ref.integration,
779
+ integration = _ref$integration === void 0 ? "" : _ref$integration,
780
+ _ref$isDisconnectAler = _ref.isDisconnectAlertOpen,
781
+ isDisconnectAlertOpen = _ref$isDisconnectAler === void 0 ? false : _ref$isDisconnectAler,
782
+ _ref$setIsDisconnectA = _ref.setIsDisconnectAlertOpen,
783
+ setIsDisconnectAlertOpen = _ref$setIsDisconnectA === void 0 ? neetoCist.noop : _ref$setIsDisconnectA,
784
+ _ref$isDisconnecting = _ref.isDisconnecting,
785
+ isDisconnecting = _ref$isDisconnecting === void 0 ? false : _ref$isDisconnecting,
786
+ _ref$onConnect = _ref.onConnect,
787
+ onConnect = _ref$onConnect === void 0 ? undefined : _ref$onConnect,
788
+ _ref$onDisconnect = _ref.onDisconnect,
789
+ onDisconnect = _ref$onDisconnect === void 0 ? undefined : _ref$onDisconnect,
790
+ _ref$onClose = _ref.onClose,
791
+ onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
792
+ _ref$Icon = _ref.Icon,
793
+ Icon = _ref$Icon === void 0 ? null : _ref$Icon,
794
+ _ref$isConnected = _ref.isConnected,
795
+ isConnected = _ref$isConnected === void 0 ? false : _ref$isConnected,
796
+ _ref$connectPath = _ref.connectPath,
797
+ connectPath = _ref$connectPath === void 0 ? "" : _ref$connectPath,
798
+ _ref$connectUrl = _ref.connectUrl,
799
+ connectUrl = _ref$connectUrl === void 0 ? "" : _ref$connectUrl,
800
+ _ref$helpDocUrl = _ref.helpDocUrl,
801
+ helpDocUrl = _ref$helpDocUrl === void 0 ? "" : _ref$helpDocUrl,
802
+ _ref$managePath = _ref.managePath,
803
+ managePath = _ref$managePath === void 0 ? "" : _ref$managePath,
804
+ _ref$manageUrl = _ref.manageUrl,
805
+ manageUrl = _ref$manageUrl === void 0 ? "" : _ref$manageUrl,
806
+ _ref$integrationName = _ref.integrationName,
807
+ integrationName = _ref$integrationName === void 0 ? "" : _ref$integrationName,
808
+ _ref$disconnectMessag = _ref.disconnectMessage,
809
+ disconnectMessage = _ref$disconnectMessag === void 0 ? "" : _ref$disconnectMessag,
810
+ _ref$disconnectTitle = _ref.disconnectTitle,
811
+ disconnectTitle = _ref$disconnectTitle === void 0 ? "" : _ref$disconnectTitle,
812
+ _ref$isConnectDisable = _ref.isConnectDisabled,
813
+ isConnectDisabled = _ref$isConnectDisable === void 0 ? false : _ref$isConnectDisable,
814
+ _ref$connectTooltipPr = _ref.connectTooltipProps,
815
+ connectTooltipProps = _ref$connectTooltipPr === void 0 ? null : _ref$connectTooltipPr;
816
+ return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
817
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
818
+ className: "mx-auto w-full max-w-3xl",
819
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
820
+ className: "neeto-ui-border-gray-300 neeto-ui-rounded-xl mt-10 w-full space-y-4 border p-6",
821
+ children: [Icon && /*#__PURE__*/jsxRuntime.jsx(Icon, {
822
+ className: "neeto-ui-text-gray-600",
823
+ size: 48
824
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
825
+ className: "space-y-2",
826
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
827
+ className: "flex items-center space-x-4",
828
+ children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
829
+ className: "neeto-ui-text-gray-800 mb-0.5",
830
+ style: "h2",
831
+ weight: "semibold",
832
+ children: title
833
+ }), isConnected && /*#__PURE__*/jsxRuntime.jsx("div", {
834
+ className: "neeto-ui-bg-success-500 neeto-ui-text-white neeto-ui-rounded-full flex items-center justify-center p-1",
835
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoIcons.Check, {
836
+ size: 24
837
+ })
838
+ })]
839
+ }), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
840
+ style: "body1",
841
+ weight: "normal",
842
+ className: classnames__default["default"]("neeto-ui-text-gray-800", {
843
+ "break-all": isConnected
844
+ }),
845
+ children: description
846
+ }), helpDocUrl && /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
847
+ className: "neeto-ui-text-gray-800",
848
+ style: "body2",
849
+ weight: "normal",
850
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
851
+ i18nKey: "neetoIntegrations.common.helpDocUrl",
852
+ components: {
853
+ helpLink: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
854
+ href: helpDocUrl,
855
+ style: "link",
856
+ target: "_blank"
857
+ })
858
+ },
859
+ values: {
860
+ integration: integrationName || neetoCist.humanize(integration)
861
+ }
862
+ })
863
+ })]
864
+ }), isConnected ? /*#__PURE__*/jsxRuntime.jsxs("div", {
865
+ className: "space-x-2",
866
+ children: [(managePath || manageUrl) && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
867
+ "data-cy": "manage-button",
868
+ href: manageUrl,
869
+ target: manageUrl ? "_blank" : "_self",
870
+ to: managePath,
871
+ label: t("neetoIntegrations.common.manageIntegration", {
872
+ integration: integrationName || neetoCist.humanize(integration)
873
+ })
874
+ }), onDisconnect && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
875
+ "data-cy": "disconnect-button",
876
+ style: "secondary",
877
+ label: t("neetoIntegrations.common.disconnectIntegration", {
878
+ integration: integrationName || neetoCist.humanize(integration)
879
+ }),
880
+ onClick: function onClick() {
881
+ return setIsDisconnectAlertOpen(true);
882
+ }
883
+ })]
884
+ }) : /*#__PURE__*/jsxRuntime.jsx("div", {
885
+ children: /*#__PURE__*/jsxRuntime.jsx(Tooltip__default["default"], _objectSpread(_objectSpread({
886
+ disabled: !isConnectDisabled
887
+ }, connectTooltipProps), {}, {
888
+ children: /*#__PURE__*/jsxRuntime.jsx("span", {
889
+ children: (connectPath || connectUrl || onConnect) && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
890
+ "data-cy": "connect-button",
891
+ disabled: isConnectDisabled,
892
+ href: connectUrl,
893
+ to: connectPath,
894
+ label: t("neetoIntegrations.common.connectIntegration", {
895
+ integration: integrationName || neetoCist.humanize(integration)
896
+ }),
897
+ onClick: onConnect
898
+ })
899
+ })
900
+ }))
901
+ })]
902
+ })
903
+ }), /*#__PURE__*/jsxRuntime.jsx(DisconnectAlert__default["default"], {
904
+ isDisconnecting: isDisconnecting,
905
+ onClose: onClose,
906
+ onDisconnect: onDisconnect,
907
+ isOpen: isDisconnectAlertOpen,
908
+ message: disconnectMessage || t("settings.integrations.".concat(integration, ".disconnect.message")),
909
+ title: disconnectTitle || t("settings.integrations.".concat(integration, ".disconnect.title"))
910
+ })]
911
+ });
912
+ });
913
+
914
+ var show = function show() {
915
+ return axios__default["default"].get(INTEGRATION_DETAILS_URL, {
916
+ params: {
917
+ serviceName: "Zoom",
918
+ integrableType: "User"
919
+ }
920
+ });
921
+ };
922
+ var destroy = function destroy() {
923
+ return axios__default["default"]["delete"]("".concat(INTEGRATIONS_ENGINE_ZOOM_URL, "/oauth"));
924
+ };
925
+ var zoomApi = {
926
+ show: show,
927
+ destroy: destroy
928
+ };
929
+
930
+ var useShowZoom = function useShowZoom() {
931
+ return reactQuery.useQuery({
932
+ queryKey: [QUERY_KEYS.ZOOM_DETAILS],
933
+ queryFn: zoomApi.show,
934
+ staleTime: constants.DEFAULT_STALE_TIME
935
+ });
936
+ };
937
+ var useDestroyZoom = function useDestroyZoom(_ref) {
938
+ var _onSuccess = _ref.onSuccess;
939
+ return reactUtils.useMutationWithInvalidation(zoomApi.destroy, {
940
+ keysToInvalidate: [QUERY_KEYS.ZOOM_DETAILS],
941
+ onSuccess: function onSuccess() {
942
+ return _onSuccess === null || _onSuccess === void 0 ? void 0 : _onSuccess();
943
+ }
944
+ });
945
+ };
946
+
947
+ var Zoom = function Zoom(_ref) {
948
+ var _ref$connectUrl = _ref.connectUrl,
949
+ connectUrl = _ref$connectUrl === void 0 ? "" : _ref$connectUrl,
950
+ _ref$description = _ref.description,
951
+ description = _ref$description === void 0 ? "" : _ref$description,
952
+ _ref$onDisconnect = _ref.onDisconnect,
953
+ onDisconnect = _ref$onDisconnect === void 0 ? neetoCist.noop : _ref$onDisconnect;
954
+ var _useTranslation = reactI18next.useTranslation(),
955
+ t = _useTranslation.t;
956
+ var _useState = React.useState(false),
957
+ _useState2 = _slicedToArray(_useState, 2),
958
+ isDisconnectAlertOpen = _useState2[0],
959
+ setIsDisconnectAlertOpen = _useState2[1];
960
+ var _useShowZoom = useShowZoom(),
961
+ _useShowZoom$data = _useShowZoom.data,
962
+ _useShowZoom$data2 = _useShowZoom$data === void 0 ? {} : _useShowZoom$data,
963
+ _useShowZoom$data2$me = _useShowZoom$data2.metadata,
964
+ _useShowZoom$data2$me2 = _useShowZoom$data2$me === void 0 ? {} : _useShowZoom$data2$me,
965
+ _useShowZoom$data2$me3 = _useShowZoom$data2$me2.email,
966
+ email = _useShowZoom$data2$me3 === void 0 ? "" : _useShowZoom$data2$me3,
967
+ isLoading = _useShowZoom.isLoading;
968
+ var _useDestroyZoom = useDestroyZoom({
969
+ onSuccess: function onSuccess() {
970
+ setIsDisconnectAlertOpen(false);
971
+ onDisconnect === null || onDisconnect === void 0 || onDisconnect();
972
+ }
973
+ }),
974
+ destroyIntegration = _useDestroyZoom.mutate,
975
+ isDisconnecting = _useDestroyZoom.isPending;
976
+ var isConnected = neetoCist.isPresent(email);
977
+ var handleDisconnect = function handleDisconnect() {
978
+ return destroyIntegration("zoom");
979
+ };
980
+ if (isLoading) return /*#__PURE__*/jsxRuntime.jsx(PageLoader__default["default"], {});
981
+ return /*#__PURE__*/jsxRuntime.jsx(Manage, {
982
+ connectUrl: connectUrl,
983
+ isConnected: isConnected,
984
+ isDisconnectAlertOpen: isDisconnectAlertOpen,
985
+ isDisconnecting: isDisconnecting,
986
+ setIsDisconnectAlertOpen: setIsDisconnectAlertOpen,
987
+ Icon: misc.Zoom,
988
+ integration: "zoom",
989
+ description: isConnected ? /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
990
+ components: {
991
+ underline: /*#__PURE__*/jsxRuntime.jsx("u", {
992
+ className: "font-medium"
993
+ })
994
+ },
995
+ i18nKey: "neetoIntegrations.zoom.account",
996
+ values: {
997
+ email: email
998
+ }
999
+ }) : description,
1000
+ title: isConnected ? t("neetoIntegrations.zoom.connected") : t("neetoIntegrations.zoom.connect"),
1001
+ onClose: function onClose() {
1002
+ return setIsDisconnectAlertOpen(false);
1003
+ },
1004
+ onDisconnect: function onDisconnect() {
1005
+ return handleDisconnect();
1006
+ }
1007
+ });
1008
+ };
1009
+
1010
+ module.exports = Zoom;
1011
+ //# sourceMappingURL=Zoom.cjs.js.map