@opensumi/ide-core-common 2.17.8 → 2.18.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.
Files changed (296) hide show
  1. package/lib/application-error.d.ts.map +1 -1
  2. package/lib/application-error.js +6 -0
  3. package/lib/application-error.js.map +1 -1
  4. package/lib/command.d.ts +1 -2
  5. package/lib/command.d.ts.map +1 -1
  6. package/lib/command.js +4 -4
  7. package/lib/command.js.map +1 -1
  8. package/lib/{utils/comparers.d.ts → comparers.d.ts} +1 -1
  9. package/lib/comparers.d.ts.map +1 -0
  10. package/lib/{utils/comparers.js → comparers.js} +5 -5
  11. package/lib/comparers.js.map +1 -0
  12. package/lib/const/application.d.ts +1 -0
  13. package/lib/const/application.d.ts.map +1 -1
  14. package/lib/const/application.js +3 -1
  15. package/lib/const/application.js.map +1 -1
  16. package/lib/const/index.d.ts +1 -1
  17. package/lib/const/index.d.ts.map +1 -1
  18. package/lib/const/index.js +1 -1
  19. package/lib/const/index.js.map +1 -1
  20. package/lib/crypto.d.ts +7 -0
  21. package/lib/{cryptr.d.ts.map → crypto.d.ts.map} +1 -1
  22. package/lib/crypto.js +6 -0
  23. package/lib/crypto.js.map +1 -0
  24. package/lib/electron.d.ts +2 -2
  25. package/lib/electron.d.ts.map +1 -1
  26. package/lib/electron.js.map +1 -1
  27. package/lib/event-bus/event-bus-types.d.ts +3 -4
  28. package/lib/event-bus/event-bus-types.d.ts.map +1 -1
  29. package/lib/event-bus/event-bus.d.ts +3 -3
  30. package/lib/event-bus/event-bus.d.ts.map +1 -1
  31. package/lib/event-bus/event-bus.js +3 -3
  32. package/lib/event-bus/event-bus.js.map +1 -1
  33. package/lib/event-bus/event-decorator.d.ts +1 -1
  34. package/lib/event-bus/event-decorator.d.ts.map +1 -1
  35. package/lib/event-bus/event-decorator.js +2 -2
  36. package/lib/event-bus/event-decorator.js.map +1 -1
  37. package/lib/hash-calculate/hash-calculate.d.ts.map +1 -1
  38. package/lib/hash-calculate/hash-calculate.js +2 -2
  39. package/lib/hash-calculate/hash-calculate.js.map +1 -1
  40. package/lib/index.d.ts +4 -18
  41. package/lib/index.d.ts.map +1 -1
  42. package/lib/index.js +4 -18
  43. package/lib/index.js.map +1 -1
  44. package/lib/keyboard/keyboard-layout-provider.d.ts +1 -1
  45. package/lib/keyboard/keyboard-layout-provider.d.ts.map +1 -1
  46. package/lib/keyboard/keymap.js +4 -4
  47. package/lib/keyboard/keymap.js.map +1 -1
  48. package/lib/localize.d.ts.map +1 -1
  49. package/lib/localize.js +7 -7
  50. package/lib/localize.js.map +1 -1
  51. package/lib/log.d.ts +1 -1
  52. package/lib/log.d.ts.map +1 -1
  53. package/lib/{utils/markdown.d.ts → markdown.d.ts} +1 -1
  54. package/lib/markdown.d.ts.map +1 -0
  55. package/lib/{utils/markdown.js → markdown.js} +0 -0
  56. package/lib/markdown.js.map +1 -0
  57. package/lib/menu.d.ts +1 -1
  58. package/lib/menu.d.ts.map +1 -1
  59. package/lib/menu.js.map +1 -1
  60. package/lib/network.d.ts +2 -1
  61. package/lib/network.d.ts.map +1 -1
  62. package/lib/network.js +19 -18
  63. package/lib/network.js.map +1 -1
  64. package/lib/problem-matcher.d.ts +1 -3
  65. package/lib/problem-matcher.d.ts.map +1 -1
  66. package/lib/problem-matcher.js +5 -6
  67. package/lib/problem-matcher.js.map +1 -1
  68. package/lib/problem-pattern.d.ts +1 -2
  69. package/lib/problem-pattern.d.ts.map +1 -1
  70. package/lib/problem-pattern.js +9 -10
  71. package/lib/problem-pattern.js.map +1 -1
  72. package/lib/reference.d.ts +1 -3
  73. package/lib/reference.d.ts.map +1 -1
  74. package/lib/reference.js +4 -5
  75. package/lib/reference.js.map +1 -1
  76. package/lib/reporter.d.ts +1 -1
  77. package/lib/reporter.d.ts.map +1 -1
  78. package/lib/storage.d.ts +1 -4
  79. package/lib/storage.d.ts.map +1 -1
  80. package/lib/storage.js +11 -11
  81. package/lib/storage.js.map +1 -1
  82. package/lib/task-definition.d.ts +1 -1
  83. package/lib/task-definition.d.ts.map +1 -1
  84. package/lib/task-definition.js +6 -6
  85. package/lib/task-definition.js.map +1 -1
  86. package/lib/types/application.d.ts +4 -4
  87. package/lib/types/application.d.ts.map +1 -1
  88. package/lib/types/authentication.d.ts +1 -2
  89. package/lib/types/authentication.d.ts.map +1 -1
  90. package/lib/types/authentication.js.map +1 -1
  91. package/lib/types/common.d.ts +2 -2
  92. package/lib/types/common.d.ts.map +1 -1
  93. package/lib/types/extension.d.ts +1 -1
  94. package/lib/types/extension.d.ts.map +1 -1
  95. package/lib/types/extension.js.map +1 -1
  96. package/lib/types/file-watch.d.ts +1 -1
  97. package/lib/types/file-watch.d.ts.map +1 -1
  98. package/lib/types/file-watch.js +2 -2
  99. package/lib/types/file-watch.js.map +1 -1
  100. package/lib/types/file.d.ts +1 -1
  101. package/lib/types/file.d.ts.map +1 -1
  102. package/lib/types/index.d.ts +1 -0
  103. package/lib/types/index.d.ts.map +1 -1
  104. package/lib/types/index.js +1 -0
  105. package/lib/types/index.js.map +1 -1
  106. package/lib/types/markdown.d.ts +2 -1
  107. package/lib/types/markdown.d.ts.map +1 -1
  108. package/lib/types/markers/markers-manager.d.ts +2 -2
  109. package/lib/types/markers/markers-manager.d.ts.map +1 -1
  110. package/lib/types/markers/markers-manager.js +25 -23
  111. package/lib/types/markers/markers-manager.js.map +1 -1
  112. package/lib/types/markers/markers.js +2 -2
  113. package/lib/types/markers/markers.js.map +1 -1
  114. package/lib/utils/ipc.d.ts.map +1 -1
  115. package/lib/utils/ipc.js +7 -8
  116. package/lib/utils/ipc.js.map +1 -1
  117. package/package.json +4 -7
  118. package/lib/arrays.d.ts +0 -134
  119. package/lib/arrays.d.ts.map +0 -1
  120. package/lib/arrays.js +0 -545
  121. package/lib/arrays.js.map +0 -1
  122. package/lib/async.d.ts +0 -185
  123. package/lib/async.d.ts.map +0 -1
  124. package/lib/async.js +0 -469
  125. package/lib/async.js.map +0 -1
  126. package/lib/cache.d.ts +0 -12
  127. package/lib/cache.d.ts.map +0 -1
  128. package/lib/cache.js +0 -37
  129. package/lib/cache.js.map +0 -1
  130. package/lib/cancellation.d.ts +0 -23
  131. package/lib/cancellation.d.ts.map +0 -1
  132. package/lib/cancellation.js +0 -120
  133. package/lib/cancellation.js.map +0 -1
  134. package/lib/charCode.d.ts +0 -406
  135. package/lib/charCode.d.ts.map +0 -1
  136. package/lib/charCode.js +0 -8
  137. package/lib/charCode.js.map +0 -1
  138. package/lib/character-classifier.d.ts +0 -25
  139. package/lib/character-classifier.d.ts.map +0 -1
  140. package/lib/character-classifier.js +0 -59
  141. package/lib/character-classifier.js.map +0 -1
  142. package/lib/const/encodings.d.ts +0 -10
  143. package/lib/const/encodings.d.ts.map +0 -1
  144. package/lib/const/encodings.js +0 -244
  145. package/lib/const/encodings.js.map +0 -1
  146. package/lib/cryptr.d.ts +0 -7
  147. package/lib/cryptr.js +0 -6
  148. package/lib/cryptr.js.map +0 -1
  149. package/lib/date.d.ts +0 -2
  150. package/lib/date.d.ts.map +0 -1
  151. package/lib/date.js +0 -22
  152. package/lib/date.js.map +0 -1
  153. package/lib/disposable.d.ts +0 -88
  154. package/lib/disposable.d.ts.map +0 -1
  155. package/lib/disposable.js +0 -316
  156. package/lib/disposable.js.map +0 -1
  157. package/lib/encoding/index.d.ts +0 -34
  158. package/lib/encoding/index.d.ts.map +0 -1
  159. package/lib/encoding/index.js +0 -219
  160. package/lib/encoding/index.js.map +0 -1
  161. package/lib/errors.d.ts +0 -56
  162. package/lib/errors.d.ts.map +0 -1
  163. package/lib/errors.js +0 -148
  164. package/lib/errors.js.map +0 -1
  165. package/lib/event.d.ts +0 -268
  166. package/lib/event.d.ts.map +0 -1
  167. package/lib/event.js +0 -816
  168. package/lib/event.js.map +0 -1
  169. package/lib/filters.d.ts +0 -47
  170. package/lib/filters.d.ts.map +0 -1
  171. package/lib/filters.js +0 -699
  172. package/lib/filters.js.map +0 -1
  173. package/lib/functional.d.ts +0 -4
  174. package/lib/functional.d.ts.map +0 -1
  175. package/lib/functional.js +0 -45
  176. package/lib/functional.js.map +0 -1
  177. package/lib/iterator.d.ts +0 -17
  178. package/lib/iterator.d.ts.map +0 -1
  179. package/lib/iterator.js +0 -24
  180. package/lib/iterator.js.map +0 -1
  181. package/lib/lifecycle.d.ts +0 -17
  182. package/lib/lifecycle.d.ts.map +0 -1
  183. package/lib/lifecycle.js +0 -39
  184. package/lib/lifecycle.js.map +0 -1
  185. package/lib/linked-list.d.ts +0 -18
  186. package/lib/linked-list.d.ts.map +0 -1
  187. package/lib/linked-list.js +0 -138
  188. package/lib/linked-list.js.map +0 -1
  189. package/lib/linkedText.d.ts +0 -13
  190. package/lib/linkedText.d.ts.map +0 -1
  191. package/lib/linkedText.js +0 -50
  192. package/lib/linkedText.js.map +0 -1
  193. package/lib/map.d.ts +0 -124
  194. package/lib/map.d.ts.map +0 -1
  195. package/lib/map.js +0 -819
  196. package/lib/map.js.map +0 -1
  197. package/lib/path.d.ts +0 -92
  198. package/lib/path.d.ts.map +0 -1
  199. package/lib/path.js +0 -1695
  200. package/lib/path.js.map +0 -1
  201. package/lib/platform.d.ts +0 -48
  202. package/lib/platform.d.ts.map +0 -1
  203. package/lib/platform.js +0 -153
  204. package/lib/platform.js.map +0 -1
  205. package/lib/process.d.ts +0 -5
  206. package/lib/process.d.ts.map +0 -1
  207. package/lib/process.js +0 -23
  208. package/lib/process.js.map +0 -1
  209. package/lib/progress.d.ts +0 -56
  210. package/lib/progress.d.ts.map +0 -1
  211. package/lib/progress.js +0 -27
  212. package/lib/progress.js.map +0 -1
  213. package/lib/sequence.d.ts +0 -20
  214. package/lib/sequence.d.ts.map +0 -1
  215. package/lib/sequence.js +0 -17
  216. package/lib/sequence.js.map +0 -1
  217. package/lib/uint.d.ts +0 -32
  218. package/lib/uint.d.ts.map +0 -1
  219. package/lib/uint.js +0 -28
  220. package/lib/uint.js.map +0 -1
  221. package/lib/uri.d.ts +0 -94
  222. package/lib/uri.d.ts.map +0 -1
  223. package/lib/uri.js +0 -231
  224. package/lib/uri.js.map +0 -1
  225. package/lib/utils/ansi.d.ts +0 -5
  226. package/lib/utils/ansi.d.ts.map +0 -1
  227. package/lib/utils/ansi.js +0 -14
  228. package/lib/utils/ansi.js.map +0 -1
  229. package/lib/utils/arrays.d.ts +0 -66
  230. package/lib/utils/arrays.d.ts.map +0 -1
  231. package/lib/utils/arrays.js +0 -260
  232. package/lib/utils/arrays.js.map +0 -1
  233. package/lib/utils/buffer.d.ts +0 -35
  234. package/lib/utils/buffer.d.ts.map +0 -1
  235. package/lib/utils/buffer.js +0 -174
  236. package/lib/utils/buffer.js.map +0 -1
  237. package/lib/utils/comparers.d.ts.map +0 -1
  238. package/lib/utils/comparers.js.map +0 -1
  239. package/lib/utils/decorators.d.ts +0 -11
  240. package/lib/utils/decorators.d.ts.map +0 -1
  241. package/lib/utils/decorators.js +0 -151
  242. package/lib/utils/decorators.js.map +0 -1
  243. package/lib/utils/file-uri.d.ts +0 -15
  244. package/lib/utils/file-uri.d.ts.map +0 -1
  245. package/lib/utils/file-uri.js +0 -46
  246. package/lib/utils/file-uri.js.map +0 -1
  247. package/lib/utils/glob.d.ts +0 -46
  248. package/lib/utils/glob.d.ts.map +0 -1
  249. package/lib/utils/glob.js +0 -556
  250. package/lib/utils/glob.js.map +0 -1
  251. package/lib/utils/hash.d.ts +0 -38
  252. package/lib/utils/hash.d.ts.map +0 -1
  253. package/lib/utils/hash.js +0 -294
  254. package/lib/utils/hash.js.map +0 -1
  255. package/lib/utils/index.d.ts +0 -15
  256. package/lib/utils/index.d.ts.map +0 -1
  257. package/lib/utils/index.js +0 -18
  258. package/lib/utils/index.js.map +0 -1
  259. package/lib/utils/json.d.ts +0 -76
  260. package/lib/utils/json.d.ts.map +0 -1
  261. package/lib/utils/json.js +0 -188
  262. package/lib/utils/json.js.map +0 -1
  263. package/lib/utils/markdown.d.ts.map +0 -1
  264. package/lib/utils/markdown.js.map +0 -1
  265. package/lib/utils/marshalling.d.ts +0 -7
  266. package/lib/utils/marshalling.d.ts.map +0 -1
  267. package/lib/utils/marshalling.js +0 -59
  268. package/lib/utils/marshalling.js.map +0 -1
  269. package/lib/utils/objects.d.ts +0 -6
  270. package/lib/utils/objects.d.ts.map +0 -1
  271. package/lib/utils/objects.js +0 -103
  272. package/lib/utils/objects.js.map +0 -1
  273. package/lib/utils/os.d.ts +0 -49
  274. package/lib/utils/os.d.ts.map +0 -1
  275. package/lib/utils/os.js +0 -98
  276. package/lib/utils/os.js.map +0 -1
  277. package/lib/utils/paths.d.ts +0 -35
  278. package/lib/utils/paths.d.ts.map +0 -1
  279. package/lib/utils/paths.js +0 -313
  280. package/lib/utils/paths.js.map +0 -1
  281. package/lib/utils/promise-util.d.ts +0 -10
  282. package/lib/utils/promise-util.d.ts.map +0 -1
  283. package/lib/utils/promise-util.js +0 -17
  284. package/lib/utils/promise-util.js.map +0 -1
  285. package/lib/utils/strings.d.ts +0 -181
  286. package/lib/utils/strings.d.ts.map +0 -1
  287. package/lib/utils/strings.js +0 -858
  288. package/lib/utils/strings.js.map +0 -1
  289. package/lib/utils/types.d.ts +0 -69
  290. package/lib/utils/types.d.ts.map +0 -1
  291. package/lib/utils/types.js +0 -201
  292. package/lib/utils/types.js.map +0 -1
  293. package/lib/uuid.d.ts +0 -2
  294. package/lib/uuid.d.ts.map +0 -1
  295. package/lib/uuid.js +0 -10
  296. package/lib/uuid.js.map +0 -1
package/lib/utils/glob.js DELETED
@@ -1,556 +0,0 @@
1
- "use strict";
2
- /* eslint-disable @typescript-eslint/consistent-type-assertions */
3
- /* eslint-disable brace-style */
4
- /* eslint-disable no-case-declarations */
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/glob.ts
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.getPathTerms = exports.getBasenameTerms = exports.isRelativePattern = exports.hasSiblingFn = exports.hasSiblingPromiseFn = exports.parse = exports.match = exports.splitGlobAware = exports.getEmptyExpression = void 0;
12
- const tslib_1 = require("tslib");
13
- const map_1 = require("../map");
14
- const paths = tslib_1.__importStar(require("./paths"));
15
- const strings = tslib_1.__importStar(require("./strings"));
16
- function getEmptyExpression() {
17
- return Object.create(null);
18
- }
19
- exports.getEmptyExpression = getEmptyExpression;
20
- const GLOBSTAR = '**';
21
- const GLOB_SPLIT = '/';
22
- const PATH_REGEX = '[/\\\\]'; // any slash or backslash
23
- const NO_PATH_REGEX = '[^/\\\\]'; // any non-slash and non-backslash
24
- const ALL_FORWARD_SLASHES = /\//g;
25
- function starsToRegExp(starCount) {
26
- switch (starCount) {
27
- case 0:
28
- return '';
29
- case 1:
30
- return `${NO_PATH_REGEX}*?`; // 1 star matches any number of characters except path separator (/ and \) - non greedy (?)
31
- default:
32
- // Matches: (Path Sep OR Path Val followed by Path Sep OR Path Sep followed by Path Val) 0-many times
33
- // Group is non capturing because we don't need to capture at all (?:...)
34
- // Overall we use non-greedy matching because it could be that we match too much
35
- return `(?:${PATH_REGEX}|${NO_PATH_REGEX}+${PATH_REGEX}|${PATH_REGEX}${NO_PATH_REGEX}+)*?`;
36
- }
37
- }
38
- function splitGlobAware(pattern, splitChar) {
39
- if (!pattern) {
40
- return [];
41
- }
42
- const segments = [];
43
- let inBraces = false;
44
- let inBrackets = false;
45
- let curVal = '';
46
- for (const char of pattern) {
47
- switch (char) {
48
- case splitChar:
49
- if (!inBraces && !inBrackets) {
50
- segments.push(curVal);
51
- curVal = '';
52
- continue;
53
- }
54
- break;
55
- case '{':
56
- inBraces = true;
57
- break;
58
- case '}':
59
- inBraces = false;
60
- break;
61
- case '[':
62
- inBrackets = true;
63
- break;
64
- case ']':
65
- inBrackets = false;
66
- break;
67
- }
68
- curVal += char;
69
- }
70
- // Tail
71
- if (curVal) {
72
- segments.push(curVal);
73
- }
74
- return segments;
75
- }
76
- exports.splitGlobAware = splitGlobAware;
77
- function parseRegExp(pattern) {
78
- if (!pattern) {
79
- return '';
80
- }
81
- let regEx = '';
82
- // Split up into segments for each slash found
83
- const segments = splitGlobAware(pattern, GLOB_SPLIT);
84
- // Special case where we only have globstars
85
- if (segments.every((s) => s === GLOBSTAR)) {
86
- regEx = '.*';
87
- }
88
- // Build regex over segments
89
- else {
90
- let previousSegmentWasGlobStar = false;
91
- segments.forEach((segment, index) => {
92
- // Globstar is special
93
- if (segment === GLOBSTAR) {
94
- // if we have more than one globstar after another, just ignore it
95
- if (!previousSegmentWasGlobStar) {
96
- regEx += starsToRegExp(2);
97
- previousSegmentWasGlobStar = true;
98
- }
99
- return;
100
- }
101
- // States
102
- let inBraces = false;
103
- let braceVal = '';
104
- let inBrackets = false;
105
- let bracketVal = '';
106
- for (const char of segment) {
107
- // Support brace expansion
108
- if (char !== '}' && inBraces) {
109
- braceVal += char;
110
- continue;
111
- }
112
- // Support brackets
113
- if (inBrackets &&
114
- (char !== ']' || !bracketVal) /* ] is literally only allowed as first character in brackets to match it */) {
115
- let res;
116
- // range operator
117
- if (char === '-') {
118
- res = char;
119
- }
120
- // negation operator (only valid on first index in bracket)
121
- else if ((char === '^' || char === '!') && !bracketVal) {
122
- res = '^';
123
- }
124
- // glob split matching is not allowed within character ranges
125
- // see http://man7.org/linux/man-pages/man7/glob.7.html
126
- else if (char === GLOB_SPLIT) {
127
- res = '';
128
- }
129
- // anything else gets escaped
130
- else {
131
- res = strings.escapeRegExpCharacters(char);
132
- }
133
- bracketVal += res;
134
- continue;
135
- }
136
- switch (char) {
137
- case '{':
138
- inBraces = true;
139
- continue;
140
- case '[':
141
- inBrackets = true;
142
- continue;
143
- case '}':
144
- const choices = splitGlobAware(braceVal, ',');
145
- // Converts {foo,bar} => [foo|bar]
146
- const braceRegExp = `(?:${choices.map((c) => parseRegExp(c)).join('|')})`;
147
- regEx += braceRegExp;
148
- inBraces = false;
149
- braceVal = '';
150
- break;
151
- case ']':
152
- regEx += '[' + bracketVal + ']';
153
- inBrackets = false;
154
- bracketVal = '';
155
- break;
156
- case '?':
157
- regEx += NO_PATH_REGEX; // 1 ? matches any single character except path separator (/ and \)
158
- continue;
159
- case '*':
160
- regEx += starsToRegExp(1);
161
- continue;
162
- default:
163
- regEx += strings.escapeRegExpCharacters(char);
164
- }
165
- }
166
- // Tail: Add the slash we had split on if there is more to come and the remaining pattern is not a globstar
167
- // For example if pattern: some/**/*.js we want the "/" after some to be included in the RegEx to prevent
168
- // a folder called "something" to match as well.
169
- // However, if pattern: some/**, we tolerate that we also match on "something" because our globstar behaviour
170
- // is to match 0-N segments.
171
- if (index < segments.length - 1 && (segments[index + 1] !== GLOBSTAR || index + 2 < segments.length)) {
172
- regEx += PATH_REGEX;
173
- }
174
- // reset state
175
- previousSegmentWasGlobStar = false;
176
- });
177
- }
178
- return regEx;
179
- }
180
- // regexes to check for trival glob patterns that just check for String#endsWith
181
- const T1 = /^\*\*\/\*\.[\w\.-]+$/; // **/*.something
182
- const T2 = /^\*\*\/([\w\.-]+)\/?$/; // **/something
183
- const T3 = /^{\*\*\/[\*\.]?[\w\.-]+\/?(,\*\*\/[\*\.]?[\w\.-]+\/?)*}$/; // {**/*.something,**/*.else} or {**/package.json,**/project.json}
184
- const T3_2 = /^{\*\*\/[\*\.]?[\w\.-]+(\/(\*\*)?)?(,\*\*\/[\*\.]?[\w\.-]+(\/(\*\*)?)?)*}$/; // Like T3, with optional trailing /**
185
- const T4 = /^\*\*((\/[\w\.-]+)+)\/?$/; // **/something/else
186
- const T5 = /^([\w\.-]+(\/[\w\.-]+)*)\/?$/; // something/else
187
- const CACHE = new map_1.LRUCache(10000); // bounded to 10000 elements
188
- const FALSE = function () {
189
- return false;
190
- };
191
- const NULL = function () {
192
- return null;
193
- };
194
- function parsePattern(arg1, options) {
195
- if (!arg1) {
196
- return NULL;
197
- }
198
- // Handle IRelativePattern
199
- let pattern;
200
- if (typeof arg1 !== 'string') {
201
- pattern = arg1.pattern;
202
- }
203
- else {
204
- pattern = arg1;
205
- }
206
- // Whitespace trimming
207
- pattern = pattern.trim();
208
- // Check cache
209
- const patternKey = `${pattern}_${!!options.trimForExclusions}`;
210
- let parsedPattern = CACHE.get(patternKey);
211
- if (parsedPattern) {
212
- return wrapRelativePattern(parsedPattern, arg1);
213
- }
214
- // Check for Trivias
215
- let match;
216
- if (T1.test(pattern)) {
217
- // common pattern: **/*.txt just need endsWith check
218
- const base = pattern.substr(4); // '**/*'.length === 4
219
- parsedPattern = function (path, basename) {
220
- return typeof path === 'string' && path.endsWith(base) ? pattern : null;
221
- };
222
- }
223
- else if ((match = T2.exec(trimForExclusions(pattern, options)))) {
224
- // common pattern: **/some.txt just need basename check
225
- parsedPattern = trivia2(match[1], pattern);
226
- }
227
- else if ((options.trimForExclusions ? T3_2 : T3).test(pattern)) {
228
- // repetition of common patterns (see above) {**/*.txt,**/*.png}
229
- parsedPattern = trivia3(pattern, options);
230
- }
231
- else if ((match = T4.exec(trimForExclusions(pattern, options)))) {
232
- // common pattern: **/something/else just need endsWith check
233
- parsedPattern = trivia4and5(match[1].substr(1), pattern, true);
234
- }
235
- else if ((match = T5.exec(trimForExclusions(pattern, options)))) {
236
- // common pattern: something/else just need equals check
237
- parsedPattern = trivia4and5(match[1], pattern, false);
238
- }
239
- // Otherwise convert to pattern
240
- else {
241
- parsedPattern = toRegExp(pattern);
242
- }
243
- // Cache
244
- CACHE.set(patternKey, parsedPattern);
245
- return wrapRelativePattern(parsedPattern, arg1);
246
- }
247
- function wrapRelativePattern(parsedPattern, arg2) {
248
- if (typeof arg2 === 'string') {
249
- return parsedPattern;
250
- }
251
- return function (path, basename) {
252
- if (!paths.isEqualOrParent(path, arg2.base)) {
253
- return null;
254
- }
255
- return parsedPattern(paths.relative(arg2.base, path), basename);
256
- };
257
- }
258
- function trimForExclusions(pattern, options) {
259
- return options.trimForExclusions && pattern.endsWith('/**') ? pattern.substr(0, pattern.length - 2) : pattern; // dropping **, tailing / is dropped later
260
- }
261
- // common pattern: **/some.txt just need basename check
262
- function trivia2(base, originalPattern) {
263
- const slashBase = `/${base}`;
264
- const backslashBase = `\\${base}`;
265
- const parsedPattern = function (path, basename) {
266
- if (typeof path !== 'string') {
267
- return null;
268
- }
269
- if (basename) {
270
- return basename === base ? originalPattern : null;
271
- }
272
- return path === base || path.endsWith(slashBase) || path.endsWith(backslashBase) ? originalPattern : null;
273
- };
274
- const basenames = [base];
275
- parsedPattern.basenames = basenames;
276
- parsedPattern.patterns = [originalPattern];
277
- parsedPattern.allBasenames = basenames;
278
- return parsedPattern;
279
- }
280
- // repetition of common patterns (see above) {**/*.txt,**/*.png}
281
- function trivia3(pattern, options) {
282
- const parsedPatterns = aggregateBasenameMatches(pattern
283
- .slice(1, -1)
284
- .split(',')
285
- .map((pattern) => parsePattern(pattern, options))
286
- .filter((pattern) => pattern !== NULL), pattern);
287
- const n = parsedPatterns.length;
288
- if (!n) {
289
- return NULL;
290
- }
291
- if (n === 1) {
292
- return parsedPatterns[0];
293
- }
294
- const parsedPattern = function (path, basename) {
295
- for (let i = 0, n = parsedPatterns.length; i < n; i++) {
296
- if (parsedPatterns[i](path, basename)) {
297
- return pattern;
298
- }
299
- }
300
- return null;
301
- };
302
- const withBasenames = parsedPatterns.find((pattern) => !!pattern.allBasenames);
303
- if (withBasenames) {
304
- parsedPattern.allBasenames = withBasenames.allBasenames;
305
- }
306
- const allPaths = parsedPatterns.reduce((all, current) => (current.allPaths ? all.concat(current.allPaths) : all), []);
307
- if (allPaths.length) {
308
- parsedPattern.allPaths = allPaths;
309
- }
310
- return parsedPattern;
311
- }
312
- // common patterns: **/something/else just need endsWith check, something/else just needs and equals check
313
- function trivia4and5(path, pattern, matchPathEnds) {
314
- const nativePath = paths.sep !== paths.nativeSep ? path.replace(ALL_FORWARD_SLASHES, paths.sep) : path;
315
- const nativePathEnd = paths.sep + nativePath;
316
- const parsedPattern = matchPathEnds
317
- ? function (path, basename) {
318
- return typeof path === 'string' && (path === nativePath || path.endsWith(nativePathEnd)) ? pattern : null;
319
- }
320
- : function (path, basename) {
321
- return typeof path === 'string' && path === nativePath ? pattern : null;
322
- };
323
- parsedPattern.allPaths = [(matchPathEnds ? '*/' : './') + path];
324
- return parsedPattern;
325
- }
326
- function toRegExp(pattern) {
327
- try {
328
- const regExp = new RegExp(`^${parseRegExp(pattern)}$`);
329
- return function (path) {
330
- regExp.lastIndex = 0; // reset RegExp to its initial state to reuse it!
331
- return typeof path === 'string' && regExp.test(path) ? pattern : null;
332
- };
333
- }
334
- catch (error) {
335
- return NULL;
336
- }
337
- }
338
- function match(arg1, path, hasSibling) {
339
- if (!arg1 || typeof path !== 'string') {
340
- return false;
341
- }
342
- return parse(arg1)(path, undefined, hasSibling);
343
- }
344
- exports.match = match;
345
- function parse(arg1, options = {}) {
346
- if (!arg1) {
347
- return FALSE;
348
- }
349
- // Glob with String
350
- if (typeof arg1 === 'string' || isRelativePattern(arg1)) {
351
- const parsedPattern = parsePattern(arg1, options);
352
- if (parsedPattern === NULL) {
353
- return FALSE;
354
- }
355
- const resultPattern = function (path, basename) {
356
- return !!parsedPattern(path, basename);
357
- };
358
- if (parsedPattern.allBasenames) {
359
- resultPattern.allBasenames = parsedPattern.allBasenames;
360
- }
361
- if (parsedPattern.allPaths) {
362
- resultPattern.allPaths = parsedPattern.allPaths;
363
- }
364
- return resultPattern;
365
- }
366
- // Glob with Expression
367
- return parsedExpression(arg1, options);
368
- }
369
- exports.parse = parse;
370
- function hasSiblingPromiseFn(siblingsFn) {
371
- if (!siblingsFn) {
372
- return undefined;
373
- }
374
- let siblings;
375
- return (name) => {
376
- if (!siblings) {
377
- siblings = (siblingsFn() || Promise.resolve([])).then((list) => (list ? listToMap(list) : {}));
378
- }
379
- return siblings.then((map) => !!map[name]);
380
- };
381
- }
382
- exports.hasSiblingPromiseFn = hasSiblingPromiseFn;
383
- function hasSiblingFn(siblingsFn) {
384
- if (!siblingsFn) {
385
- return undefined;
386
- }
387
- let siblings;
388
- return (name) => {
389
- if (!siblings) {
390
- const list = siblingsFn();
391
- siblings = list ? listToMap(list) : {};
392
- }
393
- return !!siblings[name];
394
- };
395
- }
396
- exports.hasSiblingFn = hasSiblingFn;
397
- function listToMap(list) {
398
- const map = {};
399
- for (const key of list) {
400
- map[key] = true;
401
- }
402
- return map;
403
- }
404
- function isRelativePattern(obj) {
405
- const rp = obj;
406
- return rp && typeof rp.base === 'string' && typeof rp.pattern === 'string';
407
- }
408
- exports.isRelativePattern = isRelativePattern;
409
- function getBasenameTerms(patternOrExpression) {
410
- return patternOrExpression.allBasenames || [];
411
- }
412
- exports.getBasenameTerms = getBasenameTerms;
413
- function getPathTerms(patternOrExpression) {
414
- return patternOrExpression.allPaths || [];
415
- }
416
- exports.getPathTerms = getPathTerms;
417
- function parsedExpression(expression, options) {
418
- const parsedPatterns = aggregateBasenameMatches(Object.getOwnPropertyNames(expression)
419
- .map((pattern) => parseExpressionPattern(pattern, expression[pattern], options))
420
- .filter((pattern) => pattern !== NULL));
421
- const n = parsedPatterns.length;
422
- if (!n) {
423
- return NULL;
424
- }
425
- if (!parsedPatterns.some((parsedPattern) => !!parsedPattern.requiresSiblings)) {
426
- if (n === 1) {
427
- return parsedPatterns[0];
428
- }
429
- const resultExpression = function (path, basename) {
430
- for (let i = 0, n = parsedPatterns.length; i < n; i++) {
431
- // Pattern matches path
432
- const result = parsedPatterns[i](path, basename);
433
- if (result) {
434
- return result;
435
- }
436
- }
437
- return null;
438
- };
439
- const withBasenames = parsedPatterns.find((pattern) => !!pattern.allBasenames);
440
- if (withBasenames) {
441
- resultExpression.allBasenames = withBasenames.allBasenames;
442
- }
443
- const allPaths = parsedPatterns.reduce((all, current) => (current.allPaths ? all.concat(current.allPaths) : all), []);
444
- if (allPaths.length) {
445
- resultExpression.allPaths = allPaths;
446
- }
447
- return resultExpression;
448
- }
449
- const resultExpression = function (path, basename, hasSibling) {
450
- let name;
451
- for (let i = 0, n = parsedPatterns.length; i < n; i++) {
452
- // Pattern matches path
453
- const parsedPattern = parsedPatterns[i];
454
- if (parsedPattern.requiresSiblings && hasSibling) {
455
- if (!basename) {
456
- basename = paths.basename(path);
457
- }
458
- if (!name) {
459
- name = basename.substr(0, basename.length - paths.extname(path).length);
460
- }
461
- }
462
- const result = parsedPattern(path, basename, name, hasSibling);
463
- if (result) {
464
- return result;
465
- }
466
- }
467
- return null;
468
- };
469
- const withBasenames = parsedPatterns.find((pattern) => !!pattern.allBasenames);
470
- if (withBasenames) {
471
- resultExpression.allBasenames = withBasenames.allBasenames;
472
- }
473
- const allPaths = parsedPatterns.reduce((all, current) => (current.allPaths ? all.concat(current.allPaths) : all), []);
474
- if (allPaths.length) {
475
- resultExpression.allPaths = allPaths;
476
- }
477
- return resultExpression;
478
- }
479
- function parseExpressionPattern(pattern, value, options) {
480
- if (value === false) {
481
- return NULL; // pattern is disabled
482
- }
483
- const parsedPattern = parsePattern(pattern, options);
484
- if (parsedPattern === NULL) {
485
- return NULL;
486
- }
487
- // Expression Pattern is <boolean>
488
- if (typeof value === 'boolean') {
489
- return parsedPattern;
490
- }
491
- // Expression Pattern is <SiblingClause>
492
- if (value) {
493
- const when = value.when;
494
- if (typeof when === 'string') {
495
- const result = (path, basename, name, hasSibling) => {
496
- if (!hasSibling || !parsedPattern(path, basename)) {
497
- return null;
498
- }
499
- const clausePattern = when.replace('$(basename)', name);
500
- const matched = hasSibling(clausePattern);
501
- return matched instanceof Promise ? matched.then((m) => (m ? pattern : null)) : matched ? pattern : null;
502
- };
503
- result.requiresSiblings = true;
504
- return result;
505
- }
506
- }
507
- // Expression is Anything
508
- return parsedPattern;
509
- }
510
- function aggregateBasenameMatches(parsedPatterns, result) {
511
- const basenamePatterns = parsedPatterns.filter((parsedPattern) => !!parsedPattern.basenames);
512
- if (basenamePatterns.length < 2) {
513
- return parsedPatterns;
514
- }
515
- const basenames = basenamePatterns.reduce((all, current) => {
516
- const basenames = current.basenames;
517
- return basenames ? all.concat(basenames) : all;
518
- }, []);
519
- let patterns;
520
- if (result) {
521
- patterns = [];
522
- for (let i = 0, n = basenames.length; i < n; i++) {
523
- patterns.push(result);
524
- }
525
- }
526
- else {
527
- patterns = basenamePatterns.reduce((all, current) => {
528
- const patterns = current.patterns;
529
- return patterns ? all.concat(patterns) : all;
530
- }, []);
531
- }
532
- const aggregate = function (path, basename) {
533
- if (typeof path !== 'string') {
534
- return null;
535
- }
536
- if (!basename) {
537
- let i;
538
- for (i = path.length; i > 0; i--) {
539
- const ch = path.charCodeAt(i - 1);
540
- if (ch === 47 /* Slash */ || ch === 92 /* Backslash */) {
541
- break;
542
- }
543
- }
544
- basename = path.substr(i);
545
- }
546
- const index = basenames.indexOf(basename);
547
- return index !== -1 ? patterns[index] : null;
548
- };
549
- aggregate.basenames = basenames;
550
- aggregate.patterns = patterns;
551
- aggregate.allBasenames = basenames;
552
- const aggregatedPatterns = parsedPatterns.filter((parsedPattern) => !parsedPattern.basenames);
553
- aggregatedPatterns.push(aggregate);
554
- return aggregatedPatterns;
555
- }
556
- //# sourceMappingURL=glob.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"glob.js","sourceRoot":"","sources":["../../src/utils/glob.ts"],"names":[],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- /**
2
- * Return a hash value for an object.
3
- */
4
- export declare function hash(obj: any): number;
5
- export declare function doHash(obj: any, hashVal: number): number;
6
- export declare function numberHash(val: number, initialHashVal: number): number;
7
- export declare function stringHash(s: string, hashVal: number): number;
8
- export declare class Hasher {
9
- private _value;
10
- get value(): number;
11
- hash(obj: any): number;
12
- }
13
- export declare function toHexString(buffer: ArrayBuffer): string;
14
- export declare function toHexString(value: number, bitsize?: number): string;
15
- /**
16
- * A SHA1 implementation that works with strings and does not allocate.
17
- */
18
- export declare class StringSHA1 {
19
- private static _bigBlock32;
20
- private _h0;
21
- private _h1;
22
- private _h2;
23
- private _h3;
24
- private _h4;
25
- private readonly _buff;
26
- private readonly _buffDV;
27
- private _buffLen;
28
- private _totalLen;
29
- private _leftoverHighSurrogate;
30
- private _finished;
31
- constructor();
32
- update(str: string): void;
33
- private _push;
34
- digest(): string;
35
- private _wrapUp;
36
- private _step;
37
- }
38
- //# sourceMappingURL=hash.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/utils/hash.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAErC;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAoBxD;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAEtE;AAMD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,UAMpD;AAiBD,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAK;IAEnB,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM;CAIvB;AA+BD,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC;AACzD,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;AAWrE;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAsC;IAEhE,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,GAAG,CAAc;IAEzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAW;IACnC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,SAAS,CAAU;;IAWpB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAwDhC,OAAO,CAAC,KAAK;IA8BN,MAAM,IAAI,MAAM;IAqBvB,OAAO,CAAC,OAAO;IAkBf,OAAO,CAAC,KAAK;CA6Dd"}