@opensumi/ide-utils 2.22.10 → 2.23.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/disposable.d.ts +4 -0
- package/lib/disposable.d.ts.map +1 -1
- package/lib/disposable.js +17 -2
- package/lib/disposable.js.map +1 -1
- package/lib/lru-map.d.ts +4 -0
- package/lib/lru-map.d.ts.map +1 -1
- package/lib/lru-map.js +3 -2
- package/lib/lru-map.js.map +1 -1
- package/lib/map.d.ts +11 -0
- package/lib/map.d.ts.map +1 -1
- package/lib/map.js +31 -1
- package/lib/map.js.map +1 -1
- package/package.json +2 -2
- package/src/disposable.ts +17 -1
- package/src/lru-map.ts +4 -2
- package/src/map.ts +37 -0
package/lib/disposable.d.ts
CHANGED
|
@@ -77,4 +77,8 @@ export declare class RefCountedDisposable {
|
|
|
77
77
|
acquire(): this;
|
|
78
78
|
release(): this;
|
|
79
79
|
}
|
|
80
|
+
export declare class DisposableMap extends Map<string, IDisposable> implements IDisposable {
|
|
81
|
+
disposeKey(key: string): void;
|
|
82
|
+
dispose(): void;
|
|
83
|
+
}
|
|
80
84
|
//# sourceMappingURL=disposable.d.ts.map
|
package/lib/disposable.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disposable.d.ts","sourceRoot":"","sources":["../src/disposable.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"disposable.d.ts","sourceRoot":"","sources":["../src/disposable.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzC,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,WAAW,CAAS;IAE5B;;;;OAIG;IACI,OAAO,IAAI,IAAI;IAUtB;;OAEG;IACI,KAAK,IAAI,IAAI;IAKb,GAAG,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC;CAmB3C;AAED,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,WAAW,CAEjF;AAED,wBAAgB,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;AACjE,wBAAgB,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;AAC1F,wBAAgB,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AAwBtE,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,WAAW,CAG1E;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,WAAW,CAMxD;AAED,qBAAa,UAAW,YAAW,WAAW;IAC5C,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,EAAE,CAAM;IACnD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,gBAAuB;gBAE9C,GAAG,SAAS,EAAE,WAAW,EAAE;IAIvC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,IAAI,GAAG,WAAW;IAM5C,MAAM,CAAC,IAAI,cAA+B;IAE1C,MAAM,CAAC,IAAI,wBAAgD;IAE3D,IAAI,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,CAE3B;IAED,SAAS,CAAC,aAAa,IAAI,IAAI;IAM/B,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,IAAI,IAAI;IAiBf,UAAU,CAAC,UAAU,EAAE,WAAW,GAAG,WAAW;IAChD,UAAU,CAAC,UAAU,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE;IAUpD,SAAS,CAAC,eAAe,CAAC,CAAC,SAAS,WAAW,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC;IASlE,OAAO,CAAC,GAAG;CAiBZ;AAED,qBAAa,oBAAqB,YAAW,WAAW;IACtD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,EAAE,CAAM;IACnD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,gBAAuB;gBAE9C,GAAG,SAAS,EAAE,WAAW,EAAE;IAIvC,IAAI,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,CAE3B;IAED,SAAS,CAAC,aAAa,IAAI,IAAI;IAM/B,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,IAAI,IAAI;IAsBf,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,WAAW;IAkB1C,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE;CAGnD;AA0CD;;;;;GAKG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,WAAW,CAAE,YAAW,WAAW;IAC1E,OAAO,CAAC,MAAM,CAAC,CAAI;IACnB,OAAO,CAAC,WAAW,CAAS;;IAM5B,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,CAEzB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,EAY7B;IAED,KAAK;IAIL,OAAO,IAAI,IAAI;CAQhB;AAED,qBAAa,oBAAoB;IAGnB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAFxC,OAAO,CAAC,QAAQ,CAAK;gBAEQ,WAAW,EAAE,WAAW;IAErD,OAAO;IAKP,OAAO;CAMR;AAED,qBAAa,aAAc,SAAQ,GAAG,CAAC,MAAM,EAAE,WAAW,CAAE,YAAW,WAAW;IAChF,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAQ7B,OAAO,IAAI,IAAI;CAMhB"}
|
package/lib/disposable.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RefCountedDisposable = exports.MutableDisposable = exports.DisposableCollection = exports.Disposable = exports.toDisposable = exports.combinedDisposable = exports.dispose = exports.isDisposable = exports.DisposableStore = void 0;
|
|
3
|
+
exports.DisposableMap = exports.RefCountedDisposable = exports.MutableDisposable = exports.DisposableCollection = exports.Disposable = exports.toDisposable = exports.combinedDisposable = exports.dispose = exports.isDisposable = exports.DisposableStore = void 0;
|
|
4
4
|
const event_1 = require("./event");
|
|
5
|
-
// DisposableStore 是从 vscode lifecycle 中复制而来
|
|
6
5
|
class DisposableStore {
|
|
7
6
|
constructor() {
|
|
8
7
|
this.toDispose = new Set();
|
|
@@ -320,4 +319,20 @@ class RefCountedDisposable {
|
|
|
320
319
|
}
|
|
321
320
|
}
|
|
322
321
|
exports.RefCountedDisposable = RefCountedDisposable;
|
|
322
|
+
class DisposableMap extends Map {
|
|
323
|
+
disposeKey(key) {
|
|
324
|
+
const disposable = this.get(key);
|
|
325
|
+
if (disposable) {
|
|
326
|
+
disposable.dispose();
|
|
327
|
+
}
|
|
328
|
+
this.delete(key);
|
|
329
|
+
}
|
|
330
|
+
dispose() {
|
|
331
|
+
for (const disposable of this.values()) {
|
|
332
|
+
disposable.dispose();
|
|
333
|
+
}
|
|
334
|
+
this.clear();
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
exports.DisposableMap = DisposableMap;
|
|
323
338
|
//# sourceMappingURL=disposable.js.map
|
package/lib/disposable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disposable.js","sourceRoot":"","sources":["../src/disposable.ts"],"names":[],"mappings":";;;AAgBA,mCAAyC;AAEzC,
|
|
1
|
+
{"version":3,"file":"disposable.js","sourceRoot":"","sources":["../src/disposable.ts"],"names":[],"mappings":"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"}
|
package/lib/lru-map.d.ts
CHANGED
|
@@ -16,6 +16,10 @@ export declare class LRUMap<K, V> extends Map<K, V> {
|
|
|
16
16
|
key: K;
|
|
17
17
|
value: V;
|
|
18
18
|
}>;
|
|
19
|
+
readonly onKeyDidDelete: (key: K, listener: (e: {
|
|
20
|
+
key: K;
|
|
21
|
+
value: V;
|
|
22
|
+
}) => any, thisArgs?: any, disposables?: import("./disposable").IDisposable[] | undefined) => import("./disposable").IDisposable;
|
|
19
23
|
private head;
|
|
20
24
|
private tail;
|
|
21
25
|
private map;
|
package/lib/lru-map.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lru-map.d.ts","sourceRoot":"","sources":["../src/lru-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,EAAE,MAAM,SAAS,CAAC;AAEzC,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC;IACnB,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACtC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;CACvC;AAED;;;GAGG;AACH,qBAAa,MAAM,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"lru-map.d.ts","sourceRoot":"","sources":["../src/lru-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,EAAE,MAAM,SAAS,CAAC;AAEzC,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC;IACnB,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACtC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;CACvC;AAED;;;GAGG;AACH,qBAAa,MAAM,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAa7B,OAAO,CAAC,SAAS;IAAU,OAAO,CAAC,SAAS;IAZxD,OAAO,CAAC,YAAY,CAAuC;IAE3D,SAAgB,WAAW,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC,CAA2B;IACnF,SAAgB,cAAc,QAAS,CAAC;aAAmC,CAAC;eAAS,CAAC;qIACtB;IAEhE,OAAO,CAAC,IAAI,CAA6E;IAEzF,OAAO,CAAC,IAAI,CAA6E;IAEzF,OAAO,CAAC,GAAG,CAA0C;gBAEjC,SAAS,EAAE,MAAM,EAAU,SAAS,EAAE,MAAM;IAShE,OAAO,CAAC,cAAc;IAOtB,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAQ1B,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAS3B,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAWjC,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAStD,MAAM,CAAC,GAAG,EAAE,CAAC;IAab,MAAM;CAYP;AAGD;;GAEG;AACH,qBAAa,WAAW,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;IACC,OAAO,CAAC,MAAM;gBAApD,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM;IAIxE,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAY1B,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAK3B,OAAO,CAAC,QAAQ;CAGjB"}
|
package/lib/lru-map.js
CHANGED
|
@@ -13,11 +13,12 @@ class LRUMap extends Map {
|
|
|
13
13
|
this.softLimit = softLimit;
|
|
14
14
|
this._onDidDelete = new event_1.Emitter();
|
|
15
15
|
this.onDidDelete = this._onDidDelete.event;
|
|
16
|
+
this.onKeyDidDelete = (key, ...args) => event_1.Event.filter(this.onDidDelete, (e) => e.key === key)(...args);
|
|
16
17
|
this.head = { key: undefined, prev: undefined, next: undefined };
|
|
17
18
|
this.tail = { key: undefined, prev: undefined, next: undefined };
|
|
18
19
|
this.map = new Map();
|
|
19
|
-
if (hardLimit
|
|
20
|
-
throw new Error('hardLimit
|
|
20
|
+
if (hardLimit < softLimit) {
|
|
21
|
+
throw new Error('hardLimit must be greater equal than softLimit.');
|
|
21
22
|
}
|
|
22
23
|
this.head.next = this.tail;
|
|
23
24
|
this.tail.prev = this.head;
|
package/lib/lru-map.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lru-map.js","sourceRoot":"","sources":["../src/lru-map.ts"],"names":[],"mappings":";;;AAAA,mCAAyC;AAQzC;;;GAGG;AACH,MAAa,MAAa,SAAQ,GAAS;
|
|
1
|
+
{"version":3,"file":"lru-map.js","sourceRoot":"","sources":["../src/lru-map.ts"],"names":[],"mappings":"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"}
|
package/lib/map.d.ts
CHANGED
|
@@ -110,6 +110,17 @@ export declare class LRUCache<K, V> extends LinkedMap<K, V> {
|
|
|
110
110
|
set(key: K, value: V): void;
|
|
111
111
|
private checkTrim;
|
|
112
112
|
}
|
|
113
|
+
export declare class DefaultMap<K, V> {
|
|
114
|
+
private defaultValue;
|
|
115
|
+
private map;
|
|
116
|
+
constructor(defaultValue: () => V);
|
|
117
|
+
get(key: K): V;
|
|
118
|
+
has(key: K): boolean;
|
|
119
|
+
set(key: K, value: V): void;
|
|
120
|
+
delete(key: K): void;
|
|
121
|
+
clear(): void;
|
|
122
|
+
forEach(fn: (value: V, key: K) => void): void;
|
|
123
|
+
}
|
|
113
124
|
export declare class SetMap<K, V> {
|
|
114
125
|
private map;
|
|
115
126
|
add(key: K, value: V): void;
|
package/lib/map.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":"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"}
|
package/lib/map.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CaseInsensitiveMap = exports.SetMap = exports.LRUCache = exports.LinkedMap = exports.ResourceMap = exports.TernarySearchTree = exports.PathIterator = exports.StringIterator = exports.serializableToMap = exports.mapToSerializable = exports.setToString = exports.mapToString = exports.getOrSet = exports.keys = exports.values = void 0;
|
|
3
|
+
exports.CaseInsensitiveMap = exports.SetMap = exports.DefaultMap = exports.LRUCache = exports.LinkedMap = exports.ResourceMap = exports.TernarySearchTree = exports.PathIterator = exports.StringIterator = exports.serializableToMap = exports.mapToSerializable = exports.setToString = exports.mapToString = exports.getOrSet = exports.keys = exports.values = void 0;
|
|
4
4
|
const vscode_uri_1 = require("vscode-uri");
|
|
5
5
|
const iterator_1 = require("./iterator");
|
|
6
6
|
function values(forEachable) {
|
|
@@ -764,6 +764,36 @@ class LRUCache extends LinkedMap {
|
|
|
764
764
|
}
|
|
765
765
|
}
|
|
766
766
|
exports.LRUCache = LRUCache;
|
|
767
|
+
class DefaultMap {
|
|
768
|
+
constructor(defaultValue) {
|
|
769
|
+
this.defaultValue = defaultValue;
|
|
770
|
+
this.map = new Map();
|
|
771
|
+
}
|
|
772
|
+
get(key) {
|
|
773
|
+
let value = this.map.get(key);
|
|
774
|
+
if (!value) {
|
|
775
|
+
value = this.defaultValue();
|
|
776
|
+
this.map.set(key, value);
|
|
777
|
+
}
|
|
778
|
+
return value;
|
|
779
|
+
}
|
|
780
|
+
has(key) {
|
|
781
|
+
return this.map.has(key);
|
|
782
|
+
}
|
|
783
|
+
set(key, value) {
|
|
784
|
+
this.map.set(key, value);
|
|
785
|
+
}
|
|
786
|
+
delete(key) {
|
|
787
|
+
this.map.delete(key);
|
|
788
|
+
}
|
|
789
|
+
clear() {
|
|
790
|
+
this.map.clear();
|
|
791
|
+
}
|
|
792
|
+
forEach(fn) {
|
|
793
|
+
this.map.forEach(fn);
|
|
794
|
+
}
|
|
795
|
+
}
|
|
796
|
+
exports.DefaultMap = DefaultMap;
|
|
767
797
|
class SetMap {
|
|
768
798
|
constructor() {
|
|
769
799
|
this.map = new Map();
|
package/lib/map.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.js","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAGxC,yCAA2D;AAI3D,SAAgB,MAAM,CAAI,WAA2E;IACnG,MAAM,MAAM,GAAQ,EAAE,CAAC;IACvB,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC;AAChB,CAAC;AAJD,wBAIC;AAED,SAAgB,IAAI,CAAO,GAAc;IACvC,MAAM,MAAM,GAAQ,EAAE,CAAC;IACvB,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAE9C,OAAO,MAAM,CAAC;AAChB,CAAC;AALD,oBAKC;AAED,SAAgB,QAAQ,CAAO,GAAc,EAAE,GAAM,EAAE,KAAQ;IAC7D,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,MAAM,KAAK,SAAS,EAAE;QACxB,MAAM,GAAG,KAAK,CAAC;QACf,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;KACtB;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AARD,4BAQC;AAED,SAAgB,WAAW,CAAO,GAAc;IAC9C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACzB,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,KAAK,EAAE,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,GAAG,CAAC,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACpD,CAAC;AAPD,kCAOC;AAED,SAAgB,WAAW,CAAI,GAAW;IACxC,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,GAAG,CAAC,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACpD,CAAC;AAPD,kCAOC;AAED,SAAgB,iBAAiB,CAAa,GAAmB;IAC/D,MAAM,YAAY,GAAkB,EAAE,CAAC;IAEvC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACzB,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AACtB,CAAC;AARD,8CAQC;AAED,SAAgB,iBAAiB,CAAa,YAA2B;IACvE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAa,CAAC;IAEnC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,YAAY,EAAE;QACvC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;KACvB;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AARD,8CAQC;AAWD,MAAa,cAAc;IAA3B;QACU,WAAM,GAAG,EAAE,CAAC;QACZ,SAAI,GAAG,CAAC,CAAC;IA0BnB,CAAC;IAxBC,KAAK,CAAC,GAAW;QACf,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI;QACF,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,GAAG,CAAC,CAAS;QACX,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,OAAO,KAAK,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;CACF;AA5BD,wCA4BC;AAED,MAAa,YAAY;IAKvB,KAAK,CAAC,GAAW;QACf,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACf,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACb,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACvC,CAAC;IAED,IAAI;QACF,oDAAoD;QACpD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC;QACtB,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;YAChD,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,EAAE,4BAAmB,IAAI,EAAE,gCAAuB,EAAE;gBACtD,IAAI,QAAQ,EAAE;oBACZ,IAAI,CAAC,KAAK,EAAE,CAAC;iBACd;qBAAM;oBACL,MAAM;iBACP;aACF;iBAAM;gBACL,QAAQ,GAAG,KAAK,CAAC;aAClB;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,CAAS;QACX,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC;QACtB,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,OAAO,IAAI,GAAG,IAAI,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE;YACxC,MAAM,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACjE,IAAI,GAAG,KAAK,CAAC,EAAE;gBACb,OAAO,GAAG,CAAC;aACZ;YACD,IAAI,IAAI,CAAC,CAAC;YACV,OAAO,IAAI,CAAC,CAAC;SACd;QAED,IAAI,IAAI,KAAK,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE;YAClC,OAAO,CAAC,CAAC;SACV;aAAM,IAAI,IAAI,GAAG,IAAI,EAAE;YACtB,OAAO,CAAC,CAAC,CAAC;SACX;aAAM;YACL,OAAO,CAAC,CAAC;SACV;IACH,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC;CACF;AA7DD,oCA6DC;AAED,MAAM,qBAAqB;IAQzB,OAAO;QACL,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IAC/D,CAAC;CACF;AAED,MAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ;QACb,OAAO,IAAI,iBAAiB,CAAI,IAAI,YAAY,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,UAAU;QACf,OAAO,IAAI,iBAAiB,CAAI,IAAI,cAAc,EAAE,CAAC,CAAC;IACxD,CAAC;IAKD,YAAY,QAAsB;QAChC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,OAAU;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,IAA8B,CAAC;QAEnC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAqB,EAAK,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;SACnC;QAED,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QAClB,OAAO,IAAI,EAAE;YACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,OAAO;gBACP,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBACd,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAqB,EAAK,CAAC;oBAC3C,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;iBAClC;gBACD,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;aAClB;iBAAM,IAAI,GAAG,GAAG,CAAC,EAAE;gBAClB,QAAQ;gBACR,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;oBACf,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAqB,EAAK,CAAC;oBAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;iBACnC;gBACD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;aACnB;iBAAM,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBACzB,MAAM;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;oBACb,IAAI,CAAC,GAAG,GAAG,IAAI,qBAAqB,EAAK,CAAC;oBAC1C,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;iBACjC;gBACD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;aACjB;iBAAM;gBACL,MAAM;aACP;SACF;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,GAAW;QACb,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACtB,OAAO,IAAI,EAAE;YACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,OAAO;gBACP,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;aAClB;iBAAM,IAAI,GAAG,GAAG,CAAC,EAAE;gBAClB,QAAQ;gBACR,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;aACnB;iBAAM,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBACzB,MAAM;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;aACjB;iBAAM;gBACL,MAAM;aACP;SACF;QACD,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,GAAW;QAChB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,KAAK,GAA6C,EAAE,CAAC;QAC3D,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QAEtB,sBAAsB;QACtB,OAAO,IAAI,EAAE;YACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,OAAO;gBACP,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBACtB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;aAClB;iBAAM,IAAI,GAAG,GAAG,CAAC,EAAE;gBAClB,QAAQ;gBACR,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBACvB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;aACnB;iBAAM,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBACzB,MAAM;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBACtB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;aACjB;iBAAM;gBACL,iBAAiB;gBACjB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;gBAEvB,uBAAuB;gBACvB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;oBACzC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;oBACnC,QAAQ,GAAG,EAAE;wBACX,KAAK,CAAC;4BACJ,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC;4BACxB,MAAM;wBACR,KAAK,CAAC;4BACJ,MAAM,CAAC,GAAG,GAAG,SAAS,CAAC;4BACvB,MAAM;wBACR,KAAK,CAAC,CAAC;4BACL,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC;4BACzB,MAAM;qBACT;oBACD,IAAI,GAAG,MAAM,CAAC;iBACf;gBACD,MAAM;aACP;SACF;IACH,CAAC;IAED,UAAU,CAAC,GAAW;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACtB,IAAI,SAAwB,CAAC;QAC7B,OAAO,IAAI,EAAE;YACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,OAAO;gBACP,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;aAClB;iBAAM,IAAI,GAAG,GAAG,CAAC,EAAE;gBAClB,QAAQ;gBACR,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;aACnB;iBAAM,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBACzB,MAAM;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC;gBACpC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;aACjB;iBAAM;gBACL,MAAM;aACP;SACF;QACD,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC;IAC3C,CAAC;IAED,YAAY,CAAC,GAAW;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACtB,OAAO,IAAI,EAAE;YACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,OAAO;gBACP,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;aAClB;iBAAM,IAAI,GAAG,GAAG,CAAC,EAAE;gBAClB,QAAQ;gBACR,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;aACnB;iBAAM,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBACzB,MAAM;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;aACjB;iBAAM;gBACL,UAAU;gBACV,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;oBACb,OAAO,SAAS,CAAC;iBAClB;qBAAM;oBACL,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBACrC;aACF;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,aAAa,CAAC,IAA8B;QAClD,IAAI,GAA8B,CAAC;QACnC,IAAI,GAAW,CAAC;QAChB,IAAI,IAAS,CAAC;QACd,MAAM,IAAI,GAAG,GAAsB,EAAE;YACnC,IAAI,CAAC,IAAI,EAAE;gBACT,6BAA6B;gBAC7B,IAAI,GAAG,EAAE,CAAC;gBACV,GAAG,GAAG,CAAC,CAAC;gBACR,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAClD;YACD,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE;gBACtB,OAAO,cAAG,CAAC;aACZ;YAED,IAAI,CAAC,GAAG,EAAE;gBACR,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;aAC3C;iBAAM;gBACL,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;aACzB;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,QAA0C;QAChD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEO,QAAQ,CAAC,IAA0C,EAAE,QAA0C;QACrG,IAAI,IAAI,EAAE;YACR,OAAO;YACP,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAEnC,OAAO;YACP,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,gDAAgD;gBAChD,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;aAChC;YACD,MAAM;YACN,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAElC,QAAQ;YACR,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;SACrC;IACH,CAAC;CACF;AArOD,8CAqOC;AAED,MAAa,WAAW;IAItB;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAa,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,iDAAiD;IAC5E,CAAC;IAED,GAAG,CAAC,QAAa,EAAE,KAAQ;QACzB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,GAAG,CAAC,QAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,GAAG,CAAC,QAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,QAAa;QAClB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,CAAC,GAAuB;QAC7B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,MAAM;QACJ,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAEO,KAAK,CAAC,QAAa;QACzB,IAAI,GAAG,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;SACzB;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,KAAK;QACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAK,CAAC;QAEzC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QAElE,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AA7DD,kCA6DC;AAiBD,MAAa,SAAS;IAMpB;QACE,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,EAAiB,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,OAAO;QACL,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACpC,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,0BAAyB;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,KAAK,uBAAe,EAAE;YACxB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SACzB;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ,EAAE,0BAAyB;QAC7C,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,KAAK,uBAAe,EAAE;gBACxB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACzB;SACF;aAAM;YACL,IAAI,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;YAC5D,QAAQ,KAAK,EAAE;gBACb;oBACE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACvB,MAAM;gBACR;oBACE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBACxB,MAAM;gBACR;oBACE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACvB,MAAM;gBACR;oBACE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACvB,MAAM;aACT;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,EAAE,CAAC;SACd;IACH,CAAC;IAED,MAAM,CAAC,GAAM;QACX,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,GAAM;QACX,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC9B,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;SACjC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,UAA4D,EAAE,OAAa;QACjF,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,OAAO,OAAO,EAAE;YACd,IAAI,OAAO,EAAE;gBACX,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aAC5D;iBAAM;gBACL,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aAC9C;YACD,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;SACxB;IACH,CAAC;IAED,MAAM;QACJ,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,OAAO,OAAO,EAAE;YACd,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC3B,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;SACxB;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI;QACF,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,OAAO,OAAO,EAAE;YACd,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;SACxB;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAsCC;IAES,OAAO,CAAC,OAAe;QAC/B,IAAI,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE;YACxB,OAAO;SACR;QACD,IAAI,OAAO,KAAK,CAAC,EAAE;YACjB,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO;SACR;QACD,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;QAC5B,OAAO,OAAO,IAAI,WAAW,GAAG,OAAO,EAAE;YACvC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC9B,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YACvB,WAAW,EAAE,CAAC;SACf;QACD,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;QACzB,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;SAC9B;IACH,CAAC;IAEO,YAAY,CAAC,IAAgB;QACnC,oBAAoB;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACnB;aAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;SACjC;aAAM;YACL,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;SAC5B;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAEO,WAAW,CAAC,IAAgB;QAClC,oBAAoB;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACnB;aAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;SACjC;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;SACxB;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAEO,UAAU,CAAC,IAAgB;QACjC,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE;YAC9C,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;SACxB;aAAM,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE;YAC9B,sDAAsD;YACtD,qBAAqB;YACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;aACjC;YACD,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;SACxB;aAAM,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE;YAC9B,sDAAsD;YACtD,qBAAqB;YACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;aACjC;YACD,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;SAC5B;aAAM;YACL,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACtB,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;aACjC;YACD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;SACtB;QACD,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,IAAgB,EAAE,KAAY;QAC1C,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;SACjC;QACD,IAAI,KAAK,wBAAgB,IAAI,KAAK,wBAAgB,EAAE;YAClD,OAAO;SACR;QAED,IAAI,KAAK,wBAAgB,EAAE;YACzB,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE;gBACvB,OAAO;aACR;YAED,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAE/B,kBAAkB;YAClB,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE;gBACvB,+DAA+D;gBAC/D,4CAA4C;gBAC5C,QAAS,CAAC,IAAI,GAAG,SAAS,CAAC;gBAC3B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;aACvB;iBAAM;gBACL,iFAAiF;gBACjF,IAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBAC1B,QAAS,CAAC,IAAI,GAAG,IAAI,CAAC;aACvB;YAED,0BAA0B;YAC1B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACnB;aAAM,IAAI,KAAK,wBAAgB,EAAE;YAChC,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE;gBACvB,OAAO;aACR;YAED,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAE/B,mBAAmB;YACnB,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE;gBACvB,2DAA2D;gBAC3D,4CAA4C;gBAC5C,IAAK,CAAC,QAAQ,GAAG,SAAS,CAAC;gBAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;aACnB;iBAAM;gBACL,iFAAiF;gBACjF,IAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBAC1B,QAAS,CAAC,IAAI,GAAG,IAAI,CAAC;aACvB;YACD,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;YACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACnB;IACH,CAAC;IAED,MAAM;QACJ,MAAM,IAAI,GAAa,EAAE,CAAC;QAE1B,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,IAAc;QACrB,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACtB;IACH,CAAC;CACF;AAzUD,8BAyUC;AAED,MAAa,QAAe,SAAQ,SAAe;IAIjD,YAAY,KAAa,EAAE,KAAK,GAAG,CAAC;QAClC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,KAAa;QACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,KAAa;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,sBAAc,CAAC;IACrC,CAAC;IAED,IAAI,CAAC,GAAM;QACT,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,qBAAa,CAAC;IACpC,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,sBAAc,CAAC;QACnC,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAEO,SAAS;QACf,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;SACrD;IACH,CAAC;CACF;AA9CD,4BA8CC;AAED,MAAa,MAAM;IAAnB;QACU,QAAG,GAAG,IAAI,GAAG,EAAa,CAAC;IAoCrC,CAAC;IAlCC,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE/B,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,GAAG,IAAI,GAAG,EAAK,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;SAC3B;QAED,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,GAAM,EAAE,KAAQ;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEjC,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QAED,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAErB,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE;YACrB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACtB;IACH,CAAC;IAED,OAAO,CAAC,GAAM,EAAE,EAAsB;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEjC,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QAED,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;CACF;AArCD,wBAqCC;AAED,MAAa,kBAAyB,SAAQ,GAAS;IACrD,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,GAAG,GAAG,GAAG,CAAC,WAAW,EAAc,CAAC;SACrC;QACD,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,GAAG,CAAC,GAAM;QACR,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,GAAG,GAAG,GAAG,CAAC,WAAW,EAAc,CAAC;SACrC;QAED,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,GAAG,CAAC,GAAM;QACR,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,GAAG,GAAG,GAAG,CAAC,WAAW,EAAc,CAAC;SACrC;QAED,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;CACF;AAvBD,gDAuBC"}
|
|
1
|
+
{"version":3,"file":"map.js","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opensumi/ide-utils",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.23.0",
|
|
4
4
|
"files": [
|
|
5
5
|
"lib",
|
|
6
6
|
"src"
|
|
@@ -25,5 +25,5 @@
|
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"@opensumi/ide-dev-tool": "1.3.1"
|
|
27
27
|
},
|
|
28
|
-
"gitHead": "
|
|
28
|
+
"gitHead": "5d8e4fcf717531446c838d142f7601699fd50d0f"
|
|
29
29
|
}
|
package/src/disposable.ts
CHANGED
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
import { MaybePromise } from './async';
|
|
17
17
|
import { Event, Emitter } from './event';
|
|
18
18
|
|
|
19
|
-
// DisposableStore 是从 vscode lifecycle 中复制而来
|
|
20
19
|
export class DisposableStore implements IDisposable {
|
|
21
20
|
private toDispose = new Set<IDisposable>();
|
|
22
21
|
private _isDisposed = false;
|
|
@@ -375,3 +374,20 @@ export class RefCountedDisposable {
|
|
|
375
374
|
return this;
|
|
376
375
|
}
|
|
377
376
|
}
|
|
377
|
+
|
|
378
|
+
export class DisposableMap extends Map<string, IDisposable> implements IDisposable {
|
|
379
|
+
disposeKey(key: string): void {
|
|
380
|
+
const disposable = this.get(key);
|
|
381
|
+
if (disposable) {
|
|
382
|
+
disposable.dispose();
|
|
383
|
+
}
|
|
384
|
+
this.delete(key);
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
dispose(): void {
|
|
388
|
+
for (const disposable of this.values()) {
|
|
389
|
+
disposable.dispose();
|
|
390
|
+
}
|
|
391
|
+
this.clear();
|
|
392
|
+
}
|
|
393
|
+
}
|
package/src/lru-map.ts
CHANGED
|
@@ -14,6 +14,8 @@ export class LRUMap<K, V> extends Map<K, V> {
|
|
|
14
14
|
private _onDidDelete = new Emitter<{ key: K; value: V }>();
|
|
15
15
|
|
|
16
16
|
public readonly onDidDelete: Event<{ key: K; value: V }> = this._onDidDelete.event;
|
|
17
|
+
public readonly onKeyDidDelete = (key: K, ...args: Parameters<Event<{ key: K; value: V }>>) =>
|
|
18
|
+
Event.filter(this.onDidDelete, (e) => e.key === key)(...args);
|
|
17
19
|
|
|
18
20
|
private head: ILRULinkListNode<K> = { key: undefined, prev: undefined, next: undefined };
|
|
19
21
|
|
|
@@ -23,8 +25,8 @@ export class LRUMap<K, V> extends Map<K, V> {
|
|
|
23
25
|
|
|
24
26
|
constructor(private hardLimit: number, private softLimit: number) {
|
|
25
27
|
super();
|
|
26
|
-
if (hardLimit
|
|
27
|
-
throw new Error('hardLimit
|
|
28
|
+
if (hardLimit < softLimit) {
|
|
29
|
+
throw new Error('hardLimit must be greater equal than softLimit.');
|
|
28
30
|
}
|
|
29
31
|
this.head.next = this.tail;
|
|
30
32
|
this.tail.prev = this.head;
|
package/src/map.ts
CHANGED
|
@@ -869,6 +869,43 @@ export class LRUCache<K, V> extends LinkedMap<K, V> {
|
|
|
869
869
|
}
|
|
870
870
|
}
|
|
871
871
|
|
|
872
|
+
export class DefaultMap<K, V> {
|
|
873
|
+
private map = new Map<K, V>();
|
|
874
|
+
|
|
875
|
+
constructor(private defaultValue: () => V) {}
|
|
876
|
+
|
|
877
|
+
get(key: K): V {
|
|
878
|
+
let value = this.map.get(key);
|
|
879
|
+
|
|
880
|
+
if (!value) {
|
|
881
|
+
value = this.defaultValue();
|
|
882
|
+
this.map.set(key, value);
|
|
883
|
+
}
|
|
884
|
+
|
|
885
|
+
return value;
|
|
886
|
+
}
|
|
887
|
+
|
|
888
|
+
has(key: K): boolean {
|
|
889
|
+
return this.map.has(key);
|
|
890
|
+
}
|
|
891
|
+
|
|
892
|
+
set(key: K, value: V): void {
|
|
893
|
+
this.map.set(key, value);
|
|
894
|
+
}
|
|
895
|
+
|
|
896
|
+
delete(key: K): void {
|
|
897
|
+
this.map.delete(key);
|
|
898
|
+
}
|
|
899
|
+
|
|
900
|
+
clear(): void {
|
|
901
|
+
this.map.clear();
|
|
902
|
+
}
|
|
903
|
+
|
|
904
|
+
forEach(fn: (value: V, key: K) => void): void {
|
|
905
|
+
this.map.forEach(fn);
|
|
906
|
+
}
|
|
907
|
+
}
|
|
908
|
+
|
|
872
909
|
export class SetMap<K, V> {
|
|
873
910
|
private map = new Map<K, Set<V>>();
|
|
874
911
|
|