@bigbinary/neeto-templates-frontend 2.2.2 → 2.2.4
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/CreateTemplateModal.js +4 -3
- package/dist/CreateTemplateModal.js.map +1 -1
- package/dist/TemplateSettings.js +5 -6
- package/dist/TemplateSettings.js.map +1 -1
- package/dist/TemplateTags.js +1 -1
- package/dist/TemplateTags.js.map +1 -1
- package/dist/cjs/CreateTemplateModal.js +34 -47
- package/dist/cjs/CreateTemplateModal.js.map +1 -1
- package/dist/cjs/TemplateSettings.js +28 -46
- package/dist/cjs/TemplateSettings.js.map +1 -1
- package/dist/cjs/TemplateTags.js +5 -12
- package/dist/cjs/TemplateTags.js.map +1 -1
- package/dist/cjs/index.js +7 -8
- package/dist/cjs/index.js.map +1 -1
- package/dist/index.js +7 -6
- package/dist/index.js.map +1 -1
- package/dist/{query-03748049.js → query-BGtVO_Eu.js} +1 -1
- package/dist/{query-03748049.js.map → query-BGtVO_Eu.js.map} +1 -1
- package/dist/{query-b6928156.js → query-De4rM-Up.js} +1 -1
- package/dist/{query-b6928156.js.map → query-De4rM-Up.js.map} +1 -1
- package/dist/useTemplatesApi-6OsWJwNM.js +119 -0
- package/dist/useTemplatesApi-6OsWJwNM.js.map +1 -0
- package/dist/useTemplatesApi-Biz_h1BN.js +114 -0
- package/dist/{useTemplatesApi-a48680b3.js.map → useTemplatesApi-Biz_h1BN.js.map} +1 -1
- package/package.json +57 -55
- package/dist/useTemplatesApi-591180b3.js +0 -124
- package/dist/useTemplatesApi-591180b3.js.map +0 -1
- package/dist/useTemplatesApi-a48680b3.js +0 -114
|
@@ -4,7 +4,7 @@ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
6
6
|
var Modal = require('@bigbinary/neetoui/Modal');
|
|
7
|
-
var useTemplatesApi = require('../useTemplatesApi-
|
|
7
|
+
var useTemplatesApi = require('../useTemplatesApi-6OsWJwNM.js');
|
|
8
8
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
9
9
|
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
10
10
|
var Search = require('@bigbinary/neeto-molecules/Search');
|
|
@@ -13,6 +13,7 @@ var Typography = require('@bigbinary/neetoui/Typography');
|
|
|
13
13
|
var Accordion = require('@bigbinary/neetoui/Accordion');
|
|
14
14
|
var reactI18next = require('react-i18next');
|
|
15
15
|
var jsxRuntime = require('react/jsx-runtime');
|
|
16
|
+
var constants = require('@bigbinary/neeto-commons-frontend/constants');
|
|
16
17
|
var classnames = require('classnames');
|
|
17
18
|
var utils = require('@bigbinary/neeto-commons-frontend/utils');
|
|
18
19
|
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
@@ -22,12 +23,9 @@ require('@bigbinary/neeto-tags-frontend/utils');
|
|
|
22
23
|
require('@tanstack/react-query');
|
|
23
24
|
require('ramda');
|
|
24
25
|
require('axios');
|
|
25
|
-
require('../query-
|
|
26
|
+
require('../query-De4rM-Up.js');
|
|
26
27
|
|
|
27
|
-
function
|
|
28
|
-
|
|
29
|
-
function _interopNamespace(e) {
|
|
30
|
-
if (e && e.__esModule) return e;
|
|
28
|
+
function _interopNamespaceDefault(e) {
|
|
31
29
|
var n = Object.create(null);
|
|
32
30
|
if (e) {
|
|
33
31
|
Object.keys(e).forEach(function (k) {
|
|
@@ -40,22 +38,11 @@ function _interopNamespace(e) {
|
|
|
40
38
|
}
|
|
41
39
|
});
|
|
42
40
|
}
|
|
43
|
-
n
|
|
41
|
+
n.default = e;
|
|
44
42
|
return Object.freeze(n);
|
|
45
43
|
}
|
|
46
44
|
|
|
47
|
-
var
|
|
48
|
-
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
49
|
-
var Modal__default = /*#__PURE__*/_interopDefaultLegacy(Modal);
|
|
50
|
-
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
51
|
-
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
|
|
52
|
-
var Search__default = /*#__PURE__*/_interopDefaultLegacy(Search);
|
|
53
|
-
var Spinner__default = /*#__PURE__*/_interopDefaultLegacy(Spinner);
|
|
54
|
-
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
55
|
-
var Accordion__default = /*#__PURE__*/_interopDefaultLegacy(Accordion);
|
|
56
|
-
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
57
|
-
var ResponsiveDevicePicker__default = /*#__PURE__*/_interopDefaultLegacy(ResponsiveDevicePicker);
|
|
58
|
-
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
45
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
59
46
|
|
|
60
47
|
var TEMPLATE_SCREENS = {
|
|
61
48
|
LIST: "List",
|
|
@@ -322,13 +309,13 @@ var BlankCard = function BlankCard(_ref) {
|
|
|
322
309
|
children: /*#__PURE__*/jsxRuntime.jsx(Icon, {
|
|
323
310
|
size: 40
|
|
324
311
|
})
|
|
325
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
312
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
326
313
|
className: "text-center",
|
|
327
314
|
lineHeight: "normal",
|
|
328
315
|
style: "h5",
|
|
329
316
|
weight: "semibold",
|
|
330
317
|
children: title
|
|
331
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
318
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
332
319
|
className: "neeto-ui-text-gray-600 text-center",
|
|
333
320
|
lineHeight: "leading-4",
|
|
334
321
|
style: "body3",
|
|
@@ -350,11 +337,11 @@ var Card = function Card(_ref) {
|
|
|
350
337
|
children: /*#__PURE__*/jsxRuntime.jsx("img", {
|
|
351
338
|
className: "neeto-template__image",
|
|
352
339
|
"data-cy": "template-thumbnail-image",
|
|
353
|
-
src: template.imageUrl || "
|
|
340
|
+
src: template.imageUrl || "".concat(constants.CLOUDFRONT_BASE_URL, "/images/neetoForm/default-form-template.svg")
|
|
354
341
|
})
|
|
355
342
|
}), /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
356
343
|
className: "neeto-template__description neeto-ui-bg-white flex items-center justify-between gap-2 rounded-b-lg px-3 py-1.5",
|
|
357
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
344
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
358
345
|
className: "neeto-template-thumbnail__title line-clamp-2",
|
|
359
346
|
"data-cy": "template-card-title",
|
|
360
347
|
lineHeight: "normal",
|
|
@@ -373,7 +360,7 @@ var CategoryItem = function CategoryItem(_ref) {
|
|
|
373
360
|
return /*#__PURE__*/jsxRuntime.jsxs("button", {
|
|
374
361
|
"data-cy": "category-".concat(utils.joinHyphenCase(label)),
|
|
375
362
|
tabIndex: 0,
|
|
376
|
-
className:
|
|
363
|
+
className: classnames("neeto-ui-rounded-lg outline-none flex w-full items-center justify-between gap-2 border border-solid px-3 py-2 text-sm font-medium leading-4 transition-all duration-300 ease-in-out", {
|
|
377
364
|
"neeto-ui-text-gray-700 hover:neeto-ui-bg-gray-200 focus:neeto-ui-bg-gray-200 border-transparent": !isActive,
|
|
378
365
|
"neeto-ui-text-gray-800 neeto-ui-bg-white neeto-ui-border-gray-300 focus:neeto-ui-border-gray-500": isActive
|
|
379
366
|
}),
|
|
@@ -387,7 +374,7 @@ var CategoryItem = function CategoryItem(_ref) {
|
|
|
387
374
|
};
|
|
388
375
|
|
|
389
376
|
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; }
|
|
390
|
-
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) {
|
|
377
|
+
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; }
|
|
391
378
|
var List = function List(_ref) {
|
|
392
379
|
var setCurrentScreen = _ref.setCurrentScreen,
|
|
393
380
|
setSelectedTemplate = _ref.setSelectedTemplate,
|
|
@@ -398,11 +385,11 @@ var List = function List(_ref) {
|
|
|
398
385
|
var _useTranslation = reactI18next.useTranslation(),
|
|
399
386
|
t = _useTranslation.t;
|
|
400
387
|
var _useState = React.useState(DEFAULT_CATEGORY),
|
|
401
|
-
_useState2 =
|
|
388
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
402
389
|
currentCategory = _useState2[0],
|
|
403
390
|
_setCurrentCategory = _useState2[1];
|
|
404
391
|
var _useState3 = React.useState(""),
|
|
405
|
-
_useState4 =
|
|
392
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
406
393
|
searchTerm = _useState4[0],
|
|
407
394
|
setSearchTerm = _useState4[1];
|
|
408
395
|
var _useFetchTemplates = useTemplatesApi.useFetchTemplates({
|
|
@@ -422,7 +409,7 @@ var List = function List(_ref) {
|
|
|
422
409
|
rootMargin: "0px 0px 700px 0px",
|
|
423
410
|
delayInMs: INFINITE_SCROLL_DELAY
|
|
424
411
|
}),
|
|
425
|
-
_useInfiniteScroll2 =
|
|
412
|
+
_useInfiniteScroll2 = _slicedToArray(_useInfiniteScroll, 2),
|
|
426
413
|
sentryRef = _useInfiniteScroll2[0],
|
|
427
414
|
rootRef = _useInfiniteScroll2[1].rootRef;
|
|
428
415
|
var handleCardClick = function handleCardClick(template) {
|
|
@@ -432,7 +419,7 @@ var List = function List(_ref) {
|
|
|
432
419
|
if (isTemplatesLoading) {
|
|
433
420
|
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
434
421
|
className: "flex h-full w-full items-center justify-center",
|
|
435
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
422
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Spinner, {})
|
|
436
423
|
});
|
|
437
424
|
}
|
|
438
425
|
var _data$tags = data.tags,
|
|
@@ -443,7 +430,7 @@ var List = function List(_ref) {
|
|
|
443
430
|
templatesCount = _data$templatesCount === void 0 ? 0 : _data$templatesCount;
|
|
444
431
|
var categories = [_objectSpread(_objectSpread({}, DEFAULT_CATEGORY), {}, {
|
|
445
432
|
count: templatesCount
|
|
446
|
-
})].concat(
|
|
433
|
+
})].concat(_toConsumableArray(tags));
|
|
447
434
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
448
435
|
className: "neeto-ui-bg-gray-100 relative flex flex-col items-start md:min-h-full md:flex-row",
|
|
449
436
|
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
@@ -452,17 +439,17 @@ var List = function List(_ref) {
|
|
|
452
439
|
className: "space-y-4",
|
|
453
440
|
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
454
441
|
className: "space-y-1",
|
|
455
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
442
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
456
443
|
"data-cy": "create-new-form-title",
|
|
457
444
|
style: "h2",
|
|
458
445
|
weight: "semibold",
|
|
459
446
|
children: t("neetoTemplate.templates.createNewEntity")
|
|
460
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
447
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
461
448
|
lineHeight: "normal",
|
|
462
449
|
style: "body2",
|
|
463
450
|
children: t("neetoTemplate.templates.description")
|
|
464
451
|
})]
|
|
465
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
452
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Search, {
|
|
466
453
|
autoFocus: true,
|
|
467
454
|
disableTrimOnBlur: true,
|
|
468
455
|
"data-cy": "template-search-input",
|
|
@@ -471,9 +458,9 @@ var List = function List(_ref) {
|
|
|
471
458
|
return setSearchTerm(value);
|
|
472
459
|
}
|
|
473
460
|
})]
|
|
474
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
461
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Accordion, {
|
|
475
462
|
className: "md:hidden",
|
|
476
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
463
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Accordion.Item, {
|
|
477
464
|
title: t("neetoTemplate.templates.categories"),
|
|
478
465
|
children: categories.map(function (_ref2) {
|
|
479
466
|
var id = _ref2.id,
|
|
@@ -495,7 +482,7 @@ var List = function List(_ref) {
|
|
|
495
482
|
})
|
|
496
483
|
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
497
484
|
className: "hidden space-y-3 md:block",
|
|
498
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
485
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
499
486
|
className: "uppercase",
|
|
500
487
|
"data-cy": "template-categories-label",
|
|
501
488
|
style: "h6",
|
|
@@ -531,7 +518,7 @@ var List = function List(_ref) {
|
|
|
531
518
|
children: [/*#__PURE__*/jsxRuntime.jsx(BlankCard, {
|
|
532
519
|
description: t("neetoTemplate.templates.blankCard.description"),
|
|
533
520
|
disabled: isCreating,
|
|
534
|
-
icon: isCreating ?
|
|
521
|
+
icon: isCreating ? Spinner : SvgCustom,
|
|
535
522
|
title: t("neetoTemplate.templates.blankCard.title"),
|
|
536
523
|
onClick: onCreate
|
|
537
524
|
}), templates.map(function (template, index) {
|
|
@@ -548,7 +535,7 @@ var List = function List(_ref) {
|
|
|
548
535
|
}), hasNextPage && /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
549
536
|
className: "my-10 text-center",
|
|
550
537
|
ref: sentryRef,
|
|
551
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
538
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Spinner, {})
|
|
552
539
|
})]
|
|
553
540
|
})
|
|
554
541
|
})]
|
|
@@ -568,7 +555,7 @@ var Preview = function Preview(_ref) {
|
|
|
568
555
|
createTemplate = _useCreateTemplate.mutate,
|
|
569
556
|
isCreating = _useCreateTemplate.isPending;
|
|
570
557
|
var _useState = React.useState(RESPONSIVE_DEVICES.DESKTOP),
|
|
571
|
-
_useState2 =
|
|
558
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
572
559
|
selectedDevice = _useState2[0],
|
|
573
560
|
setSelectedDevice = _useState2[1];
|
|
574
561
|
var handleCreateTemplate = function handleCreateTemplate() {
|
|
@@ -591,7 +578,7 @@ var Preview = function Preview(_ref) {
|
|
|
591
578
|
className: "mx-auto flex w-full max-w-6xl items-center justify-between py-[9px]",
|
|
592
579
|
children: [/*#__PURE__*/jsxRuntime.jsx("div", {
|
|
593
580
|
className: "w-1/3",
|
|
594
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
581
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
595
582
|
className: "truncate leading-tight",
|
|
596
583
|
"data-cy": "preview-template-title",
|
|
597
584
|
style: "h3",
|
|
@@ -600,13 +587,13 @@ var Preview = function Preview(_ref) {
|
|
|
600
587
|
})
|
|
601
588
|
}), /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
602
589
|
className: "hidden flex-shrink-0 lg:flex",
|
|
603
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
590
|
+
children: /*#__PURE__*/jsxRuntime.jsx(ResponsiveDevicePicker, {
|
|
604
591
|
selectedDevice: selectedDevice,
|
|
605
592
|
onDeviceChange: setSelectedDevice
|
|
606
593
|
})
|
|
607
594
|
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
608
595
|
className: "flex w-1/3 items-center justify-end gap-2",
|
|
609
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
596
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
|
|
610
597
|
className: "flex-shrink-0",
|
|
611
598
|
"data-cy": "preview-template-back-button",
|
|
612
599
|
style: "secondary",
|
|
@@ -614,7 +601,7 @@ var Preview = function Preview(_ref) {
|
|
|
614
601
|
onClick: function onClick() {
|
|
615
602
|
return setCurrentScreen(TEMPLATE_SCREENS.LIST);
|
|
616
603
|
}
|
|
617
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
604
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Button, {
|
|
618
605
|
className: "flex-shrink-0",
|
|
619
606
|
"data-cy": "preview-use-template-button",
|
|
620
607
|
disabled: isCreating,
|
|
@@ -627,7 +614,7 @@ var Preview = function Preview(_ref) {
|
|
|
627
614
|
}), /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
628
615
|
className: "neeto-ui-bg-gray-200 neeto-templates-full-page-preview__holder-wrapper min-h-0 flex-grow",
|
|
629
616
|
children: /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
630
|
-
className:
|
|
617
|
+
className: classnames("neeto-templates-full-page-preview__holder m-auto", {
|
|
631
618
|
"neeto-templates-full-page-preview__holder--desktop": selectedDevice === RESPONSIVE_DEVICES.DESKTOP,
|
|
632
619
|
"neeto-templates-full-page-preview__holder--tablet": selectedDevice === RESPONSIVE_DEVICES.TABLET,
|
|
633
620
|
"neeto-templates-full-page-preview__holder--mobile": selectedDevice === RESPONSIVE_DEVICES.MOBILE
|
|
@@ -655,11 +642,11 @@ var CreateTemplateModal = function CreateTemplateModal(_ref) {
|
|
|
655
642
|
_ref$afterCreate = _ref.afterCreate,
|
|
656
643
|
afterCreate = _ref$afterCreate === void 0 ? neetoCist.noop : _ref$afterCreate;
|
|
657
644
|
var _useState = React.useState(TEMPLATE_SCREENS.LIST),
|
|
658
|
-
_useState2 =
|
|
645
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
659
646
|
currentScreen = _useState2[0],
|
|
660
647
|
setCurrentScreen = _useState2[1];
|
|
661
648
|
var _useState3 = React.useState({}),
|
|
662
|
-
_useState4 =
|
|
649
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
663
650
|
selectedTemplate = _useState4[0],
|
|
664
651
|
setSelectedTemplate = _useState4[1];
|
|
665
652
|
var onModalClose = function onModalClose() {
|
|
@@ -668,7 +655,7 @@ var CreateTemplateModal = function CreateTemplateModal(_ref) {
|
|
|
668
655
|
setCurrentScreen(TEMPLATE_SCREENS.LIST);
|
|
669
656
|
}, 300); //To accommodate the animation duration.
|
|
670
657
|
};
|
|
671
|
-
return /*#__PURE__*/jsxRuntime.jsx(
|
|
658
|
+
return /*#__PURE__*/jsxRuntime.jsx(Modal, {
|
|
672
659
|
isOpen: isOpen,
|
|
673
660
|
className: "neeto-template-list h-screen w-screen overflow-y-auto",
|
|
674
661
|
closeButton: currentScreen === TEMPLATE_SCREENS.LIST,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateTemplateModal.js","sources":["../../app/javascript/src/components/CreateTemplateModal/constants.js","../../node_modules/react-intersection-observer-hook/dist/react-intersection-observer-hook.esm.js","../../node_modules/react-infinite-scroll-hook/dist/react-infinite-scroll-hook.esm.js","../../app/javascript/src/assets/dashboard/custom.svg","../../app/javascript/src/components/CreateTemplateModal/BlankCard.jsx","../../app/javascript/src/components/CreateTemplateModal/Card.jsx","../../app/javascript/src/components/CreateTemplateModal/CategoryItem.jsx","../../app/javascript/src/components/CreateTemplateModal/List.jsx","../../app/javascript/src/components/CreateTemplateModal/Preview.jsx","../../app/javascript/src/components/CreateTemplateModal/index.jsx"],"sourcesContent":["export const TEMPLATE_SCREENS = { LIST: \"List\", PREVIEW: \"Preview\" };\n\nexport const DEFAULT_CATEGORY = { id: \"all\", name: \"All\" };\n\nexport const INFINITE_SCROLL_DELAY = 500;\n\nexport const MENU_ITEMS = { CREATE: \"create\", PREVIEW: \"preview\" };\n\nexport const RESPONSIVE_DEVICES = {\n DESKTOP: \"desktop\",\n TABLET: \"tablet\",\n MOBILE: \"mobile\",\n};\n","import { useRef, useState, useCallback } from 'react';\n\nfunction createObserverCache() {\n var cachesByRoot = new Map();\n\n function getObserver(_ref) {\n var root = _ref.root,\n rootMargin = _ref.rootMargin,\n threshold = _ref.threshold;\n var cacheByRoot = cachesByRoot.get(root);\n\n if (!cacheByRoot) {\n cacheByRoot = new Map();\n cachesByRoot.set(root, cacheByRoot);\n }\n\n var cacheKey = JSON.stringify({\n rootMargin: rootMargin,\n threshold: threshold\n });\n var cachedObserver = cacheByRoot.get(cacheKey);\n\n if (!cachedObserver) {\n var entryCallbacks = new Map();\n var observer = new IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n var callback = entryCallbacks.get(entry.target);\n callback == null ? void 0 : callback(entry);\n });\n }, {\n root: root,\n rootMargin: rootMargin,\n threshold: threshold\n });\n cachedObserver = {\n observer: observer,\n entryCallbacks: entryCallbacks\n };\n cacheByRoot.set(cacheKey, cachedObserver);\n }\n\n return {\n observe: function observe(node, callback) {\n var _cachedObserver, _cachedObserver2;\n\n (_cachedObserver = cachedObserver) == null ? void 0 : _cachedObserver.entryCallbacks.set(node, callback);\n (_cachedObserver2 = cachedObserver) == null ? void 0 : _cachedObserver2.observer.observe(node);\n },\n unobserve: function unobserve(node) {\n var _cachedObserver3, _cachedObserver4;\n\n (_cachedObserver3 = cachedObserver) == null ? void 0 : _cachedObserver3.entryCallbacks[\"delete\"](node);\n (_cachedObserver4 = cachedObserver) == null ? void 0 : _cachedObserver4.observer.unobserve(node);\n }\n };\n }\n\n return {\n getObserver: getObserver\n };\n}\n\nvar DEFAULT_ROOT_MARGIN = '0px';\nvar DEFAULT_THRESHOLD = [0];\nvar observerCache = /*#__PURE__*/createObserverCache(); // For more info:\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n// https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n\nfunction useIntersectionObserver(args) {\n var _args$rootMargin, _args$threshold;\n\n var rootMargin = (_args$rootMargin = args == null ? void 0 : args.rootMargin) != null ? _args$rootMargin : DEFAULT_ROOT_MARGIN;\n var threshold = (_args$threshold = args == null ? void 0 : args.threshold) != null ? _args$threshold : DEFAULT_THRESHOLD;\n var nodeRef = useRef(null);\n var rootRef = useRef(null);\n var observerRef = useRef(null);\n\n var _useState = useState(),\n entry = _useState[0],\n setEntry = _useState[1];\n\n var observe = useCallback(function () {\n var node = nodeRef.current;\n\n if (!node) {\n setEntry(undefined);\n return;\n }\n\n var observer = observerCache.getObserver({\n root: rootRef.current,\n rootMargin: rootMargin,\n threshold: threshold\n });\n observer.observe(node, function (observedEntry) {\n setEntry(observedEntry);\n });\n observerRef.current = observer;\n }, [rootMargin, threshold]);\n var unobserve = useCallback(function () {\n var currentObserver = observerRef.current;\n var node = nodeRef.current;\n\n if (node) {\n currentObserver == null ? void 0 : currentObserver.unobserve(node);\n }\n\n observerRef.current = null;\n }, []); // React will call the ref callback with the DOM element when the component mounts,\n // and call it with null when it unmounts.\n // So, we don't need an useEffect etc to unobserve nodes.\n // When nodeRef.current is null, it will be unobserved and observe function\n // won't do anything.\n\n var refCallback = useCallback(function (node) {\n unobserve();\n nodeRef.current = node;\n observe();\n }, [observe, unobserve]);\n var rootRefCallback = useCallback(function (rootNode) {\n unobserve();\n rootRef.current = rootNode;\n observe();\n }, [observe, unobserve]);\n return [refCallback, {\n entry: entry,\n rootRef: rootRefCallback\n }];\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction useTrackVisibility(args) {\n var _result$entry;\n\n var _useIntersectionObser = useIntersectionObserver(args),\n ref = _useIntersectionObser[0],\n result = _useIntersectionObser[1];\n\n var isVisible = Boolean((_result$entry = result.entry) == null ? void 0 : _result$entry.isIntersecting);\n\n var _useState = useState(isVisible),\n wasEverVisible = _useState[0],\n setWasEverVisible = _useState[1];\n\n if (isVisible && !wasEverVisible) {\n setWasEverVisible(true);\n }\n\n return [ref, _extends({}, result, {\n isVisible: isVisible,\n wasEverVisible: wasEverVisible\n })];\n}\n\nexport { useIntersectionObserver, useTrackVisibility };\n//# sourceMappingURL=react-intersection-observer-hook.esm.js.map\n","import { useEffect } from 'react';\nimport { useTrackVisibility } from 'react-intersection-observer-hook';\n\nvar DEFAULT_DELAY_IN_MS = 100;\n\nfunction useInfiniteScroll(_ref) {\n var loading = _ref.loading,\n hasNextPage = _ref.hasNextPage,\n onLoadMore = _ref.onLoadMore,\n rootMargin = _ref.rootMargin,\n disabled = _ref.disabled,\n _ref$delayInMs = _ref.delayInMs,\n delayInMs = _ref$delayInMs === void 0 ? DEFAULT_DELAY_IN_MS : _ref$delayInMs;\n\n var _useTrackVisibility = useTrackVisibility({\n rootMargin: rootMargin\n }),\n ref = _useTrackVisibility[0],\n _useTrackVisibility$ = _useTrackVisibility[1],\n rootRef = _useTrackVisibility$.rootRef,\n isVisible = _useTrackVisibility$.isVisible;\n\n var shouldLoadMore = !disabled && !loading && isVisible && hasNextPage; // eslint-disable-next-line consistent-return\n\n useEffect(function () {\n if (shouldLoadMore) {\n // When we trigger 'onLoadMore' and new items are added to the list,\n // right before they become rendered on the screen, 'loading' becomes false\n // and 'isVisible' can be true for a brief time, based on the scroll position.\n // So, it triggers 'onLoadMore' just after the first one is finished.\n // We use a small delay here to prevent this kind of situations.\n // It can be configured by hook args.\n var timer = setTimeout(function () {\n onLoadMore();\n }, delayInMs);\n return function () {\n clearTimeout(timer);\n };\n }\n }, [onLoadMore, shouldLoadMore, delayInMs]);\n return [ref, {\n rootRef: rootRef\n }];\n}\n\nexport default useInfiniteScroll;\n//# sourceMappingURL=react-infinite-scroll-hook.esm.js.map\n","<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"46\" height=\"46\" fill=\"none\" viewBox=\"0 0 46 46\"><rect width=\"40\" height=\"40\" x=\"3\" y=\"2\" fill=\"#008068\" rx=\"2\"/><path fill=\"#fff\" fill-rule=\"evenodd\" d=\"M23.75 16C23.75 15.5858 23.4142 15.25 23 15.25C22.5858 15.25 22.25 15.5858 22.25 16V21.25H17C16.5858 21.25 16.25 21.5858 16.25 22C16.25 22.4142 16.5858 22.75 17 22.75H22.25V28C22.25 28.4142 22.5858 28.75 23 28.75C23.4142 28.75 23.75 28.4142 23.75 28V22.75H29C29.4142 22.75 29.75 22.4142 29.75 22C29.75 21.5858 29.4142 21.25 29 21.25H23.75V16Z\" clip-rule=\"evenodd\"/></svg>\n","import { noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nconst BlankCard = ({\n icon: Icon,\n title,\n description,\n onClick = noop,\n disabled = false,\n}) => (\n <div\n className=\"neeto-ui-rounded-lg neeto-ui-bg-white hover:neeto-ui-bg-white neeto-ui-border-primary-500 flex cursor-pointer flex-col items-center justify-center border border-dashed p-6 outline-none transition-all duration-300 ease-in-out hover:border-solid focus:border-solid\"\n data-cy=\"start-from-scratch-button\"\n tabIndex={0}\n onClick={!disabled ? onClick : noop}\n >\n <div className=\"neeto-ui-text-primary-500 mb-4\">\n <Icon size={40} />\n </div>\n <Typography\n className=\"text-center\"\n lineHeight=\"normal\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-600 text-center\"\n lineHeight=\"leading-4\"\n style=\"body3\"\n >\n {description}\n </Typography>\n </div>\n);\n\nexport default BlankCard;\n","import { Typography } from \"neetoui\";\n\nconst Card = ({ template, onClick }) => (\n <div\n {...{ onClick }}\n className=\"neeto-template neeto-template-thumbnail neeto-ui-bg-white neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col overflow-hidden border outline-none transition-colors duration-300 ease-in-out\"\n data-cy=\"template-card\"\n tabIndex={0}\n >\n <div className=\"neeto-template__header relative overflow-hidden\">\n <img\n className=\"neeto-template__image\"\n data-cy=\"template-thumbnail-image\"\n src={\n template.imageUrl ||\n \"https://d2v7kzglnr2dnh.cloudfront.net/images/neetoForm/default-form-template.svg\"\n }\n />\n </div>\n <div className=\"neeto-template__description neeto-ui-bg-white flex items-center justify-between gap-2 rounded-b-lg px-3 py-1.5\">\n <Typography\n className=\"neeto-template-thumbnail__title line-clamp-2\"\n data-cy=\"template-card-title\"\n lineHeight=\"normal\"\n style=\"h5\"\n >\n {template.title}\n </Typography>\n </div>\n </div>\n);\n\nexport default Card;\n","import classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\n\nconst CategoryItem = ({ label, count, isActive, setCurrentCategory }) => (\n <button\n data-cy={`category-${joinHyphenCase(label)}`}\n tabIndex={0}\n className={classnames(\n \"neeto-ui-rounded-lg outline-none flex w-full items-center justify-between gap-2 border border-solid px-3 py-2 text-sm font-medium leading-4 transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-text-gray-700 hover:neeto-ui-bg-gray-200 focus:neeto-ui-bg-gray-200 border-transparent\":\n !isActive,\n \"neeto-ui-text-gray-800 neeto-ui-bg-white neeto-ui-border-gray-300 focus:neeto-ui-border-gray-500\":\n isActive,\n }\n )}\n onClick={setCurrentCategory}\n >\n <span>{label}</span>\n <span>{count}</span>\n </button>\n);\n\nexport default CategoryItem;\n","import { useState } from \"react\";\n\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography, Accordion } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport useInfiniteScroll from \"react-infinite-scroll-hook\";\n\nimport CustomSVG from \"assets/dashboard/custom\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport BlankCard from \"./BlankCard\";\nimport Card from \"./Card\";\nimport CategoryItem from \"./CategoryItem\";\nimport {\n DEFAULT_CATEGORY,\n INFINITE_SCROLL_DELAY,\n TEMPLATE_SCREENS,\n} from \"./constants\";\n\nconst List = ({\n setCurrentScreen,\n setSelectedTemplate,\n onCreate,\n isCreating,\n afterCreate,\n refetchResource,\n}) => {\n const { t } = useTranslation();\n\n const [currentCategory, setCurrentCategory] = useState(DEFAULT_CATEGORY);\n const [searchTerm, setSearchTerm] = useState(\"\");\n\n const {\n hasNextPage = false,\n fetchNextPage,\n isLoading: isTemplatesLoading,\n data = {},\n } = useFetchTemplates({ searchTerm, category: currentCategory });\n\n const [sentryRef, { rootRef }] = useInfiniteScroll({\n loading: isTemplatesLoading,\n hasNextPage,\n onLoadMore: fetchNextPage,\n rootMargin: \"0px 0px 700px 0px\",\n delayInMs: INFINITE_SCROLL_DELAY,\n });\n\n const handleCardClick = template => {\n setCurrentScreen(TEMPLATE_SCREENS.PREVIEW);\n setSelectedTemplate(template);\n };\n\n if (isTemplatesLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n const { tags = [], templates = [], templatesCount = 0 } = data;\n\n const categories = [{ ...DEFAULT_CATEGORY, count: templatesCount }, ...tags];\n\n return (\n <div className=\"neeto-ui-bg-gray-100 relative flex flex-col items-start md:min-h-full md:flex-row\">\n <div className=\"w-full flex-shrink-0 space-y-6 px-4 py-6 md:sticky md:left-0 md:top-0 md:w-72 md:space-y-8 md:pl-10 md:pr-0 lg:w-80 xl:pl-16\">\n <div className=\"space-y-4\">\n <div className=\"space-y-1\">\n <Typography\n data-cy=\"create-new-form-title\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoTemplate.templates.createNewEntity\")}\n </Typography>\n <Typography lineHeight=\"normal\" style=\"body2\">\n {t(\"neetoTemplate.templates.description\")}\n </Typography>\n </div>\n <Search\n autoFocus\n disableTrimOnBlur\n data-cy=\"template-search-input\"\n placeholder={t(\"neetoTemplate.templates.search\")}\n onSearch={value => setSearchTerm(value)}\n />\n </div>\n <Accordion className=\"md:hidden\">\n <Accordion.Item title={t(\"neetoTemplate.templates.categories\")}>\n {categories.map(({ id, name, count }) => (\n <CategoryItem\n {...{ count }}\n isActive={currentCategory.id === id}\n key={id}\n label={name}\n setCurrentCategory={() => setCurrentCategory({ id, name })}\n />\n ))}\n </Accordion.Item>\n </Accordion>\n <div className=\"hidden space-y-3 md:block\">\n <Typography\n className=\"uppercase\"\n data-cy=\"template-categories-label\"\n style=\"h6\"\n >\n {t(\"neetoTemplate.templates.categories\")}\n </Typography>\n <div className=\"space-y-2\">\n {categories.map(({ id, name, count }) => (\n <CategoryItem\n {...{ count }}\n isActive={currentCategory.id === id}\n key={id}\n label={name}\n setCurrentCategory={() => setCurrentCategory({ id, name })}\n />\n ))}\n </div>\n </div>\n </div>\n <div\n className=\"h-screen w-full p-4 md:overflow-y-auto md:py-8 md:pl-8 md:pr-20 xl:px-20\"\n ref={rootRef}\n >\n <div className=\"flex-grow space-y-6\">\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 lg:gap-5 xl:gap-6 2xl:grid-cols-4\">\n <BlankCard\n description={t(\"neetoTemplate.templates.blankCard.description\")}\n disabled={isCreating}\n icon={isCreating ? Spinner : CustomSVG}\n title={t(\"neetoTemplate.templates.blankCard.title\")}\n onClick={onCreate}\n />\n {templates.map((template, index) => (\n <Card\n {...{ afterCreate, refetchResource, template }}\n key={index}\n onClick={() => handleCardClick(template)}\n />\n ))}\n </div>\n {hasNextPage && (\n <div className=\"my-10 text-center\" ref={sentryRef}>\n <Spinner />\n </div>\n )}\n </div>\n </div>\n </div>\n );\n};\n\nexport default List;\n","import { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport ResponsiveDevicePicker from \"neetomolecules/ResponsiveDevicePicker\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateTemplate } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport { TEMPLATE_SCREENS, RESPONSIVE_DEVICES } from \"./constants\";\n\nconst Preview = ({\n selectedTemplate,\n setCurrentScreen,\n afterCreate,\n refetchResource,\n}) => {\n const { t } = useTranslation();\n\n const { isSize } = useBreakpoints();\n\n const { mutate: createTemplate, isPending: isCreating } = useCreateTemplate();\n\n const [selectedDevice, setSelectedDevice] = useState(\n RESPONSIVE_DEVICES.DESKTOP\n );\n\n const handleCreateTemplate = () => {\n createTemplate(\n { id: selectedTemplate.id },\n {\n onSuccess: response => {\n afterCreate(response);\n refetchResource();\n },\n }\n );\n };\n\n const { title, previewUrl } = selectedTemplate;\n\n return (\n <div className=\"neeto-templates-full-page-preview flex h-full w-full flex-col\">\n <div className=\"neeto-templates-full-page-preview__header neeto-ui-border-gray-200 border-b px-4\">\n <div className=\"mx-auto flex w-full max-w-6xl items-center justify-between py-[9px]\">\n <div className=\"w-1/3\">\n <Typography\n className=\"truncate leading-tight\"\n data-cy=\"preview-template-title\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </div>\n <div className=\"hidden flex-shrink-0 lg:flex\">\n <ResponsiveDevicePicker\n {...{ selectedDevice }}\n onDeviceChange={setSelectedDevice}\n />\n </div>\n <div className=\"flex w-1/3 items-center justify-end gap-2\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"preview-template-back-button\"\n style=\"secondary\"\n label={\n isSize(\"mobile\")\n ? t(\"neetoTemplate.templates.back\")\n : t(\"neetoTemplate.templates.backToTemplates\")\n }\n onClick={() => setCurrentScreen(TEMPLATE_SCREENS.LIST)}\n />\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"preview-use-template-button\"\n disabled={isCreating}\n label={t(\"neetoTemplate.templates.editTemplate\")}\n loading={isCreating}\n onClick={handleCreateTemplate}\n />\n </div>\n </div>\n </div>\n <div className=\"neeto-ui-bg-gray-200 neeto-templates-full-page-preview__holder-wrapper min-h-0 flex-grow\">\n <div\n className={classnames(\n \"neeto-templates-full-page-preview__holder m-auto\",\n {\n \"neeto-templates-full-page-preview__holder--desktop\":\n selectedDevice === RESPONSIVE_DEVICES.DESKTOP,\n \"neeto-templates-full-page-preview__holder--tablet\":\n selectedDevice === RESPONSIVE_DEVICES.TABLET,\n \"neeto-templates-full-page-preview__holder--mobile\":\n selectedDevice === RESPONSIVE_DEVICES.MOBILE,\n }\n )}\n >\n <div className=\"neeto-templates-full-page-preview__device-border h-full w-full\">\n <iframe\n className=\"neeto-templates-full-page-preview__iframe h-full w-full border-none\"\n data-cy=\"iframe-id\"\n src={previewUrl}\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\nexport default Preview;\n","import { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Modal } from \"neetoui\";\n\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/application.scss\";\n\nimport { TEMPLATE_SCREENS } from \"./constants\";\nimport List from \"./List\";\nimport Preview from \"./Preview\";\n\nconst CreateTemplateModal = ({\n isOpen,\n onClose,\n isCreating,\n refetchResource,\n onCreate = noop,\n afterCreate = noop,\n}) => {\n const [currentScreen, setCurrentScreen] = useState(TEMPLATE_SCREENS.LIST);\n const [selectedTemplate, setSelectedTemplate] = useState({});\n\n const onModalClose = () => {\n onClose();\n setTimeout(() => {\n setCurrentScreen(TEMPLATE_SCREENS.LIST);\n }, 300); //To accommodate the animation duration.\n };\n\n return (\n <Modal\n {...{ isOpen }}\n className=\"neeto-template-list h-screen w-screen overflow-y-auto\"\n closeButton={currentScreen === TEMPLATE_SCREENS.LIST}\n size=\"fullScreen\"\n onClose={onModalClose}\n >\n {currentScreen === TEMPLATE_SCREENS.LIST ? (\n <List\n {...{\n afterCreate,\n isCreating,\n onCreate,\n refetchResource,\n setCurrentScreen,\n setSelectedTemplate,\n }}\n />\n ) : (\n <Preview\n {...{\n afterCreate,\n refetchResource,\n selectedTemplate,\n setCurrentScreen,\n }}\n />\n )}\n </Modal>\n );\n};\n\nexport default CreateTemplateModal;\n"],"names":["TEMPLATE_SCREENS","LIST","PREVIEW","DEFAULT_CATEGORY","id","name","INFINITE_SCROLL_DELAY","RESPONSIVE_DEVICES","DESKTOP","TABLET","MOBILE","useRef","useState","useCallback","_extends","useEffect","React","BlankCard","_ref","Icon","icon","title","description","_ref$onClick","onClick","noop","_ref$disabled","disabled","_jsxs","className","tabIndex","children","_jsx","size","Typography","lineHeight","style","weight","Card","template","src","imageUrl","CategoryItem","label","count","isActive","setCurrentCategory","concat","joinHyphenCase","classnames","List","setCurrentScreen","setSelectedTemplate","onCreate","isCreating","afterCreate","refetchResource","_useTranslation","useTranslation","t","_useState","_useState2","_slicedToArray","currentCategory","_useState3","_useState4","searchTerm","setSearchTerm","_useFetchTemplates","useFetchTemplates","category","_useFetchTemplates$ha","hasNextPage","fetchNextPage","isTemplatesLoading","isLoading","_useFetchTemplates$da","data","_useInfiniteScroll","useInfiniteScroll","loading","onLoadMore","rootMargin","delayInMs","_useInfiniteScroll2","sentryRef","rootRef","handleCardClick","Spinner","_data$tags","tags","_data$templates","templates","_data$templatesCount","templatesCount","categories","_objectSpread","_toConsumableArray","Search","autoFocus","disableTrimOnBlur","placeholder","onSearch","value","Accordion","Item","map","_ref2","_createElement","key","_ref3","ref","CustomSVG","index","Preview","selectedTemplate","_useBreakpoints","useBreakpoints","isSize","_useCreateTemplate","useCreateTemplate","createTemplate","mutate","isPending","selectedDevice","setSelectedDevice","handleCreateTemplate","onSuccess","response","previewUrl","ResponsiveDevicePicker","onDeviceChange","Button","CreateTemplateModal","isOpen","onClose","_ref$onCreate","_ref$afterCreate","currentScreen","onModalClose","setTimeout","Modal","closeButton"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,gBAAgB,GAAG;AAAEC,EAAAA,IAAI,EAAE,MAAM;AAAEC,EAAAA,OAAO,EAAE,SAAA;AAAU,CAAC,CAAA;AAE7D,IAAMC,gBAAgB,GAAG;AAAEC,EAAAA,EAAE,EAAE,KAAK;AAAEC,EAAAA,IAAI,EAAE,KAAA;AAAM,CAAC,CAAA;AAEnD,IAAMC,qBAAqB,GAAG,GAAG,CAAA;AAIjC,IAAMC,kBAAkB,GAAG;AAChCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,MAAM,EAAE,QAAA;AACV,CAAC;;ACVD,SAAS,mBAAmB,GAAG;AAC/B,EAAE,IAAI,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;AAC/B;AACA,EAAE,SAAS,WAAW,CAAC,IAAI,EAAE;AAC7B,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI;AACxB,QAAQ,UAAU,GAAG,IAAI,CAAC,UAAU;AACpC,QAAQ,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;AACnC,IAAI,IAAI,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC7C;AACA,IAAI,IAAI,CAAC,WAAW,EAAE;AACtB,MAAM,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;AAC9B,MAAM,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AAC1C,KAAK;AACL;AACA,IAAI,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;AAClC,MAAM,UAAU,EAAE,UAAU;AAC5B,MAAM,SAAS,EAAE,SAAS;AAC1B,KAAK,CAAC,CAAC;AACP,IAAI,IAAI,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACnD;AACA,IAAI,IAAI,CAAC,cAAc,EAAE;AACzB,MAAM,IAAI,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;AACrC,MAAM,IAAI,QAAQ,GAAG,IAAI,oBAAoB,CAAC,UAAU,OAAO,EAAE;AACjE,QAAQ,OAAO,CAAC,OAAO,CAAC,UAAU,KAAK,EAAE;AACzC,UAAU,IAAI,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAC1D,UAAU,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtD,SAAS,CAAC,CAAC;AACX,OAAO,EAAE;AACT,QAAQ,IAAI,EAAE,IAAI;AAClB,QAAQ,UAAU,EAAE,UAAU;AAC9B,QAAQ,SAAS,EAAE,SAAS;AAC5B,OAAO,CAAC,CAAC;AACT,MAAM,cAAc,GAAG;AACvB,QAAQ,QAAQ,EAAE,QAAQ;AAC1B,QAAQ,cAAc,EAAE,cAAc;AACtC,OAAO,CAAC;AACR,MAAM,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;AAChD,KAAK;AACL;AACA,IAAI,OAAO;AACX,MAAM,OAAO,EAAE,SAAS,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE;AAChD,QAAQ,IAAI,eAAe,EAAE,gBAAgB,CAAC;AAC9C;AACA,QAAQ,CAAC,eAAe,GAAG,cAAc,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACjH,QAAQ,CAAC,gBAAgB,GAAG,cAAc,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACvG,OAAO;AACP,MAAM,SAAS,EAAE,SAAS,SAAS,CAAC,IAAI,EAAE;AAC1C,QAAQ,IAAI,gBAAgB,EAAE,gBAAgB,CAAC;AAC/C;AACA,QAAQ,CAAC,gBAAgB,GAAG,cAAc,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,gBAAgB,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;AAC/G,QAAQ,CAAC,gBAAgB,GAAG,cAAc,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AACzG,OAAO;AACP,KAAK,CAAC;AACN,GAAG;AACH;AACA,EAAE,OAAO;AACT,IAAI,WAAW,EAAE,WAAW;AAC5B,GAAG,CAAC;AACJ,CAAC;AACD;AACA,IAAI,mBAAmB,GAAG,KAAK,CAAC;AAChC,IAAI,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5B,IAAI,aAAa,gBAAgB,mBAAmB,EAAE,CAAC;AACvD;AACA;AACA;AACA,SAAS,uBAAuB,CAAC,IAAI,EAAE;AACvC,EAAE,IAAI,gBAAgB,EAAE,eAAe,CAAC;AACxC;AACA,EAAE,IAAI,UAAU,GAAG,CAAC,gBAAgB,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,UAAU,KAAK,IAAI,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AACjI,EAAE,IAAI,SAAS,GAAG,CAAC,eAAe,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,GAAG,eAAe,GAAG,iBAAiB,CAAC;AAC3H,EAAE,IAAI,OAAO,GAAGC,YAAM,CAAC,IAAI,CAAC,CAAC;AAC7B,EAAE,IAAI,OAAO,GAAGA,YAAM,CAAC,IAAI,CAAC,CAAC;AAC7B,EAAE,IAAI,WAAW,GAAGA,YAAM,CAAC,IAAI,CAAC,CAAC;AACjC;AACA,EAAE,IAAI,SAAS,GAAGC,cAAQ,EAAE;AAC5B,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;AAC1B,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC9B;AACA,EAAE,IAAI,OAAO,GAAGC,iBAAW,CAAC,YAAY;AACxC,IAAI,IAAI,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;AAC/B;AACA,IAAI,IAAI,CAAC,IAAI,EAAE;AACf,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC1B,MAAM,OAAO;AACb,KAAK;AACL;AACA,IAAI,IAAI,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC;AAC7C,MAAM,IAAI,EAAE,OAAO,CAAC,OAAO;AAC3B,MAAM,UAAU,EAAE,UAAU;AAC5B,MAAM,SAAS,EAAE,SAAS;AAC1B,KAAK,CAAC,CAAC;AACP,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,aAAa,EAAE;AACpD,MAAM,QAAQ,CAAC,aAAa,CAAC,CAAC;AAC9B,KAAK,CAAC,CAAC;AACP,IAAI,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;AACnC,GAAG,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;AAC9B,EAAE,IAAI,SAAS,GAAGA,iBAAW,CAAC,YAAY;AAC1C,IAAI,IAAI,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC;AAC9C,IAAI,IAAI,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;AAC/B;AACA,IAAI,IAAI,IAAI,EAAE;AACd,MAAM,eAAe,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AACzE,KAAK;AACL;AACA,IAAI,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;AAC/B,GAAG,EAAE,EAAE,CAAC,CAAC;AACT;AACA;AACA;AACA;AACA;AACA,EAAE,IAAI,WAAW,GAAGA,iBAAW,CAAC,UAAU,IAAI,EAAE;AAChD,IAAI,SAAS,EAAE,CAAC;AAChB,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;AAC3B,IAAI,OAAO,EAAE,CAAC;AACd,GAAG,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAC3B,EAAE,IAAI,eAAe,GAAGA,iBAAW,CAAC,UAAU,QAAQ,EAAE;AACxD,IAAI,SAAS,EAAE,CAAC;AAChB,IAAI,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAC;AAC/B,IAAI,OAAO,EAAE,CAAC;AACd,GAAG,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAC3B,EAAE,OAAO,CAAC,WAAW,EAAE;AACvB,IAAI,KAAK,EAAE,KAAK;AAChB,IAAI,OAAO,EAAE,eAAe;AAC5B,GAAG,CAAC,CAAC;AACL,CAAC;AACD;AACA,SAASC,UAAQ,GAAG;AACpB,EAAEA,UAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,MAAM,EAAE;AAChD,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC/C,MAAM,IAAI,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAChC;AACA,MAAM,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE;AAC9B,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;AAC/D,UAAU,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;AACpC,SAAS;AACT,OAAO;AACP,KAAK;AACL;AACA,IAAI,OAAO,MAAM,CAAC;AAClB,GAAG,CAAC;AACJ;AACA,EAAE,OAAOA,UAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACzC,CAAC;AACD;AACA,SAAS,kBAAkB,CAAC,IAAI,EAAE;AAClC,EAAE,IAAI,aAAa,CAAC;AACpB;AACA,EAAE,IAAI,qBAAqB,GAAG,uBAAuB,CAAC,IAAI,CAAC;AAC3D,MAAM,GAAG,GAAG,qBAAqB,CAAC,CAAC,CAAC;AACpC,MAAM,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;AACxC;AACA,EAAE,IAAI,SAAS,GAAG,OAAO,CAAC,CAAC,aAAa,GAAG,MAAM,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC;AAC1G;AACA,EAAE,IAAI,SAAS,GAAGF,cAAQ,CAAC,SAAS,CAAC;AACrC,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC;AACnC,MAAM,iBAAiB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACvC;AACA,EAAE,IAAI,SAAS,IAAI,CAAC,cAAc,EAAE;AACpC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAC5B,GAAG;AACH;AACA,EAAE,OAAO,CAAC,GAAG,EAAEE,UAAQ,CAAC,EAAE,EAAE,MAAM,EAAE;AACpC,IAAI,SAAS,EAAE,SAAS;AACxB,IAAI,cAAc,EAAE,cAAc;AAClC,GAAG,CAAC,CAAC,CAAC;AACN;;ACtKA,IAAI,mBAAmB,GAAG,GAAG,CAAC;AAC9B;AACA,SAAS,iBAAiB,CAAC,IAAI,EAAE;AACjC,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO;AAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW;AACpC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU;AAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU;AAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC9B,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS;AACrC,MAAM,SAAS,GAAG,cAAc,KAAK,KAAK,CAAC,GAAG,mBAAmB,GAAG,cAAc,CAAC;AACnF;AACA,EAAE,IAAI,mBAAmB,GAAG,kBAAkB,CAAC;AAC/C,IAAI,UAAU,EAAE,UAAU;AAC1B,GAAG,CAAC;AACJ,MAAM,GAAG,GAAG,mBAAmB,CAAC,CAAC,CAAC;AAClC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,CAAC,CAAC;AACnD,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO;AAC5C,MAAM,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;AACjD;AACA,EAAE,IAAI,cAAc,GAAG,CAAC,QAAQ,IAAI,CAAC,OAAO,IAAI,SAAS,IAAI,WAAW,CAAC;AACzE;AACA,EAAEC,eAAS,CAAC,YAAY;AACxB,IAAI,IAAI,cAAc,EAAE;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAI,KAAK,GAAG,UAAU,CAAC,YAAY;AACzC,QAAQ,UAAU,EAAE,CAAC;AACrB,OAAO,EAAE,SAAS,CAAC,CAAC;AACpB,MAAM,OAAO,YAAY;AACzB,QAAQ,YAAY,CAAC,KAAK,CAAC,CAAC;AAC5B,OAAO,CAAC;AACR,KAAK;AACL,GAAG,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;AAC9C,EAAE,OAAO,CAAC,GAAG,EAAE;AACf,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG,CAAC,CAAC;AACL;;AC3CA,IAAI,KAAK,EAAE,KAAK,CAAC;AACjB,SAAS,QAAQ,GAAG,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,UAAU,MAAM,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE;AAEnV,MAAM,SAAS,GAAG,KAAK,iBAAiBC,gBAAK,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC5E,EAAE,KAAK,EAAE,4BAA4B;AACrC,EAAE,KAAK,EAAE,EAAE;AACX,EAAE,MAAM,EAAE,EAAE;AACZ,EAAE,IAAI,EAAE,MAAM;AACd,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,KAAK,KAAK,gBAAgBA,gBAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AACtE,EAAE,KAAK,EAAE,EAAE;AACX,EAAE,MAAM,EAAE,EAAE;AACZ,EAAE,CAAC,EAAE,CAAC;AACN,EAAE,CAAC,EAAE,CAAC;AACN,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,EAAE,EAAE,CAAC;AACP,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,KAAK,gBAAgBA,gBAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AAChE,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,SAAS;AACrB,EAAE,CAAC,EAAE,0HAA0H;AAC/H,EAAE,QAAQ,EAAE,SAAS;AACrB,CAAC,CAAC,CAAC,CAAC;;ACjBJ,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAAC,IAAA,EAAA;AAAA,EAAA,IACPC,IAAI,GAAAD,IAAA,CAAVE,IAAI;IACJC,KAAK,GAAAH,IAAA,CAALG,KAAK;IACLC,WAAW,GAAAJ,IAAA,CAAXI,WAAW;IAAAC,YAAA,GAAAL,IAAA,CACXM,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAGE,KAAAA,CAAAA,GAAAA,cAAI,GAAAF,YAAA;IAAAG,aAAA,GAAAR,IAAA,CACdS,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA,CAAA;AAAA,EAAA,oBAEhBE,eAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,wQAAwQ;AAClR,IAAA,SAAA,EAAQ,2BAA2B;AACnCC,IAAAA,QAAQ,EAAE,CAAE;AACZN,IAAAA,OAAO,EAAE,CAACG,QAAQ,GAAGH,OAAO,GAAGC,cAAK;AAAAM,IAAAA,QAAA,gBAEpCC,cAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,gCAAgC;MAAAE,QAAA,eAC7CC,cAAA,CAACb,IAAI,EAAA;AAACc,QAAAA,IAAI,EAAE,EAAA;OAAK,CAAA;AAAC,KACf,CAAC,eACND,cAAA,CAACE,8BAAU,EAAA;AACTL,MAAAA,SAAS,EAAC,aAAa;AACvBM,MAAAA,UAAU,EAAC,QAAQ;AACnBC,MAAAA,KAAK,EAAC,IAAI;AACVC,MAAAA,MAAM,EAAC,UAAU;AAAAN,MAAAA,QAAA,EAEhBV,KAAAA;AAAK,KACI,CAAC,eACbW,cAAA,CAACE,8BAAU,EAAA;AACTL,MAAAA,SAAS,EAAC,oCAAoC;AAC9CM,MAAAA,UAAU,EAAC,WAAW;AACtBC,MAAAA,KAAK,EAAC,OAAO;AAAAL,MAAAA,QAAA,EAEZT,WAAAA;AAAW,KACF,CAAC,CAAA;AAAA,GACV,CAAC,CAAA;AAAA,CACP;;ACjCD,IAAMgB,IAAI,GAAG,SAAPA,IAAIA,CAAApB,IAAA,EAAA;AAAA,EAAA,IAAMqB,QAAQ,GAAArB,IAAA,CAARqB,QAAQ;IAAEf,OAAO,GAAAN,IAAA,CAAPM,OAAO,CAAA;AAAA,EAAA,oBAC/BI,eAAA,CAAA,KAAA,EAAA;AACQJ,IAAAA,OAAO,EAAPA,OAAO;AACbK,IAAAA,SAAS,EAAC,4QAA4Q;AACtR,IAAA,SAAA,EAAQ,eAAe;AACvBC,IAAAA,QAAQ,EAAE,CAAE;AAAAC,IAAAA,QAAA,gBAEZC,cAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,iDAAiD;AAAAE,MAAAA,QAAA,eAC9DC,cAAA,CAAA,KAAA,EAAA;AACEH,QAAAA,SAAS,EAAC,uBAAuB;AACjC,QAAA,SAAA,EAAQ,0BAA0B;AAClCW,QAAAA,GAAG,EACDD,QAAQ,CAACE,QAAQ,IACjB,kFAAA;OAEH,CAAA;KACE,CAAC,eACNT,cAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,gHAAgH;MAAAE,QAAA,eAC7HC,cAAA,CAACE,8BAAU,EAAA;AACTL,QAAAA,SAAS,EAAC,8CAA8C;AACxD,QAAA,SAAA,EAAQ,qBAAqB;AAC7BM,QAAAA,UAAU,EAAC,QAAQ;AACnBC,QAAAA,KAAK,EAAC,IAAI;QAAAL,QAAA,EAETQ,QAAQ,CAAClB,KAAAA;OACA,CAAA;AAAC,KACV,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAAA,CACP;;AC3BD,IAAMqB,YAAY,GAAG,SAAfA,YAAYA,CAAAxB,IAAA,EAAA;AAAA,EAAA,IAAMyB,KAAK,GAAAzB,IAAA,CAALyB,KAAK;IAAEC,KAAK,GAAA1B,IAAA,CAAL0B,KAAK;IAAEC,QAAQ,GAAA3B,IAAA,CAAR2B,QAAQ;IAAEC,kBAAkB,GAAA5B,IAAA,CAAlB4B,kBAAkB,CAAA;AAAA,EAAA,oBAChElB,eAAA,CAAA,QAAA,EAAA;AACE,IAAA,SAAA,EAAA,WAAA,CAAAmB,MAAA,CAAqBC,oBAAc,CAACL,KAAK,CAAC,CAAG;AAC7Cb,IAAAA,QAAQ,EAAE,CAAE;AACZD,IAAAA,SAAS,EAAEoB,8BAAU,CACnB,qLAAqL,EACrL;MACE,iGAAiG,EAC/F,CAACJ,QAAQ;AACX,MAAA,kGAAkG,EAChGA,QAAAA;AACJ,KACF,CAAE;AACFrB,IAAAA,OAAO,EAAEsB,kBAAmB;AAAAf,IAAAA,QAAA,gBAE5BC,cAAA,CAAA,MAAA,EAAA;AAAAD,MAAAA,QAAA,EAAOY,KAAAA;KAAY,CAAC,eACpBX,cAAA,CAAA,MAAA,EAAA;AAAAD,MAAAA,QAAA,EAAOa,KAAAA;AAAK,KAAO,CAAC,CAAA;AAAA,GACd,CAAC,CAAA;AAAA,CACV;;;;ACFD,IAAMM,IAAI,GAAG,SAAPA,IAAIA,CAAAhC,IAAA,EAOJ;AAAA,EAAA,IANJiC,gBAAgB,GAAAjC,IAAA,CAAhBiC,gBAAgB;IAChBC,mBAAmB,GAAAlC,IAAA,CAAnBkC,mBAAmB;IACnBC,QAAQ,GAAAnC,IAAA,CAARmC,QAAQ;IACRC,UAAU,GAAApC,IAAA,CAAVoC,UAAU;IACVC,WAAW,GAAArC,IAAA,CAAXqC,WAAW;IACXC,eAAe,GAAAtC,IAAA,CAAfsC,eAAe,CAAA;AAEf,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAAC,SAAA,GAA8ChD,cAAQ,CAACT,gBAAgB,CAAC;IAAA0D,UAAA,GAAAC,kCAAA,CAAAF,SAAA,EAAA,CAAA,CAAA;AAAjEG,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEf,IAAAA,mBAAkB,GAAAe,UAAA,CAAA,CAAA,CAAA,CAAA;AAC1C,EAAA,IAAAG,UAAA,GAAoCpD,cAAQ,CAAC,EAAE,CAAC;IAAAqD,UAAA,GAAAH,kCAAA,CAAAE,UAAA,EAAA,CAAA,CAAA;AAAzCE,IAAAA,UAAU,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;EAEhC,IAAAG,kBAAA,GAKIC,iCAAiB,CAAC;AAAEH,MAAAA,UAAU,EAAVA,UAAU;AAAEI,MAAAA,QAAQ,EAAEP,eAAAA;AAAgB,KAAC,CAAC;IAAAQ,qBAAA,GAAAH,kBAAA,CAJ9DI,WAAW;AAAXA,IAAAA,WAAW,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IACnBE,aAAa,GAAAL,kBAAA,CAAbK,aAAa;IACFC,kBAAkB,GAAAN,kBAAA,CAA7BO,SAAS;IAAAC,qBAAA,GAAAR,kBAAA,CACTS,IAAI;AAAJA,IAAAA,IAAI,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA,CAAA;EAGX,IAAAE,kBAAA,GAAiCC,iBAAiB,CAAC;AACjDC,MAAAA,OAAO,EAAEN,kBAAkB;AAC3BF,MAAAA,WAAW,EAAXA,WAAW;AACXS,MAAAA,UAAU,EAAER,aAAa;AACzBS,MAAAA,UAAU,EAAE,mBAAmB;AAC/BC,MAAAA,SAAS,EAAE7E,qBAAAA;AACb,KAAC,CAAC;IAAA8E,mBAAA,GAAAtB,kCAAA,CAAAgB,kBAAA,EAAA,CAAA,CAAA;AANKO,IAAAA,SAAS,GAAAD,mBAAA,CAAA,CAAA,CAAA;IAAIE,OAAO,GAAAF,mBAAA,CAAA,CAAA,CAAA,CAAPE,OAAO,CAAA;AAQ3B,EAAA,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAGhD,QAAQ,EAAI;AAClCY,IAAAA,gBAAgB,CAACnD,gBAAgB,CAACE,OAAO,CAAC,CAAA;IAC1CkD,mBAAmB,CAACb,QAAQ,CAAC,CAAA;GAC9B,CAAA;AAED,EAAA,IAAImC,kBAAkB,EAAE;AACtB,IAAA,oBACE1C,cAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,gDAAgD;AAAAE,MAAAA,QAAA,eAC7DC,cAAA,CAACwD,2BAAO,EAAE,EAAA,CAAA;AAAC,KACR,CAAC,CAAA;AAEV,GAAA;AAEA,EAAA,IAAAC,UAAA,GAA0DZ,IAAI,CAAtDa,IAAI;AAAJA,IAAAA,IAAI,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAAE,eAAA,GAAyCd,IAAI,CAA3Ce,SAAS;AAATA,IAAAA,SAAS,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;IAAAE,oBAAA,GAAyBhB,IAAI,CAA3BiB,cAAc;AAAdA,IAAAA,cAAc,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,oBAAA,CAAA;AAErD,EAAA,IAAME,UAAU,GAAAC,CAAAA,aAAA,CAAAA,aAAA,KAAS7F,gBAAgB,CAAA,EAAA,EAAA,EAAA;AAAEyC,IAAAA,KAAK,EAAEkD,cAAAA;AAAc,GAAA,CAAA,CAAA,CAAA/C,MAAA,CAAAkD,sCAAA,CAAOP,IAAI,CAAC,CAAA,CAAA;AAE5E,EAAA,oBACE9D,eAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,mFAAmF;AAAAE,IAAAA,QAAA,gBAChGH,eAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,8HAA8H;AAAAE,MAAAA,QAAA,gBAC3IH,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,WAAW;AAAAE,QAAAA,QAAA,gBACxBH,eAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,WAAW;UAAAE,QAAA,EAAA,cACxBC,cAAA,CAACE,8BAAU,EAAA;AACT,YAAA,SAAA,EAAQ,uBAAuB;AAC/BE,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,UAAU;YAAAN,QAAA,EAEhB4B,CAAC,CAAC,yCAAyC,CAAA;AAAC,WACnC,CAAC,eACb3B,cAAA,CAACE,8BAAU,EAAA;AAACC,YAAAA,UAAU,EAAC,QAAQ;AAACC,YAAAA,KAAK,EAAC,OAAO;YAAAL,QAAA,EAC1C4B,CAAC,CAAC,qCAAqC,CAAA;AAAC,WAC/B,CAAC,CAAA;AAAA,SACV,CAAC,eACN3B,cAAA,CAACkE,0BAAM,EAAA;UACLC,SAAS,EAAA,IAAA;UACTC,iBAAiB,EAAA,IAAA;AACjB,UAAA,SAAA,EAAQ,uBAAuB;AAC/BC,UAAAA,WAAW,EAAE1C,CAAC,CAAC,gCAAgC,CAAE;AACjD2C,UAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEC,KAAK,EAAA;YAAA,OAAIpC,aAAa,CAACoC,KAAK,CAAC,CAAA;AAAA,WAAA;AAAC,SACzC,CAAC,CAAA;AAAA,OACC,CAAC,eACNvE,cAAA,CAACwE,6BAAS,EAAA;AAAC3E,QAAAA,SAAS,EAAC,WAAW;AAAAE,QAAAA,QAAA,eAC9BC,cAAA,CAACwE,6BAAS,CAACC,IAAI,EAAA;AAACpF,UAAAA,KAAK,EAAEsC,CAAC,CAAC,oCAAoC,CAAE;AAAA5B,UAAAA,QAAA,EAC5DgE,UAAU,CAACW,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,YAAA,IAAGvG,EAAE,GAAAuG,KAAA,CAAFvG,EAAE;cAAEC,IAAI,GAAAsG,KAAA,CAAJtG,IAAI;cAAEuC,KAAK,GAAA+D,KAAA,CAAL/D,KAAK,CAAA;YAAA,oBAChCgE,mBAAA,CAAClE,YAAY,EAAA;AACLE,cAAAA,KAAK,EAALA,KAAK;AACXC,cAAAA,QAAQ,EAAEkB,eAAe,CAAC3D,EAAE,KAAKA,EAAG;AACpCyG,cAAAA,GAAG,EAAEzG,EAAG;AACRuC,cAAAA,KAAK,EAAEtC,IAAK;cACZyC,kBAAkB,EAAE,SAApBA,kBAAkBA,GAAA;AAAA,gBAAA,OAAQA,mBAAkB,CAAC;AAAE1C,kBAAAA,EAAE,EAAFA,EAAE;AAAEC,kBAAAA,IAAI,EAAJA,IAAAA;AAAK,iBAAC,CAAC,CAAA;AAAA,eAAA;AAAC,aAC5D,CAAC,CAAA;WACH,CAAA;SACa,CAAA;OACP,CAAC,eACZuB,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,2BAA2B;QAAAE,QAAA,EAAA,cACxCC,cAAA,CAACE,8BAAU,EAAA;AACTL,UAAAA,SAAS,EAAC,WAAW;AACrB,UAAA,SAAA,EAAQ,2BAA2B;AACnCO,UAAAA,KAAK,EAAC,IAAI;UAAAL,QAAA,EAET4B,CAAC,CAAC,oCAAoC,CAAA;SAC7B,CAAC,eACb3B,cAAA,CAAA,KAAA,EAAA;AAAKH,UAAAA,SAAS,EAAC,WAAW;AAAAE,UAAAA,QAAA,EACvBgE,UAAU,CAACW,GAAG,CAAC,UAAAI,KAAA,EAAA;AAAA,YAAA,IAAG1G,EAAE,GAAA0G,KAAA,CAAF1G,EAAE;cAAEC,IAAI,GAAAyG,KAAA,CAAJzG,IAAI;cAAEuC,KAAK,GAAAkE,KAAA,CAALlE,KAAK,CAAA;YAAA,oBAChCgE,mBAAA,CAAClE,YAAY,EAAA;AACLE,cAAAA,KAAK,EAALA,KAAK;AACXC,cAAAA,QAAQ,EAAEkB,eAAe,CAAC3D,EAAE,KAAKA,EAAG;AACpCyG,cAAAA,GAAG,EAAEzG,EAAG;AACRuC,cAAAA,KAAK,EAAEtC,IAAK;cACZyC,kBAAkB,EAAE,SAApBA,kBAAkBA,GAAA;AAAA,gBAAA,OAAQA,mBAAkB,CAAC;AAAE1C,kBAAAA,EAAE,EAAFA,EAAE;AAAEC,kBAAAA,IAAI,EAAJA,IAAAA;AAAK,iBAAC,CAAC,CAAA;AAAA,eAAA;AAAC,aAC5D,CAAC,CAAA;WACH,CAAA;AAAC,SACC,CAAC,CAAA;AAAA,OACH,CAAC,CAAA;KACH,CAAC,eACN2B,cAAA,CAAA,KAAA,EAAA;AACEH,MAAAA,SAAS,EAAC,2EAA2E;AACrFkF,MAAAA,GAAG,EAAEzB,OAAQ;AAAAvD,MAAAA,QAAA,eAEbH,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,qBAAqB;AAAAE,QAAAA,QAAA,gBAClCH,eAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,wFAAwF;UAAAE,QAAA,EAAA,cACrGC,cAAA,CAACf,SAAS,EAAA;AACRK,YAAAA,WAAW,EAAEqC,CAAC,CAAC,+CAA+C,CAAE;AAChEhC,YAAAA,QAAQ,EAAE2B,UAAW;AACrBlC,YAAAA,IAAI,EAAEkC,UAAU,GAAGkC,2BAAO,GAAGwB,SAAU;AACvC3F,YAAAA,KAAK,EAAEsC,CAAC,CAAC,yCAAyC,CAAE;AACpDnC,YAAAA,OAAO,EAAE6B,QAAAA;WACV,CAAC,EACDuC,SAAS,CAACc,GAAG,CAAC,UAACnE,QAAQ,EAAE0E,KAAK,EAAA;YAAA,oBAC7BL,mBAAA,CAACtE,IAAI,EAAA;AACGiB,cAAAA,WAAW,EAAXA,WAAW;AAAEC,cAAAA,eAAe,EAAfA,eAAe;AAAEjB,cAAAA,QAAQ,EAARA,QAAQ;AAC5CsE,cAAAA,GAAG,EAAEI,KAAM;cACXzF,OAAO,EAAE,SAATA,OAAOA,GAAA;gBAAA,OAAQ+D,eAAe,CAAChD,QAAQ,CAAC,CAAA;AAAA,eAAA;AAAC,aAC1C,CAAC,CAAA;AAAA,WACH,CAAC,CAAA;AAAA,SACC,CAAC,EACLiC,WAAW,iBACVxC,cAAA,CAAA,KAAA,EAAA;AAAKH,UAAAA,SAAS,EAAC,mBAAmB;AAACkF,UAAAA,GAAG,EAAE1B,SAAU;AAAAtD,UAAAA,QAAA,eAChDC,cAAA,CAACwD,2BAAO,EAAE,EAAA,CAAA;AAAC,SACR,CACN,CAAA;OACE,CAAA;AAAC,KACH,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEV,CAAC;;AC5ID,IAAM0B,OAAO,GAAG,SAAVA,OAAOA,CAAAhG,IAAA,EAKP;AAAA,EAAA,IAJJiG,gBAAgB,GAAAjG,IAAA,CAAhBiG,gBAAgB;IAChBhE,gBAAgB,GAAAjC,IAAA,CAAhBiC,gBAAgB;IAChBI,WAAW,GAAArC,IAAA,CAAXqC,WAAW;IACXC,eAAe,GAAAtC,IAAA,CAAfsC,eAAe,CAAA;AAEf,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAAyD,eAAA,GAAmBC,yBAAc,EAAE;IAA3BC,MAAM,GAAAF,eAAA,CAANE,MAAM,CAAA;AAEd,EAAA,IAAAC,kBAAA,GAA0DC,iCAAiB,EAAE;IAA7DC,cAAc,GAAAF,kBAAA,CAAtBG,MAAM;IAA6BpE,UAAU,GAAAiE,kBAAA,CAArBI,SAAS,CAAA;AAEzC,EAAA,IAAA/D,SAAA,GAA4ChD,cAAQ,CAClDL,kBAAkB,CAACC,OACrB,CAAC;IAAAqD,UAAA,GAAAC,kCAAA,CAAAF,SAAA,EAAA,CAAA,CAAA;AAFMgE,IAAAA,cAAc,GAAA/D,UAAA,CAAA,CAAA,CAAA;AAAEgE,IAAAA,iBAAiB,GAAAhE,UAAA,CAAA,CAAA,CAAA,CAAA;AAIxC,EAAA,IAAMiE,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAS;AACjCL,IAAAA,cAAc,CACZ;MAAErH,EAAE,EAAE+G,gBAAgB,CAAC/G,EAAAA;AAAG,KAAC,EAC3B;AACE2H,MAAAA,SAAS,EAAE,SAAXA,SAASA,CAAEC,QAAQ,EAAI;QACrBzE,WAAW,CAACyE,QAAQ,CAAC,CAAA;AACrBxE,QAAAA,eAAe,EAAE,CAAA;AACnB,OAAA;AACF,KACF,CAAC,CAAA;GACF,CAAA;AAED,EAAA,IAAQnC,KAAK,GAAiB8F,gBAAgB,CAAtC9F,KAAK;IAAE4G,UAAU,GAAKd,gBAAgB,CAA/Bc,UAAU,CAAA;AAEzB,EAAA,oBACErG,eAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,+DAA+D;AAAAE,IAAAA,QAAA,gBAC5EC,cAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,kFAAkF;AAAAE,MAAAA,QAAA,eAC/FH,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,qEAAqE;AAAAE,QAAAA,QAAA,gBAClFC,cAAA,CAAA,KAAA,EAAA;AAAKH,UAAAA,SAAS,EAAC,OAAO;UAAAE,QAAA,eACpBC,cAAA,CAACE,8BAAU,EAAA;AACTL,YAAAA,SAAS,EAAC,wBAAwB;AAClC,YAAA,SAAA,EAAQ,wBAAwB;AAChCO,YAAAA,KAAK,EAAC,IAAI;AACVC,YAAAA,MAAM,EAAC,UAAU;AAAAN,YAAAA,QAAA,EAEhBV,KAAAA;WACS,CAAA;SACT,CAAC,eACNW,cAAA,CAAA,KAAA,EAAA;AAAKH,UAAAA,SAAS,EAAC,8BAA8B;UAAAE,QAAA,eAC3CC,cAAA,CAACkG,0CAAsB,EAAA;AACfN,YAAAA,cAAc,EAAdA,cAAc;AACpBO,YAAAA,cAAc,EAAEN,iBAAAA;WACjB,CAAA;SACE,CAAC,eACNjG,eAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,2CAA2C;UAAAE,QAAA,EAAA,cACxDC,cAAA,CAACoG,0BAAM,EAAA;AACLvG,YAAAA,SAAS,EAAC,eAAe;AACzB,YAAA,SAAA,EAAQ,8BAA8B;AACtCO,YAAAA,KAAK,EAAC,WAAW;AACjBO,YAAAA,KAAK,EACH2E,MAAM,CAAC,QAAQ,CAAC,GACZ3D,CAAC,CAAC,8BAA8B,CAAC,GACjCA,CAAC,CAAC,yCAAyC,CAChD;YACDnC,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,cAAA,OAAQ2B,gBAAgB,CAACnD,gBAAgB,CAACC,IAAI,CAAC,CAAA;AAAA,aAAA;AAAC,WACxD,CAAC,eACF+B,cAAA,CAACoG,0BAAM,EAAA;AACLvG,YAAAA,SAAS,EAAC,eAAe;AACzB,YAAA,SAAA,EAAQ,6BAA6B;AACrCF,YAAAA,QAAQ,EAAE2B,UAAW;AACrBX,YAAAA,KAAK,EAAEgB,CAAC,CAAC,sCAAsC,CAAE;AACjDqB,YAAAA,OAAO,EAAE1B,UAAW;AACpB9B,YAAAA,OAAO,EAAEsG,oBAAAA;AAAqB,WAC/B,CAAC,CAAA;AAAA,SACC,CAAC,CAAA;OACH,CAAA;KACF,CAAC,eACN9F,cAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,0FAA0F;AAAAE,MAAAA,QAAA,eACvGC,cAAA,CAAA,KAAA,EAAA;AACEH,QAAAA,SAAS,EAAEoB,8BAAU,CACnB,kDAAkD,EAClD;AACE,UAAA,oDAAoD,EAClD2E,cAAc,KAAKrH,kBAAkB,CAACC,OAAO;AAC/C,UAAA,mDAAmD,EACjDoH,cAAc,KAAKrH,kBAAkB,CAACE,MAAM;AAC9C,UAAA,mDAAmD,EACjDmH,cAAc,KAAKrH,kBAAkB,CAACG,MAAAA;AAC1C,SACF,CAAE;AAAAqB,QAAAA,QAAA,eAEFC,cAAA,CAAA,KAAA,EAAA;AAAKH,UAAAA,SAAS,EAAC,gEAAgE;AAAAE,UAAAA,QAAA,eAC7EC,cAAA,CAAA,QAAA,EAAA;AACEH,YAAAA,SAAS,EAAC,qEAAqE;AAC/E,YAAA,SAAA,EAAQ,WAAW;AACnBW,YAAAA,GAAG,EAAEyF,UAAAA;WACN,CAAA;SACE,CAAA;OACF,CAAA;AAAC,KACH,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEV,CAAC;;AClGD,IAAMI,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAnH,IAAA,EAOnB;AAAA,EAAA,IANJoH,MAAM,GAAApH,IAAA,CAANoH,MAAM;IACNC,OAAO,GAAArH,IAAA,CAAPqH,OAAO;IACPjF,UAAU,GAAApC,IAAA,CAAVoC,UAAU;IACVE,eAAe,GAAAtC,IAAA,CAAfsC,eAAe;IAAAgF,aAAA,GAAAtH,IAAA,CACfmC,QAAQ;AAARA,IAAAA,QAAQ,GAAAmF,aAAA,KAAG/G,KAAAA,CAAAA,GAAAA,cAAI,GAAA+G,aAAA;IAAAC,gBAAA,GAAAvH,IAAA,CACfqC,WAAW;AAAXA,IAAAA,WAAW,GAAAkF,gBAAA,KAAGhH,KAAAA,CAAAA,GAAAA,cAAI,GAAAgH,gBAAA,CAAA;AAElB,EAAA,IAAA7E,SAAA,GAA0ChD,cAAQ,CAACZ,gBAAgB,CAACC,IAAI,CAAC;IAAA4D,UAAA,GAAAC,kCAAA,CAAAF,SAAA,EAAA,CAAA,CAAA;AAAlE8E,IAAAA,aAAa,GAAA7E,UAAA,CAAA,CAAA,CAAA;AAAEV,IAAAA,gBAAgB,GAAAU,UAAA,CAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAAG,UAAA,GAAgDpD,cAAQ,CAAC,EAAE,CAAC;IAAAqD,UAAA,GAAAH,kCAAA,CAAAE,UAAA,EAAA,CAAA,CAAA;AAArDmD,IAAAA,gBAAgB,GAAAlD,UAAA,CAAA,CAAA,CAAA;AAAEb,IAAAA,mBAAmB,GAAAa,UAAA,CAAA,CAAA,CAAA,CAAA;AAE5C,EAAA,IAAM0E,YAAY,GAAG,SAAfA,YAAYA,GAAS;AACzBJ,IAAAA,OAAO,EAAE,CAAA;AACTK,IAAAA,UAAU,CAAC,YAAM;AACfzF,MAAAA,gBAAgB,CAACnD,gBAAgB,CAACC,IAAI,CAAC,CAAA;AACzC,KAAC,EAAE,GAAG,CAAC,CAAC;GACT,CAAA;EAED,oBACE+B,cAAA,CAAC6G,yBAAK,EAAA;AACEP,IAAAA,MAAM,EAANA,MAAM;AACZzG,IAAAA,SAAS,EAAC,uDAAuD;AACjEiH,IAAAA,WAAW,EAAEJ,aAAa,KAAK1I,gBAAgB,CAACC,IAAK;AACrDgC,IAAAA,IAAI,EAAC,YAAY;AACjBsG,IAAAA,OAAO,EAAEI,YAAa;IAAA5G,QAAA,EAErB2G,aAAa,KAAK1I,gBAAgB,CAACC,IAAI,gBACtC+B,cAAA,CAACkB,IAAI,EAAA;AAEDK,MAAAA,WAAW,EAAXA,WAAW;AACXD,MAAAA,UAAU,EAAVA,UAAU;AACVD,MAAAA,QAAQ,EAARA,QAAQ;AACRG,MAAAA,eAAe,EAAfA,eAAe;AACfL,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBC,MAAAA,mBAAmB,EAAnBA,mBAAAA;AAAmB,KAEtB,CAAC,gBAEFpB,cAAA,CAACkF,OAAO,EAAA;AAEJ3D,MAAAA,WAAW,EAAXA,WAAW;AACXC,MAAAA,eAAe,EAAfA,eAAe;AACf2D,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBhE,MAAAA,gBAAgB,EAAhBA,gBAAAA;KAEH,CAAA;AACF,GACI,CAAC,CAAA;AAEZ;;;;"}
|
|
1
|
+
{"version":3,"file":"CreateTemplateModal.js","sources":["../../app/javascript/src/components/CreateTemplateModal/constants.js","../../node_modules/react-intersection-observer-hook/dist/react-intersection-observer-hook.esm.js","../../node_modules/react-infinite-scroll-hook/dist/react-infinite-scroll-hook.esm.js","../../app/javascript/src/assets/dashboard/custom.svg","../../app/javascript/src/components/CreateTemplateModal/BlankCard.jsx","../../app/javascript/src/components/CreateTemplateModal/Card.jsx","../../app/javascript/src/components/CreateTemplateModal/CategoryItem.jsx","../../app/javascript/src/components/CreateTemplateModal/List.jsx","../../app/javascript/src/components/CreateTemplateModal/Preview.jsx","../../app/javascript/src/components/CreateTemplateModal/index.jsx"],"sourcesContent":["export const TEMPLATE_SCREENS = { LIST: \"List\", PREVIEW: \"Preview\" };\n\nexport const DEFAULT_CATEGORY = { id: \"all\", name: \"All\" };\n\nexport const INFINITE_SCROLL_DELAY = 500;\n\nexport const MENU_ITEMS = { CREATE: \"create\", PREVIEW: \"preview\" };\n\nexport const RESPONSIVE_DEVICES = {\n DESKTOP: \"desktop\",\n TABLET: \"tablet\",\n MOBILE: \"mobile\",\n};\n","import { useRef, useState, useCallback } from 'react';\n\nfunction createObserverCache() {\n var cachesByRoot = new Map();\n\n function getObserver(_ref) {\n var root = _ref.root,\n rootMargin = _ref.rootMargin,\n threshold = _ref.threshold;\n var cacheByRoot = cachesByRoot.get(root);\n\n if (!cacheByRoot) {\n cacheByRoot = new Map();\n cachesByRoot.set(root, cacheByRoot);\n }\n\n var cacheKey = JSON.stringify({\n rootMargin: rootMargin,\n threshold: threshold\n });\n var cachedObserver = cacheByRoot.get(cacheKey);\n\n if (!cachedObserver) {\n var entryCallbacks = new Map();\n var observer = new IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n var callback = entryCallbacks.get(entry.target);\n callback == null ? void 0 : callback(entry);\n });\n }, {\n root: root,\n rootMargin: rootMargin,\n threshold: threshold\n });\n cachedObserver = {\n observer: observer,\n entryCallbacks: entryCallbacks\n };\n cacheByRoot.set(cacheKey, cachedObserver);\n }\n\n return {\n observe: function observe(node, callback) {\n var _cachedObserver, _cachedObserver2;\n\n (_cachedObserver = cachedObserver) == null ? void 0 : _cachedObserver.entryCallbacks.set(node, callback);\n (_cachedObserver2 = cachedObserver) == null ? void 0 : _cachedObserver2.observer.observe(node);\n },\n unobserve: function unobserve(node) {\n var _cachedObserver3, _cachedObserver4;\n\n (_cachedObserver3 = cachedObserver) == null ? void 0 : _cachedObserver3.entryCallbacks[\"delete\"](node);\n (_cachedObserver4 = cachedObserver) == null ? void 0 : _cachedObserver4.observer.unobserve(node);\n }\n };\n }\n\n return {\n getObserver: getObserver\n };\n}\n\nvar DEFAULT_ROOT_MARGIN = '0px';\nvar DEFAULT_THRESHOLD = [0];\nvar observerCache = /*#__PURE__*/createObserverCache(); // For more info:\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n// https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n\nfunction useIntersectionObserver(args) {\n var _args$rootMargin, _args$threshold;\n\n var rootMargin = (_args$rootMargin = args == null ? void 0 : args.rootMargin) != null ? _args$rootMargin : DEFAULT_ROOT_MARGIN;\n var threshold = (_args$threshold = args == null ? void 0 : args.threshold) != null ? _args$threshold : DEFAULT_THRESHOLD;\n var nodeRef = useRef(null);\n var rootRef = useRef(null);\n var observerRef = useRef(null);\n\n var _useState = useState(),\n entry = _useState[0],\n setEntry = _useState[1];\n\n var observe = useCallback(function () {\n var node = nodeRef.current;\n\n if (!node) {\n setEntry(undefined);\n return;\n }\n\n var observer = observerCache.getObserver({\n root: rootRef.current,\n rootMargin: rootMargin,\n threshold: threshold\n });\n observer.observe(node, function (observedEntry) {\n setEntry(observedEntry);\n });\n observerRef.current = observer;\n }, [rootMargin, threshold]);\n var unobserve = useCallback(function () {\n var currentObserver = observerRef.current;\n var node = nodeRef.current;\n\n if (node) {\n currentObserver == null ? void 0 : currentObserver.unobserve(node);\n }\n\n observerRef.current = null;\n }, []); // React will call the ref callback with the DOM element when the component mounts,\n // and call it with null when it unmounts.\n // So, we don't need an useEffect etc to unobserve nodes.\n // When nodeRef.current is null, it will be unobserved and observe function\n // won't do anything.\n\n var refCallback = useCallback(function (node) {\n unobserve();\n nodeRef.current = node;\n observe();\n }, [observe, unobserve]);\n var rootRefCallback = useCallback(function (rootNode) {\n unobserve();\n rootRef.current = rootNode;\n observe();\n }, [observe, unobserve]);\n return [refCallback, {\n entry: entry,\n rootRef: rootRefCallback\n }];\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction useTrackVisibility(args) {\n var _result$entry;\n\n var _useIntersectionObser = useIntersectionObserver(args),\n ref = _useIntersectionObser[0],\n result = _useIntersectionObser[1];\n\n var isVisible = Boolean((_result$entry = result.entry) == null ? void 0 : _result$entry.isIntersecting);\n\n var _useState = useState(isVisible),\n wasEverVisible = _useState[0],\n setWasEverVisible = _useState[1];\n\n if (isVisible && !wasEverVisible) {\n setWasEverVisible(true);\n }\n\n return [ref, _extends({}, result, {\n isVisible: isVisible,\n wasEverVisible: wasEverVisible\n })];\n}\n\nexport { useIntersectionObserver, useTrackVisibility };\n//# sourceMappingURL=react-intersection-observer-hook.esm.js.map\n","import { useEffect } from 'react';\nimport { useTrackVisibility } from 'react-intersection-observer-hook';\n\nvar DEFAULT_DELAY_IN_MS = 100;\n\nfunction useInfiniteScroll(_ref) {\n var loading = _ref.loading,\n hasNextPage = _ref.hasNextPage,\n onLoadMore = _ref.onLoadMore,\n rootMargin = _ref.rootMargin,\n disabled = _ref.disabled,\n _ref$delayInMs = _ref.delayInMs,\n delayInMs = _ref$delayInMs === void 0 ? DEFAULT_DELAY_IN_MS : _ref$delayInMs;\n\n var _useTrackVisibility = useTrackVisibility({\n rootMargin: rootMargin\n }),\n ref = _useTrackVisibility[0],\n _useTrackVisibility$ = _useTrackVisibility[1],\n rootRef = _useTrackVisibility$.rootRef,\n isVisible = _useTrackVisibility$.isVisible;\n\n var shouldLoadMore = !disabled && !loading && isVisible && hasNextPage; // eslint-disable-next-line consistent-return\n\n useEffect(function () {\n if (shouldLoadMore) {\n // When we trigger 'onLoadMore' and new items are added to the list,\n // right before they become rendered on the screen, 'loading' becomes false\n // and 'isVisible' can be true for a brief time, based on the scroll position.\n // So, it triggers 'onLoadMore' just after the first one is finished.\n // We use a small delay here to prevent this kind of situations.\n // It can be configured by hook args.\n var timer = setTimeout(function () {\n onLoadMore();\n }, delayInMs);\n return function () {\n clearTimeout(timer);\n };\n }\n }, [onLoadMore, shouldLoadMore, delayInMs]);\n return [ref, {\n rootRef: rootRef\n }];\n}\n\nexport default useInfiniteScroll;\n//# sourceMappingURL=react-infinite-scroll-hook.esm.js.map\n","<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"46\" height=\"46\" fill=\"none\" viewBox=\"0 0 46 46\"><rect width=\"40\" height=\"40\" x=\"3\" y=\"2\" fill=\"#008068\" rx=\"2\"/><path fill=\"#fff\" fill-rule=\"evenodd\" d=\"M23.75 16C23.75 15.5858 23.4142 15.25 23 15.25C22.5858 15.25 22.25 15.5858 22.25 16V21.25H17C16.5858 21.25 16.25 21.5858 16.25 22C16.25 22.4142 16.5858 22.75 17 22.75H22.25V28C22.25 28.4142 22.5858 28.75 23 28.75C23.4142 28.75 23.75 28.4142 23.75 28V22.75H29C29.4142 22.75 29.75 22.4142 29.75 22C29.75 21.5858 29.4142 21.25 29 21.25H23.75V16Z\" clip-rule=\"evenodd\"/></svg>\n","import { noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nconst BlankCard = ({\n icon: Icon,\n title,\n description,\n onClick = noop,\n disabled = false,\n}) => (\n <div\n className=\"neeto-ui-rounded-lg neeto-ui-bg-white hover:neeto-ui-bg-white neeto-ui-border-primary-500 flex cursor-pointer flex-col items-center justify-center border border-dashed p-6 outline-none transition-all duration-300 ease-in-out hover:border-solid focus:border-solid\"\n data-cy=\"start-from-scratch-button\"\n tabIndex={0}\n onClick={!disabled ? onClick : noop}\n >\n <div className=\"neeto-ui-text-primary-500 mb-4\">\n <Icon size={40} />\n </div>\n <Typography\n className=\"text-center\"\n lineHeight=\"normal\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-600 text-center\"\n lineHeight=\"leading-4\"\n style=\"body3\"\n >\n {description}\n </Typography>\n </div>\n);\n\nexport default BlankCard;\n","import { CLOUDFRONT_BASE_URL } from \"neetocommons/constants\";\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ template, onClick }) => (\n <div\n {...{ onClick }}\n className=\"neeto-template neeto-template-thumbnail neeto-ui-bg-white neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col overflow-hidden border outline-none transition-colors duration-300 ease-in-out\"\n data-cy=\"template-card\"\n tabIndex={0}\n >\n <div className=\"neeto-template__header relative overflow-hidden\">\n <img\n className=\"neeto-template__image\"\n data-cy=\"template-thumbnail-image\"\n src={\n template.imageUrl ||\n `${CLOUDFRONT_BASE_URL}/images/neetoForm/default-form-template.svg`\n }\n />\n </div>\n <div className=\"neeto-template__description neeto-ui-bg-white flex items-center justify-between gap-2 rounded-b-lg px-3 py-1.5\">\n <Typography\n className=\"neeto-template-thumbnail__title line-clamp-2\"\n data-cy=\"template-card-title\"\n lineHeight=\"normal\"\n style=\"h5\"\n >\n {template.title}\n </Typography>\n </div>\n </div>\n);\n\nexport default Card;\n","import classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\n\nconst CategoryItem = ({ label, count, isActive, setCurrentCategory }) => (\n <button\n data-cy={`category-${joinHyphenCase(label)}`}\n tabIndex={0}\n className={classnames(\n \"neeto-ui-rounded-lg outline-none flex w-full items-center justify-between gap-2 border border-solid px-3 py-2 text-sm font-medium leading-4 transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-text-gray-700 hover:neeto-ui-bg-gray-200 focus:neeto-ui-bg-gray-200 border-transparent\":\n !isActive,\n \"neeto-ui-text-gray-800 neeto-ui-bg-white neeto-ui-border-gray-300 focus:neeto-ui-border-gray-500\":\n isActive,\n }\n )}\n onClick={setCurrentCategory}\n >\n <span>{label}</span>\n <span>{count}</span>\n </button>\n);\n\nexport default CategoryItem;\n","import { useState } from \"react\";\n\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography, Accordion } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport useInfiniteScroll from \"react-infinite-scroll-hook\";\n\nimport CustomSVG from \"assets/dashboard/custom\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport BlankCard from \"./BlankCard\";\nimport Card from \"./Card\";\nimport CategoryItem from \"./CategoryItem\";\nimport {\n DEFAULT_CATEGORY,\n INFINITE_SCROLL_DELAY,\n TEMPLATE_SCREENS,\n} from \"./constants\";\n\nconst List = ({\n setCurrentScreen,\n setSelectedTemplate,\n onCreate,\n isCreating,\n afterCreate,\n refetchResource,\n}) => {\n const { t } = useTranslation();\n\n const [currentCategory, setCurrentCategory] = useState(DEFAULT_CATEGORY);\n const [searchTerm, setSearchTerm] = useState(\"\");\n\n const {\n hasNextPage = false,\n fetchNextPage,\n isLoading: isTemplatesLoading,\n data = {},\n } = useFetchTemplates({ searchTerm, category: currentCategory });\n\n const [sentryRef, { rootRef }] = useInfiniteScroll({\n loading: isTemplatesLoading,\n hasNextPage,\n onLoadMore: fetchNextPage,\n rootMargin: \"0px 0px 700px 0px\",\n delayInMs: INFINITE_SCROLL_DELAY,\n });\n\n const handleCardClick = template => {\n setCurrentScreen(TEMPLATE_SCREENS.PREVIEW);\n setSelectedTemplate(template);\n };\n\n if (isTemplatesLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n const { tags = [], templates = [], templatesCount = 0 } = data;\n\n const categories = [{ ...DEFAULT_CATEGORY, count: templatesCount }, ...tags];\n\n return (\n <div className=\"neeto-ui-bg-gray-100 relative flex flex-col items-start md:min-h-full md:flex-row\">\n <div className=\"w-full flex-shrink-0 space-y-6 px-4 py-6 md:sticky md:left-0 md:top-0 md:w-72 md:space-y-8 md:pl-10 md:pr-0 lg:w-80 xl:pl-16\">\n <div className=\"space-y-4\">\n <div className=\"space-y-1\">\n <Typography\n data-cy=\"create-new-form-title\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoTemplate.templates.createNewEntity\")}\n </Typography>\n <Typography lineHeight=\"normal\" style=\"body2\">\n {t(\"neetoTemplate.templates.description\")}\n </Typography>\n </div>\n <Search\n autoFocus\n disableTrimOnBlur\n data-cy=\"template-search-input\"\n placeholder={t(\"neetoTemplate.templates.search\")}\n onSearch={value => setSearchTerm(value)}\n />\n </div>\n <Accordion className=\"md:hidden\">\n <Accordion.Item title={t(\"neetoTemplate.templates.categories\")}>\n {categories.map(({ id, name, count }) => (\n <CategoryItem\n {...{ count }}\n isActive={currentCategory.id === id}\n key={id}\n label={name}\n setCurrentCategory={() => setCurrentCategory({ id, name })}\n />\n ))}\n </Accordion.Item>\n </Accordion>\n <div className=\"hidden space-y-3 md:block\">\n <Typography\n className=\"uppercase\"\n data-cy=\"template-categories-label\"\n style=\"h6\"\n >\n {t(\"neetoTemplate.templates.categories\")}\n </Typography>\n <div className=\"space-y-2\">\n {categories.map(({ id, name, count }) => (\n <CategoryItem\n {...{ count }}\n isActive={currentCategory.id === id}\n key={id}\n label={name}\n setCurrentCategory={() => setCurrentCategory({ id, name })}\n />\n ))}\n </div>\n </div>\n </div>\n <div\n className=\"h-screen w-full p-4 md:overflow-y-auto md:py-8 md:pl-8 md:pr-20 xl:px-20\"\n ref={rootRef}\n >\n <div className=\"flex-grow space-y-6\">\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 lg:gap-5 xl:gap-6 2xl:grid-cols-4\">\n <BlankCard\n description={t(\"neetoTemplate.templates.blankCard.description\")}\n disabled={isCreating}\n icon={isCreating ? Spinner : CustomSVG}\n title={t(\"neetoTemplate.templates.blankCard.title\")}\n onClick={onCreate}\n />\n {templates.map((template, index) => (\n <Card\n {...{ afterCreate, refetchResource, template }}\n key={index}\n onClick={() => handleCardClick(template)}\n />\n ))}\n </div>\n {hasNextPage && (\n <div className=\"my-10 text-center\" ref={sentryRef}>\n <Spinner />\n </div>\n )}\n </div>\n </div>\n </div>\n );\n};\n\nexport default List;\n","import { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport ResponsiveDevicePicker from \"neetomolecules/ResponsiveDevicePicker\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateTemplate } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport { TEMPLATE_SCREENS, RESPONSIVE_DEVICES } from \"./constants\";\n\nconst Preview = ({\n selectedTemplate,\n setCurrentScreen,\n afterCreate,\n refetchResource,\n}) => {\n const { t } = useTranslation();\n\n const { isSize } = useBreakpoints();\n\n const { mutate: createTemplate, isPending: isCreating } = useCreateTemplate();\n\n const [selectedDevice, setSelectedDevice] = useState(\n RESPONSIVE_DEVICES.DESKTOP\n );\n\n const handleCreateTemplate = () => {\n createTemplate(\n { id: selectedTemplate.id },\n {\n onSuccess: response => {\n afterCreate(response);\n refetchResource();\n },\n }\n );\n };\n\n const { title, previewUrl } = selectedTemplate;\n\n return (\n <div className=\"neeto-templates-full-page-preview flex h-full w-full flex-col\">\n <div className=\"neeto-templates-full-page-preview__header neeto-ui-border-gray-200 border-b px-4\">\n <div className=\"mx-auto flex w-full max-w-6xl items-center justify-between py-[9px]\">\n <div className=\"w-1/3\">\n <Typography\n className=\"truncate leading-tight\"\n data-cy=\"preview-template-title\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </div>\n <div className=\"hidden flex-shrink-0 lg:flex\">\n <ResponsiveDevicePicker\n {...{ selectedDevice }}\n onDeviceChange={setSelectedDevice}\n />\n </div>\n <div className=\"flex w-1/3 items-center justify-end gap-2\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"preview-template-back-button\"\n style=\"secondary\"\n label={\n isSize(\"mobile\")\n ? t(\"neetoTemplate.templates.back\")\n : t(\"neetoTemplate.templates.backToTemplates\")\n }\n onClick={() => setCurrentScreen(TEMPLATE_SCREENS.LIST)}\n />\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"preview-use-template-button\"\n disabled={isCreating}\n label={t(\"neetoTemplate.templates.editTemplate\")}\n loading={isCreating}\n onClick={handleCreateTemplate}\n />\n </div>\n </div>\n </div>\n <div className=\"neeto-ui-bg-gray-200 neeto-templates-full-page-preview__holder-wrapper min-h-0 flex-grow\">\n <div\n className={classnames(\n \"neeto-templates-full-page-preview__holder m-auto\",\n {\n \"neeto-templates-full-page-preview__holder--desktop\":\n selectedDevice === RESPONSIVE_DEVICES.DESKTOP,\n \"neeto-templates-full-page-preview__holder--tablet\":\n selectedDevice === RESPONSIVE_DEVICES.TABLET,\n \"neeto-templates-full-page-preview__holder--mobile\":\n selectedDevice === RESPONSIVE_DEVICES.MOBILE,\n }\n )}\n >\n <div className=\"neeto-templates-full-page-preview__device-border h-full w-full\">\n <iframe\n className=\"neeto-templates-full-page-preview__iframe h-full w-full border-none\"\n data-cy=\"iframe-id\"\n src={previewUrl}\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\nexport default Preview;\n","import { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Modal } from \"neetoui\";\n\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/application.scss\";\n\nimport { TEMPLATE_SCREENS } from \"./constants\";\nimport List from \"./List\";\nimport Preview from \"./Preview\";\n\nconst CreateTemplateModal = ({\n isOpen,\n onClose,\n isCreating,\n refetchResource,\n onCreate = noop,\n afterCreate = noop,\n}) => {\n const [currentScreen, setCurrentScreen] = useState(TEMPLATE_SCREENS.LIST);\n const [selectedTemplate, setSelectedTemplate] = useState({});\n\n const onModalClose = () => {\n onClose();\n setTimeout(() => {\n setCurrentScreen(TEMPLATE_SCREENS.LIST);\n }, 300); //To accommodate the animation duration.\n };\n\n return (\n <Modal\n {...{ isOpen }}\n className=\"neeto-template-list h-screen w-screen overflow-y-auto\"\n closeButton={currentScreen === TEMPLATE_SCREENS.LIST}\n size=\"fullScreen\"\n onClose={onModalClose}\n >\n {currentScreen === TEMPLATE_SCREENS.LIST ? (\n <List\n {...{\n afterCreate,\n isCreating,\n onCreate,\n refetchResource,\n setCurrentScreen,\n setSelectedTemplate,\n }}\n />\n ) : (\n <Preview\n {...{\n afterCreate,\n refetchResource,\n selectedTemplate,\n setCurrentScreen,\n }}\n />\n )}\n </Modal>\n );\n};\n\nexport default CreateTemplateModal;\n"],"names":["TEMPLATE_SCREENS","LIST","PREVIEW","DEFAULT_CATEGORY","id","name","INFINITE_SCROLL_DELAY","RESPONSIVE_DEVICES","DESKTOP","TABLET","MOBILE","useRef","useState","useCallback","_extends","useEffect","React","BlankCard","_ref","Icon","icon","title","description","_ref$onClick","onClick","noop","_ref$disabled","disabled","_jsxs","className","tabIndex","children","_jsx","size","Typography","lineHeight","style","weight","Card","template","src","imageUrl","concat","CLOUDFRONT_BASE_URL","CategoryItem","label","count","isActive","setCurrentCategory","joinHyphenCase","classnames","List","setCurrentScreen","setSelectedTemplate","onCreate","isCreating","afterCreate","refetchResource","_useTranslation","useTranslation","t","_useState","_useState2","_slicedToArray","currentCategory","_useState3","_useState4","searchTerm","setSearchTerm","_useFetchTemplates","useFetchTemplates","category","_useFetchTemplates$ha","hasNextPage","fetchNextPage","isTemplatesLoading","isLoading","_useFetchTemplates$da","data","_useInfiniteScroll","useInfiniteScroll","loading","onLoadMore","rootMargin","delayInMs","_useInfiniteScroll2","sentryRef","rootRef","handleCardClick","Spinner","_data$tags","tags","_data$templates","templates","_data$templatesCount","templatesCount","categories","_objectSpread","_toConsumableArray","Search","autoFocus","disableTrimOnBlur","placeholder","onSearch","value","Accordion","Item","map","_ref2","_createElement","key","_ref3","ref","CustomSVG","index","Preview","selectedTemplate","_useBreakpoints","useBreakpoints","isSize","_useCreateTemplate","useCreateTemplate","createTemplate","mutate","isPending","selectedDevice","setSelectedDevice","handleCreateTemplate","onSuccess","response","previewUrl","ResponsiveDevicePicker","onDeviceChange","Button","CreateTemplateModal","isOpen","onClose","_ref$onCreate","_ref$afterCreate","currentScreen","onModalClose","setTimeout","Modal","closeButton"],"mappings":"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","x_google_ignoreList":[1,2]}
|