@bigbinary/neeto-integrations-frontend 2.12.3 → 2.12.5
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/README.md +4 -0
- package/app/javascript/src/translations/en.json +5 -2
- package/dist/Daily.cjs.js +114 -95
- package/dist/Daily.cjs.js.map +1 -1
- package/dist/Daily.js +109 -93
- package/dist/Daily.js.map +1 -1
- package/dist/GoogleCalender.cjs.js +80 -62
- package/dist/GoogleCalender.cjs.js.map +1 -1
- package/dist/GoogleCalender.js +76 -61
- package/dist/GoogleCalender.js.map +1 -1
- package/dist/ZapierForm.cjs.js +7 -11
- package/dist/ZapierForm.cjs.js.map +1 -1
- package/dist/ZapierForm.js +7 -12
- package/dist/ZapierForm.js.map +1 -1
- package/dist/Zoom.cjs.js +68 -49
- package/dist/Zoom.cjs.js.map +1 -1
- package/dist/Zoom.js +65 -49
- package/dist/Zoom.js.map +1 -1
- package/dist/index.cjs.js +93 -80
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +89 -79
- package/dist/index.js.map +1 -1
- package/package.json +13 -12
package/dist/index.cjs.js
CHANGED
|
@@ -7,21 +7,24 @@ var DisconnectAlert = require('@bigbinary/neeto-molecules/IntegrationDisconnectA
|
|
|
7
7
|
var WalkthroughModal = require('@bigbinary/neeto-molecules/IntegrationWalkthroughModal');
|
|
8
8
|
var React = require('react');
|
|
9
9
|
var classnames = require('classnames');
|
|
10
|
-
var i18next = require('i18next');
|
|
11
10
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
12
11
|
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
12
|
+
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
13
|
+
var neetoui = require('@bigbinary/neetoui');
|
|
14
|
+
var reactI18next = require('react-i18next');
|
|
15
|
+
var i18next = require('i18next');
|
|
13
16
|
var constants = require('@bigbinary/neeto-commons-frontend/constants');
|
|
14
17
|
var reactQuery = require('react-query');
|
|
15
18
|
var axios = require('axios');
|
|
19
|
+
var Container = require('@bigbinary/neeto-molecules/Container');
|
|
20
|
+
var Header = require('@bigbinary/neeto-molecules/Header');
|
|
21
|
+
var HelpPopover = require('@bigbinary/neeto-molecules/HelpPopover');
|
|
22
|
+
var PageLoader = require('@bigbinary/neeto-molecules/PageLoader');
|
|
23
|
+
var formik = require('@bigbinary/neetoui/formik');
|
|
16
24
|
var utils = require('@bigbinary/neeto-commons-frontend/utils');
|
|
17
25
|
var misc = require('@bigbinary/neeto-icons/misc');
|
|
18
|
-
var neetoui = require('@bigbinary/neetoui');
|
|
19
|
-
var reactI18next = require('react-i18next');
|
|
20
|
-
var formik = require('@bigbinary/neetoui/formik');
|
|
21
26
|
var ramda = require('ramda');
|
|
22
27
|
var yup = require('yup');
|
|
23
|
-
var PageLoader = require('@bigbinary/neeto-molecules/PageLoader');
|
|
24
|
-
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
25
28
|
|
|
26
29
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
27
30
|
|
|
@@ -51,8 +54,11 @@ var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
|
51
54
|
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
52
55
|
var i18next__default = /*#__PURE__*/_interopDefaultLegacy(i18next);
|
|
53
56
|
var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
|
|
54
|
-
var
|
|
57
|
+
var Container__default = /*#__PURE__*/_interopDefaultLegacy(Container);
|
|
58
|
+
var Header__default = /*#__PURE__*/_interopDefaultLegacy(Header);
|
|
59
|
+
var HelpPopover__default = /*#__PURE__*/_interopDefaultLegacy(HelpPopover);
|
|
55
60
|
var PageLoader__default = /*#__PURE__*/_interopDefaultLegacy(PageLoader);
|
|
61
|
+
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
56
62
|
|
|
57
63
|
function _extends$1() {
|
|
58
64
|
_extends$1 = Object.assign ? Object.assign.bind() : function (target) {
|
|
@@ -119,7 +125,7 @@ var Manage$1 = reactUtils.withT(function (_ref) {
|
|
|
119
125
|
className: "neeto-ui-border-gray-300 neeto-ui-rounded-xl mt-10 w-full space-y-4 border p-6"
|
|
120
126
|
}, Icon && /*#__PURE__*/React__default["default"].createElement(Icon, {
|
|
121
127
|
className: "neeto-ui-text-gray-600",
|
|
122
|
-
size:
|
|
128
|
+
size: 48
|
|
123
129
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
124
130
|
className: "space-y-2"
|
|
125
131
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
@@ -395,7 +401,8 @@ var DAILY_CO_VALIDATION_SCHEMA = yup__namespace.object().shape({
|
|
|
395
401
|
var Form = function Form(_ref) {
|
|
396
402
|
var helpDocUrl = _ref.helpDocUrl,
|
|
397
403
|
videoUrl = _ref.videoUrl,
|
|
398
|
-
onConnect = _ref.onConnect
|
|
404
|
+
onConnect = _ref.onConnect,
|
|
405
|
+
breadcrumbs = _ref.breadcrumbs;
|
|
399
406
|
var _useTranslation = reactI18next.useTranslation(),
|
|
400
407
|
t = _useTranslation.t;
|
|
401
408
|
var _useState = React.useState(false),
|
|
@@ -415,7 +422,37 @@ var Form = function Form(_ref) {
|
|
|
415
422
|
if (isConnecting) {
|
|
416
423
|
return /*#__PURE__*/React__default["default"].createElement(PageLoader__default["default"], null);
|
|
417
424
|
}
|
|
418
|
-
return /*#__PURE__*/React__default["default"].createElement("
|
|
425
|
+
return /*#__PURE__*/React__default["default"].createElement(Container__default["default"], {
|
|
426
|
+
isHeaderFixed: true
|
|
427
|
+
}, /*#__PURE__*/React__default["default"].createElement(Header__default["default"], {
|
|
428
|
+
breadcrumbs: breadcrumbs,
|
|
429
|
+
title: /*#__PURE__*/React__default["default"].createElement("span", {
|
|
430
|
+
className: "flex items-center gap-2"
|
|
431
|
+
}, t("neetoIntegrations.daily.connect.title"), /*#__PURE__*/React__default["default"].createElement(HelpPopover__default["default"], {
|
|
432
|
+
title: t("neetoIntegrations.daily.connect.title"),
|
|
433
|
+
description: /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
434
|
+
i18nKey: "neetoIntegrations.daily.helpDoc",
|
|
435
|
+
components: {
|
|
436
|
+
externalLink: /*#__PURE__*/React__default["default"].createElement(ExternalLink$1, {
|
|
437
|
+
"data-cy": "api-key-help-doc-link",
|
|
438
|
+
href: helpDocUrl,
|
|
439
|
+
rel: "noreferrer",
|
|
440
|
+
target: "_blank"
|
|
441
|
+
})
|
|
442
|
+
}
|
|
443
|
+
}),
|
|
444
|
+
helpLinkProps: {
|
|
445
|
+
label: /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
446
|
+
className: "mt-8",
|
|
447
|
+
label: t("neetoIntegrations.daily.walkthroughText"),
|
|
448
|
+
style: "link",
|
|
449
|
+
onClick: function onClick() {
|
|
450
|
+
return setIsDemoModalOpen(true);
|
|
451
|
+
}
|
|
452
|
+
})
|
|
453
|
+
}
|
|
454
|
+
}))
|
|
455
|
+
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
419
456
|
className: "mx-auto w-full max-w-md"
|
|
420
457
|
}, /*#__PURE__*/React__default["default"].createElement(formik.Form, {
|
|
421
458
|
formikProps: {
|
|
@@ -426,32 +463,14 @@ var Form = function Form(_ref) {
|
|
|
426
463
|
}, function (_ref2) {
|
|
427
464
|
var dirty = _ref2.dirty;
|
|
428
465
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
429
|
-
className: "mt-
|
|
466
|
+
className: "mt-14 w-full space-y-5"
|
|
430
467
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
431
|
-
className: "block"
|
|
468
|
+
className: "block min-h-20"
|
|
432
469
|
}, /*#__PURE__*/React__default["default"].createElement(formik.Input, {
|
|
433
470
|
autoFocus: true,
|
|
434
471
|
required: true,
|
|
435
472
|
label: t("neetoIntegrations.daily.apiKey"),
|
|
436
|
-
name: "apiKey"
|
|
437
|
-
helpText: /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
438
|
-
i18nKey: "neetoIntegrations.daily.helpDoc",
|
|
439
|
-
components: {
|
|
440
|
-
externalLink: /*#__PURE__*/React__default["default"].createElement(ExternalLink$1, {
|
|
441
|
-
"data-cy": "api-key-help-doc-link",
|
|
442
|
-
href: helpDocUrl,
|
|
443
|
-
rel: "noreferrer",
|
|
444
|
-
target: "_blank"
|
|
445
|
-
})
|
|
446
|
-
}
|
|
447
|
-
})
|
|
448
|
-
}), /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
449
|
-
className: "mt-8",
|
|
450
|
-
label: t("neetoIntegrations.daily.walkthroughText"),
|
|
451
|
-
style: "link",
|
|
452
|
-
onClick: function onClick() {
|
|
453
|
-
return setIsDemoModalOpen(true);
|
|
454
|
-
}
|
|
473
|
+
name: "apiKey"
|
|
455
474
|
})), /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
456
475
|
disabled: isConnecting || !dirty,
|
|
457
476
|
label: t("neetoIntegrations.common.connect"),
|
|
@@ -464,7 +483,7 @@ var Form = function Form(_ref) {
|
|
|
464
483
|
onClose: function onClose() {
|
|
465
484
|
return setIsDemoModalOpen(false);
|
|
466
485
|
}
|
|
467
|
-
}));
|
|
486
|
+
})));
|
|
468
487
|
};
|
|
469
488
|
var Form$1 = reactUtils.withTitle(Form, i18next__default["default"].t("neetoIntegrations.browserTitles.integrations.dailyco"));
|
|
470
489
|
|
|
@@ -520,7 +539,7 @@ var Manage = function Manage(_ref) {
|
|
|
520
539
|
apiKey: apiKey
|
|
521
540
|
}
|
|
522
541
|
}) : description,
|
|
523
|
-
title: isConnected ? t("neetoIntegrations.daily.connected") : t("neetoIntegrations.daily.connect"),
|
|
542
|
+
title: isConnected ? t("neetoIntegrations.daily.connected") : t("neetoIntegrations.daily.connect.account"),
|
|
524
543
|
onClose: function onClose() {
|
|
525
544
|
return setIsDisconnectAlertOpen(false);
|
|
526
545
|
},
|
|
@@ -632,15 +651,14 @@ var GoogleCalendar = function GoogleCalendar(_ref) {
|
|
|
632
651
|
isOpen: true,
|
|
633
652
|
onClose: handleClose
|
|
634
653
|
}, activeTab === STEPS.connect && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
635
|
-
className: "w-full max-w-
|
|
654
|
+
className: "mx-auto w-full max-w-3xl"
|
|
636
655
|
}, /*#__PURE__*/React__default["default"].createElement(misc.GoogleCalendar, {
|
|
637
|
-
size:
|
|
656
|
+
size: 48
|
|
638
657
|
}), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
639
|
-
className: "
|
|
640
|
-
style: "h2"
|
|
641
|
-
weight: "semibold"
|
|
658
|
+
className: "mb-4 mt-2",
|
|
659
|
+
style: "h2"
|
|
642
660
|
}, t("neetoIntegrations.google.connect.title")), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
643
|
-
className: "flex flex-col items-start
|
|
661
|
+
className: "flex w-full flex-col items-start"
|
|
644
662
|
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Callout, {
|
|
645
663
|
className: "block leading-5"
|
|
646
664
|
}, /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
@@ -652,7 +670,7 @@ var GoogleCalendar = function GoogleCalendar(_ref) {
|
|
|
652
670
|
selectCheckbox: t("neetoIntegrations.google.connect.selectCheckbox")
|
|
653
671
|
}
|
|
654
672
|
})), permissionImage && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
655
|
-
className: "
|
|
673
|
+
className: "neeto-ui-border-gray-300 neeto-ui-rounded-md my-4 overflow-hidden border"
|
|
656
674
|
}, /*#__PURE__*/React__default["default"].createElement("img", {
|
|
657
675
|
src: permissionImage
|
|
658
676
|
}))), /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
@@ -1080,7 +1098,7 @@ var Modal = function Modal(_ref) {
|
|
|
1080
1098
|
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Modal.Header, null, /*#__PURE__*/React__default["default"].createElement(Stepper, {
|
|
1081
1099
|
steps: steps
|
|
1082
1100
|
})), /*#__PURE__*/React__default["default"].createElement(neetoui.Modal.Body, {
|
|
1083
|
-
className: "neeto-ui-flex neeto-ui-justify-center neeto-ui-
|
|
1101
|
+
className: "neeto-ui-flex neeto-ui-justify-center neeto-ui-flex-grow"
|
|
1084
1102
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1085
1103
|
className: "neeto-ui-w-full py-10"
|
|
1086
1104
|
}, children)));
|
|
@@ -1182,23 +1200,23 @@ var Connect = reactUtils.withT(function (_ref) {
|
|
|
1182
1200
|
children = _ref.children,
|
|
1183
1201
|
secondaryButtonProps = _ref.secondaryButtonProps;
|
|
1184
1202
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1185
|
-
className: "mx-auto w-full max-w-
|
|
1203
|
+
className: "mx-auto w-full max-w-3xl"
|
|
1204
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1205
|
+
className: "mb-6 flex flex-col gap-y-2"
|
|
1186
1206
|
}, /*#__PURE__*/React__default["default"].createElement(Icon, {
|
|
1187
1207
|
size: 48
|
|
1188
|
-
}), /*#__PURE__*/React__default["default"].createElement(
|
|
1189
|
-
className: "
|
|
1190
|
-
|
|
1191
|
-
|
|
1208
|
+
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1209
|
+
className: "flex flex-col gap-y-1"
|
|
1210
|
+
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
1211
|
+
style: "h2"
|
|
1192
1212
|
}, title), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
}, description), children, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1197
|
-
className: "flex w-full items-start space-x-4"
|
|
1213
|
+
style: "body2"
|
|
1214
|
+
}, description))), children, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1215
|
+
className: "flex w-full items-center gap-x-3"
|
|
1198
1216
|
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends$1({
|
|
1199
1217
|
label: t("neetoIntegrations.common.connect"),
|
|
1200
1218
|
onClick: onConnect
|
|
1201
|
-
}, buttonProps)),
|
|
1219
|
+
}, buttonProps)), secondaryButtonProps && /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends$1({
|
|
1202
1220
|
style: "secondary"
|
|
1203
1221
|
}, secondaryButtonProps))));
|
|
1204
1222
|
});
|
|
@@ -1206,23 +1224,23 @@ Connect.prototypes = {
|
|
|
1206
1224
|
/**
|
|
1207
1225
|
* To specify the Icon to be shown
|
|
1208
1226
|
*/
|
|
1209
|
-
Icon:
|
|
1227
|
+
Icon: PropTypes.node,
|
|
1210
1228
|
/**
|
|
1211
1229
|
* To specify the title of the connect component
|
|
1212
1230
|
*/
|
|
1213
|
-
title:
|
|
1231
|
+
title: PropTypes.string,
|
|
1214
1232
|
/**
|
|
1215
1233
|
* To specify the description for connect component
|
|
1216
1234
|
*/
|
|
1217
|
-
description:
|
|
1235
|
+
description: PropTypes.string,
|
|
1218
1236
|
/**
|
|
1219
1237
|
* To specify the props for the connect button
|
|
1220
1238
|
*/
|
|
1221
|
-
buttonProps:
|
|
1239
|
+
buttonProps: PropTypes.object,
|
|
1222
1240
|
/**
|
|
1223
1241
|
* Handler function that is triggered when the connect button is clicked.
|
|
1224
1242
|
*/
|
|
1225
|
-
onConnect:
|
|
1243
|
+
onConnect: PropTypes.func
|
|
1226
1244
|
};
|
|
1227
1245
|
|
|
1228
1246
|
var isYouTubeLink = function isYouTubeLink(videoUrl) {
|
|
@@ -1248,43 +1266,38 @@ var Demo = function Demo(_ref) {
|
|
|
1248
1266
|
var _useTranslation = reactI18next.useTranslation(),
|
|
1249
1267
|
t = _useTranslation.t;
|
|
1250
1268
|
var renderVideo = function renderVideo(videoUrl) {
|
|
1251
|
-
return isYouTubeLink(videoUrl) ? /*#__PURE__*/React__default["default"].createElement("
|
|
1252
|
-
className: "intrinsic-container intrinsic-container-16x9"
|
|
1253
|
-
}, /*#__PURE__*/React__default["default"].createElement("iframe", {
|
|
1269
|
+
return isYouTubeLink(videoUrl) ? /*#__PURE__*/React__default["default"].createElement("iframe", {
|
|
1254
1270
|
allowFullScreen: true,
|
|
1255
|
-
className: "border-none",
|
|
1271
|
+
className: "aspect-video border-none",
|
|
1256
1272
|
frameBorder: "0",
|
|
1257
1273
|
id: "ytplayer",
|
|
1258
1274
|
src: videoUrl,
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
})
|
|
1275
|
+
title: renderText(iframeTitle, t("neetoIntegrations.demo.iFrameTitle")),
|
|
1276
|
+
type: "text/html"
|
|
1277
|
+
}) : /*#__PURE__*/React__default["default"].createElement("video", {
|
|
1262
1278
|
autoPlay: true,
|
|
1263
1279
|
controls: true,
|
|
1264
1280
|
muted: true,
|
|
1265
|
-
className: "max-w-3xl cursor-pointer
|
|
1281
|
+
className: "neeto-ui-rounded-xl aspect-video w-full max-w-3xl cursor-pointer",
|
|
1266
1282
|
id: "walkthrough-video"
|
|
1267
1283
|
}, /*#__PURE__*/React__default["default"].createElement("source", {
|
|
1268
1284
|
src: videoUrl
|
|
1269
1285
|
}));
|
|
1270
1286
|
};
|
|
1271
1287
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1272
|
-
className: "mx-auto
|
|
1288
|
+
className: "mx-auto w-full max-w-3xl"
|
|
1289
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1290
|
+
className: "mb-6 flex flex-col gap-y-1"
|
|
1273
1291
|
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
1274
|
-
|
|
1275
|
-
style: "h2",
|
|
1276
|
-
weight: "semibold"
|
|
1292
|
+
style: "h2"
|
|
1277
1293
|
}, renderText(title, t("neetoIntegrations.demo.title"))), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
1278
|
-
style: "body2"
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
}, renderVideo(videoUrl)), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1283
|
-
className: "flex w-full items-start space-x-2"
|
|
1284
|
-
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
1294
|
+
style: "body2"
|
|
1295
|
+
}, renderText(subtitle, t("neetoIntegrations.demo.subtitle")))), children, videoUrl && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1296
|
+
className: "mb-8"
|
|
1297
|
+
}, renderVideo(videoUrl)), /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
1285
1298
|
label: t("neetoIntegrations.common.finish"),
|
|
1286
1299
|
onClick: onClose
|
|
1287
|
-
}))
|
|
1300
|
+
}));
|
|
1288
1301
|
};
|
|
1289
1302
|
Demo.prototypes = {
|
|
1290
1303
|
/**
|
|
@@ -1347,13 +1360,13 @@ var Finish = reactUtils.withT(function (_ref) {
|
|
|
1347
1360
|
secondaryButtonProps = _ref$secondaryButtonP === void 0 ? {} : _ref$secondaryButtonP,
|
|
1348
1361
|
children = _ref.children;
|
|
1349
1362
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1350
|
-
className: "
|
|
1363
|
+
className: "mx-auto w-full max-w-3xl"
|
|
1351
1364
|
}, /*#__PURE__*/React__default["default"].createElement(SvgSuccess, null), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
1352
|
-
className: "
|
|
1365
|
+
className: "mb-6 mt-4",
|
|
1353
1366
|
style: "h2",
|
|
1354
1367
|
weight: "semibold"
|
|
1355
1368
|
}, title), children, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1356
|
-
className: "flex w-full items-
|
|
1369
|
+
className: "flex w-full items-center gap-x-2"
|
|
1357
1370
|
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends$1({
|
|
1358
1371
|
onClick: onClick,
|
|
1359
1372
|
label: t("neetoIntegrations.common.continue")
|