@opensumi/ide-utils 2.16.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/lib/ansi.d.ts +5 -0
  2. package/lib/ansi.d.ts.map +1 -0
  3. package/lib/ansi.js +14 -0
  4. package/lib/ansi.js.map +1 -0
  5. package/lib/arrays.d.ts +49 -0
  6. package/lib/arrays.d.ts.map +1 -0
  7. package/lib/arrays.js +275 -0
  8. package/lib/arrays.js.map +1 -0
  9. package/lib/async.d.ts +185 -0
  10. package/lib/async.d.ts.map +1 -0
  11. package/lib/async.js +467 -0
  12. package/lib/async.js.map +1 -0
  13. package/lib/buffer.d.ts +35 -0
  14. package/lib/buffer.d.ts.map +1 -0
  15. package/lib/buffer.js +174 -0
  16. package/lib/buffer.js.map +1 -0
  17. package/lib/cache.d.ts +12 -0
  18. package/lib/cache.d.ts.map +1 -0
  19. package/lib/cache.js +37 -0
  20. package/lib/cache.js.map +1 -0
  21. package/lib/cancellation.d.ts +23 -0
  22. package/lib/cancellation.d.ts.map +1 -0
  23. package/lib/cancellation.js +120 -0
  24. package/lib/cancellation.js.map +1 -0
  25. package/lib/charCode.d.ts +406 -0
  26. package/lib/charCode.d.ts.map +1 -0
  27. package/lib/charCode.js +8 -0
  28. package/lib/charCode.js.map +1 -0
  29. package/lib/character-classifier.d.ts +25 -0
  30. package/lib/character-classifier.d.ts.map +1 -0
  31. package/lib/character-classifier.js +59 -0
  32. package/lib/character-classifier.js.map +1 -0
  33. package/lib/const/encoding.d.ts +10 -0
  34. package/lib/const/encoding.d.ts.map +1 -0
  35. package/lib/const/encoding.js +244 -0
  36. package/lib/const/encoding.js.map +1 -0
  37. package/lib/const/index.d.ts +2 -0
  38. package/lib/const/index.d.ts.map +1 -0
  39. package/lib/const/index.js +5 -0
  40. package/lib/const/index.js.map +1 -0
  41. package/lib/date.d.ts +2 -0
  42. package/lib/date.d.ts.map +1 -0
  43. package/lib/date.js +22 -0
  44. package/lib/date.js.map +1 -0
  45. package/lib/decorators.d.ts +11 -0
  46. package/lib/decorators.d.ts.map +1 -0
  47. package/lib/decorators.js +151 -0
  48. package/lib/decorators.js.map +1 -0
  49. package/lib/disposable.d.ts +88 -0
  50. package/lib/disposable.d.ts.map +1 -0
  51. package/lib/disposable.js +316 -0
  52. package/lib/disposable.js.map +1 -0
  53. package/lib/encoding.d.ts +34 -0
  54. package/lib/encoding.d.ts.map +1 -0
  55. package/lib/encoding.js +217 -0
  56. package/lib/encoding.js.map +1 -0
  57. package/lib/errors.d.ts +56 -0
  58. package/lib/errors.d.ts.map +1 -0
  59. package/lib/errors.js +148 -0
  60. package/lib/errors.js.map +1 -0
  61. package/lib/event.d.ts +268 -0
  62. package/lib/event.d.ts.map +1 -0
  63. package/lib/event.js +816 -0
  64. package/lib/event.js.map +1 -0
  65. package/lib/file-uri.d.ts +15 -0
  66. package/lib/file-uri.d.ts.map +1 -0
  67. package/lib/file-uri.js +46 -0
  68. package/lib/file-uri.js.map +1 -0
  69. package/lib/filters.d.ts +47 -0
  70. package/lib/filters.d.ts.map +1 -0
  71. package/lib/filters.js +698 -0
  72. package/lib/filters.js.map +1 -0
  73. package/lib/functional.d.ts +4 -0
  74. package/lib/functional.d.ts.map +1 -0
  75. package/lib/functional.js +45 -0
  76. package/lib/functional.js.map +1 -0
  77. package/lib/glob.d.ts +46 -0
  78. package/lib/glob.d.ts.map +1 -0
  79. package/lib/glob.js +561 -0
  80. package/lib/glob.js.map +1 -0
  81. package/lib/hash.d.ts +38 -0
  82. package/lib/hash.d.ts.map +1 -0
  83. package/lib/hash.js +294 -0
  84. package/lib/hash.js.map +1 -0
  85. package/lib/index.d.ts +41 -0
  86. package/lib/index.d.ts.map +1 -0
  87. package/lib/index.js +45 -0
  88. package/lib/index.js.map +1 -0
  89. package/lib/iterator.d.ts +17 -0
  90. package/lib/iterator.d.ts.map +1 -0
  91. package/lib/iterator.js +24 -0
  92. package/lib/iterator.js.map +1 -0
  93. package/lib/lifecycle.d.ts +17 -0
  94. package/lib/lifecycle.d.ts.map +1 -0
  95. package/lib/lifecycle.js +39 -0
  96. package/lib/lifecycle.js.map +1 -0
  97. package/lib/linked-list.d.ts +18 -0
  98. package/lib/linked-list.d.ts.map +1 -0
  99. package/lib/linked-list.js +138 -0
  100. package/lib/linked-list.js.map +1 -0
  101. package/lib/linked-text.d.ts +13 -0
  102. package/lib/linked-text.d.ts.map +1 -0
  103. package/lib/linked-text.js +50 -0
  104. package/lib/linked-text.js.map +1 -0
  105. package/lib/lru-map.d.ts +41 -0
  106. package/lib/lru-map.d.ts.map +1 -0
  107. package/lib/lru-map.js +120 -0
  108. package/lib/lru-map.js.map +1 -0
  109. package/lib/map.d.ts +124 -0
  110. package/lib/map.d.ts.map +1 -0
  111. package/lib/map.js +819 -0
  112. package/lib/map.js.map +1 -0
  113. package/lib/marshalling.d.ts +7 -0
  114. package/lib/marshalling.d.ts.map +1 -0
  115. package/lib/marshalling.js +59 -0
  116. package/lib/marshalling.js.map +1 -0
  117. package/lib/objects.d.ts +6 -0
  118. package/lib/objects.d.ts.map +1 -0
  119. package/lib/objects.js +103 -0
  120. package/lib/objects.js.map +1 -0
  121. package/lib/os.d.ts +40 -0
  122. package/lib/os.d.ts.map +1 -0
  123. package/lib/os.js +75 -0
  124. package/lib/os.js.map +1 -0
  125. package/lib/path.d.ts +101 -0
  126. package/lib/path.d.ts.map +1 -0
  127. package/lib/path.js +1747 -0
  128. package/lib/path.js.map +1 -0
  129. package/lib/platform.d.ts +48 -0
  130. package/lib/platform.d.ts.map +1 -0
  131. package/lib/platform.js +154 -0
  132. package/lib/platform.js.map +1 -0
  133. package/lib/process.d.ts +5 -0
  134. package/lib/process.d.ts.map +1 -0
  135. package/lib/process.js +23 -0
  136. package/lib/process.js.map +1 -0
  137. package/lib/progress.d.ts +56 -0
  138. package/lib/progress.d.ts.map +1 -0
  139. package/lib/progress.js +27 -0
  140. package/lib/progress.js.map +1 -0
  141. package/lib/promise-util.d.ts +10 -0
  142. package/lib/promise-util.d.ts.map +1 -0
  143. package/lib/promise-util.js +17 -0
  144. package/lib/promise-util.js.map +1 -0
  145. package/lib/sequence.d.ts +20 -0
  146. package/lib/sequence.d.ts.map +1 -0
  147. package/lib/sequence.js +17 -0
  148. package/lib/sequence.js.map +1 -0
  149. package/lib/strings.d.ts +181 -0
  150. package/lib/strings.d.ts.map +1 -0
  151. package/lib/strings.js +858 -0
  152. package/lib/strings.js.map +1 -0
  153. package/lib/types.d.ts +69 -0
  154. package/lib/types.d.ts.map +1 -0
  155. package/lib/types.js +201 -0
  156. package/lib/types.js.map +1 -0
  157. package/lib/uint.d.ts +32 -0
  158. package/lib/uint.d.ts.map +1 -0
  159. package/lib/uint.js +28 -0
  160. package/lib/uint.js.map +1 -0
  161. package/lib/uri.d.ts +94 -0
  162. package/lib/uri.d.ts.map +1 -0
  163. package/lib/uri.js +231 -0
  164. package/lib/uri.js.map +1 -0
  165. package/lib/uuid.d.ts +2 -0
  166. package/lib/uuid.d.ts.map +1 -0
  167. package/lib/uuid.js +10 -0
  168. package/lib/uuid.js.map +1 -0
  169. package/package.json +25 -0
package/lib/buffer.js ADDED
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.writeUInt8 = exports.readUInt8 = exports.writeUInt32LE = exports.readUInt32LE = exports.writeUInt32BE = exports.readUInt32BE = exports.writeUInt16LE = exports.readUInt16LE = exports.BinaryBuffer = void 0;
4
+ const tslib_1 = require("tslib");
5
+ /* ---------------------------------------------------------------------------------------------
6
+ * Copyright (c) Microsoft Corporation. All rights reserved.
7
+ * Licensed under the MIT License. See License.txt in the project root for license information.
8
+ *--------------------------------------------------------------------------------------------*/
9
+ // Some code copied and modified from https://github.com/microsoft/vscode/blob/1.44.0/src/vs/base/common/arrays.ts
10
+ const encoding_1 = require("./encoding");
11
+ const strings = (0, tslib_1.__importStar)(require("./strings"));
12
+ let textEncoder;
13
+ const hasBuffer = typeof Buffer !== 'undefined';
14
+ const hasTextEncoder = typeof TextEncoder !== 'undefined';
15
+ const hasTextDecoder = typeof TextDecoder !== 'undefined';
16
+ class BinaryBuffer {
17
+ constructor(buffer) {
18
+ this.buffer = buffer;
19
+ this.byteLength = this.buffer.byteLength;
20
+ }
21
+ static alloc(byteLength) {
22
+ if (hasBuffer) {
23
+ return new BinaryBuffer(Buffer.allocUnsafe(byteLength));
24
+ }
25
+ else {
26
+ return new BinaryBuffer(new Uint8Array(byteLength));
27
+ }
28
+ }
29
+ static wrap(actual) {
30
+ if (hasBuffer && !Buffer.isBuffer(actual)) {
31
+ // https://nodejs.org/dist/latest-v10.x/docs/api/buffer.html#buffer_class_method_buffer_from_arraybuffer_byteoffset_length
32
+ // Create a zero-copy Buffer wrapper around the ArrayBuffer pointed to by the Uint8Array
33
+ actual = Buffer.from(actual.buffer, actual.byteOffset, actual.byteLength);
34
+ }
35
+ return new BinaryBuffer(actual);
36
+ }
37
+ /**
38
+ * fromString 产生的 BinaryBuffer 的 encoding 都是 utf8
39
+ * @param source source string
40
+ */
41
+ static fromString(source) {
42
+ if (hasBuffer) {
43
+ return new BinaryBuffer(Buffer.from(source));
44
+ }
45
+ else if (hasTextEncoder) {
46
+ if (!textEncoder) {
47
+ textEncoder = new TextEncoder();
48
+ }
49
+ return new BinaryBuffer(textEncoder.encode(source));
50
+ }
51
+ else {
52
+ return new BinaryBuffer(strings.encodeUTF8(source));
53
+ }
54
+ }
55
+ static concat(buffers, totalLength) {
56
+ if (typeof totalLength === 'undefined') {
57
+ totalLength = 0;
58
+ for (let i = 0, len = buffers.length; i < len; i++) {
59
+ totalLength += buffers[i].byteLength;
60
+ }
61
+ }
62
+ const ret = BinaryBuffer.alloc(totalLength);
63
+ let offset = 0;
64
+ for (let i = 0, len = buffers.length; i < len; i++) {
65
+ const element = buffers[i];
66
+ ret.set(element, offset);
67
+ offset += element.byteLength;
68
+ }
69
+ return ret;
70
+ }
71
+ /**
72
+ * 将 BinaryBuffer 转为字符串
73
+ * @param encoding 字节编码,不传默认为 utf8。需要传入 `SUPPORTED_ENCODINGS` 已有的键值。
74
+ */
75
+ toString(encoding) {
76
+ if (hasBuffer) {
77
+ // 可能原生 toString 比 iconv.decode 要快
78
+ if (encoding === undefined || encoding === 'utf8') {
79
+ return this.buffer.toString();
80
+ }
81
+ return (0, encoding_1.iconvDecode)(this.buffer, encoding);
82
+ }
83
+ else if (hasTextDecoder) {
84
+ encoding = (0, encoding_1.toCanonicalName)(encoding || encoding_1.UTF8);
85
+ return new TextDecoder(encoding).decode(this.buffer);
86
+ }
87
+ else {
88
+ return strings.decodeUTF8(this.buffer);
89
+ }
90
+ }
91
+ slice(start, end) {
92
+ // IMPORTANT: use subarray instead of slice because TypedArray#slice
93
+ // creates shallow copy and NodeBuffer#slice doesn't. The use of subarray
94
+ // ensures the same, performant, behaviour.
95
+ return new BinaryBuffer(this.buffer.subarray(start /* bad lib.d.ts*/, end));
96
+ }
97
+ set(array, offset) {
98
+ if (array instanceof BinaryBuffer) {
99
+ this.buffer.set(array.buffer, offset);
100
+ }
101
+ else {
102
+ this.buffer.set(array, offset);
103
+ }
104
+ }
105
+ readUInt32BE(offset) {
106
+ return readUInt32BE(this.buffer, offset);
107
+ }
108
+ writeUInt32BE(value, offset) {
109
+ writeUInt32BE(this.buffer, value, offset);
110
+ }
111
+ readUInt32LE(offset) {
112
+ return readUInt32LE(this.buffer, offset);
113
+ }
114
+ writeUInt32LE(value, offset) {
115
+ writeUInt32LE(this.buffer, value, offset);
116
+ }
117
+ readUInt8(offset) {
118
+ return readUInt8(this.buffer, offset);
119
+ }
120
+ writeUInt8(value, offset) {
121
+ writeUInt8(this.buffer, value, offset);
122
+ }
123
+ }
124
+ exports.BinaryBuffer = BinaryBuffer;
125
+ function readUInt16LE(source, offset) {
126
+ return ((source[offset + 0] << 0) >>> 0) | ((source[offset + 1] << 8) >>> 0);
127
+ }
128
+ exports.readUInt16LE = readUInt16LE;
129
+ function writeUInt16LE(destination, value, offset) {
130
+ destination[offset + 0] = value & 0b11111111;
131
+ value = value >>> 8;
132
+ destination[offset + 1] = value & 0b11111111;
133
+ }
134
+ exports.writeUInt16LE = writeUInt16LE;
135
+ function readUInt32BE(source, offset) {
136
+ return source[offset] * 2 ** 24 + source[offset + 1] * 2 ** 16 + source[offset + 2] * 2 ** 8 + source[offset + 3];
137
+ }
138
+ exports.readUInt32BE = readUInt32BE;
139
+ function writeUInt32BE(destination, value, offset) {
140
+ destination[offset + 3] = value;
141
+ value = value >>> 8;
142
+ destination[offset + 2] = value;
143
+ value = value >>> 8;
144
+ destination[offset + 1] = value;
145
+ value = value >>> 8;
146
+ destination[offset] = value;
147
+ }
148
+ exports.writeUInt32BE = writeUInt32BE;
149
+ function readUInt32LE(source, offset) {
150
+ return (((source[offset + 0] << 0) >>> 0) |
151
+ ((source[offset + 1] << 8) >>> 0) |
152
+ ((source[offset + 2] << 16) >>> 0) |
153
+ ((source[offset + 3] << 24) >>> 0));
154
+ }
155
+ exports.readUInt32LE = readUInt32LE;
156
+ function writeUInt32LE(destination, value, offset) {
157
+ destination[offset + 0] = value & 0b11111111;
158
+ value = value >>> 8;
159
+ destination[offset + 1] = value & 0b11111111;
160
+ value = value >>> 8;
161
+ destination[offset + 2] = value & 0b11111111;
162
+ value = value >>> 8;
163
+ destination[offset + 3] = value & 0b11111111;
164
+ }
165
+ exports.writeUInt32LE = writeUInt32LE;
166
+ function readUInt8(source, offset) {
167
+ return source[offset];
168
+ }
169
+ exports.readUInt8 = readUInt8;
170
+ function writeUInt8(destination, value, offset) {
171
+ destination[offset] = value;
172
+ }
173
+ exports.writeUInt8 = writeUInt8;
174
+ //# sourceMappingURL=buffer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buffer.js","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"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"}
package/lib/cache.d.ts ADDED
@@ -0,0 +1,12 @@
1
+ export declare class Cache<T> {
2
+ private readonly id;
3
+ private static readonly enableDebugLogging;
4
+ private readonly _data;
5
+ private _idPool;
6
+ constructor(id: string);
7
+ add(item: readonly T[]): number;
8
+ get(pid: number, id: number): T | undefined;
9
+ delete(id: number): void;
10
+ private logDebugInfo;
11
+ }
12
+ //# sourceMappingURL=cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAKA,qBAAa,KAAK,CAAC,CAAC;IAMN,OAAO,CAAC,QAAQ,CAAC,EAAE;IAL/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAEnD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;IACzD,OAAO,CAAC,OAAO,CAAK;gBAES,EAAE,EAAE,MAAM;IAEvC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,GAAG,MAAM;IAO/B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAI3C,MAAM,CAAC,EAAE,EAAE,MAAM;IAKjB,OAAO,CAAC,YAAY;CAOrB"}
package/lib/cache.js ADDED
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /* ---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Licensed under the MIT License. See License.txt in the project root for license information.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.Cache = void 0;
8
+ class Cache {
9
+ constructor(id) {
10
+ this.id = id;
11
+ this._data = new Map();
12
+ this._idPool = 1;
13
+ }
14
+ add(item) {
15
+ const id = this._idPool++;
16
+ this._data.set(id, item);
17
+ this.logDebugInfo();
18
+ return id;
19
+ }
20
+ get(pid, id) {
21
+ return this._data.has(pid) ? this._data.get(pid)[id] : undefined;
22
+ }
23
+ delete(id) {
24
+ this._data.delete(id);
25
+ this.logDebugInfo();
26
+ }
27
+ logDebugInfo() {
28
+ if (!Cache.enableDebugLogging) {
29
+ return;
30
+ }
31
+ // eslint-disable-next-line no-console
32
+ console.log(`${this.id} cache size — ${this._data.size}`);
33
+ }
34
+ }
35
+ exports.Cache = Cache;
36
+ Cache.enableDebugLogging = false;
37
+ //# sourceMappingURL=cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AAEhG,MAAa,KAAK;IAMhB,YAA6B,EAAU;QAAV,OAAE,GAAF,EAAE,CAAQ;QAHtB,UAAK,GAAG,IAAI,GAAG,EAAwB,CAAC;QACjD,YAAO,GAAG,CAAC,CAAC;IAEsB,CAAC;IAE3C,GAAG,CAAC,IAAkB;QACpB,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,EAAU;QACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,EAAU;QACf,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE;YAC7B,OAAO;SACR;QACD,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,iBAAiB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;;AA9BH,sBA+BC;AA9ByB,wBAAkB,GAAG,KAAK,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { Event } from './event';
2
+ export interface CancellationToken {
3
+ readonly isCancellationRequested: boolean;
4
+ /**
5
+ * An event emitted when cancellation is requested
6
+ * @event
7
+ */
8
+ readonly onCancellationRequested: Event<any>;
9
+ }
10
+ export declare namespace CancellationToken {
11
+ function isCancellationToken(thing: any): thing is CancellationToken;
12
+ const None: CancellationToken;
13
+ const Cancelled: CancellationToken;
14
+ }
15
+ export declare class CancellationTokenSource {
16
+ private _token?;
17
+ private _parentListener?;
18
+ constructor(parent?: CancellationToken);
19
+ get token(): CancellationToken;
20
+ cancel(): void;
21
+ dispose(cancel?: boolean): void;
22
+ }
23
+ //# sourceMappingURL=cancellation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancellation.d.ts","sourceRoot":"","sources":["../src/cancellation.ts"],"names":[],"mappings":"AAOA,OAAO,EAAW,KAAK,EAAE,MAAM,SAAS,CAAC;AAEzC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,uBAAuB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CAC9C;AAWD,yBAAiB,iBAAiB,CAAC;IACjC,SAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,iBAAiB,CAc1E;IAEM,MAAM,IAAI,EAAE,iBAGjB,CAAC;IAEI,MAAM,SAAS,EAAE,iBAGtB,CAAC;CACJ;AAsCD,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAC,CAAgC;IAC/C,OAAO,CAAC,eAAe,CAAC,CAA0B;gBAEtC,MAAM,CAAC,EAAE,iBAAiB;IAItC,IAAI,KAAK,IAAI,iBAAiB,CAO7B;IAED,MAAM,IAAI,IAAI;IAYd,OAAO,CAAC,MAAM,UAAQ,GAAG,IAAI;CAe9B"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ /* ---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Licensed under the MIT License. See License.txt in the project root for license information.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ // Some code copied and modified from https://github.com/microsoft/vscode/blob/1.44.0/src/vs/base/common/cancellation.ts
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.CancellationTokenSource = exports.CancellationToken = void 0;
9
+ const event_1 = require("./event");
10
+ const shortcutEvent = Object.freeze(function (callback, context) {
11
+ const handle = setTimeout(callback.bind(context), 0);
12
+ return {
13
+ dispose() {
14
+ clearTimeout(handle);
15
+ },
16
+ };
17
+ });
18
+ var CancellationToken;
19
+ (function (CancellationToken) {
20
+ function isCancellationToken(thing) {
21
+ if (thing === CancellationToken.None || thing === CancellationToken.Cancelled) {
22
+ return true;
23
+ }
24
+ if (thing instanceof MutableToken) {
25
+ return true;
26
+ }
27
+ if (!thing || typeof thing !== 'object') {
28
+ return false;
29
+ }
30
+ return (typeof thing.isCancellationRequested === 'boolean' &&
31
+ typeof thing.onCancellationRequested === 'function');
32
+ }
33
+ CancellationToken.isCancellationToken = isCancellationToken;
34
+ CancellationToken.None = Object.freeze({
35
+ isCancellationRequested: false,
36
+ onCancellationRequested: event_1.Event.None,
37
+ });
38
+ CancellationToken.Cancelled = Object.freeze({
39
+ isCancellationRequested: true,
40
+ onCancellationRequested: shortcutEvent,
41
+ });
42
+ })(CancellationToken = exports.CancellationToken || (exports.CancellationToken = {}));
43
+ class MutableToken {
44
+ constructor() {
45
+ this._isCancelled = false;
46
+ this._emitter = null;
47
+ }
48
+ cancel() {
49
+ if (!this._isCancelled) {
50
+ this._isCancelled = true;
51
+ if (this._emitter) {
52
+ this._emitter.fire(undefined);
53
+ this.dispose();
54
+ }
55
+ }
56
+ }
57
+ get isCancellationRequested() {
58
+ return this._isCancelled;
59
+ }
60
+ get onCancellationRequested() {
61
+ if (this._isCancelled) {
62
+ return shortcutEvent;
63
+ }
64
+ if (!this._emitter) {
65
+ this._emitter = new event_1.Emitter();
66
+ }
67
+ return this._emitter.event;
68
+ }
69
+ dispose() {
70
+ if (this._emitter) {
71
+ this._emitter.dispose();
72
+ this._emitter = null;
73
+ }
74
+ }
75
+ }
76
+ class CancellationTokenSource {
77
+ constructor(parent) {
78
+ this._token = undefined;
79
+ this._parentListener = undefined;
80
+ this._parentListener = parent && parent.onCancellationRequested(this.cancel, this);
81
+ }
82
+ get token() {
83
+ if (!this._token) {
84
+ // be lazy and create the token only when
85
+ // actually needed
86
+ this._token = new MutableToken();
87
+ }
88
+ return this._token;
89
+ }
90
+ cancel() {
91
+ if (!this._token) {
92
+ // save an object by returning the default
93
+ // cancelled token when cancellation happens
94
+ // before someone asks for the token
95
+ this._token = CancellationToken.Cancelled;
96
+ }
97
+ else if (this._token instanceof MutableToken) {
98
+ // actually cancel
99
+ this._token.cancel();
100
+ }
101
+ }
102
+ dispose(cancel = false) {
103
+ if (cancel) {
104
+ this.cancel();
105
+ }
106
+ if (this._parentListener) {
107
+ this._parentListener.dispose();
108
+ }
109
+ if (!this._token) {
110
+ // ensure to initialize with an empty token if we had none
111
+ this._token = CancellationToken.None;
112
+ }
113
+ else if (this._token instanceof MutableToken) {
114
+ // actually dispose
115
+ this._token.dispose();
116
+ }
117
+ }
118
+ }
119
+ exports.CancellationTokenSource = CancellationTokenSource;
120
+ //# sourceMappingURL=cancellation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancellation.js","sourceRoot":"","sources":["../src/cancellation.ts"],"names":[],"mappings":"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"}