@theia/scm 1.75.0-next.8 → 1.75.0
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/lib/browser/decorations/scm-navigator-decorator.d.ts.map +1 -1
- package/lib/browser/decorations/scm-navigator-decorator.js +1 -0
- package/lib/browser/decorations/scm-navigator-decorator.js.map +1 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.js +7 -10
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.js.map +1 -1
- package/lib/browser/scm-action-button-widget.js +10 -15
- package/lib/browser/scm-action-button-widget.js.map +1 -1
- package/lib/browser/scm-amend-component.js +24 -57
- package/lib/browser/scm-amend-component.js.map +1 -1
- package/lib/browser/scm-commit-widget.d.ts +1 -1
- package/lib/browser/scm-commit-widget.d.ts.map +1 -1
- package/lib/browser/scm-commit-widget.js +9 -10
- package/lib/browser/scm-commit-widget.js.map +1 -1
- package/lib/browser/scm-context-key-service.d.ts +2 -0
- package/lib/browser/scm-context-key-service.d.ts.map +1 -1
- package/lib/browser/scm-context-key-service.js +4 -0
- package/lib/browser/scm-context-key-service.js.map +1 -1
- package/lib/browser/scm-context-key-service.spec.js +7 -0
- package/lib/browser/scm-context-key-service.spec.js.map +1 -1
- package/lib/browser/scm-frontend-module.d.ts.map +1 -1
- package/lib/browser/scm-frontend-module.js +6 -0
- package/lib/browser/scm-frontend-module.js.map +1 -1
- package/lib/browser/scm-history-graph-contribution.d.ts +49 -0
- package/lib/browser/scm-history-graph-contribution.d.ts.map +1 -0
- package/lib/browser/scm-history-graph-contribution.js +280 -0
- package/lib/browser/scm-history-graph-contribution.js.map +1 -0
- package/lib/browser/scm-history-graph-contribution.spec.d.ts +2 -0
- package/lib/browser/scm-history-graph-contribution.spec.d.ts.map +1 -0
- package/lib/browser/scm-history-graph-contribution.spec.js +119 -0
- package/lib/browser/scm-history-graph-contribution.spec.js.map +1 -0
- package/lib/browser/scm-history-graph-helpers.d.ts +59 -6
- package/lib/browser/scm-history-graph-helpers.d.ts.map +1 -1
- package/lib/browser/scm-history-graph-helpers.js +129 -5
- package/lib/browser/scm-history-graph-helpers.js.map +1 -1
- package/lib/browser/scm-history-graph-helpers.spec.d.ts +2 -0
- package/lib/browser/scm-history-graph-helpers.spec.d.ts.map +1 -0
- package/lib/browser/scm-history-graph-helpers.spec.js +154 -0
- package/lib/browser/scm-history-graph-helpers.spec.js.map +1 -0
- package/lib/browser/scm-history-graph-lanes.d.ts +19 -5
- package/lib/browser/scm-history-graph-lanes.d.ts.map +1 -1
- package/lib/browser/scm-history-graph-lanes.js +25 -9
- package/lib/browser/scm-history-graph-lanes.js.map +1 -1
- package/lib/browser/scm-history-graph-lanes.spec.js +62 -25
- package/lib/browser/scm-history-graph-lanes.spec.js.map +1 -1
- package/lib/browser/scm-history-graph-model.d.ts +75 -6
- package/lib/browser/scm-history-graph-model.d.ts.map +1 -1
- package/lib/browser/scm-history-graph-model.js +155 -10
- package/lib/browser/scm-history-graph-model.js.map +1 -1
- package/lib/browser/scm-history-graph-model.spec.js +299 -4
- package/lib/browser/scm-history-graph-model.spec.js.map +1 -1
- package/lib/browser/scm-history-graph-tooltip.d.ts +27 -2
- package/lib/browser/scm-history-graph-tooltip.d.ts.map +1 -1
- package/lib/browser/scm-history-graph-tooltip.js +113 -22
- package/lib/browser/scm-history-graph-tooltip.js.map +1 -1
- package/lib/browser/scm-history-graph-tooltip.spec.d.ts +2 -0
- package/lib/browser/scm-history-graph-tooltip.spec.d.ts.map +1 -0
- package/lib/browser/scm-history-graph-tooltip.spec.js +213 -0
- package/lib/browser/scm-history-graph-tooltip.spec.js.map +1 -0
- package/lib/browser/scm-history-graph-widget.d.ts +36 -2
- package/lib/browser/scm-history-graph-widget.d.ts.map +1 -1
- package/lib/browser/scm-history-graph-widget.js +174 -67
- package/lib/browser/scm-history-graph-widget.js.map +1 -1
- package/lib/browser/scm-history-graph-widget.spec.d.ts +2 -0
- package/lib/browser/scm-history-graph-widget.spec.d.ts.map +1 -0
- package/lib/browser/scm-history-graph-widget.spec.js +273 -0
- package/lib/browser/scm-history-graph-widget.spec.js.map +1 -0
- package/lib/browser/scm-provider.d.ts +9 -1
- package/lib/browser/scm-provider.d.ts.map +1 -1
- package/lib/browser/scm-provider.js.map +1 -1
- package/lib/browser/scm-repositories-widget.js +12 -21
- package/lib/browser/scm-repositories-widget.js.map +1 -1
- package/lib/browser/scm-tree-widget.js +35 -53
- package/lib/browser/scm-tree-widget.js.map +1 -1
- package/lib/common/scm-preferences.d.ts +3 -0
- package/lib/common/scm-preferences.d.ts.map +1 -1
- package/lib/common/scm-preferences.js +24 -0
- package/lib/common/scm-preferences.js.map +1 -1
- package/package.json +7 -7
- package/src/browser/decorations/scm-navigator-decorator.ts +3 -2
- package/src/browser/scm-context-key-service.spec.ts +9 -0
- package/src/browser/scm-context-key-service.ts +6 -0
- package/src/browser/scm-frontend-module.ts +7 -1
- package/src/browser/scm-history-graph-contribution.spec.ts +148 -0
- package/src/browser/scm-history-graph-contribution.ts +273 -0
- package/src/browser/scm-history-graph-helpers.spec.ts +193 -0
- package/src/browser/scm-history-graph-helpers.ts +180 -6
- package/src/browser/scm-history-graph-lanes.spec.ts +70 -25
- package/src/browser/scm-history-graph-lanes.ts +48 -11
- package/src/browser/scm-history-graph-model.spec.ts +378 -12
- package/src/browser/scm-history-graph-model.ts +181 -13
- package/src/browser/scm-history-graph-tooltip.spec.ts +254 -0
- package/src/browser/scm-history-graph-tooltip.ts +144 -24
- package/src/browser/scm-history-graph-widget.spec.ts +322 -0
- package/src/browser/scm-history-graph-widget.tsx +199 -39
- package/src/browser/scm-provider.ts +9 -1
- package/src/browser/style/scm-history-graph.css +53 -2
- package/src/common/scm-preferences.ts +27 -0
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var ScmTreeWidget_1;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ScmInlineAction = exports.ScmInlineActions = exports.ScmResourceFolderElement = exports.ScmResourceGroupElement = exports.ScmResourceComponent = exports.ScmElement = exports.ScmTreeWidget = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const jsx_runtime_1 = require("@theia/core/shared/react/jsx-runtime");
|
|
2
7
|
// *****************************************************************************
|
|
3
8
|
// Copyright (C) 2020 Arm and others.
|
|
4
9
|
//
|
|
@@ -14,10 +19,6 @@
|
|
|
14
19
|
//
|
|
15
20
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
21
|
// *****************************************************************************
|
|
17
|
-
var ScmTreeWidget_1;
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.ScmInlineAction = exports.ScmInlineActions = exports.ScmResourceFolderElement = exports.ScmResourceGroupElement = exports.ScmResourceComponent = exports.ScmElement = exports.ScmTreeWidget = void 0;
|
|
20
|
-
const tslib_1 = require("tslib");
|
|
21
22
|
/* eslint-disable no-null/no-null, @typescript-eslint/no-explicit-any */
|
|
22
23
|
const React = require("@theia/core/shared/react");
|
|
23
24
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
@@ -90,23 +91,23 @@ let ScmTreeWidget = class ScmTreeWidget extends tree_view_welcome_widget_1.TreeV
|
|
|
90
91
|
// The group nodes should not be subject to highlighting.
|
|
91
92
|
const caption = (searchHighlights && !scm_tree_model_1.ScmFileChangeGroupNode.is(node)) ? this.toReactNode(label, searchHighlights) : label;
|
|
92
93
|
if (scm_tree_model_1.ScmFileChangeGroupNode.is(node)) {
|
|
93
|
-
const content =
|
|
94
|
+
const content = (0, jsx_runtime_1.jsx)(ScmResourceGroupElement, { model: this.model, treeNode: node, renderExpansionToggle: () => this.renderExpansionToggle(node, props), contextMenuRenderer: this.contextMenuRenderer, menus: this.menus, contextKeys: this.contextKeys, labelProvider: this.labelProvider, corePreferences: this.corePreferences, caption: caption }, `${node.groupId}`);
|
|
94
95
|
return React.createElement('div', attributes, content);
|
|
95
96
|
}
|
|
96
97
|
if (scm_tree_model_1.ScmFileChangeFolderNode.is(node)) {
|
|
97
|
-
const content =
|
|
98
|
+
const content = (0, jsx_runtime_1.jsx)(ScmResourceFolderElement, { model: this.model, treeNode: node, sourceUri: node.sourceUri, renderExpansionToggle: () => this.renderExpansionToggle(node, props), contextMenuRenderer: this.contextMenuRenderer, menus: this.menus, contextKeys: this.contextKeys, labelProvider: this.labelProvider, corePreferences: this.corePreferences, caption: caption }, String(node.sourceUri));
|
|
98
99
|
return React.createElement('div', attributes, content);
|
|
99
100
|
}
|
|
100
101
|
if (scm_tree_model_1.ScmFileChangeNode.is(node)) {
|
|
101
102
|
const parentPath = (node.parent && scm_tree_model_1.ScmFileChangeFolderNode.is(node.parent))
|
|
102
103
|
? new uri_1.default(node.parent.sourceUri) : new uri_1.default(this.model.rootUri);
|
|
103
|
-
const content =
|
|
104
|
+
const content = (0, jsx_runtime_1.jsx)(ScmResourceComponent, { model: this.model, treeNode: node, contextMenuRenderer: this.contextMenuRenderer, menus: this.menus, contextKeys: this.contextKeys, labelProvider: this.labelProvider, corePreferences: this.corePreferences, caption: caption, ...this.props,
|
|
104
105
|
parentPath,
|
|
105
106
|
sourceUri: node.sourceUri,
|
|
106
107
|
decoration: this.decorationsService.getDecoration(new uri_1.default(node.sourceUri), true)[0],
|
|
107
108
|
colors: this.colors,
|
|
108
109
|
isLightTheme: this.isCurrentThemeLight(),
|
|
109
|
-
renderExpansionToggle: () => this.renderExpansionToggle(node, props) });
|
|
110
|
+
renderExpansionToggle: () => this.renderExpansionToggle(node, props) }, node.sourceUri);
|
|
110
111
|
return React.createElement('div', attributes, content);
|
|
111
112
|
}
|
|
112
113
|
return super.renderNode(node, props);
|
|
@@ -554,20 +555,13 @@ class ScmResourceComponent extends ScmElement {
|
|
|
554
555
|
const title = tooltip.length !== 0
|
|
555
556
|
? `${resourceUri.path.fsPath()} • ${tooltip}`
|
|
556
557
|
: resourceUri.path.fsPath();
|
|
557
|
-
return
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
menu: menus.getMenu(ScmTreeWidget.RESOURCE_INLINE_MENU),
|
|
565
|
-
menuPath: ScmTreeWidget.RESOURCE_INLINE_MENU,
|
|
566
|
-
args: this.contextMenuArgs,
|
|
567
|
-
contextKeys,
|
|
568
|
-
model,
|
|
569
|
-
treeNode },
|
|
570
|
-
React.createElement("div", { title: tooltip, className: classNames.join(' '), style: { color } }, letter)));
|
|
558
|
+
return (0, jsx_runtime_1.jsxs)("div", { className: `scmItem ${tree_1.TREE_NODE_SEGMENT_CLASS} ${tree_1.TREE_NODE_SEGMENT_GROW_CLASS}`, onContextMenu: this.renderContextMenu, onMouseEnter: this.showHover, onMouseLeave: this.hideHover, ref: this.detectHover, title: title, onClick: this.handleClick, onDoubleClick: this.handleDoubleClick, children: [(0, jsx_runtime_1.jsx)("span", { className: icon + ' file-icon' }), this.props.renderExpansionToggle(), (0, jsx_runtime_1.jsxs)("div", { className: `noWrapInfo ${tree_1.TREE_NODE_SEGMENT_GROW_CLASS}`, children: [(0, jsx_runtime_1.jsx)("span", { className: 'name', style: { textDecoration }, children: caption }), (0, jsx_runtime_1.jsx)("span", { className: 'path', style: { textDecoration }, children: path })] }), (0, jsx_runtime_1.jsx)(ScmInlineActions, { hover,
|
|
559
|
+
menu: menus.getMenu(ScmTreeWidget.RESOURCE_INLINE_MENU),
|
|
560
|
+
menuPath: ScmTreeWidget.RESOURCE_INLINE_MENU,
|
|
561
|
+
args: this.contextMenuArgs,
|
|
562
|
+
contextKeys,
|
|
563
|
+
model,
|
|
564
|
+
treeNode, children: (0, jsx_runtime_1.jsx)("div", { title: tooltip, className: classNames.join(' '), style: { color }, children: letter }) })] }, sourceUri);
|
|
571
565
|
}
|
|
572
566
|
get contextMenuArgs() {
|
|
573
567
|
if (!this.props.model.selectedNodes.some(node => scm_tree_model_1.ScmFileChangeNode.is(node) && node === this.props.treeNode)) {
|
|
@@ -602,21 +596,17 @@ class ScmResourceGroupElement extends ScmElement {
|
|
|
602
596
|
render() {
|
|
603
597
|
const { hover } = this.state;
|
|
604
598
|
const { model, treeNode, menus, contextKeys, caption } = this.props;
|
|
605
|
-
return
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
contextKeys,
|
|
613
|
-
model,
|
|
614
|
-
treeNode }, this.renderChangeCount()));
|
|
599
|
+
return (0, jsx_runtime_1.jsxs)("div", { className: `theia-header scm-theia-header ${tree_1.TREE_NODE_SEGMENT_GROW_CLASS}`, onContextMenu: this.renderContextMenu, onMouseEnter: this.showHover, onMouseLeave: this.hideHover, ref: this.detectHover, children: [this.props.renderExpansionToggle(), (0, jsx_runtime_1.jsx)("div", { className: `noWrapInfo ${tree_1.TREE_NODE_SEGMENT_GROW_CLASS}`, children: caption }), (0, jsx_runtime_1.jsx)(ScmInlineActions, { hover,
|
|
600
|
+
args: this.contextMenuArgs,
|
|
601
|
+
menu: menus.getMenu(ScmTreeWidget.RESOURCE_GROUP_INLINE_MENU),
|
|
602
|
+
menuPath: ScmTreeWidget.RESOURCE_GROUP_INLINE_MENU,
|
|
603
|
+
contextKeys,
|
|
604
|
+
model,
|
|
605
|
+
treeNode, children: this.renderChangeCount() })] });
|
|
615
606
|
}
|
|
616
607
|
renderChangeCount() {
|
|
617
608
|
const group = this.props.model.getResourceGroupFromNode(this.props.treeNode);
|
|
618
|
-
return
|
|
619
|
-
React.createElement("span", { className: 'notification-count' }, group ? group.resources.length : 0));
|
|
609
|
+
return (0, jsx_runtime_1.jsx)("div", { className: 'notification-count-container scm-change-count', children: (0, jsx_runtime_1.jsx)("span", { className: 'notification-count', children: group ? group.resources.length : 0 }) });
|
|
620
610
|
}
|
|
621
611
|
get contextMenuArgs() {
|
|
622
612
|
const group = this.props.model.getResourceGroupFromNode(this.props.treeNode);
|
|
@@ -641,18 +631,13 @@ class ScmResourceFolderElement extends ScmElement {
|
|
|
641
631
|
const sourceFileStat = files_1.FileStat.dir(sourceUri);
|
|
642
632
|
const icon = labelProvider.getIcon(sourceFileStat);
|
|
643
633
|
const title = new uri_1.default(sourceUri).path.fsPath();
|
|
644
|
-
return
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
menuPath: ScmTreeWidget.RESOURCE_FOLDER_INLINE_MENU,
|
|
652
|
-
args: this.contextMenuArgs,
|
|
653
|
-
contextKeys,
|
|
654
|
-
model,
|
|
655
|
-
treeNode }));
|
|
634
|
+
return (0, jsx_runtime_1.jsxs)("div", { className: `scmItem ${tree_1.TREE_NODE_SEGMENT_CLASS} ${tree_1.TREE_NODE_SEGMENT_GROW_CLASS} ${ScmTreeWidget.Styles.NO_SELECT}`, title: title, onContextMenu: this.renderContextMenu, onMouseEnter: this.showHover, onMouseLeave: this.hideHover, ref: this.detectHover, children: [this.props.renderExpansionToggle(), (0, jsx_runtime_1.jsx)("span", { className: icon + ' file-icon' }), (0, jsx_runtime_1.jsx)("div", { className: `noWrapInfo ${tree_1.TREE_NODE_SEGMENT_GROW_CLASS}`, children: (0, jsx_runtime_1.jsx)("span", { className: 'name', children: caption }) }), (0, jsx_runtime_1.jsx)(ScmInlineActions, { hover,
|
|
635
|
+
menu: menus.getMenu(ScmTreeWidget.RESOURCE_FOLDER_INLINE_MENU),
|
|
636
|
+
menuPath: ScmTreeWidget.RESOURCE_FOLDER_INLINE_MENU,
|
|
637
|
+
args: this.contextMenuArgs,
|
|
638
|
+
contextKeys,
|
|
639
|
+
model,
|
|
640
|
+
treeNode })] }, sourceUri);
|
|
656
641
|
}
|
|
657
642
|
get contextMenuArgs() {
|
|
658
643
|
if (!this.props.model.selectedNodes.some(node => scm_tree_model_1.ScmFileChangeFolderNode.is(node) && node.sourceUri === this.props.sourceUri)) {
|
|
@@ -671,11 +656,9 @@ exports.ScmResourceFolderElement = ScmResourceFolderElement;
|
|
|
671
656
|
class ScmInlineActions extends React.Component {
|
|
672
657
|
render() {
|
|
673
658
|
const { hover, menu, menuPath, args, model, treeNode, contextKeys, children } = this.props;
|
|
674
|
-
return
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
React.createElement(ScmInlineAction, { key: index, node, menuPath, args, model, treeNode, contextKeys }))),
|
|
678
|
-
children);
|
|
659
|
+
return (0, jsx_runtime_1.jsxs)("div", { className: 'theia-scm-inline-actions-container', children: [(0, jsx_runtime_1.jsx)("div", { className: 'theia-scm-inline-actions', children: hover && menu?.children
|
|
660
|
+
.map((node, index) => menu_1.CommandMenu.is(node) &&
|
|
661
|
+
(0, jsx_runtime_1.jsx)(ScmInlineAction, { node, menuPath, args, model, treeNode, contextKeys }, index)) }), children] });
|
|
679
662
|
}
|
|
680
663
|
}
|
|
681
664
|
exports.ScmInlineActions = ScmInlineActions;
|
|
@@ -697,8 +680,7 @@ class ScmInlineAction extends React.Component {
|
|
|
697
680
|
if (!isActive) {
|
|
698
681
|
return false;
|
|
699
682
|
}
|
|
700
|
-
return
|
|
701
|
-
React.createElement("a", { className: `${node.icon} ${browser_1.ACTION_ITEM}`, title: node.label, onClick: this.execute }));
|
|
683
|
+
return (0, jsx_runtime_1.jsx)("div", { className: 'theia-scm-inline-action', children: (0, jsx_runtime_1.jsx)("a", { className: `${node.icon} ${browser_1.ACTION_ITEM}`, title: node.label, onClick: this.execute }) });
|
|
702
684
|
}
|
|
703
685
|
}
|
|
704
686
|
exports.ScmInlineAction = ScmInlineAction;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-tree-widget.js","sourceRoot":"","sources":["../../src/browser/scm-tree-widget.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,qCAAqC;AACrC,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,wEAAwE;AAExE,kDAAkD;AAClD,4DAAwF;AACxF,oDAA6C;AAC7C,kDAAkD;AAClD,kEAAqF;AACrF,uDAAgL;AAChL,oGAA8F;AAC9F,qDAA2I;AAC3I,sDAAyG;AAEzG,qDAAoG;AACpG,uEAAiE;AACjE,uDAA+F;AAC/F,mFAA8E;AAC9E,2EAAuE;AACvE,qFAA6F;AAC7F,+CAA2C;AAC3C,8DAA8D;AAC9D,6DAA+D;AAE/D,sCAAsC;AAG/B,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,gDAAqB;;aAE7C,OAAE,GAAG,qBAAqB,AAAxB,CAAyB;aAE3B,gCAA2B,GAAG,CAAC,6BAA6B,CAAC,AAAlC,CAAmC;aAC9D,+BAA0B,GAAG,CAAC,6BAA6B,EAAE,QAAQ,CAAC,AAA5C,CAA6C;aAEvE,iCAA4B,GAAG,CAAC,8BAA8B,CAAC,AAAnC,CAAoC;aAChE,gCAA2B,GAAG,CAAC,8BAA8B,EAAE,QAAQ,CAAC,AAA7C,CAA8C;aAEzE,0BAAqB,GAAG,CAAC,uBAAuB,CAAC,AAA5B,CAA6B;aAClD,yBAAoB,GAAG,CAAC,uBAAuB,EAAE,QAAQ,CAAC,AAAtC,CAAuC;IAiBlE,YACuB,KAAgB,EAChB,SAAuB,EACb,mBAAwC;QAErE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,GAAG,eAAa,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAGkB,IAAI;QACnB,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAClF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,6BAA6B,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACxF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;YACpD,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,CAAC;QACL,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAEkB,qBAAqB;QACpC,OAAO,IAAI,CAAC,UAAU,CAAC,kBAAkB,KAAK,SAAS;eAChD,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,QAAQ,CAAC,EAAmB;QAC5B,kFAAkF;QAClF,8CAA8C;QAC9C,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;IAC7B,CAAC;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACgB,UAAU,CAAC,IAAc,EAAE,KAAgB;QAC1D,IAAI,CAAC,eAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,yDAAyD;QACzD,MAAM,OAAO,GAAG,CAAC,gBAAgB,IAAI,CAAC,uCAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE3H,IAAI,uCAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,oBAAC,uBAAuB,IACpC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,EACtB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,EACd,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,EACpE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAC7C,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,OAAO,EAAE,OAAO,GAClB,CAAC;YAEH,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAE3D,CAAC;QACD,IAAI,wCAAuB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,oBAAC,wBAAwB,IACrC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,EACpE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAC7C,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,OAAO,EAAE,OAAO,GAClB,CAAC;YAEH,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,kCAAiB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,UAAU,GACZ,CAAC,IAAI,CAAC,MAAM,IAAI,wCAAuB,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpD,CAAC,CAAC,IAAI,aAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,aAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEvE,MAAM,OAAO,GAAG,oBAAC,oBAAoB,IACjC,GAAG,EAAE,IAAI,CAAC,SAAS,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,EACd,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAC7C,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,OAAO,EAAE,OAAO,EAEZ,GAAG,IAAI,CAAC,KAAK;gBACb,UAAU;gBACV,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,aAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;gBACnF,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE;gBACxC,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,GAE1E,CAAC;YACH,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzC,CAAC;IAEkB,yBAAyB;QACxC,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,CAAC;YAC9B,OAAO;gBACH,GAAG,KAAK,CAAC,yBAAyB,EAAE;gBACpC,QAAQ,EAAE,CAAC;aACd,CAAC;QACN,CAAC;QACD,OAAO,KAAK,CAAC,yBAAyB,EAAE,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACgB,KAAK,CAAC,UAAU,CAAC,KAAoB;QACpD,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,kCAAiB,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;gBACtE,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACpB,OAAO,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBACnC,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;gBAEzD,IAAI,MAAM,EAAE,CAAC;oBACT,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAChE,IAAI,aAAa,CAAC,WAAW,EAAE,EAAE,CAAC;wBAC9B,aAAa,CAAC,QAAQ,EAAE,CAAC;oBAC7B,CAAC;yBAAM,CAAC;wBACJ,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;wBACnD,IAAI,YAAY,EAAE,CAAC;4BACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;4BACtE,IAAI,gBAAgB,EAAE,CAAC;gCACnB,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;4BACxC,CAAC;wBACL,CAAC;oBACL,CAAC;oBACD,OAAO;gBACX,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACgB,KAAK,CAAC,WAAW,CAAC,KAAoB;QACrD,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChD,2DAA2D;YAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,OAAO;YACX,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACjC,OAAO;QACX,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,kCAAiB,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;gBACtE,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACpB,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACpC,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;gBAEzD,IAAI,MAAM,EAAE,CAAC;oBACT,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAChE,IAAI,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;wBAC1B,aAAa,CAAC,IAAI,EAAE,CAAC;oBACzB,CAAC;yBAAM,CAAC;wBACJ,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBAC3C,IAAI,QAAQ,EAAE,CAAC;4BACX,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;4BAC9D,IAAI,YAAY,EAAE,CAAC;gCACf,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;4BACpC,CAAC;wBACL,CAAC;oBACL,CAAC;gBACL,CAAC;gBACD,OAAO;YACX,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAEkB,WAAW,CAAC,KAAoB;QAC/C,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,kCAAiB,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;gBACtE,IAAI,gBAAgB,EAAE,CAAC;oBACnB,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;gBACxC,CAAC;gBACD,OAAO;YACX,CAAC;QACL,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,kBAAkB;QACpB,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,kCAAiB,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,IAAI,kCAAiB,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;oBACrC,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;oBACtE,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACpB,OAAO;oBACX,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;oBAEzD,IAAI,MAAM,EAAE,CAAC;wBACT,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAChE,IAAI,aAAa,CAAC,WAAW,EAAE,EAAE,CAAC;4BAC9B,aAAa,CAAC,QAAQ,EAAE,CAAC;wBAC7B,CAAC;6BAAM,CAAC;4BACJ,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;4BACnD,IAAI,YAAY,EAAE,CAAC;gCACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;gCACtE,IAAI,gBAAgB,EAAE,CAAC;oCACnB,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;gCACxC,CAAC;4BACL,CAAC;wBACL,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChD,2DAA2D;YAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,OAAO;YACX,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACjC,OAAO;QACX,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,kCAAiB,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;gBACtE,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACpB,OAAO;gBACX,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;gBAEzD,IAAI,MAAM,EAAE,CAAC;oBACT,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAChE,IAAI,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;wBAC1B,aAAa,CAAC,IAAI,EAAE,CAAC;oBACzB,CAAC;yBAAM,CAAC;wBACJ,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBAC3C,IAAI,QAAQ,EAAE,CAAC;4BACX,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;4BAC9D,IAAI,YAAY,EAAE,CAAC;gCACf,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;4BACpC,CAAC;wBACL,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,eAAe,CAAC,GAAQ;QACpB,iDAAiD;QACjD,sFAAsF;QACtF,wFAAwF;QACxF,6FAA6F;QAC7F,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QACjC,kEAAkE;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,EAAE,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,SAAS,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,yBAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC5B,OAAO;YACX,CAAC;QACL,CAAC;IACL,CAAC;IAES,sBAAsB;QAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAA6B,CAAC;YACtD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACnC,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IAES,sBAAsB;QAC5B,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;QACtD,OAAO,YAAY,EAAE,CAAC;YAClB,IAAI,kCAAiB,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;gBACpC,OAAO,YAAY,CAAC;YACxB,CAAC;YACD,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAClE,CAAC;QAAA,CAAC;IACN,CAAC;IAES,kBAAkB;QACxB,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAClD,OAAO,QAAQ,EAAE,CAAC;YACd,IAAI,kCAAiB,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAChC,OAAO,QAAQ,CAAC;YACpB,CAAC;YACD,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAC1D,CAAC;QAAA,CAAC;IACN,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,QAAqB;QAC9C,IAAI,CAAC;YACD,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;YACtD,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,gBAA0C,CAAC;QAC/C,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAExD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;YAC1C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC/C,MAAM,kBAAkB,GAAG,IAAI,aAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChE,IAAI,YAAY,KAAK,kBAAkB,EAAE,CAAC;gBACtC,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,kBAAQ,CAAC,WAAW,EAAE,CAAC;oBACpD,qBAAqB;oBACrB,OAAO,MAAM,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACJ,gBAAgB,GAAG,MAAM,CAAC;gBAC9B,CAAC;YACL,CAAC;YACD,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,kBAAQ,CAAC,WAAW;mBAC9C,WAAW,KAAK,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACnD,OAAO,MAAM,CAAC;YAClB,CAAC;QACL,CAAC;QACD,gCAAgC;QAChC,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAEkB,cAAc,CAAC,IAAc,EAAE,KAAgB;QAC9D,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;YAC7C,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAEkB,eAAe,CAAC,KAAa;QAC5C,OAAO,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAES,mBAAmB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC;QACtD,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAEkB,2BAA2B,CAAC,IAAc;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACjF,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;YACxF,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,KAAK,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;;AAzbQ,sCAAa;AAawB;IAA7C,IAAA,kBAAM,EAAC,wBAAiB,CAAC;sCAA2B,wBAAiB;4CAAC;AACtB;IAAhD,IAAA,kBAAM,EAAC,8CAAoB,CAAC;sCAAiC,8CAAoB;kDAAC;AACzC;IAAzC,IAAA,kBAAM,EAAC,uBAAa,CAAC;sCAAmC,uBAAa;oDAAC;AACrB;IAAjD,IAAA,kBAAM,EAAC,+BAAqB,CAAC;;4DAAiE;AAClD;IAA5C,IAAA,kBAAM,EAAC,qCAAgB,CAAC;sCAAsC,qCAAgB;uDAAC;AACjC;IAA9C,IAAA,kBAAM,EAAC,wCAAkB,CAAC;;yDAA2D;AAC5C;IAAzC,IAAA,kBAAM,EAAC,8BAAa,CAAC;sCAA4B,8BAAa;6CAAC;AACvB;IAAxC,IAAA,kBAAM,EAAC,sBAAY,CAAC;sCAAkC,sBAAY;mDAAC;AAEjD;IADlB,IAAA,kBAAM,EAAC,cAAO,CAAC;IAAE,IAAA,iBAAK,EAAC,mBAAmB,CAAC;;6CACT;AACI;IAAtC,IAAA,kBAAM,EAAC,wBAAU,CAAC;sCAAgC,wBAAU;iDAAC;AAgB3C;IADlB,IAAA,yBAAa,GAAE;;;;yCAUf;wBAhDQ,aAAa;IADzB,IAAA,sBAAU,GAAE;IA8BJ,mBAAA,IAAA,kBAAM,EAAC,gBAAS,CAAC,CAAA;IACjB,mBAAA,IAAA,kBAAM,EAAC,gBAAS,CAAC,CAAA;IACjB,mBAAA,IAAA,kBAAM,EAAC,6BAAmB,CAAC,CAAA;qDADE,6BAAY;QACQ,6BAAmB;GA/BhE,aAAa,CA2bzB;AAED,WAAiB,aAAa;IAC1B,IAAiB,MAAM,CAEtB;IAFD,WAAiB,MAAM;QACN,gBAAS,GAAG,WAAW,CAAC;IACzC,CAAC,EAFgB,MAAM,GAAN,oBAAM,KAAN,oBAAM,QAEtB;AAYL,CAAC,EAfgB,aAAa,6BAAb,aAAa,QAe7B;AAED,MAAsB,UAA0D,SAAQ,KAAK,CAAC,SAA8B;IAExH,YAAY,KAAQ;QAChB,KAAK,CAAC,KAAK,CAAC,CAAC;QAaE,uBAAkB,GAAG,IAAI,iCAAoB,EAAE,CAAC;QAQzD,gBAAW,GAAG,CAAC,OAA2B,EAAE,EAAE;YACpD,IAAI,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;oBAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACxC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC;QACQ,cAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,cAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAElD,sBAAiB,GAAG,CAAC,KAAoC,EAAE,EAAE;YACnE,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YAC3D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE;gBAC1C,mBAAmB,CAAC,MAAM,CAAC;oBACvB,QAAQ,EAAE,IAAI,CAAC,eAAe;oBAC9B,MAAM,EAAE,KAAK,CAAC,WAAW;oBACzB,IAAI,EAAE,IAAI,CAAC,eAAe;oBAC1B,OAAO,EAAE,KAAK,CAAC,aAAa;iBAC/B,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QA1CE,IAAI,CAAC,KAAK,GAAG;YACT,KAAK,EAAE,KAAK;SACf,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE;YACvB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;gBACpC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;QACL,CAAC,CAAC;IACN,CAAC;IAGQ,iBAAiB;QACtB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,uBAAU,CAAC,MAAM,CAAC,GAAG,EAAE,GAAyB,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC;IACQ,oBAAoB;QACzB,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;IACtC,CAAC;CA6BJ;AAnDD,gCAmDC;AAUD,MAAa,oBAAqB,SAAQ,UAAsC;IAAhF;;QAqDc,SAAI,GAAG,GAAG,EAAE;YAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC3E,IAAI,QAAQ,EAAE,CAAC;gBACX,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpB,CAAC;QACL,CAAC,CAAC;QAEiB,oBAAe,GAAG,aAAa,CAAC,qBAAqB,CAAC;QAwBzE;;WAEG;QACO,gBAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrC,wDAAwD;gBACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,yBAAyB,CAAC,KAAK,aAAa,CAAC;gBACvH,IAAI,QAAQ,EAAE,CAAC;oBACX,IAAI,CAAC,IAAI,EAAE,CAAC;gBAChB,CAAC;YACL,CAAC;QACL,CAAC,CAAC;QAEF;;WAEG;QACO,sBAAiB,GAAG,GAAG,EAAE;YAC/B,wDAAwD;YACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,yBAAyB,CAAC,KAAK,aAAa,CAAC;YACvH,wFAAwF;YACxF,IAAI,QAAQ,EAAE,CAAC;gBACX,IAAI,CAAC,IAAI,EAAE,CAAC;YAChB,CAAC;QACL,CAAC,CAAC;IACN,CAAC;IA1GY,MAAM;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5I,MAAM,WAAW,GAAG,IAAI,aAAG,CAAC,SAAS,CAAC,CAAC;QAEvC,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC;QAC5C,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,QAAQ,CAAC;QAClF,MAAM,UAAU,GAAa,UAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAE1G,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,UAAU,IAAI,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5H,MAAM,MAAM,GAAG,UAAU,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,MAAM,OAAO,GAAG,UAAU,IAAI,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC;QACvD,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,EAAE,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;QAChG,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAClG,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC;YAC9B,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,OAAO,EAAE;YAC7C,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAEhC,OAAO,6BAAK,GAAG,EAAE,SAAS,EACtB,SAAS,EAAE,WAAW,8BAAuB,IAAI,mCAA4B,EAAE,EAC/E,aAAa,EAAE,IAAI,CAAC,iBAAiB,EACrC,YAAY,EAAE,IAAI,CAAC,SAAS,EAC5B,YAAY,EAAE,IAAI,CAAC,SAAS,EAC5B,GAAG,EAAE,IAAI,CAAC,WAAW,EACrB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,aAAa,EAAE,IAAI,CAAC,iBAAiB;YACrC,8BAAM,SAAS,EAAE,IAAI,GAAG,YAAY,GAAI;YACvC,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE;YACnC,6BAAK,SAAS,EAAE,cAAc,mCAA4B,EAAE;gBACxD,8BAAM,SAAS,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,cAAc,EAAE,IAAG,OAAO,CAAQ;gBAClE,8BAAM,SAAS,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,cAAc,EAAE,IAAG,IAAI,CAAQ,CAC7D;YACN,oBAAC,gBAAgB,IACb,KAAK;gBACL,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,oBAAoB,CAAC;gBACvD,QAAQ,EAAE,aAAa,CAAC,oBAAoB;gBAC5C,IAAI,EAAE,IAAI,CAAC,eAAe;gBAC1B,WAAW;gBACX,KAAK;gBACL,QAAQ;gBAER,6BAAK,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IACjE,MAAM,CACL,CACS,CAChB,CAAC;IACZ,CAAC;IAUD,IAAc,eAAe;QACzB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,kCAAiB,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3G,wFAAwF;YACxF,OAAO,IAAI,CAAC,cAAc,CAAC;QAC/B,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IACD,IAAc,cAAc;QACxB,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnF,IAAI,gBAAgB,EAAE,CAAC;YACnB,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACJ,uEAAuE;YACvE,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC;IAES,qBAAqB,CAAC,KAAoC;QAChE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAC7C,OAAO,CAAC,UAAK,IAAI,OAAO,CAAC,IAAI,OAAO,IAAI,QAAQ,CAAC;IACrD,CAAC;CA0BJ;AA5GD,oDA4GC;AAaD,MAAa,uBAAwB,SAAQ,UAA2C;IAAxF;;QAiCuB,oBAAe,GAAG,aAAa,CAAC,2BAA2B,CAAC;IAUnF,CAAC;IAzCY,MAAM;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACpE,OAAO,6BAAK,SAAS,EAAE,iCAAiC,mCAA4B,EAAE,EAClF,aAAa,EAAE,IAAI,CAAC,iBAAiB,EACrC,YAAY,EAAE,IAAI,CAAC,SAAS,EAC5B,YAAY,EAAE,IAAI,CAAC,SAAS,EAC5B,GAAG,EAAE,IAAI,CAAC,WAAW;YACpB,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE;YACnC,6BAAK,SAAS,EAAE,cAAc,mCAA4B,EAAE,IAAG,OAAO,CAAO;YAC7E,oBAAC,gBAAgB,IACb,KAAK;gBACL,IAAI,EAAE,IAAI,CAAC,eAAe;gBAC1B,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,0BAA0B,CAAC;gBAC7D,QAAQ,EAAE,aAAa,CAAC,0BAA0B;gBAClD,WAAW;gBACX,KAAK;gBACL,QAAQ,IAEP,IAAI,CAAC,iBAAiB,EAAE,CACV,CACjB,CAAC;IACX,CAAC;IAES,iBAAiB;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7E,OAAO,6BAAK,SAAS,EAAC,+CAA+C;YACjE,8BAAM,SAAS,EAAC,oBAAoB,IAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAQ,CAC9E,CAAC;IACX,CAAC;IAGD,IAAc,eAAe;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7E,IAAI,KAAK,EAAE,CAAC;YACR,OAAO,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACJ,uEAAuE;YACvE,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC;CACJ;AA3CD,0DA2CC;AAOD,MAAa,wBAAyB,SAAQ,UAA0C;IAAxF;;QAoCuB,oBAAe,GAAG,aAAa,CAAC,4BAA4B,CAAC;IAapF,CAAC;IA/CY,MAAM;QACX,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9F,MAAM,cAAc,GAAG,gBAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,IAAI,aAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAE/C,OAAO,6BAAK,GAAG,EAAE,SAAS,EACtB,SAAS,EAAE,YAAY,8BAAuB,IAAI,mCAA4B,IAAI,aAAa,CAAC,MAAM,CAAC,SAAS,EAAE,EAClH,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,IAAI,CAAC,iBAAiB,EACrC,YAAY,EAAE,IAAI,CAAC,SAAS,EAC5B,YAAY,EAAE,IAAI,CAAC,SAAS,EAC5B,GAAG,EAAE,IAAI,CAAC,WAAW;YAEpB,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE;YACnC,8BAAM,SAAS,EAAE,IAAI,GAAG,YAAY,GAAI;YACxC,6BAAK,SAAS,EAAE,cAAc,mCAA4B,EAAE;gBACxD,8BAAM,SAAS,EAAC,MAAM,IAAE,OAAO,CAAQ,CACrC;YACN,oBAAC,gBAAgB,IACb,KAAK;gBACL,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,2BAA2B,CAAC;gBAC9D,QAAQ,EAAE,aAAa,CAAC,2BAA2B;gBACnD,IAAI,EAAE,IAAI,CAAC,eAAe;gBAC1B,WAAW;gBACX,KAAK;gBACL,QAAQ,GAEO,CAChB,CAAC;IAEZ,CAAC;IAGD,IAAc,eAAe;QACzB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,wCAAuB,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5H,wFAAwF;YACxF,OAAO,IAAI,CAAC,cAAc,CAAC;QAC/B,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IACD,IAAc,cAAc;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5E,CAAC;CAEJ;AAjDD,4DAiDC;AASD,MAAa,gBAAiB,SAAQ,KAAK,CAAC,SAAiC;IAChE,MAAM;QACX,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3F,OAAO,6BAAK,SAAS,EAAC,oCAAoC;YACtD,6BAAK,SAAS,EAAC,0BAA0B,IACpC,KAAK,IAAI,IAAI,EAAE,QAAQ;iBACnB,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,kBAAW,CAAC,EAAE,CAAC,IAAI,CAAC;gBACtC,oBAAC,eAAe,IAAC,GAAG,EAAE,KAAK,EAAQ,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,GAAM,CAAC,CAClG;YACL,QAAQ,CACP,CAAC;IACX,CAAC;CACJ;AAZD,4CAYC;AAcD,MAAa,eAAgB,SAAQ,KAAK,CAAC,SAAgC;IAA3E;;QAiBc,YAAO,GAAG,CAAC,KAAuB,EAAE,EAAE;YAC5C,KAAK,CAAC,eAAe,EAAE,CAAC;YAExB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC;QAChC,CAAC,CAAC;IACN,CAAC;IAtBY,MAAM;QACX,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAE1E,IAAI,QAAQ,GAAY,KAAK,CAAC;QAC9B,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE;YACnC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,6BAAK,SAAS,EAAC,yBAAyB;YAC3C,2BAAG,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,qBAAW,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,GAAI,CACvF,CAAC;IACX,CAAC;CAQJ;AAvBD,0CAuBC"}
|
|
1
|
+
{"version":3,"file":"scm-tree-widget.js","sourceRoot":"","sources":["../../src/browser/scm-tree-widget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,9 @@ import { PreferenceProxy, PreferenceSchema, PreferenceService } from '@theia/cor
|
|
|
3
3
|
export declare const scmPreferenceSchema: PreferenceSchema;
|
|
4
4
|
export interface ScmConfiguration {
|
|
5
5
|
'scm.defaultViewMode': 'tree' | 'list';
|
|
6
|
+
'scm.graph.badges': 'all' | 'filter';
|
|
7
|
+
'scm.graph.pageOnScroll': boolean;
|
|
8
|
+
'scm.graph.pageSize': number;
|
|
6
9
|
}
|
|
7
10
|
export declare const ScmPreferenceContribution: unique symbol;
|
|
8
11
|
export declare const ScmPreferences: unique symbol;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-preferences.d.ts","sourceRoot":"","sources":["../../src/common/scm-preferences.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAGH,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACpB,MAAM,oCAAoC,CAAC;AAG5C,eAAO,MAAM,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"scm-preferences.d.ts","sourceRoot":"","sources":["../../src/common/scm-preferences.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAGH,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACpB,MAAM,oCAAoC,CAAC;AAG5C,eAAO,MAAM,mBAAmB,EAAE,gBAqCjC,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC7B,qBAAqB,EAAE,MAAM,GAAG,MAAM,CAAA;IACtC,kBAAkB,EAAE,KAAK,GAAG,QAAQ,CAAA;IACpC,wBAAwB,EAAE,OAAO,CAAA;IACjC,oBAAoB,EAAE,MAAM,CAAA;CAC/B;AAED,eAAO,MAAM,yBAAyB,eAAsC,CAAC;AAC7E,eAAO,MAAM,cAAc,eAA2B,CAAC;AACvD,MAAM,MAAM,cAAc,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAAC;AAE/D,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,iBAAiB,EAAE,MAAM,GAAE,gBAAsC,GAAG,cAAc,CAEnI;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,GAAG,IAAI,CAQ9D"}
|
|
@@ -31,6 +31,30 @@ exports.scmPreferenceSchema = {
|
|
|
31
31
|
],
|
|
32
32
|
description: nls_1.nls.localizeByDefault('Controls the default Source Control repository view mode.'),
|
|
33
33
|
default: 'list'
|
|
34
|
+
},
|
|
35
|
+
'scm.graph.badges': {
|
|
36
|
+
type: 'string',
|
|
37
|
+
enum: ['all', 'filter'],
|
|
38
|
+
enumDescriptions: [
|
|
39
|
+
nls_1.nls.localizeByDefault('Show badges of all history item groups in the Source Control Graph view.'),
|
|
40
|
+
nls_1.nls.localizeByDefault('Show only the badges of history item groups used as a filter in the Source Control Graph view.')
|
|
41
|
+
],
|
|
42
|
+
description: nls_1.nls.localizeByDefault(
|
|
43
|
+
// eslint-disable-next-line max-len
|
|
44
|
+
'Controls which badges are shown in the Source Control Graph view. The badges are shown on the right side of the graph indicating the names of history item groups.'),
|
|
45
|
+
default: 'filter'
|
|
46
|
+
},
|
|
47
|
+
'scm.graph.pageOnScroll': {
|
|
48
|
+
type: 'boolean',
|
|
49
|
+
description: nls_1.nls.localizeByDefault('Controls whether the Source Control Graph view will load the next page of items when you scroll to the end of the list.'),
|
|
50
|
+
default: true
|
|
51
|
+
},
|
|
52
|
+
'scm.graph.pageSize': {
|
|
53
|
+
type: 'number',
|
|
54
|
+
minimum: 1,
|
|
55
|
+
maximum: 1000,
|
|
56
|
+
description: nls_1.nls.localizeByDefault('The number of items to show in the Source Control Graph view by default and when loading more items.'),
|
|
57
|
+
default: 50
|
|
34
58
|
}
|
|
35
59
|
}
|
|
36
60
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-preferences.js","sourceRoot":"","sources":["../../src/common/scm-preferences.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;;;
|
|
1
|
+
{"version":3,"file":"scm-preferences.js","sourceRoot":"","sources":["../../src/common/scm-preferences.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;;;AA8DhF,oDAEC;AAED,gDAQC;AAvED,oEAM4C;AAC5C,oDAAiD;AAEpC,QAAA,mBAAmB,GAAqB;IACjD,UAAU,EAAE;QACR,qBAAqB,EAAE;YACnB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;YACtB,gBAAgB,EAAE;gBACd,SAAG,CAAC,iBAAiB,CAAC,wCAAwC,CAAC;gBAC/D,SAAG,CAAC,iBAAiB,CAAC,wCAAwC,CAAC;aAClE;YACD,WAAW,EAAE,SAAG,CAAC,iBAAiB,CAAC,2DAA2D,CAAC;YAC/F,OAAO,EAAE,MAAM;SAClB;QACD,kBAAkB,EAAE;YAChB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;YACvB,gBAAgB,EAAE;gBACd,SAAG,CAAC,iBAAiB,CAAC,0EAA0E,CAAC;gBACjG,SAAG,CAAC,iBAAiB,CAAC,gGAAgG,CAAC;aAC1H;YACD,WAAW,EAAE,SAAG,CAAC,iBAAiB;YAC9B,mCAAmC;YACnC,oKAAoK,CAAC;YACzK,OAAO,EAAE,QAAQ;SACpB;QACD,wBAAwB,EAAE;YACtB,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,SAAG,CAAC,iBAAiB,CAAC,yHAAyH,CAAC;YAC7J,OAAO,EAAE,IAAI;SAChB;QACD,oBAAoB,EAAE;YAClB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,SAAG,CAAC,iBAAiB,CAAC,sGAAsG,CAAC;YAC1I,OAAO,EAAE,EAAE;SACd;KACJ;CACJ,CAAC;AASW,QAAA,yBAAyB,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAChE,QAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAGvD,SAAgB,oBAAoB,CAAC,WAA8B,EAAE,SAA2B,2BAAmB;IAC/G,OAAO,IAAA,mCAAqB,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAED,SAAgB,kBAAkB,CAAC,IAAqB;IACpD,IAAI,CAAC,sBAAc,CAAC,CAAC,cAAc,CAAC,CAAC,GAAuB,EAAE,EAAE;QAC5D,MAAM,WAAW,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAoB,+BAAiB,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAyB,iCAAyB,CAAC,CAAC;QAC1F,OAAO,oBAAoB,CAAC,WAAW,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACtB,IAAI,CAAC,iCAAyB,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,2BAAmB,EAAE,CAAC,CAAC;IACjF,IAAI,CAAC,oCAAsB,CAAC,CAAC,SAAS,CAAC,iCAAyB,CAAC,CAAC;AACtE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/scm",
|
|
3
|
-
"version": "1.75.0
|
|
3
|
+
"version": "1.75.0",
|
|
4
4
|
"description": "Theia - Source control Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.75.0
|
|
7
|
-
"@theia/editor": "1.75.0
|
|
8
|
-
"@theia/filesystem": "1.75.0
|
|
9
|
-
"@theia/monaco": "1.75.0
|
|
6
|
+
"@theia/core": "1.75.0",
|
|
7
|
+
"@theia/editor": "1.75.0",
|
|
8
|
+
"@theia/filesystem": "1.75.0",
|
|
9
|
+
"@theia/monaco": "1.75.0",
|
|
10
10
|
"@theia/monaco-editor-core": "1.108.201",
|
|
11
11
|
"@types/diff": "^5.2.3",
|
|
12
12
|
"diff": "^5.2.2",
|
|
@@ -50,10 +50,10 @@
|
|
|
50
50
|
"watch": "theiaext watch"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@theia/ext-scripts": "1.
|
|
53
|
+
"@theia/ext-scripts": "1.75.0"
|
|
54
54
|
},
|
|
55
55
|
"nyc": {
|
|
56
56
|
"extends": "../../configs/nyc.json"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "6d8e911f05f0fd9a13d76797e79b21ee3f038bc2"
|
|
59
59
|
}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
|
-
import { inject, injectable } from '@theia/core/shared/inversify';
|
|
17
|
+
import { inject, injectable, named } from '@theia/core/shared/inversify';
|
|
18
18
|
import { ILogger } from '@theia/core/lib/common/logger';
|
|
19
19
|
import { Event, Emitter } from '@theia/core/lib/common/event';
|
|
20
20
|
import { Tree } from '@theia/core/lib/browser/tree/tree';
|
|
@@ -35,7 +35,8 @@ export class ScmNavigatorDecorator implements TreeDecorator {
|
|
|
35
35
|
readonly id = 'theia-scm-decorator';
|
|
36
36
|
private decorationsMap: Map<string, Decoration> | undefined;
|
|
37
37
|
|
|
38
|
-
@inject(ILogger)
|
|
38
|
+
@inject(ILogger) @named('scm:ScmNavigatorDecorator')
|
|
39
|
+
protected readonly logger: ILogger;
|
|
39
40
|
|
|
40
41
|
@inject(ColorRegistry)
|
|
41
42
|
protected readonly colors: ColorRegistry;
|
|
@@ -69,6 +69,15 @@ describe('ScmContextKeyService', () => {
|
|
|
69
69
|
scmContextKeyService.scmProviderCount.reset();
|
|
70
70
|
expect(scmContextKeyService.scmProviderCount.get()).to.equal(0);
|
|
71
71
|
});
|
|
72
|
+
|
|
73
|
+
it('should initialize scmCurrentHistoryItemRefInFilter to false', () => {
|
|
74
|
+
expect(scmContextKeyService.scmCurrentHistoryItemRefInFilter.get()).to.equal(false);
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
it('should update scmCurrentHistoryItemRefInFilter when set is called', () => {
|
|
78
|
+
scmContextKeyService.scmCurrentHistoryItemRefInFilter.set(true);
|
|
79
|
+
expect(scmContextKeyService.scmCurrentHistoryItemRefInFilter.get()).to.equal(true);
|
|
80
|
+
});
|
|
72
81
|
});
|
|
73
82
|
|
|
74
83
|
describe('ScmContribution scm.providerCount wiring', () => {
|
|
@@ -63,6 +63,11 @@ export class ScmContextKeyService {
|
|
|
63
63
|
return this._scmCurrentHistoryItemRefHasBase;
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
+
protected _scmCurrentHistoryItemRefInFilter: ContextKey<boolean>;
|
|
67
|
+
get scmCurrentHistoryItemRefInFilter(): ContextKey<boolean> {
|
|
68
|
+
return this._scmCurrentHistoryItemRefInFilter;
|
|
69
|
+
}
|
|
70
|
+
|
|
66
71
|
@postConstruct()
|
|
67
72
|
protected init(): void {
|
|
68
73
|
this._scmProvider = this.contextKeyService.createKey<string | undefined>('scmProvider', undefined);
|
|
@@ -73,6 +78,7 @@ export class ScmContextKeyService {
|
|
|
73
78
|
this._scmHistoryItemRef = this.contextKeyService.createKey<string | undefined>('scmHistoryItemRef', undefined);
|
|
74
79
|
this._scmCurrentHistoryItemRefHasRemote = this.contextKeyService.createKey<boolean>('scmCurrentHistoryItemRefHasRemote', false);
|
|
75
80
|
this._scmCurrentHistoryItemRefHasBase = this.contextKeyService.createKey<boolean>('scmCurrentHistoryItemRefHasBase', false);
|
|
81
|
+
this._scmCurrentHistoryItemRefInFilter = this.contextKeyService.createKey<boolean>('scmCurrentHistoryItemRefInFilter', false);
|
|
76
82
|
}
|
|
77
83
|
|
|
78
84
|
match(expression: string | undefined): boolean {
|
|
@@ -46,7 +46,9 @@ import { bindScmPreferences } from '../common/scm-preferences';
|
|
|
46
46
|
import { bindMergeEditor } from './merge-editor/merge-editor-module';
|
|
47
47
|
import { ScmRepositoriesWidget } from './scm-repositories-widget';
|
|
48
48
|
import { ScmHistoryGraphWidget } from './scm-history-graph-widget';
|
|
49
|
-
import { ScmHistoryGraphModel } from './scm-history-graph-model';
|
|
49
|
+
import { ScmHistoryGraphModel, ScmHistoryGraphModelProvider } from './scm-history-graph-model';
|
|
50
|
+
import { ScmHistoryGraphContribution } from './scm-history-graph-contribution';
|
|
51
|
+
import { CommandContribution, MenuContribution } from '@theia/core';
|
|
50
52
|
|
|
51
53
|
export default new ContainerModule(bind => {
|
|
52
54
|
bind(ScmContextKeyService).toSelf().inSingletonScope();
|
|
@@ -91,6 +93,10 @@ export default new ContainerModule(bind => {
|
|
|
91
93
|
})).inSingletonScope();
|
|
92
94
|
|
|
93
95
|
bind(ScmHistoryGraphModel).toSelf().inSingletonScope();
|
|
96
|
+
bind(ScmHistoryGraphModelProvider).toFactory(ctx => () => ctx.container.get(ScmHistoryGraphModel));
|
|
97
|
+
bind(ScmHistoryGraphContribution).toSelf().inSingletonScope();
|
|
98
|
+
bind(CommandContribution).toService(ScmHistoryGraphContribution);
|
|
99
|
+
bind(MenuContribution).toService(ScmHistoryGraphContribution);
|
|
94
100
|
bind(ScmHistoryGraphWidget).toSelf();
|
|
95
101
|
bind(WidgetFactory).toDynamicValue(({ container }) => ({
|
|
96
102
|
id: ScmHistoryGraphWidget.ID,
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
// *****************************************************************************
|
|
2
|
+
// Copyright (C) 2026 Safi Seid-Ahmad, K2view and others.
|
|
3
|
+
//
|
|
4
|
+
// This program and the accompanying materials are made available under the
|
|
5
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
//
|
|
8
|
+
// This Source Code may also be made available under the following Secondary
|
|
9
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
// with the GNU Classpath Exception which is available at
|
|
12
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
//
|
|
14
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
|
+
// *****************************************************************************
|
|
16
|
+
|
|
17
|
+
import { enableJSDOM } from '@theia/core/lib/browser/test/jsdom';
|
|
18
|
+
const disableJSDOM = enableJSDOM();
|
|
19
|
+
|
|
20
|
+
import { expect } from 'chai';
|
|
21
|
+
import { Command, CommandHandler, CommandRegistry } from '@theia/core/lib/common/command';
|
|
22
|
+
import { Disposable } from '@theia/core/lib/common/disposable';
|
|
23
|
+
import { ScmHistoryGraphContribution, ScmHistoryGraphCommands } from './scm-history-graph-contribution';
|
|
24
|
+
import { ScmHistoryGraphModel, ScmHistoryViewMode } from './scm-history-graph-model';
|
|
25
|
+
import { ScmHistoryProvider } from './scm-provider';
|
|
26
|
+
|
|
27
|
+
disableJSDOM();
|
|
28
|
+
|
|
29
|
+
interface ContributionInternals {
|
|
30
|
+
scmService: { selectedRepository: { provider: { historyProvider?: ScmHistoryProvider } } | undefined };
|
|
31
|
+
modelProvider: () => ScmHistoryGraphModel;
|
|
32
|
+
quickInputService: unknown;
|
|
33
|
+
scmContextKeys: unknown;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const ALL_COMMANDS = [
|
|
37
|
+
ScmHistoryGraphCommands.REFRESH,
|
|
38
|
+
ScmHistoryGraphCommands.PICK_HISTORY_ITEM_REFS,
|
|
39
|
+
ScmHistoryGraphCommands.REVEAL_CURRENT_HISTORY_ITEM,
|
|
40
|
+
ScmHistoryGraphCommands.SET_LIST_VIEW_MODE,
|
|
41
|
+
ScmHistoryGraphCommands.SET_TREE_VIEW_MODE,
|
|
42
|
+
];
|
|
43
|
+
|
|
44
|
+
function createContribution(historyProvider: ScmHistoryProvider | undefined, currentRefInFilter = true): {
|
|
45
|
+
handlers: Map<string, CommandHandler>;
|
|
46
|
+
modelResolved(): boolean;
|
|
47
|
+
revealCount(): number;
|
|
48
|
+
viewMode(): ScmHistoryViewMode;
|
|
49
|
+
} {
|
|
50
|
+
const contribution = new ScmHistoryGraphContribution();
|
|
51
|
+
let resolved = false;
|
|
52
|
+
let reveals = 0;
|
|
53
|
+
let viewMode: ScmHistoryViewMode = 'list';
|
|
54
|
+
const internals = contribution as unknown as ContributionInternals;
|
|
55
|
+
internals.scmService = {
|
|
56
|
+
selectedRepository: historyProvider ? { provider: { historyProvider } } : undefined,
|
|
57
|
+
};
|
|
58
|
+
internals.modelProvider = () => {
|
|
59
|
+
resolved = true;
|
|
60
|
+
return {
|
|
61
|
+
historyItemRefFilter: undefined,
|
|
62
|
+
revealCurrentHistoryItem: async () => { reveals++; return undefined; },
|
|
63
|
+
get viewMode(): ScmHistoryViewMode { return viewMode; },
|
|
64
|
+
setViewMode: (mode: ScmHistoryViewMode) => { viewMode = mode; },
|
|
65
|
+
} as unknown as ScmHistoryGraphModel;
|
|
66
|
+
};
|
|
67
|
+
internals.quickInputService = {};
|
|
68
|
+
internals.scmContextKeys = {
|
|
69
|
+
scmCurrentHistoryItemRefInFilter: { get: () => currentRefInFilter },
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
const handlers = new Map<string, CommandHandler>();
|
|
73
|
+
const registry = {
|
|
74
|
+
registerCommand: (command: Command, handler: CommandHandler): Disposable => {
|
|
75
|
+
handlers.set(command.id, handler);
|
|
76
|
+
return Disposable.NULL;
|
|
77
|
+
},
|
|
78
|
+
} as unknown as CommandRegistry;
|
|
79
|
+
contribution.registerCommands(registry);
|
|
80
|
+
return { handlers, modelResolved: () => resolved, revealCount: () => reveals, viewMode: () => viewMode };
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
describe('ScmHistoryGraphContribution', () => {
|
|
84
|
+
|
|
85
|
+
it('does not resolve the graph model for enablement and visibility checks', () => {
|
|
86
|
+
const { handlers, modelResolved } = createContribution({} as ScmHistoryProvider);
|
|
87
|
+
for (const command of ALL_COMMANDS) {
|
|
88
|
+
const handler = handlers.get(command.id)!;
|
|
89
|
+
expect(handler.isEnabled!()).to.be.true;
|
|
90
|
+
expect(handler.isVisible!()).to.be.true;
|
|
91
|
+
}
|
|
92
|
+
expect(modelResolved()).to.be.false;
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
it('disables the commands when the selected repository has no history provider', () => {
|
|
96
|
+
const { handlers, modelResolved } = createContribution(undefined);
|
|
97
|
+
for (const command of ALL_COMMANDS) {
|
|
98
|
+
const handler = handlers.get(command.id)!;
|
|
99
|
+
expect(handler.isEnabled!()).to.be.false;
|
|
100
|
+
expect(handler.isVisible!()).to.be.false;
|
|
101
|
+
}
|
|
102
|
+
expect(modelResolved()).to.be.false;
|
|
103
|
+
});
|
|
104
|
+
|
|
105
|
+
it('disables revealing the current history item when the filter excludes the current ref', () => {
|
|
106
|
+
const { handlers } = createContribution({} as ScmHistoryProvider, false);
|
|
107
|
+
const handler = handlers.get(ScmHistoryGraphCommands.REVEAL_CURRENT_HISTORY_ITEM.id)!;
|
|
108
|
+
expect(handler.isEnabled!()).to.be.false;
|
|
109
|
+
});
|
|
110
|
+
|
|
111
|
+
it('keeps revealing the current history item visible when the filter excludes the current ref', () => {
|
|
112
|
+
const { handlers } = createContribution({} as ScmHistoryProvider, false);
|
|
113
|
+
const handler = handlers.get(ScmHistoryGraphCommands.REVEAL_CURRENT_HISTORY_ITEM.id)!;
|
|
114
|
+
expect(handler.isVisible!()).to.be.true;
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
it('asks the model to reveal the current history item when executed', async () => {
|
|
118
|
+
const { handlers, revealCount } = createContribution({} as ScmHistoryProvider);
|
|
119
|
+
await handlers.get(ScmHistoryGraphCommands.REVEAL_CURRENT_HISTORY_ITEM.id)!.execute();
|
|
120
|
+
expect(revealCount()).to.equal(1);
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
it('switches the model to the tree view mode', async () => {
|
|
124
|
+
const { handlers, viewMode } = createContribution({} as ScmHistoryProvider);
|
|
125
|
+
await handlers.get(ScmHistoryGraphCommands.SET_TREE_VIEW_MODE.id)!.execute();
|
|
126
|
+
expect(viewMode()).to.equal('tree');
|
|
127
|
+
});
|
|
128
|
+
|
|
129
|
+
it('switches the model back to the list view mode', async () => {
|
|
130
|
+
const { handlers, viewMode } = createContribution({} as ScmHistoryProvider);
|
|
131
|
+
await handlers.get(ScmHistoryGraphCommands.SET_TREE_VIEW_MODE.id)!.execute();
|
|
132
|
+
await handlers.get(ScmHistoryGraphCommands.SET_LIST_VIEW_MODE.id)!.execute();
|
|
133
|
+
expect(viewMode()).to.equal('list');
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
it('toggles the view mode command matching the current view mode', async () => {
|
|
137
|
+
const { handlers } = createContribution({} as ScmHistoryProvider);
|
|
138
|
+
const list = handlers.get(ScmHistoryGraphCommands.SET_LIST_VIEW_MODE.id)!;
|
|
139
|
+
const tree = handlers.get(ScmHistoryGraphCommands.SET_TREE_VIEW_MODE.id)!;
|
|
140
|
+
expect(list.isToggled!()).to.be.true;
|
|
141
|
+
expect(tree.isToggled!()).to.be.false;
|
|
142
|
+
|
|
143
|
+
await tree.execute();
|
|
144
|
+
|
|
145
|
+
expect(list.isToggled!()).to.be.false;
|
|
146
|
+
expect(tree.isToggled!()).to.be.true;
|
|
147
|
+
});
|
|
148
|
+
});
|