@theia/getting-started 1.75.0-next.21 → 1.75.0-next.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/lib/browser/getting-started-contribution.d.ts +30 -2
  2. package/lib/browser/getting-started-contribution.d.ts.map +1 -1
  3. package/lib/browser/getting-started-contribution.js +120 -0
  4. package/lib/browser/getting-started-contribution.js.map +1 -1
  5. package/lib/browser/getting-started-contribution.spec.d.ts +2 -0
  6. package/lib/browser/getting-started-contribution.spec.d.ts.map +1 -0
  7. package/lib/browser/getting-started-contribution.spec.js +152 -0
  8. package/lib/browser/getting-started-contribution.spec.js.map +1 -0
  9. package/lib/browser/getting-started-frontend-module.d.ts.map +1 -1
  10. package/lib/browser/getting-started-frontend-module.js +8 -0
  11. package/lib/browser/getting-started-frontend-module.js.map +1 -1
  12. package/lib/browser/getting-started-widget.d.ts +19 -0
  13. package/lib/browser/getting-started-widget.d.ts.map +1 -1
  14. package/lib/browser/getting-started-widget.js +57 -2
  15. package/lib/browser/getting-started-widget.js.map +1 -1
  16. package/lib/browser/getting-started-widget.spec.d.ts +2 -0
  17. package/lib/browser/getting-started-widget.spec.d.ts.map +1 -0
  18. package/lib/browser/getting-started-widget.spec.js +71 -0
  19. package/lib/browser/getting-started-widget.spec.js.map +1 -0
  20. package/lib/browser/walkthrough-card.d.ts +8 -0
  21. package/lib/browser/walkthrough-card.d.ts.map +1 -0
  22. package/lib/browser/walkthrough-card.js +40 -0
  23. package/lib/browser/walkthrough-card.js.map +1 -0
  24. package/lib/browser/walkthrough-card.spec.d.ts +2 -0
  25. package/lib/browser/walkthrough-card.spec.d.ts.map +1 -0
  26. package/lib/browser/walkthrough-card.spec.js +188 -0
  27. package/lib/browser/walkthrough-card.spec.js.map +1 -0
  28. package/lib/browser/walkthrough-detail.d.ts +19 -0
  29. package/lib/browser/walkthrough-detail.d.ts.map +1 -0
  30. package/lib/browser/walkthrough-detail.js +210 -0
  31. package/lib/browser/walkthrough-detail.js.map +1 -0
  32. package/lib/browser/walkthrough-detail.spec.d.ts +2 -0
  33. package/lib/browser/walkthrough-detail.spec.d.ts.map +1 -0
  34. package/lib/browser/walkthrough-detail.spec.js +409 -0
  35. package/lib/browser/walkthrough-detail.spec.js.map +1 -0
  36. package/lib/browser/walkthrough-icon.d.ts +10 -0
  37. package/lib/browser/walkthrough-icon.d.ts.map +1 -0
  38. package/lib/browser/walkthrough-icon.js +37 -0
  39. package/lib/browser/walkthrough-icon.js.map +1 -0
  40. package/lib/browser/walkthrough-section.d.ts +23 -0
  41. package/lib/browser/walkthrough-section.d.ts.map +1 -0
  42. package/lib/browser/walkthrough-section.js +65 -0
  43. package/lib/browser/walkthrough-section.js.map +1 -0
  44. package/lib/browser/walkthrough-section.spec.d.ts +2 -0
  45. package/lib/browser/walkthrough-section.spec.d.ts.map +1 -0
  46. package/lib/browser/walkthrough-section.spec.js +328 -0
  47. package/lib/browser/walkthrough-section.spec.js.map +1 -0
  48. package/lib/browser/walkthrough-service.d.ts +166 -0
  49. package/lib/browser/walkthrough-service.d.ts.map +1 -0
  50. package/lib/browser/walkthrough-service.js +505 -0
  51. package/lib/browser/walkthrough-service.js.map +1 -0
  52. package/lib/browser/walkthrough-service.spec.d.ts +2 -0
  53. package/lib/browser/walkthrough-service.spec.d.ts.map +1 -0
  54. package/lib/browser/walkthrough-service.spec.js +1026 -0
  55. package/lib/browser/walkthrough-service.spec.js.map +1 -0
  56. package/lib/common/getting-started-preferences.d.ts +1 -0
  57. package/lib/common/getting-started-preferences.d.ts.map +1 -1
  58. package/lib/common/getting-started-preferences.js +5 -0
  59. package/lib/common/getting-started-preferences.js.map +1 -1
  60. package/lib/common/walkthrough-commands.d.ts +11 -0
  61. package/lib/common/walkthrough-commands.d.ts.map +1 -0
  62. package/lib/common/walkthrough-commands.js +41 -0
  63. package/lib/common/walkthrough-commands.js.map +1 -0
  64. package/lib/common/walkthrough-types.d.ts +22 -0
  65. package/lib/common/walkthrough-types.d.ts.map +1 -0
  66. package/lib/common/walkthrough-types.js +18 -0
  67. package/lib/common/walkthrough-types.js.map +1 -0
  68. package/package.json +8 -7
  69. package/src/browser/getting-started-contribution.spec.ts +188 -0
  70. package/src/browser/getting-started-contribution.ts +139 -3
  71. package/src/browser/getting-started-frontend-module.ts +8 -0
  72. package/src/browser/getting-started-widget.spec.tsx +88 -0
  73. package/src/browser/getting-started-widget.tsx +70 -3
  74. package/src/browser/style/index.css +279 -0
  75. package/src/browser/walkthrough-card.spec.tsx +247 -0
  76. package/src/browser/walkthrough-card.tsx +62 -0
  77. package/src/browser/walkthrough-detail.spec.tsx +675 -0
  78. package/src/browser/walkthrough-detail.tsx +347 -0
  79. package/src/browser/walkthrough-icon.tsx +42 -0
  80. package/src/browser/walkthrough-section.spec.tsx +484 -0
  81. package/src/browser/walkthrough-section.tsx +119 -0
  82. package/src/browser/walkthrough-service.spec.ts +1279 -0
  83. package/src/browser/walkthrough-service.ts +565 -0
  84. package/src/common/getting-started-preferences.ts +6 -0
  85. package/src/common/walkthrough-commands.ts +37 -0
  86. package/src/common/walkthrough-types.ts +39 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walkthrough-detail.spec.js","sourceRoot":"","sources":["../../src/browser/walkthrough-detail.spec.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import * as React from '@theia/core/shared/react';
2
+ import { Walkthrough } from '../common/walkthrough-types';
3
+ /**
4
+ * Renders the icon of a walkthrough: the codicon it contributes itself if there is one, otherwise the icon
5
+ * of the extension it comes from. Renders nothing when neither is available.
6
+ */
7
+ export declare function WalkthroughIcon(props: {
8
+ walkthrough: Walkthrough;
9
+ }): React.ReactElement | undefined;
10
+ //# sourceMappingURL=walkthrough-icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walkthrough-icon.d.ts","sourceRoot":"","sources":["../../src/browser/walkthrough-icon.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE;IAAE,WAAW,EAAE,WAAW,CAAA;CAAE,GAAG,KAAK,CAAC,YAAY,GAAG,SAAS,CAgBnG"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.WalkthroughIcon = WalkthroughIcon;
19
+ const browser_1 = require("@theia/core/lib/browser");
20
+ const React = require("@theia/core/shared/react");
21
+ const plugin_shared_style_1 = require("@theia/plugin-ext/lib/main/browser/plugin-shared-style");
22
+ /**
23
+ * Renders the icon of a walkthrough: the codicon it contributes itself if there is one, otherwise the icon
24
+ * of the extension it comes from. Renders nothing when neither is available.
25
+ */
26
+ function WalkthroughIcon(props) {
27
+ const { walkthrough } = props;
28
+ const [failed, setFailed] = React.useState(false);
29
+ if (walkthrough.icon) {
30
+ return React.createElement("span", { className: `gs-walkthrough-icon ${(0, browser_1.codicon)(walkthrough.icon)}` });
31
+ }
32
+ if (walkthrough.pluginIcon && !failed) {
33
+ return React.createElement("img", { className: 'gs-walkthrough-icon gs-walkthrough-plugin-icon', src: plugin_shared_style_1.PluginSharedStyle.toExternalIconUrl(walkthrough.pluginIcon), alt: '', onError: () => setFailed(true) });
34
+ }
35
+ return undefined;
36
+ }
37
+ //# sourceMappingURL=walkthrough-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walkthrough-icon.js","sourceRoot":"","sources":["../../src/browser/walkthrough-icon.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAWhF,0CAgBC;AAzBD,qDAAkD;AAClD,kDAAkD;AAClD,gGAA2F;AAG3F;;;GAGG;AACH,SAAgB,eAAe,CAAC,KAAmC;IAC/D,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAC9B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;QACnB,OAAO,8BAAM,SAAS,EAAE,uBAAuB,IAAA,iBAAO,EAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAS,CAAC;IACxF,CAAC;IACD,IAAI,WAAW,CAAC,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;QACpC,OAAO,6BACH,SAAS,EAAC,gDAAgD,EAC1D,GAAG,EAAE,uCAAiB,CAAC,iBAAiB,CAAC,WAAW,CAAC,UAAU,CAAC,EAChE,GAAG,EAAC,EAAE,EACN,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAChC,CAAC;IACP,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { MarkdownRenderer } from '@theia/core/lib/browser/markdown-rendering/markdown-renderer';
2
+ import { ThemeService } from '@theia/core/lib/browser/theming';
3
+ import { ILogger } from '@theia/core/lib/common/logger';
4
+ import * as React from '@theia/core/shared/react';
5
+ import { WalkthroughService } from './walkthrough-service';
6
+ export interface WalkthroughSectionProps {
7
+ walkthroughService: WalkthroughService;
8
+ markdownRenderer: MarkdownRenderer;
9
+ themeService: ThemeService;
10
+ logger: ILogger;
11
+ /** Offers all walkthroughs for selection, completed ones included. */
12
+ onShowAll?: () => void;
13
+ }
14
+ /** How many walkthroughs are listed on the welcome page. */
15
+ export declare const WALKTHROUGH_LIST_LIMIT = 2;
16
+ /**
17
+ * Renders the list of contributed walkthroughs, or the currently selected walkthrough.
18
+ *
19
+ * The selection is owned by the {@link WalkthroughService} rather than by this component, so that the
20
+ * welcome view can give the selected walkthrough the whole view instead of a single section.
21
+ */
22
+ export declare function WalkthroughSection(props: WalkthroughSectionProps): React.ReactElement;
23
+ //# sourceMappingURL=walkthrough-section.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walkthrough-section.d.ts","sourceRoot":"","sources":["../../src/browser/walkthrough-section.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8DAA8D,CAAC;AAChG,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAGxD,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAI3D,MAAM,WAAW,uBAAuB;IACpC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,4DAA4D;AAC5D,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CAwErF"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.WALKTHROUGH_LIST_LIMIT = void 0;
19
+ exports.WalkthroughSection = WalkthroughSection;
20
+ const browser_1 = require("@theia/core/lib/browser");
21
+ const disposable_1 = require("@theia/core/lib/common/disposable");
22
+ const nls_1 = require("@theia/core/lib/common/nls");
23
+ const React = require("@theia/core/shared/react");
24
+ const walkthrough_card_1 = require("./walkthrough-card");
25
+ const walkthrough_detail_1 = require("./walkthrough-detail");
26
+ /** How many walkthroughs are listed on the welcome page. */
27
+ exports.WALKTHROUGH_LIST_LIMIT = 2;
28
+ /**
29
+ * Renders the list of contributed walkthroughs, or the currently selected walkthrough.
30
+ *
31
+ * The selection is owned by the {@link WalkthroughService} rather than by this component, so that the
32
+ * welcome view can give the selected walkthrough the whole view instead of a single section.
33
+ */
34
+ function WalkthroughSection(props) {
35
+ const { walkthroughService } = props;
36
+ const [, forceUpdate] = React.useReducer((version) => version + 1, 0);
37
+ React.useEffect(() => {
38
+ const toDispose = new disposable_1.DisposableCollection(walkthroughService.onDidChangeWalkthroughs(() => forceUpdate()), walkthroughService.onDidChangeSelection(() => forceUpdate()));
39
+ return () => toDispose.dispose();
40
+ }, [walkthroughService]);
41
+ const selectedWalkthrough = walkthroughService.selectedWalkthrough;
42
+ if (selectedWalkthrough) {
43
+ return (React.createElement(walkthrough_detail_1.WalkthroughDetail, { walkthrough: selectedWalkthrough, onStepSelect: step => walkthroughService.selectStep(step.id), onBack: () => walkthroughService.clearSelection(), selectedStep: walkthroughService.selectedStep, markdownRenderer: props.markdownRenderer, onLinkClick: url => walkthroughService.handleLinkClick(url), onToggleStepDone: step => step.isComplete
44
+ ? walkthroughService.markStepIncomplete(selectedWalkthrough.id, step.id)
45
+ : walkthroughService.markStepComplete(selectedWalkthrough.id, step.id), onMarkAllStepsDone: () => walkthroughService.markAllStepsComplete(selectedWalkthrough.id), themeService: props.themeService, logger: props.logger }));
46
+ }
47
+ const walkthroughs = walkthroughService.getWalkthroughs();
48
+ if (walkthroughs.length === 0) {
49
+ return React.createElement(React.Fragment, null);
50
+ }
51
+ // A finished walkthrough has nothing left to offer here; it stays reachable through `onShowAll`.
52
+ const pending = walkthroughs.filter(walkthrough => walkthrough.steps.some(step => !step.isComplete));
53
+ const listed = pending.slice(0, exports.WALKTHROUGH_LIST_LIMIT);
54
+ return (React.createElement("div", { className: 'gs-section' },
55
+ React.createElement("h3", { className: 'gs-section-header' },
56
+ React.createElement("i", { className: (0, browser_1.codicon)('compass') }),
57
+ nls_1.nls.localizeByDefault('Walkthroughs')),
58
+ React.createElement("div", { className: 'gs-walkthrough-cards' }, listed.map(walkthrough => (React.createElement(walkthrough_card_1.WalkthroughCard, { key: walkthrough.id, walkthrough: walkthrough, onSelect: (selected) => walkthroughService.selectWalkthrough(selected.id) })))),
59
+ props.onShowAll && walkthroughs.length > listed.length && (React.createElement("a", { role: 'button', tabIndex: 0, className: 'gs-walkthrough-more', onClick: props.onShowAll, onKeyDown: (e) => {
60
+ if (e.key === 'Enter') {
61
+ props.onShowAll?.();
62
+ }
63
+ } }, nls_1.nls.localizeByDefault('More...')))));
64
+ }
65
+ //# sourceMappingURL=walkthrough-section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walkthrough-section.js","sourceRoot":"","sources":["../../src/browser/walkthrough-section.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAgChF,gDAwEC;AAtGD,qDAAkD;AAIlD,kEAAyE;AACzE,oDAAiD;AACjD,kDAAkD;AAGlD,yDAAqD;AACrD,6DAAyD;AAWzD,4DAA4D;AAC/C,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAExC;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,KAA8B;IAC7D,MAAM,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC;IACrC,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9E,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,SAAS,GAAG,IAAI,iCAAoB,CACtC,kBAAkB,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,EAC/D,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAC/D,CAAC;QACF,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEzB,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,mBAAmB,CAAC;IACnE,IAAI,mBAAmB,EAAE,CAAC;QACtB,OAAO,CACH,oBAAC,sCAAiB,IACd,WAAW,EAAE,mBAAmB,EAChC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAC5D,MAAM,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,cAAc,EAAE,EACjD,YAAY,EAAE,kBAAkB,CAAC,YAAY,EAC7C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EACxC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,eAAe,CAAC,GAAG,CAAC,EAC3D,gBAAgB,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU;gBACrC,CAAC,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;gBACxE,CAAC,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,EAC1E,kBAAkB,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,EAAE,CAAC,EACzF,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,MAAM,EAAE,KAAK,CAAC,MAAM,GACtB,CACL,CAAC;IACN,CAAC;IAED,MAAM,YAAY,GAAG,kBAAkB,CAAC,eAAe,EAAE,CAAC;IAC1D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,oBAAC,KAAK,CAAC,QAAQ,OAAG,CAAC;IAC9B,CAAC;IAED,iGAAiG;IACjG,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACrG,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,8BAAsB,CAAC,CAAC;IACxD,OAAO,CACH,6BAAK,SAAS,EAAC,YAAY;QACvB,4BAAI,SAAS,EAAC,mBAAmB;YAC7B,2BAAG,SAAS,EAAE,IAAA,iBAAO,EAAC,SAAS,CAAC,GAAM;YACrC,SAAG,CAAC,iBAAiB,CAAC,cAAc,CAAC,CACrC;QACL,6BAAK,SAAS,EAAC,sBAAsB,IAChC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CACvB,oBAAC,kCAAe,IACZ,GAAG,EAAE,WAAW,CAAC,EAAE,EACnB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,CAAC,QAAqB,EAAE,EAAE,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,GACxF,CACL,CAAC,CACA;QACL,KAAK,CAAC,SAAS,IAAI,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,CACvD,2BACI,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACX,SAAS,EAAC,qBAAqB,EAC/B,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,SAAS,EAAE,CAAC,CAAsB,EAAE,EAAE;gBAClC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;oBACpB,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;gBACxB,CAAC;YACL,CAAC,IAEA,SAAG,CAAC,iBAAiB,CAAC,SAAS,CAAC,CACjC,CACP,CACC,CACT,CAAC;AACN,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=walkthrough-section.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walkthrough-section.spec.d.ts","sourceRoot":"","sources":["../../src/browser/walkthrough-section.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,328 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const assert = require("assert");
19
+ const React = require("react");
20
+ const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
21
+ let disableJSDOM = (0, jsdom_1.enableJSDOM)();
22
+ const client_1 = require("react-dom/client");
23
+ const event_1 = require("@theia/core/lib/common/event");
24
+ const disposable_1 = require("@theia/core/lib/common/disposable");
25
+ const walkthrough_section_1 = require("./walkthrough-section");
26
+ function createMockStep(overrides) {
27
+ return {
28
+ id: 'step-1',
29
+ title: 'Test Step',
30
+ description: 'A test step description',
31
+ isComplete: false,
32
+ ...overrides
33
+ };
34
+ }
35
+ function createMockWalkthrough(overrides) {
36
+ return {
37
+ id: 'test-walkthrough',
38
+ title: 'Test Walkthrough',
39
+ description: 'A test walkthrough description',
40
+ steps: [
41
+ createMockStep({ id: 'step-1', title: 'First Step' }),
42
+ createMockStep({ id: 'step-2', title: 'Second Step' })
43
+ ],
44
+ pluginId: 'test.plugin',
45
+ ...overrides
46
+ };
47
+ }
48
+ /**
49
+ * Mirrors the selection handling of the real service: the selection is owned by the service, not by the component.
50
+ */
51
+ function createMockWalkthroughService(walkthroughs = []) {
52
+ const changeEmitter = new event_1.Emitter();
53
+ const selectionEmitter = new event_1.Emitter();
54
+ let selectedWalkthroughId;
55
+ let selectedStepId;
56
+ return {
57
+ changeEmitter,
58
+ selectionEmitter,
59
+ getWalkthroughs: () => [...walkthroughs],
60
+ getWalkthrough: (id) => walkthroughs.find(w => w.id === id),
61
+ onDidChangeWalkthroughs: changeEmitter.event,
62
+ onDidChangeSelection: selectionEmitter.event,
63
+ get selectedWalkthrough() {
64
+ return walkthroughs.find(w => w.id === selectedWalkthroughId);
65
+ },
66
+ get selectedStep() {
67
+ return this.selectedWalkthrough?.steps.find(s => s.id === selectedStepId);
68
+ },
69
+ selectWalkthrough: (id) => {
70
+ const walkthrough = walkthroughs.find(w => w.id === id);
71
+ if (walkthrough) {
72
+ selectedWalkthroughId = id;
73
+ selectedStepId = (walkthrough.steps.find(s => !s.isComplete) ?? walkthrough.steps[0])?.id;
74
+ selectionEmitter.fire();
75
+ }
76
+ },
77
+ selectStep: (stepId) => {
78
+ selectedStepId = stepId;
79
+ selectionEmitter.fire();
80
+ },
81
+ clearSelection: () => {
82
+ selectedWalkthroughId = undefined;
83
+ selectedStepId = undefined;
84
+ selectionEmitter.fire();
85
+ },
86
+ markStepComplete: () => Promise.resolve(),
87
+ markStepIncomplete: () => Promise.resolve(),
88
+ markAllStepsComplete: () => Promise.resolve(),
89
+ resetProgress: () => Promise.resolve(),
90
+ getStepProgress: () => ({ completed: 0, total: 0 }),
91
+ handleLinkClick: () => Promise.resolve()
92
+ };
93
+ }
94
+ function createMockMarkdownRenderer() {
95
+ return {
96
+ render: () => {
97
+ const div = document.createElement('div');
98
+ div.textContent = 'rendered markdown';
99
+ return { element: div, dispose: () => { } };
100
+ }
101
+ };
102
+ }
103
+ function createMockThemeService(themeType = 'dark') {
104
+ return {
105
+ getCurrentTheme: () => ({ id: 'test', label: 'Test', type: themeType }),
106
+ onDidColorThemeChange: () => disposable_1.Disposable.NULL
107
+ };
108
+ }
109
+ function createMockLogger() {
110
+ return { warn: () => { }, error: () => { }, info: () => { }, debug: () => { } };
111
+ }
112
+ describe('WalkthroughSection', () => {
113
+ let container;
114
+ let root;
115
+ let mockRenderer;
116
+ before(() => disableJSDOM = (0, jsdom_1.enableJSDOM)());
117
+ after(() => disableJSDOM());
118
+ beforeEach(() => {
119
+ container = document.createElement('div');
120
+ document.body.appendChild(container);
121
+ root = (0, client_1.createRoot)(container);
122
+ mockRenderer = createMockMarkdownRenderer();
123
+ });
124
+ afterEach(() => {
125
+ root.unmount();
126
+ document.body.removeChild(container);
127
+ });
128
+ it('should render nothing when getWalkthroughs returns empty array', done => {
129
+ const mockService = createMockWalkthroughService([]);
130
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger() }));
131
+ setTimeout(() => {
132
+ const cards = container.querySelectorAll('.gs-walkthrough-card');
133
+ assert.strictEqual(cards.length, 0, 'Should have no walkthrough cards');
134
+ const section = container.querySelector('.gs-section');
135
+ // eslint-disable-next-line no-null/no-null
136
+ assert.strictEqual(section, null, 'Should not render the section');
137
+ done();
138
+ }, 50);
139
+ });
140
+ it('should render walkthrough cards when walkthroughs exist', done => {
141
+ const walkthroughs = [
142
+ createMockWalkthrough({ id: 'wt1', title: 'Walkthrough One' }),
143
+ createMockWalkthrough({ id: 'wt2', title: 'Walkthrough Two' })
144
+ ];
145
+ const mockService = createMockWalkthroughService(walkthroughs);
146
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger() }));
147
+ setTimeout(() => {
148
+ const cards = container.querySelectorAll('.gs-walkthrough-card');
149
+ assert.strictEqual(cards.length, 2, 'Should render 2 walkthrough cards');
150
+ const titles = container.querySelectorAll('.gs-walkthrough-card-title');
151
+ assert.ok(titles[0]?.textContent?.includes('Walkthrough One'), 'First card should show correct title');
152
+ assert.ok(titles[1]?.textContent?.includes('Walkthrough Two'), 'Second card should show correct title');
153
+ done();
154
+ }, 50);
155
+ });
156
+ it('should transition from card list to detail view when a card is clicked', done => {
157
+ const walkthroughs = [
158
+ createMockWalkthrough({ id: 'wt1', title: 'Click Me' })
159
+ ];
160
+ const mockService = createMockWalkthroughService(walkthroughs);
161
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger() }));
162
+ setTimeout(() => {
163
+ const card = container.querySelector('.gs-walkthrough-card');
164
+ assert.ok(card, 'Card should exist');
165
+ card.click();
166
+ setTimeout(() => {
167
+ const detailView = container.querySelector('.gs-walkthrough-detail');
168
+ assert.ok(detailView, 'Detail view should be visible after clicking card');
169
+ const detailTitle = container.querySelector('.gs-walkthrough-detail-title');
170
+ assert.ok(detailTitle?.textContent?.includes('Click Me'), 'Detail view should show walkthrough title');
171
+ const cardList = container.querySelector('.gs-walkthrough-cards');
172
+ // eslint-disable-next-line no-null/no-null
173
+ assert.strictEqual(cardList, null, 'Card list should not be visible in detail view');
174
+ done();
175
+ }, 50);
176
+ }, 50);
177
+ });
178
+ it('should return to card list when back button is clicked in detail view', done => {
179
+ const walkthroughs = [
180
+ createMockWalkthrough({ id: 'wt1', title: 'Test WT' })
181
+ ];
182
+ const mockService = createMockWalkthroughService(walkthroughs);
183
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger() }));
184
+ setTimeout(() => {
185
+ // Click on card to enter detail view
186
+ const card = container.querySelector('.gs-walkthrough-card');
187
+ card.click();
188
+ setTimeout(() => {
189
+ assert.ok(container.querySelector('.gs-walkthrough-detail'), 'Should be in detail view');
190
+ // Click back
191
+ const backLink = container.querySelector('.gs-walkthrough-back-link');
192
+ assert.ok(backLink, 'Back link should exist');
193
+ backLink.click();
194
+ setTimeout(() => {
195
+ const cards = container.querySelectorAll('.gs-walkthrough-card');
196
+ assert.strictEqual(cards.length, 1, 'Card list should be visible again');
197
+ const detail = container.querySelector('.gs-walkthrough-detail');
198
+ // eslint-disable-next-line no-null/no-null
199
+ assert.strictEqual(detail, null, 'Detail view should not be visible');
200
+ done();
201
+ }, 50);
202
+ }, 50);
203
+ }, 50);
204
+ });
205
+ it('should re-render when onDidChangeWalkthroughs fires', done => {
206
+ const walkthroughs = [
207
+ createMockWalkthrough({ id: 'wt1', title: 'Original' })
208
+ ];
209
+ const mockService = createMockWalkthroughService(walkthroughs);
210
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger() }));
211
+ setTimeout(() => {
212
+ let cards = container.querySelectorAll('.gs-walkthrough-card');
213
+ assert.strictEqual(cards.length, 1, 'Should have 1 card initially');
214
+ // Add a second walkthrough and fire change event
215
+ walkthroughs.push(createMockWalkthrough({ id: 'wt2', title: 'New One' }));
216
+ mockService.changeEmitter.fire();
217
+ setTimeout(() => {
218
+ cards = container.querySelectorAll('.gs-walkthrough-card');
219
+ assert.strictEqual(cards.length, 2, 'Should have 2 cards after change event');
220
+ done();
221
+ }, 50);
222
+ }, 50);
223
+ });
224
+ it('should show the detail view when the service selects a valid walkthrough id', done => {
225
+ const walkthroughs = [
226
+ createMockWalkthrough({ id: 'wt1', title: 'First' }),
227
+ createMockWalkthrough({ id: 'wt2', title: 'Second' })
228
+ ];
229
+ const mockService = createMockWalkthroughService(walkthroughs);
230
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger() }));
231
+ setTimeout(() => {
232
+ // Select the second walkthrough through the service, as `walkthrough.open` does
233
+ mockService.selectWalkthrough('wt2');
234
+ setTimeout(() => {
235
+ const detailView = container.querySelector('.gs-walkthrough-detail');
236
+ assert.ok(detailView, 'Detail view should be visible');
237
+ const detailTitle = container.querySelector('.gs-walkthrough-detail-title');
238
+ assert.ok(detailTitle?.textContent?.includes('Second'), 'Should show the selected walkthrough');
239
+ done();
240
+ }, 50);
241
+ }, 50);
242
+ });
243
+ it('should not navigate to detail view when an unknown walkthrough id is selected', done => {
244
+ const walkthroughs = [
245
+ createMockWalkthrough({ id: 'wt1', title: 'Only One' })
246
+ ];
247
+ const mockService = createMockWalkthroughService(walkthroughs);
248
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger() }));
249
+ setTimeout(() => {
250
+ mockService.selectWalkthrough('nonexistent');
251
+ setTimeout(() => {
252
+ const detailView = container.querySelector('.gs-walkthrough-detail');
253
+ // eslint-disable-next-line no-null/no-null
254
+ assert.strictEqual(detailView, null, 'Should not show detail view for invalid ID');
255
+ const cards = container.querySelectorAll('.gs-walkthrough-card');
256
+ assert.strictEqual(cards.length, 1, 'Should still show cards');
257
+ done();
258
+ }, 50);
259
+ }, 50);
260
+ });
261
+ it('should properly clean up event subscriptions on unmount', done => {
262
+ const walkthroughs = [
263
+ createMockWalkthrough({ id: 'wt1' })
264
+ ];
265
+ const mockService = createMockWalkthroughService(walkthroughs);
266
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger() }));
267
+ setTimeout(() => {
268
+ // Unmount the component
269
+ root.unmount();
270
+ // Verify emitters can still fire without error (listeners were cleaned up)
271
+ assert.doesNotThrow(() => {
272
+ mockService.changeEmitter.fire();
273
+ mockService.selectionEmitter.fire();
274
+ }, 'Should not throw after unmount');
275
+ // Re-create root for afterEach cleanup
276
+ root = (0, client_1.createRoot)(container);
277
+ done();
278
+ }, 50);
279
+ });
280
+ it('should list at most WALKTHROUGH_LIST_LIMIT walkthroughs and delegate More... to the picker', done => {
281
+ const walkthroughs = [1, 2, 3, 4, 5].map(i => createMockWalkthrough({ id: `wt${i}`, title: `WT ${i}` }));
282
+ const mockService = createMockWalkthroughService(walkthroughs);
283
+ let showAllCalled = false;
284
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger(), onShowAll: () => { showAllCalled = true; } }));
285
+ setTimeout(() => {
286
+ assert.strictEqual(container.querySelectorAll('.gs-walkthrough-card').length, walkthrough_section_1.WALKTHROUGH_LIST_LIMIT, 'Should list only the first few cards');
287
+ const more = container.querySelector('.gs-walkthrough-more');
288
+ assert.ok(more, 'More link should exist');
289
+ more.click();
290
+ setTimeout(() => {
291
+ assert.strictEqual(showAllCalled, true, 'More... should offer all walkthroughs for selection');
292
+ assert.strictEqual(container.querySelectorAll('.gs-walkthrough-card').length, walkthrough_section_1.WALKTHROUGH_LIST_LIMIT, 'The list itself should not expand');
293
+ done();
294
+ }, 50);
295
+ }, 50);
296
+ });
297
+ it('should not list a walkthrough whose steps are all complete', done => {
298
+ const walkthroughs = [
299
+ createMockWalkthrough({ id: 'pending', title: 'Pending' }),
300
+ createMockWalkthrough({
301
+ id: 'done',
302
+ title: 'Done',
303
+ steps: [createMockStep({ id: 's1', isComplete: true })]
304
+ })
305
+ ];
306
+ const mockService = createMockWalkthroughService(walkthroughs);
307
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger(), onShowAll: () => { } }));
308
+ setTimeout(() => {
309
+ const titles = Array.from(container.querySelectorAll('.gs-walkthrough-card-title')).map(e => e.textContent);
310
+ assert.deepStrictEqual(titles, ['Pending'], 'Only the unfinished walkthrough should be listed');
311
+ // The completed one is still reachable, so the link has to stay.
312
+ assert.ok(container.querySelector('.gs-walkthrough-more'), 'More link should be offered');
313
+ done();
314
+ }, 50);
315
+ });
316
+ it('should not offer More... when every walkthrough is listed', done => {
317
+ const walkthroughs = [1, 2].map(i => createMockWalkthrough({ id: `wt${i}`, title: `WT ${i}` }));
318
+ const mockService = createMockWalkthroughService(walkthroughs);
319
+ root.render(React.createElement(walkthrough_section_1.WalkthroughSection, { walkthroughService: mockService, markdownRenderer: mockRenderer, themeService: createMockThemeService(), logger: createMockLogger(), onShowAll: () => { } }));
320
+ setTimeout(() => {
321
+ assert.strictEqual(container.querySelectorAll('.gs-walkthrough-card').length, 2, 'Should list both cards');
322
+ // eslint-disable-next-line no-null/no-null
323
+ assert.strictEqual(container.querySelector('.gs-walkthrough-more'), null, 'More link should not exist');
324
+ done();
325
+ }, 50);
326
+ });
327
+ });
328
+ //# sourceMappingURL=walkthrough-section.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walkthrough-section.spec.js","sourceRoot":"","sources":["../../src/browser/walkthrough-section.spec.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,iCAAiC;AACjC,+BAA+B;AAC/B,8DAAiE;AAEjE,IAAI,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;AAEjC,6CAAoD;AACpD,wDAAuD;AAGvD,kEAA+D;AAK/D,+DAAmF;AAEnF,SAAS,cAAc,CAAC,SAAoC;IACxD,OAAO;QACH,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,yBAAyB;QACtC,UAAU,EAAE,KAAK;QACjB,GAAG,SAAS;KACf,CAAC;AACN,CAAC;AAED,SAAS,qBAAqB,CAAC,SAAgC;IAC3D,OAAO;QACH,EAAE,EAAE,kBAAkB;QACtB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,gCAAgC;QAC7C,KAAK,EAAE;YACH,cAAc,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;YACrD,cAAc,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;SACzD;QACD,QAAQ,EAAE,aAAa;QACvB,GAAG,SAAS;KACf,CAAC;AACN,CAAC;AAWD;;GAEG;AACH,SAAS,4BAA4B,CAAC,eAA8B,EAAE;IAClE,MAAM,aAAa,GAAG,IAAI,eAAO,EAAQ,CAAC;IAC1C,MAAM,gBAAgB,GAAG,IAAI,eAAO,EAAQ,CAAC;IAC7C,IAAI,qBAAyC,CAAC;IAC9C,IAAI,cAAkC,CAAC;IACvC,OAAO;QACH,aAAa;QACb,gBAAgB;QAChB,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC;QACxC,cAAc,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;QACnE,uBAAuB,EAAE,aAAa,CAAC,KAAK;QAC5C,oBAAoB,EAAE,gBAAgB,CAAC,KAAK;QAC5C,IAAI,mBAAmB;YACnB,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,qBAAqB,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,YAAY;YACZ,OAAO,IAAI,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,CAAC;QAC9E,CAAC;QACD,iBAAiB,EAAE,CAAC,EAAU,EAAE,EAAE;YAC9B,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACxD,IAAI,WAAW,EAAE,CAAC;gBACd,qBAAqB,GAAG,EAAE,CAAC;gBAC3B,cAAc,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBAC1F,gBAAgB,CAAC,IAAI,EAAE,CAAC;YAC5B,CAAC;QACL,CAAC;QACD,UAAU,EAAE,CAAC,MAAc,EAAE,EAAE;YAC3B,cAAc,GAAG,MAAM,CAAC;YACxB,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;QACD,cAAc,EAAE,GAAG,EAAE;YACjB,qBAAqB,GAAG,SAAS,CAAC;YAClC,cAAc,GAAG,SAAS,CAAC;YAC3B,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;QACD,gBAAgB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QACzC,kBAAkB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QAC3C,oBAAoB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QAC7C,aAAa,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QACtC,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QACnD,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;KAC3C,CAAC;AACN,CAAC;AAED,SAAS,0BAA0B;IAC/B,OAAO;QACH,MAAM,EAAE,GAAG,EAAE;YACT,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1C,GAAG,CAAC,WAAW,GAAG,mBAAmB,CAAC;YACtC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;QAChD,CAAC;KACJ,CAAC;AACN,CAAC;AAED,SAAS,sBAAsB,CAAC,YAAuB,MAAM;IACzD,OAAO;QACH,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACvE,qBAAqB,EAAE,GAAG,EAAE,CAAC,uBAAU,CAAC,IAAI;KACpB,CAAC;AACjC,CAAC;AAED,SAAS,gBAAgB;IACrB,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAwB,CAAC;AAC1G,CAAC;AAED,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAChC,IAAI,SAAsB,CAAC;IAC3B,IAAI,IAAU,CAAC;IACf,IAAI,YAA8B,CAAC;IAEnC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;IAE5B,UAAU,CAAC,GAAG,EAAE;QACZ,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,GAAG,IAAA,mBAAU,EAAC,SAAS,CAAC,CAAC;QAC7B,YAAY,GAAG,0BAA0B,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,IAAI,CAAC,EAAE;QACxE,MAAM,WAAW,GAAG,4BAA4B,CAAC,EAAE,CAAC,CAAC;QAErD,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,GAC5B,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,MAAM,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;YACjE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,kCAAkC,CAAC,CAAC;YAExE,MAAM,OAAO,GAAG,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YACvD,2CAA2C;YAC3C,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,+BAA+B,CAAC,CAAC;YACnE,IAAI,EAAE,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,IAAI,CAAC,EAAE;QACjE,MAAM,YAAY,GAAG;YACjB,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;YAC9D,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;SACjE,CAAC;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,GAC5B,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,MAAM,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;YACjE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,mCAAmC,CAAC,CAAC;YAEzE,MAAM,MAAM,GAAG,SAAS,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,CAAC;YACxE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,sCAAsC,CAAC,CAAC;YACvG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,uCAAuC,CAAC,CAAC;YACxG,IAAI,EAAE,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,IAAI,CAAC,EAAE;QAChF,MAAM,YAAY,GAAG;YACjB,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;SAC1D,CAAC;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,GAC5B,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,sBAAsB,CAAgB,CAAC;YAC5E,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;YACrC,IAAI,CAAC,KAAK,EAAE,CAAC;YAEb,UAAU,CAAC,GAAG,EAAE;gBACZ,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;gBACrE,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,mDAAmD,CAAC,CAAC;gBAE3E,MAAM,WAAW,GAAG,SAAS,CAAC,aAAa,CAAC,8BAA8B,CAAC,CAAC;gBAC5E,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,2CAA2C,CAAC,CAAC;gBAEvG,MAAM,QAAQ,GAAG,SAAS,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;gBAClE,2CAA2C;gBAC3C,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,gDAAgD,CAAC,CAAC;gBACrF,IAAI,EAAE,CAAC;YACX,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,IAAI,CAAC,EAAE;QAC/E,MAAM,YAAY,GAAG;YACjB,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;SACzD,CAAC;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,GAC5B,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,qCAAqC;YACrC,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,sBAAsB,CAAgB,CAAC;YAC5E,IAAI,CAAC,KAAK,EAAE,CAAC;YAEb,UAAU,CAAC,GAAG,EAAE;gBACZ,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,wBAAwB,CAAC,EAAE,0BAA0B,CAAC,CAAC;gBAEzF,aAAa;gBACb,MAAM,QAAQ,GAAG,SAAS,CAAC,aAAa,CAAC,2BAA2B,CAAgB,CAAC;gBACrF,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;gBAC9C,QAAQ,CAAC,KAAK,EAAE,CAAC;gBAEjB,UAAU,CAAC,GAAG,EAAE;oBACZ,MAAM,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;oBACjE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,mCAAmC,CAAC,CAAC;oBAEzE,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;oBACjE,2CAA2C;oBAC3C,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,mCAAmC,CAAC,CAAC;oBACtE,IAAI,EAAE,CAAC;gBACX,CAAC,EAAE,EAAE,CAAC,CAAC;YACX,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,IAAI,CAAC,EAAE;QAC7D,MAAM,YAAY,GAAG;YACjB,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;SAC1D,CAAC;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,GAC5B,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,IAAI,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;YAC/D,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,8BAA8B,CAAC,CAAC;YAEpE,iDAAiD;YACjD,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YAC1E,WAAW,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAEjC,UAAU,CAAC,GAAG,EAAE;gBACZ,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;gBAC3D,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,wCAAwC,CAAC,CAAC;gBAC9E,IAAI,EAAE,CAAC;YACX,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,IAAI,CAAC,EAAE;QACrF,MAAM,YAAY,GAAG;YACjB,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YACpD,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;SACxD,CAAC;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,GAC5B,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,gFAAgF;YAChF,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAErC,UAAU,CAAC,GAAG,EAAE;gBACZ,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;gBACrE,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,+BAA+B,CAAC,CAAC;gBAEvD,MAAM,WAAW,GAAG,SAAS,CAAC,aAAa,CAAC,8BAA8B,CAAC,CAAC;gBAC5E,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,sCAAsC,CAAC,CAAC;gBAChG,IAAI,EAAE,CAAC;YACX,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE,IAAI,CAAC,EAAE;QACvF,MAAM,YAAY,GAAG;YACjB,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;SAC1D,CAAC;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,GAC5B,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAE7C,UAAU,CAAC,GAAG,EAAE;gBACZ,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;gBACrE,2CAA2C;gBAC3C,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,EAAE,4CAA4C,CAAC,CAAC;gBAEnF,MAAM,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;gBACjE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,yBAAyB,CAAC,CAAC;gBAC/D,IAAI,EAAE,CAAC;YACX,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,IAAI,CAAC,EAAE;QACjE,MAAM,YAAY,GAAG;YACjB,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;SACvC,CAAC;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,GAC5B,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,wBAAwB;YACxB,IAAI,CAAC,OAAO,EAAE,CAAC;YAEf,2EAA2E;YAC3E,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE;gBACrB,WAAW,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBACjC,WAAW,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;YACxC,CAAC,EAAE,gCAAgC,CAAC,CAAC;YAErC,uCAAuC;YACvC,IAAI,GAAG,IAAA,mBAAU,EAAC,SAAS,CAAC,CAAC;YAC7B,IAAI,EAAE,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,4FAA4F,EAAE,IAAI,CAAC,EAAE;QACpG,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACzG,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,aAAa,GAAG,KAAK,CAAC;QAE1B,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,EAC1B,SAAS,EAAE,GAAG,EAAE,GAAG,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,GAC5C,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC,MAAM,EAAE,4CAAsB,EAAE,sCAAsC,CAAC,CAAC;YAE9I,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,sBAAsB,CAAgB,CAAC;YAC5E,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;YAEb,UAAU,CAAC,GAAG,EAAE;gBACZ,MAAM,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,qDAAqD,CAAC,CAAC;gBAC/F,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC,MAAM,EAAE,4CAAsB,EAAE,mCAAmC,CAAC,CAAC;gBAC3I,IAAI,EAAE,CAAC;YACX,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,IAAI,CAAC,EAAE;QACpE,MAAM,YAAY,GAAG;YACjB,qBAAqB,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAC1D,qBAAqB,CAAC;gBAClB,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,MAAM;gBACb,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;aAC1D,CAAC;SACL,CAAC;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,EAC1B,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,GACtB,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YAC5G,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,kDAAkD,CAAC,CAAC;YAChG,iEAAiE;YACjE,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,sBAAsB,CAAC,EAAE,6BAA6B,CAAC,CAAC;YAC1F,IAAI,EAAE,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,IAAI,CAAC,EAAE;QACnE,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CACP,oBAAC,wCAAkB,IACf,kBAAkB,EAAE,WAA4C,EAChE,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,sBAAsB,EAAE,EACtC,MAAM,EAAE,gBAAgB,EAAE,EAC1B,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,GACtB,CACL,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YACZ,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,wBAAwB,CAAC,CAAC;YAC3G,2CAA2C;YAC3C,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,aAAa,CAAC,sBAAsB,CAAC,EAAE,IAAI,EAAE,4BAA4B,CAAC,CAAC;YACxG,IAAI,EAAE,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}