@kubb/agent 4.27.4 → 4.28.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 (26) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/server/chunks/nitro/nitro.mjs +274 -140
  3. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  4. package/.output/server/chunks/routes/api/health.get.mjs +5 -0
  5. package/.output/server/chunks/routes/api/health.get.mjs.map +1 -1
  6. package/.output/server/index.mjs +6 -1
  7. package/.output/server/index.mjs.map +1 -1
  8. package/.output/server/node_modules/anymatch/index.js +104 -0
  9. package/.output/server/node_modules/anymatch/package.json +48 -0
  10. package/.output/server/node_modules/chokidar/handler.js +632 -0
  11. package/.output/server/node_modules/chokidar/index.js +822 -0
  12. package/.output/server/node_modules/chokidar/package.json +63 -0
  13. package/.output/server/node_modules/normalize-path/index.js +35 -0
  14. package/.output/server/node_modules/normalize-path/package.json +77 -0
  15. package/.output/server/node_modules/picomatch/index.js +3 -0
  16. package/.output/server/node_modules/picomatch/lib/constants.js +179 -0
  17. package/.output/server/node_modules/picomatch/lib/parse.js +1091 -0
  18. package/.output/server/node_modules/picomatch/lib/picomatch.js +342 -0
  19. package/.output/server/node_modules/picomatch/lib/scan.js +391 -0
  20. package/.output/server/node_modules/picomatch/lib/utils.js +64 -0
  21. package/.output/server/node_modules/picomatch/package.json +81 -0
  22. package/.output/server/node_modules/readdirp/index.js +272 -0
  23. package/.output/server/node_modules/readdirp/package.json +66 -0
  24. package/.output/server/package.json +6 -1
  25. package/README.md +98 -42
  26. package/package.json +16 -23
@@ -0,0 +1,391 @@
1
+ 'use strict';
2
+
3
+ const utils = require('./utils');
4
+ const {
5
+ CHAR_ASTERISK, /* * */
6
+ CHAR_AT, /* @ */
7
+ CHAR_BACKWARD_SLASH, /* \ */
8
+ CHAR_COMMA, /* , */
9
+ CHAR_DOT, /* . */
10
+ CHAR_EXCLAMATION_MARK, /* ! */
11
+ CHAR_FORWARD_SLASH, /* / */
12
+ CHAR_LEFT_CURLY_BRACE, /* { */
13
+ CHAR_LEFT_PARENTHESES, /* ( */
14
+ CHAR_LEFT_SQUARE_BRACKET, /* [ */
15
+ CHAR_PLUS, /* + */
16
+ CHAR_QUESTION_MARK, /* ? */
17
+ CHAR_RIGHT_CURLY_BRACE, /* } */
18
+ CHAR_RIGHT_PARENTHESES, /* ) */
19
+ CHAR_RIGHT_SQUARE_BRACKET /* ] */
20
+ } = require('./constants');
21
+
22
+ const isPathSeparator = code => {
23
+ return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
24
+ };
25
+
26
+ const depth = token => {
27
+ if (token.isPrefix !== true) {
28
+ token.depth = token.isGlobstar ? Infinity : 1;
29
+ }
30
+ };
31
+
32
+ /**
33
+ * Quickly scans a glob pattern and returns an object with a handful of
34
+ * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists),
35
+ * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not
36
+ * with `!(`) and `negatedExtglob` (true if the path starts with `!(`).
37
+ *
38
+ * ```js
39
+ * const pm = require('picomatch');
40
+ * console.log(pm.scan('foo/bar/*.js'));
41
+ * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' }
42
+ * ```
43
+ * @param {String} `str`
44
+ * @param {Object} `options`
45
+ * @return {Object} Returns an object with tokens and regex source string.
46
+ * @api public
47
+ */
48
+
49
+ const scan = (input, options) => {
50
+ const opts = options || {};
51
+
52
+ const length = input.length - 1;
53
+ const scanToEnd = opts.parts === true || opts.scanToEnd === true;
54
+ const slashes = [];
55
+ const tokens = [];
56
+ const parts = [];
57
+
58
+ let str = input;
59
+ let index = -1;
60
+ let start = 0;
61
+ let lastIndex = 0;
62
+ let isBrace = false;
63
+ let isBracket = false;
64
+ let isGlob = false;
65
+ let isExtglob = false;
66
+ let isGlobstar = false;
67
+ let braceEscaped = false;
68
+ let backslashes = false;
69
+ let negated = false;
70
+ let negatedExtglob = false;
71
+ let finished = false;
72
+ let braces = 0;
73
+ let prev;
74
+ let code;
75
+ let token = { value: '', depth: 0, isGlob: false };
76
+
77
+ const eos = () => index >= length;
78
+ const peek = () => str.charCodeAt(index + 1);
79
+ const advance = () => {
80
+ prev = code;
81
+ return str.charCodeAt(++index);
82
+ };
83
+
84
+ while (index < length) {
85
+ code = advance();
86
+ let next;
87
+
88
+ if (code === CHAR_BACKWARD_SLASH) {
89
+ backslashes = token.backslashes = true;
90
+ code = advance();
91
+
92
+ if (code === CHAR_LEFT_CURLY_BRACE) {
93
+ braceEscaped = true;
94
+ }
95
+ continue;
96
+ }
97
+
98
+ if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) {
99
+ braces++;
100
+
101
+ while (eos() !== true && (code = advance())) {
102
+ if (code === CHAR_BACKWARD_SLASH) {
103
+ backslashes = token.backslashes = true;
104
+ advance();
105
+ continue;
106
+ }
107
+
108
+ if (code === CHAR_LEFT_CURLY_BRACE) {
109
+ braces++;
110
+ continue;
111
+ }
112
+
113
+ if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) {
114
+ isBrace = token.isBrace = true;
115
+ isGlob = token.isGlob = true;
116
+ finished = true;
117
+
118
+ if (scanToEnd === true) {
119
+ continue;
120
+ }
121
+
122
+ break;
123
+ }
124
+
125
+ if (braceEscaped !== true && code === CHAR_COMMA) {
126
+ isBrace = token.isBrace = true;
127
+ isGlob = token.isGlob = true;
128
+ finished = true;
129
+
130
+ if (scanToEnd === true) {
131
+ continue;
132
+ }
133
+
134
+ break;
135
+ }
136
+
137
+ if (code === CHAR_RIGHT_CURLY_BRACE) {
138
+ braces--;
139
+
140
+ if (braces === 0) {
141
+ braceEscaped = false;
142
+ isBrace = token.isBrace = true;
143
+ finished = true;
144
+ break;
145
+ }
146
+ }
147
+ }
148
+
149
+ if (scanToEnd === true) {
150
+ continue;
151
+ }
152
+
153
+ break;
154
+ }
155
+
156
+ if (code === CHAR_FORWARD_SLASH) {
157
+ slashes.push(index);
158
+ tokens.push(token);
159
+ token = { value: '', depth: 0, isGlob: false };
160
+
161
+ if (finished === true) continue;
162
+ if (prev === CHAR_DOT && index === (start + 1)) {
163
+ start += 2;
164
+ continue;
165
+ }
166
+
167
+ lastIndex = index + 1;
168
+ continue;
169
+ }
170
+
171
+ if (opts.noext !== true) {
172
+ const isExtglobChar = code === CHAR_PLUS
173
+ || code === CHAR_AT
174
+ || code === CHAR_ASTERISK
175
+ || code === CHAR_QUESTION_MARK
176
+ || code === CHAR_EXCLAMATION_MARK;
177
+
178
+ if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) {
179
+ isGlob = token.isGlob = true;
180
+ isExtglob = token.isExtglob = true;
181
+ finished = true;
182
+ if (code === CHAR_EXCLAMATION_MARK && index === start) {
183
+ negatedExtglob = true;
184
+ }
185
+
186
+ if (scanToEnd === true) {
187
+ while (eos() !== true && (code = advance())) {
188
+ if (code === CHAR_BACKWARD_SLASH) {
189
+ backslashes = token.backslashes = true;
190
+ code = advance();
191
+ continue;
192
+ }
193
+
194
+ if (code === CHAR_RIGHT_PARENTHESES) {
195
+ isGlob = token.isGlob = true;
196
+ finished = true;
197
+ break;
198
+ }
199
+ }
200
+ continue;
201
+ }
202
+ break;
203
+ }
204
+ }
205
+
206
+ if (code === CHAR_ASTERISK) {
207
+ if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true;
208
+ isGlob = token.isGlob = true;
209
+ finished = true;
210
+
211
+ if (scanToEnd === true) {
212
+ continue;
213
+ }
214
+ break;
215
+ }
216
+
217
+ if (code === CHAR_QUESTION_MARK) {
218
+ isGlob = token.isGlob = true;
219
+ finished = true;
220
+
221
+ if (scanToEnd === true) {
222
+ continue;
223
+ }
224
+ break;
225
+ }
226
+
227
+ if (code === CHAR_LEFT_SQUARE_BRACKET) {
228
+ while (eos() !== true && (next = advance())) {
229
+ if (next === CHAR_BACKWARD_SLASH) {
230
+ backslashes = token.backslashes = true;
231
+ advance();
232
+ continue;
233
+ }
234
+
235
+ if (next === CHAR_RIGHT_SQUARE_BRACKET) {
236
+ isBracket = token.isBracket = true;
237
+ isGlob = token.isGlob = true;
238
+ finished = true;
239
+ break;
240
+ }
241
+ }
242
+
243
+ if (scanToEnd === true) {
244
+ continue;
245
+ }
246
+
247
+ break;
248
+ }
249
+
250
+ if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) {
251
+ negated = token.negated = true;
252
+ start++;
253
+ continue;
254
+ }
255
+
256
+ if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) {
257
+ isGlob = token.isGlob = true;
258
+
259
+ if (scanToEnd === true) {
260
+ while (eos() !== true && (code = advance())) {
261
+ if (code === CHAR_LEFT_PARENTHESES) {
262
+ backslashes = token.backslashes = true;
263
+ code = advance();
264
+ continue;
265
+ }
266
+
267
+ if (code === CHAR_RIGHT_PARENTHESES) {
268
+ finished = true;
269
+ break;
270
+ }
271
+ }
272
+ continue;
273
+ }
274
+ break;
275
+ }
276
+
277
+ if (isGlob === true) {
278
+ finished = true;
279
+
280
+ if (scanToEnd === true) {
281
+ continue;
282
+ }
283
+
284
+ break;
285
+ }
286
+ }
287
+
288
+ if (opts.noext === true) {
289
+ isExtglob = false;
290
+ isGlob = false;
291
+ }
292
+
293
+ let base = str;
294
+ let prefix = '';
295
+ let glob = '';
296
+
297
+ if (start > 0) {
298
+ prefix = str.slice(0, start);
299
+ str = str.slice(start);
300
+ lastIndex -= start;
301
+ }
302
+
303
+ if (base && isGlob === true && lastIndex > 0) {
304
+ base = str.slice(0, lastIndex);
305
+ glob = str.slice(lastIndex);
306
+ } else if (isGlob === true) {
307
+ base = '';
308
+ glob = str;
309
+ } else {
310
+ base = str;
311
+ }
312
+
313
+ if (base && base !== '' && base !== '/' && base !== str) {
314
+ if (isPathSeparator(base.charCodeAt(base.length - 1))) {
315
+ base = base.slice(0, -1);
316
+ }
317
+ }
318
+
319
+ if (opts.unescape === true) {
320
+ if (glob) glob = utils.removeBackslashes(glob);
321
+
322
+ if (base && backslashes === true) {
323
+ base = utils.removeBackslashes(base);
324
+ }
325
+ }
326
+
327
+ const state = {
328
+ prefix,
329
+ input,
330
+ start,
331
+ base,
332
+ glob,
333
+ isBrace,
334
+ isBracket,
335
+ isGlob,
336
+ isExtglob,
337
+ isGlobstar,
338
+ negated,
339
+ negatedExtglob
340
+ };
341
+
342
+ if (opts.tokens === true) {
343
+ state.maxDepth = 0;
344
+ if (!isPathSeparator(code)) {
345
+ tokens.push(token);
346
+ }
347
+ state.tokens = tokens;
348
+ }
349
+
350
+ if (opts.parts === true || opts.tokens === true) {
351
+ let prevIndex;
352
+
353
+ for (let idx = 0; idx < slashes.length; idx++) {
354
+ const n = prevIndex ? prevIndex + 1 : start;
355
+ const i = slashes[idx];
356
+ const value = input.slice(n, i);
357
+ if (opts.tokens) {
358
+ if (idx === 0 && start !== 0) {
359
+ tokens[idx].isPrefix = true;
360
+ tokens[idx].value = prefix;
361
+ } else {
362
+ tokens[idx].value = value;
363
+ }
364
+ depth(tokens[idx]);
365
+ state.maxDepth += tokens[idx].depth;
366
+ }
367
+ if (idx !== 0 || value !== '') {
368
+ parts.push(value);
369
+ }
370
+ prevIndex = i;
371
+ }
372
+
373
+ if (prevIndex && prevIndex + 1 < input.length) {
374
+ const value = input.slice(prevIndex + 1);
375
+ parts.push(value);
376
+
377
+ if (opts.tokens) {
378
+ tokens[tokens.length - 1].value = value;
379
+ depth(tokens[tokens.length - 1]);
380
+ state.maxDepth += tokens[tokens.length - 1].depth;
381
+ }
382
+ }
383
+
384
+ state.slashes = slashes;
385
+ state.parts = parts;
386
+ }
387
+
388
+ return state;
389
+ };
390
+
391
+ module.exports = scan;
@@ -0,0 +1,64 @@
1
+ 'use strict';
2
+
3
+ const path = require('path');
4
+ const win32 = process.platform === 'win32';
5
+ const {
6
+ REGEX_BACKSLASH,
7
+ REGEX_REMOVE_BACKSLASH,
8
+ REGEX_SPECIAL_CHARS,
9
+ REGEX_SPECIAL_CHARS_GLOBAL
10
+ } = require('./constants');
11
+
12
+ exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
13
+ exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);
14
+ exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str);
15
+ exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1');
16
+ exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/');
17
+
18
+ exports.removeBackslashes = str => {
19
+ return str.replace(REGEX_REMOVE_BACKSLASH, match => {
20
+ return match === '\\' ? '' : match;
21
+ });
22
+ };
23
+
24
+ exports.supportsLookbehinds = () => {
25
+ const segs = process.version.slice(1).split('.').map(Number);
26
+ if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) {
27
+ return true;
28
+ }
29
+ return false;
30
+ };
31
+
32
+ exports.isWindows = options => {
33
+ if (options && typeof options.windows === 'boolean') {
34
+ return options.windows;
35
+ }
36
+ return win32 === true || path.sep === '\\';
37
+ };
38
+
39
+ exports.escapeLast = (input, char, lastIdx) => {
40
+ const idx = input.lastIndexOf(char, lastIdx);
41
+ if (idx === -1) return input;
42
+ if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1);
43
+ return `${input.slice(0, idx)}\\${input.slice(idx)}`;
44
+ };
45
+
46
+ exports.removePrefix = (input, state = {}) => {
47
+ let output = input;
48
+ if (output.startsWith('./')) {
49
+ output = output.slice(2);
50
+ state.prefix = './';
51
+ }
52
+ return output;
53
+ };
54
+
55
+ exports.wrapOutput = (input, state = {}, options = {}) => {
56
+ const prepend = options.contains ? '' : '^';
57
+ const append = options.contains ? '' : '$';
58
+
59
+ let output = `${prepend}(?:${input})${append}`;
60
+ if (state.negated === true) {
61
+ output = `(?:^(?!${output}).*$)`;
62
+ }
63
+ return output;
64
+ };
@@ -0,0 +1,81 @@
1
+ {
2
+ "name": "picomatch",
3
+ "description": "Blazing fast and accurate glob matcher written in JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions.",
4
+ "version": "2.3.1",
5
+ "homepage": "https://github.com/micromatch/picomatch",
6
+ "author": "Jon Schlinkert (https://github.com/jonschlinkert)",
7
+ "funding": "https://github.com/sponsors/jonschlinkert",
8
+ "repository": "micromatch/picomatch",
9
+ "bugs": {
10
+ "url": "https://github.com/micromatch/picomatch/issues"
11
+ },
12
+ "license": "MIT",
13
+ "files": [
14
+ "index.js",
15
+ "lib"
16
+ ],
17
+ "main": "index.js",
18
+ "engines": {
19
+ "node": ">=8.6"
20
+ },
21
+ "scripts": {
22
+ "lint": "eslint --cache --cache-location node_modules/.cache/.eslintcache --report-unused-disable-directives --ignore-path .gitignore .",
23
+ "mocha": "mocha --reporter dot",
24
+ "test": "npm run lint && npm run mocha",
25
+ "test:ci": "npm run test:cover",
26
+ "test:cover": "nyc npm run mocha"
27
+ },
28
+ "devDependencies": {
29
+ "eslint": "^6.8.0",
30
+ "fill-range": "^7.0.1",
31
+ "gulp-format-md": "^2.0.0",
32
+ "mocha": "^6.2.2",
33
+ "nyc": "^15.0.0",
34
+ "time-require": "github:jonschlinkert/time-require"
35
+ },
36
+ "keywords": [
37
+ "glob",
38
+ "match",
39
+ "picomatch"
40
+ ],
41
+ "nyc": {
42
+ "reporter": [
43
+ "html",
44
+ "lcov",
45
+ "text-summary"
46
+ ]
47
+ },
48
+ "verb": {
49
+ "toc": {
50
+ "render": true,
51
+ "method": "preWrite",
52
+ "maxdepth": 3
53
+ },
54
+ "layout": "empty",
55
+ "tasks": [
56
+ "readme"
57
+ ],
58
+ "plugins": [
59
+ "gulp-format-md"
60
+ ],
61
+ "lint": {
62
+ "reflinks": true
63
+ },
64
+ "related": {
65
+ "list": [
66
+ "braces",
67
+ "micromatch"
68
+ ]
69
+ },
70
+ "reflinks": [
71
+ "braces",
72
+ "expand-brackets",
73
+ "extglob",
74
+ "fill-range",
75
+ "micromatch",
76
+ "minimatch",
77
+ "nanomatch",
78
+ "picomatch"
79
+ ]
80
+ }
81
+ }