@theia/toolbar 1.67.0-next.56 → 1.67.0-next.59

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 (81) hide show
  1. package/lib/browser/abstract-toolbar-contribution.d.ts +17 -0
  2. package/lib/browser/abstract-toolbar-contribution.d.ts.map +1 -0
  3. package/lib/browser/abstract-toolbar-contribution.js +61 -0
  4. package/lib/browser/abstract-toolbar-contribution.js.map +1 -0
  5. package/lib/browser/application-shell-with-toolbar-override.d.ts +17 -0
  6. package/lib/browser/application-shell-with-toolbar-override.d.ts.map +1 -0
  7. package/lib/browser/application-shell-with-toolbar-override.js +91 -0
  8. package/lib/browser/application-shell-with-toolbar-override.js.map +1 -0
  9. package/lib/browser/icons/codicons.d.ts +632 -0
  10. package/lib/browser/icons/codicons.d.ts.map +1 -0
  11. package/lib/browser/icons/codicons.js +650 -0
  12. package/lib/browser/icons/codicons.js.map +1 -0
  13. package/lib/browser/icons/font-awesome-icons.d.ts +789 -0
  14. package/lib/browser/icons/font-awesome-icons.d.ts.map +1 -0
  15. package/lib/browser/icons/font-awesome-icons.js +807 -0
  16. package/lib/browser/icons/font-awesome-icons.js.map +1 -0
  17. package/lib/browser/icons/icon-set-provider.d.ts +52 -0
  18. package/lib/browser/icons/icon-set-provider.d.ts.map +1 -0
  19. package/lib/browser/icons/icon-set-provider.js +137 -0
  20. package/lib/browser/icons/icon-set-provider.js.map +1 -0
  21. package/lib/browser/package.spec.d.ts +1 -0
  22. package/lib/browser/package.spec.d.ts.map +1 -0
  23. package/lib/browser/package.spec.js +19 -0
  24. package/lib/browser/package.spec.js.map +1 -0
  25. package/lib/browser/toolbar-command-contribution.d.ts +21 -0
  26. package/lib/browser/toolbar-command-contribution.d.ts.map +1 -0
  27. package/lib/browser/toolbar-command-contribution.js +188 -0
  28. package/lib/browser/toolbar-command-contribution.js.map +1 -0
  29. package/lib/browser/toolbar-command-quick-input-service.d.ts +20 -0
  30. package/lib/browser/toolbar-command-quick-input-service.d.ts.map +1 -0
  31. package/lib/browser/toolbar-command-quick-input-service.js +105 -0
  32. package/lib/browser/toolbar-command-quick-input-service.js.map +1 -0
  33. package/lib/browser/toolbar-constants.d.ts +24 -0
  34. package/lib/browser/toolbar-constants.d.ts.map +1 -0
  35. package/lib/browser/toolbar-constants.js +76 -0
  36. package/lib/browser/toolbar-constants.js.map +1 -0
  37. package/lib/browser/toolbar-content-hover-widget-patcher.d.ts +9 -0
  38. package/lib/browser/toolbar-content-hover-widget-patcher.d.ts.map +1 -0
  39. package/lib/browser/toolbar-content-hover-widget-patcher.js +53 -0
  40. package/lib/browser/toolbar-content-hover-widget-patcher.js.map +1 -0
  41. package/lib/browser/toolbar-controller.d.ts +40 -0
  42. package/lib/browser/toolbar-controller.d.ts.map +1 -0
  43. package/lib/browser/toolbar-controller.js +199 -0
  44. package/lib/browser/toolbar-controller.js.map +1 -0
  45. package/lib/browser/toolbar-defaults.d.ts +4 -0
  46. package/lib/browser/toolbar-defaults.d.ts.map +1 -0
  47. package/lib/browser/toolbar-defaults.js +61 -0
  48. package/lib/browser/toolbar-defaults.js.map +1 -0
  49. package/lib/browser/toolbar-frontend-module.d.ts +5 -0
  50. package/lib/browser/toolbar-frontend-module.d.ts.map +1 -0
  51. package/lib/browser/toolbar-frontend-module.js +28 -0
  52. package/lib/browser/toolbar-frontend-module.js.map +1 -0
  53. package/lib/browser/toolbar-icon-selector-dialog.d.ts +65 -0
  54. package/lib/browser/toolbar-icon-selector-dialog.d.ts.map +1 -0
  55. package/lib/browser/toolbar-icon-selector-dialog.js +224 -0
  56. package/lib/browser/toolbar-icon-selector-dialog.js.map +1 -0
  57. package/lib/browser/toolbar-interfaces.d.ts +47 -0
  58. package/lib/browser/toolbar-interfaces.d.ts.map +1 -0
  59. package/lib/browser/toolbar-interfaces.js +43 -0
  60. package/lib/browser/toolbar-interfaces.js.map +1 -0
  61. package/lib/browser/toolbar-preference-schema.d.ts +6 -0
  62. package/lib/browser/toolbar-preference-schema.d.ts.map +1 -0
  63. package/lib/browser/toolbar-preference-schema.js +74 -0
  64. package/lib/browser/toolbar-preference-schema.js.map +1 -0
  65. package/lib/browser/toolbar-storage-provider.d.ts +50 -0
  66. package/lib/browser/toolbar-storage-provider.d.ts.map +1 -0
  67. package/lib/browser/toolbar-storage-provider.js +347 -0
  68. package/lib/browser/toolbar-storage-provider.js.map +1 -0
  69. package/lib/browser/toolbar.d.ts +57 -0
  70. package/lib/browser/toolbar.d.ts.map +1 -0
  71. package/lib/browser/toolbar.js +332 -0
  72. package/lib/browser/toolbar.js.map +1 -0
  73. package/lib/common/toolbar-preference-contribution.d.ts +11 -0
  74. package/lib/common/toolbar-preference-contribution.d.ts.map +1 -0
  75. package/lib/common/toolbar-preference-contribution.js +34 -0
  76. package/lib/common/toolbar-preference-contribution.js.map +1 -0
  77. package/lib/node/toolbar-backend-module.d.ts +4 -0
  78. package/lib/node/toolbar-backend-module.d.ts.map +1 -0
  79. package/lib/node/toolbar-backend-module.js +26 -0
  80. package/lib/node/toolbar-backend-module.js.map +1 -0
  81. package/package.json +10 -10
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ import * as React from '@theia/core/shared/react';
3
+ import { CommandService, Emitter } from '@theia/core';
4
+ import { ContextMenuRenderer, KeybindingRegistry } from '@theia/core/lib/browser';
5
+ import { DeflatedContributedToolbarItem, ToolbarContribution } from './toolbar-interfaces';
6
+ export declare abstract class AbstractToolbarContribution implements ToolbarContribution {
7
+ protected readonly keybindingRegistry: KeybindingRegistry;
8
+ protected readonly contextMenuRenderer: ContextMenuRenderer;
9
+ protected readonly commandService: CommandService;
10
+ abstract id: string;
11
+ protected didChangeEmitter: Emitter<void>;
12
+ readonly onDidChange: import("@theia/core").Event<void>;
13
+ abstract render(): React.ReactNode;
14
+ toJSON(): DeflatedContributedToolbarItem;
15
+ protected resolveKeybindingForCommand(commandID: string | undefined): string;
16
+ }
17
+ //# sourceMappingURL=abstract-toolbar-contribution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-toolbar-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/abstract-toolbar-contribution.tsx"],"names":[],"mappings":";AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,8BAA8B,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,8BACsB,2BAA4B,YAAW,mBAAmB;IAChD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACzD,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IACjE,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAE1E,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,SAAS,CAAC,gBAAgB,gBAAuB;IACjD,QAAQ,CAAC,WAAW,oCAA+B;IAEnD,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;IAElC,MAAM,IAAI,8BAA8B;IAIxC,SAAS,CAAC,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM;CAa/E"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2022 Ericsson 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.AbstractToolbarContribution = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const core_1 = require("@theia/core");
21
+ const inversify_1 = require("@theia/core/shared/inversify");
22
+ const browser_1 = require("@theia/core/lib/browser");
23
+ let AbstractToolbarContribution = class AbstractToolbarContribution {
24
+ constructor() {
25
+ this.didChangeEmitter = new core_1.Emitter();
26
+ this.onDidChange = this.didChangeEmitter.event;
27
+ }
28
+ toJSON() {
29
+ return { id: this.id, group: 'contributed' };
30
+ }
31
+ resolveKeybindingForCommand(commandID) {
32
+ if (!commandID) {
33
+ return '';
34
+ }
35
+ const keybindings = this.keybindingRegistry.getKeybindingsForCommand(commandID);
36
+ if (keybindings.length > 0) {
37
+ const binding = keybindings[0];
38
+ const bindingKeySequence = this.keybindingRegistry.resolveKeybinding(binding);
39
+ const keyCode = bindingKeySequence[0];
40
+ return ` (${this.keybindingRegistry.acceleratorForKeyCode(keyCode, '+')})`;
41
+ }
42
+ return '';
43
+ }
44
+ };
45
+ exports.AbstractToolbarContribution = AbstractToolbarContribution;
46
+ tslib_1.__decorate([
47
+ (0, inversify_1.inject)(browser_1.KeybindingRegistry),
48
+ tslib_1.__metadata("design:type", browser_1.KeybindingRegistry)
49
+ ], AbstractToolbarContribution.prototype, "keybindingRegistry", void 0);
50
+ tslib_1.__decorate([
51
+ (0, inversify_1.inject)(browser_1.ContextMenuRenderer),
52
+ tslib_1.__metadata("design:type", browser_1.ContextMenuRenderer)
53
+ ], AbstractToolbarContribution.prototype, "contextMenuRenderer", void 0);
54
+ tslib_1.__decorate([
55
+ (0, inversify_1.inject)(core_1.CommandService),
56
+ tslib_1.__metadata("design:type", Object)
57
+ ], AbstractToolbarContribution.prototype, "commandService", void 0);
58
+ exports.AbstractToolbarContribution = AbstractToolbarContribution = tslib_1.__decorate([
59
+ (0, inversify_1.injectable)()
60
+ ], AbstractToolbarContribution);
61
+ //# sourceMappingURL=abstract-toolbar-contribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-toolbar-contribution.js","sourceRoot":"","sources":["../../src/browser/abstract-toolbar-contribution.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,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;;;;AAGhF,sCAAsD;AACtD,4DAAkE;AAClE,qDAAkF;AAI3E,IAAe,2BAA2B,GAA1C,MAAe,2BAA2B;IAA1C;QAOO,qBAAgB,GAAG,IAAI,cAAO,EAAQ,CAAC;QACxC,gBAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;IAqBvD,CAAC;IAjBG,MAAM;QACF,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IACjD,CAAC;IAES,2BAA2B,CAAC,SAA6B;QAC/D,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACd,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;QAChF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC9E,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACtC,OAAO,KAAK,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC;QAC/E,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;CACJ,CAAA;AA7BqB,kEAA2B;AACE;IAA9C,IAAA,kBAAM,EAAC,4BAAkB,CAAC;sCAAwC,4BAAkB;uEAAC;AACtC;IAA/C,IAAA,kBAAM,EAAC,6BAAmB,CAAC;sCAAyC,6BAAmB;wEAAC;AAC9C;IAA1C,IAAA,kBAAM,EAAC,qBAAc,CAAC;;mEAAmD;sCAHxD,2BAA2B;IADhD,IAAA,sBAAU,GAAE;GACS,2BAA2B,CA6BhD"}
@@ -0,0 +1,17 @@
1
+ import { ApplicationShell, Layout } from '@theia/core/lib/browser';
2
+ import { interfaces } from '@theia/core/shared/inversify';
3
+ import { Toolbar } from './toolbar-interfaces';
4
+ import { ToolbarPreferences } from '../common/toolbar-preference-contribution';
5
+ import { PreferenceService } from '@theia/core';
6
+ export declare class ApplicationShellWithToolbarOverride extends ApplicationShell {
7
+ protected toolbarPreferences: ToolbarPreferences;
8
+ protected readonly preferenceService: PreferenceService;
9
+ protected readonly toolbarFactory: () => Toolbar;
10
+ protected toolbar: Toolbar;
11
+ protected init(): void;
12
+ protected doInit(): Promise<void>;
13
+ protected tryShowToolbar(): boolean;
14
+ protected createLayout(): Layout;
15
+ }
16
+ export declare const bindToolbarApplicationShell: (bind: interfaces.Bind, rebind: interfaces.Rebind, unbind: interfaces.Unbind) => void;
17
+ //# sourceMappingURL=application-shell-with-toolbar-override.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"application-shell-with-toolbar-override.d.ts","sourceRoot":"","sources":["../../src/browser/application-shell-with-toolbar-override.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,gBAAgB,EAChB,MAAM,EAGT,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAsB,UAAU,EAAiB,MAAM,8BAA8B,CAAC;AAC7F,OAAO,EAAE,OAAO,EAAkB,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAgC,MAAM,2CAA2C,CAAC;AAC7G,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,qBACa,mCAAoC,SAAQ,gBAAgB;IACzC,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAClD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC3D,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC;IAEzE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;cAGR,IAAI,IAAI,IAAI;cAIf,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBvC,SAAS,CAAC,cAAc,IAAI,OAAO;cAWhB,YAAY,IAAI,MAAM;CAsB5C;AAED,eAAO,MAAM,2BAA2B,SAAU,WAAW,IAAI,UAAU,WAAW,MAAM,UAAU,WAAW,MAAM,KAAG,IAGzH,CAAC"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2022 Ericsson 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.bindToolbarApplicationShell = exports.ApplicationShellWithToolbarOverride = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const browser_1 = require("@theia/core/lib/browser");
21
+ const inversify_1 = require("@theia/core/shared/inversify");
22
+ const toolbar_interfaces_1 = require("./toolbar-interfaces");
23
+ const toolbar_preference_contribution_1 = require("../common/toolbar-preference-contribution");
24
+ const core_1 = require("@theia/core");
25
+ let ApplicationShellWithToolbarOverride = class ApplicationShellWithToolbarOverride extends browser_1.ApplicationShell {
26
+ init() {
27
+ this.doInit();
28
+ }
29
+ async doInit() {
30
+ this.toolbar = this.toolbarFactory();
31
+ this.toolbar.id = 'main-toolbar';
32
+ super.init();
33
+ await this.toolbarPreferences.ready;
34
+ this.tryShowToolbar();
35
+ this.onDidToggleMaximized(() => {
36
+ this.tryShowToolbar();
37
+ });
38
+ this.preferenceService.onPreferenceChanged(event => {
39
+ if (event.preferenceName === toolbar_preference_contribution_1.TOOLBAR_ENABLE_PREFERENCE_ID) {
40
+ this.tryShowToolbar();
41
+ }
42
+ });
43
+ }
44
+ tryShowToolbar() {
45
+ const doShowToolbarFromPreference = this.toolbarPreferences[toolbar_preference_contribution_1.TOOLBAR_ENABLE_PREFERENCE_ID];
46
+ const isShellMaximized = this.mainPanel.hasClass(browser_1.MAXIMIZED_CLASS) || this.bottomPanel.hasClass(browser_1.MAXIMIZED_CLASS);
47
+ if (doShowToolbarFromPreference && !isShellMaximized) {
48
+ this.toolbar.show();
49
+ return true;
50
+ }
51
+ this.toolbar.hide();
52
+ return false;
53
+ }
54
+ createLayout() {
55
+ const bottomSplitLayout = this.createSplitLayout([this.mainPanel, this.bottomPanel], [1, 0], { orientation: 'vertical', spacing: 0 });
56
+ const panelForBottomArea = new browser_1.TheiaSplitPanel({ layout: bottomSplitLayout });
57
+ panelForBottomArea.id = 'theia-bottom-split-panel';
58
+ const leftRightSplitLayout = this.createSplitLayout([this.leftPanelHandler.container, panelForBottomArea, this.rightPanelHandler.container], [0, 1, 0], { orientation: 'horizontal', spacing: 0 });
59
+ const panelForSideAreas = new browser_1.TheiaSplitPanel({ layout: leftRightSplitLayout });
60
+ panelForSideAreas.id = 'theia-left-right-split-panel';
61
+ return this.createBoxLayout([this.topPanel, this.toolbar, panelForSideAreas, this.statusBar], [0, 0, 1, 0], { direction: 'top-to-bottom', spacing: 0 });
62
+ }
63
+ };
64
+ exports.ApplicationShellWithToolbarOverride = ApplicationShellWithToolbarOverride;
65
+ tslib_1.__decorate([
66
+ (0, inversify_1.inject)(toolbar_preference_contribution_1.ToolbarPreferences),
67
+ tslib_1.__metadata("design:type", Object)
68
+ ], ApplicationShellWithToolbarOverride.prototype, "toolbarPreferences", void 0);
69
+ tslib_1.__decorate([
70
+ (0, inversify_1.inject)(core_1.PreferenceService),
71
+ tslib_1.__metadata("design:type", Object)
72
+ ], ApplicationShellWithToolbarOverride.prototype, "preferenceService", void 0);
73
+ tslib_1.__decorate([
74
+ (0, inversify_1.inject)(toolbar_interfaces_1.ToolbarFactory),
75
+ tslib_1.__metadata("design:type", Function)
76
+ ], ApplicationShellWithToolbarOverride.prototype, "toolbarFactory", void 0);
77
+ tslib_1.__decorate([
78
+ (0, inversify_1.postConstruct)(),
79
+ tslib_1.__metadata("design:type", Function),
80
+ tslib_1.__metadata("design:paramtypes", []),
81
+ tslib_1.__metadata("design:returntype", void 0)
82
+ ], ApplicationShellWithToolbarOverride.prototype, "init", null);
83
+ exports.ApplicationShellWithToolbarOverride = ApplicationShellWithToolbarOverride = tslib_1.__decorate([
84
+ (0, inversify_1.injectable)()
85
+ ], ApplicationShellWithToolbarOverride);
86
+ const bindToolbarApplicationShell = (bind, rebind, unbind) => {
87
+ bind(ApplicationShellWithToolbarOverride).toSelf().inSingletonScope();
88
+ rebind(browser_1.ApplicationShell).toService(ApplicationShellWithToolbarOverride);
89
+ };
90
+ exports.bindToolbarApplicationShell = bindToolbarApplicationShell;
91
+ //# sourceMappingURL=application-shell-with-toolbar-override.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"application-shell-with-toolbar-override.js","sourceRoot":"","sources":["../../src/browser/application-shell-with-toolbar-override.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,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,qDAKiC;AACjC,4DAA6F;AAC7F,6DAA+D;AAC/D,+FAA6G;AAC7G,sCAAgD;AAGzC,IAAM,mCAAmC,GAAzC,MAAM,mCAAoC,SAAQ,0BAAgB;IAQlD,IAAI;QACnB,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAES,KAAK,CAAC,MAAM;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,cAAc,CAAC;QACjC,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;QACpC,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE;YAC3B,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;YAC/C,IAAI,KAAK,CAAC,cAAc,KAAK,8DAA4B,EAAE,CAAC;gBACxD,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1B,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAES,cAAc;QACpB,MAAM,2BAA2B,GAAG,IAAI,CAAC,kBAAkB,CAAC,8DAA4B,CAAC,CAAC;QAC1F,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,yBAAe,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,yBAAe,CAAC,CAAC;QAChH,IAAI,2BAA2B,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACnD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACjB,CAAC;IAEkB,YAAY;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAC5C,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,EAClC,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,CAC1C,CAAC;QACF,MAAM,kBAAkB,GAAG,IAAI,yBAAe,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAC9E,kBAAkB,CAAC,EAAE,GAAG,0BAA0B,CAAC;QAEnD,MAAM,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAC/C,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EACvF,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACT,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,CAC5C,CAAC;QACF,MAAM,iBAAiB,GAAG,IAAI,yBAAe,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAChF,iBAAiB,CAAC,EAAE,GAAG,8BAA8B,CAAC;QACtD,OAAO,IAAI,CAAC,eAAe,CACvB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,EAChE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACZ,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAC7C,CAAC;IACN,CAAC;CACJ,CAAA;AA9DY,kFAAmC;AACN;IAArC,IAAA,kBAAM,EAAC,oDAAkB,CAAC;;+EAAkD;AAC/B;IAA7C,IAAA,kBAAM,EAAC,wBAAiB,CAAC;;8EAAyD;AACxC;IAA1C,IAAA,kBAAM,EAAC,mCAAc,CAAC;;2EAAkD;AAKtD;IADlB,IAAA,yBAAa,GAAE;;;;+DAGf;8CAVQ,mCAAmC;IAD/C,IAAA,sBAAU,GAAE;GACA,mCAAmC,CA8D/C;AAEM,MAAM,2BAA2B,GAAG,CAAC,IAAqB,EAAE,MAAyB,EAAE,MAAyB,EAAQ,EAAE;IAC7H,IAAI,CAAC,mCAAmC,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACtE,MAAM,CAAC,0BAAgB,CAAC,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;AAC5E,CAAC,CAAC;AAHW,QAAA,2BAA2B,+BAGtC"}