@stackwright-pro/openapi 0.2.1 → 0.2.2-alpha.1
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/dist/index.d.mts +19 -25
- package/dist/index.d.ts +19 -25
- package/dist/index.js +244 -286
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +144 -184
- package/dist/index.mjs.map +1 -0
- package/package.json +6 -3
package/dist/index.js
CHANGED
|
@@ -1,4 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var SwaggerParser = require('@apidevtools/swagger-parser');
|
|
4
|
+
var zodToTs = require('zod-to-ts');
|
|
5
|
+
var fs = require('fs');
|
|
6
|
+
var path2 = require('path');
|
|
7
|
+
var crypto = require('crypto');
|
|
8
|
+
var https = require('https');
|
|
9
|
+
var http = require('http');
|
|
10
|
+
var url = require('url');
|
|
11
|
+
var net = require('net');
|
|
12
|
+
|
|
13
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
|
|
15
|
+
var SwaggerParser__default = /*#__PURE__*/_interopDefault(SwaggerParser);
|
|
16
|
+
var fs__default = /*#__PURE__*/_interopDefault(fs);
|
|
17
|
+
var path2__default = /*#__PURE__*/_interopDefault(path2);
|
|
18
|
+
var crypto__default = /*#__PURE__*/_interopDefault(crypto);
|
|
19
|
+
var https__default = /*#__PURE__*/_interopDefault(https);
|
|
20
|
+
var http__default = /*#__PURE__*/_interopDefault(http);
|
|
21
|
+
|
|
2
22
|
var __create = Object.create;
|
|
3
23
|
var __defProp = Object.defineProperty;
|
|
4
24
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -8,10 +28,6 @@ var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
|
8
28
|
var __commonJS = (cb, mod) => function __require() {
|
|
9
29
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
10
30
|
};
|
|
11
|
-
var __export = (target, all) => {
|
|
12
|
-
for (var name in all)
|
|
13
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
14
|
-
};
|
|
15
31
|
var __copyProps = (to, from, except, desc) => {
|
|
16
32
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
17
33
|
for (let key of __getOwnPropNames(from))
|
|
@@ -25,15 +41,13 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
25
41
|
// file that has been converted to a CommonJS file using a Babel-
|
|
26
42
|
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
27
43
|
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
28
|
-
|
|
44
|
+
!mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
29
45
|
mod
|
|
30
46
|
));
|
|
31
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
32
47
|
|
|
33
48
|
// ../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/analyzer.js
|
|
34
49
|
var require_analyzer = __commonJS({
|
|
35
|
-
"../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/analyzer.js"(
|
|
36
|
-
"use strict";
|
|
50
|
+
"../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/analyzer.js"(exports$1, module) {
|
|
37
51
|
var AnalyzerOptions = class {
|
|
38
52
|
constructor(heuristic_replimit) {
|
|
39
53
|
this.heuristic_replimit = heuristic_replimit;
|
|
@@ -54,7 +68,7 @@ var require_analyzer = __commonJS({
|
|
|
54
68
|
return null;
|
|
55
69
|
}
|
|
56
70
|
};
|
|
57
|
-
|
|
71
|
+
module.exports = function(re, replimit) {
|
|
58
72
|
let myRegExp = null;
|
|
59
73
|
let ast = null;
|
|
60
74
|
try {
|
|
@@ -88,7 +102,7 @@ var require_analyzer = __commonJS({
|
|
|
88
102
|
});
|
|
89
103
|
return maxObservedStarHeight <= 1 && repetitionCount <= replimit;
|
|
90
104
|
};
|
|
91
|
-
|
|
105
|
+
module.exports = {
|
|
92
106
|
"AnalyzerOptions": AnalyzerOptions,
|
|
93
107
|
"Analyzer": Analyzer
|
|
94
108
|
};
|
|
@@ -97,9 +111,8 @@ var require_analyzer = __commonJS({
|
|
|
97
111
|
|
|
98
112
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-dotall-s-transform.js
|
|
99
113
|
var require_compat_dotall_s_transform = __commonJS({
|
|
100
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-dotall-s-transform.js"(
|
|
101
|
-
|
|
102
|
-
module2.exports = {
|
|
114
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-dotall-s-transform.js"(exports$1, module) {
|
|
115
|
+
module.exports = {
|
|
103
116
|
// Whether `u` flag present. In which case we transform to
|
|
104
117
|
// \u{10FFFF} instead of \uFFFF.
|
|
105
118
|
_hasUFlag: false,
|
|
@@ -149,9 +162,8 @@ var require_compat_dotall_s_transform = __commonJS({
|
|
|
149
162
|
|
|
150
163
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-named-capturing-groups-transform.js
|
|
151
164
|
var require_compat_named_capturing_groups_transform = __commonJS({
|
|
152
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-named-capturing-groups-transform.js"(
|
|
153
|
-
|
|
154
|
-
module2.exports = {
|
|
165
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-named-capturing-groups-transform.js"(exports$1, module) {
|
|
166
|
+
module.exports = {
|
|
155
167
|
// To track the names of the groups, and return them
|
|
156
168
|
// in the transform result state.
|
|
157
169
|
//
|
|
@@ -193,9 +205,8 @@ var require_compat_named_capturing_groups_transform = __commonJS({
|
|
|
193
205
|
|
|
194
206
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-x-flag-transform.js
|
|
195
207
|
var require_compat_x_flag_transform = __commonJS({
|
|
196
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-x-flag-transform.js"(
|
|
197
|
-
|
|
198
|
-
module2.exports = {
|
|
208
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/compat-x-flag-transform.js"(exports$1, module) {
|
|
209
|
+
module.exports = {
|
|
199
210
|
RegExp: function RegExp2(_ref) {
|
|
200
211
|
var node = _ref.node;
|
|
201
212
|
if (node.flags.includes("x")) {
|
|
@@ -208,9 +219,8 @@ var require_compat_x_flag_transform = __commonJS({
|
|
|
208
219
|
|
|
209
220
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/index.js
|
|
210
221
|
var require_transforms = __commonJS({
|
|
211
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/index.js"(
|
|
212
|
-
|
|
213
|
-
module2.exports = {
|
|
222
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/transforms/index.js"(exports$1, module) {
|
|
223
|
+
module.exports = {
|
|
214
224
|
// "dotAll" `s` flag
|
|
215
225
|
dotAll: require_compat_dotall_s_transform(),
|
|
216
226
|
// Named capturing groups.
|
|
@@ -223,8 +233,7 @@ var require_transforms = __commonJS({
|
|
|
223
233
|
|
|
224
234
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/generator/index.js
|
|
225
235
|
var require_generator = __commonJS({
|
|
226
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/generator/index.js"(
|
|
227
|
-
"use strict";
|
|
236
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/generator/index.js"(exports$1, module) {
|
|
228
237
|
function gen(node) {
|
|
229
238
|
return node ? generator[node.type](node) : "";
|
|
230
239
|
}
|
|
@@ -350,7 +359,7 @@ var require_generator = __commonJS({
|
|
|
350
359
|
return "\\" + escapeChar + "{" + namePart + node.value + "}";
|
|
351
360
|
}
|
|
352
361
|
};
|
|
353
|
-
|
|
362
|
+
module.exports = {
|
|
354
363
|
/**
|
|
355
364
|
* Generates a regexp string from an AST.
|
|
356
365
|
*
|
|
@@ -363,8 +372,7 @@ var require_generator = __commonJS({
|
|
|
363
372
|
|
|
364
373
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/unicode/parser-unicode-properties.js
|
|
365
374
|
var require_parser_unicode_properties = __commonJS({
|
|
366
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/unicode/parser-unicode-properties.js"(
|
|
367
|
-
"use strict";
|
|
375
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/unicode/parser-unicode-properties.js"(exports$1, module) {
|
|
368
376
|
var NON_BINARY_PROP_NAMES_TO_ALIASES = {
|
|
369
377
|
General_Category: "gc",
|
|
370
378
|
Script: "sc",
|
|
@@ -687,7 +695,7 @@ var require_parser_unicode_properties = __commonJS({
|
|
|
687
695
|
}
|
|
688
696
|
return null;
|
|
689
697
|
}
|
|
690
|
-
|
|
698
|
+
module.exports = {
|
|
691
699
|
isAlias,
|
|
692
700
|
isValidName,
|
|
693
701
|
isValidValue,
|
|
@@ -710,8 +718,7 @@ var require_parser_unicode_properties = __commonJS({
|
|
|
710
718
|
|
|
711
719
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/generated/regexp-tree.js
|
|
712
720
|
var require_regexp_tree = __commonJS({
|
|
713
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/generated/regexp-tree.js"(
|
|
714
|
-
"use strict";
|
|
721
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/generated/regexp-tree.js"(exports$1, module) {
|
|
715
722
|
var _slicedToArray = /* @__PURE__ */ (function() {
|
|
716
723
|
function sliceIterator(arr, i) {
|
|
717
724
|
var _arr = [];
|
|
@@ -756,7 +763,6 @@ var require_regexp_tree = __commonJS({
|
|
|
756
763
|
}
|
|
757
764
|
}
|
|
758
765
|
var yytext = void 0;
|
|
759
|
-
var yyleng = void 0;
|
|
760
766
|
var yy = {};
|
|
761
767
|
var __ = void 0;
|
|
762
768
|
var __loc = void 0;
|
|
@@ -811,7 +817,6 @@ var require_regexp_tree = __commonJS({
|
|
|
811
817
|
if (_2loc) {
|
|
812
818
|
_loc = loc(_1loc || _2loc, _3loc || _2loc);
|
|
813
819
|
}
|
|
814
|
-
;
|
|
815
820
|
__ = Node({
|
|
816
821
|
type: "Disjunction",
|
|
817
822
|
left: _1,
|
|
@@ -1280,7 +1285,7 @@ var require_regexp_tree = __commonJS({
|
|
|
1280
1285
|
}
|
|
1281
1286
|
if (matched !== null) {
|
|
1282
1287
|
yytext = matched;
|
|
1283
|
-
|
|
1288
|
+
yytext.length;
|
|
1284
1289
|
var token = lexRule[1].call(this);
|
|
1285
1290
|
if (!token) {
|
|
1286
1291
|
return this.getNextToken();
|
|
@@ -1462,7 +1467,7 @@ var require_regexp_tree = __commonJS({
|
|
|
1462
1467
|
var reduceStackEntry = { symbol: production[0] };
|
|
1463
1468
|
if (hasSemanticAction) {
|
|
1464
1469
|
yytext = shiftedToken ? shiftedToken.value : null;
|
|
1465
|
-
|
|
1470
|
+
shiftedToken ? shiftedToken.value.length : null;
|
|
1466
1471
|
var semanticActionArgs = locationArgs !== null ? semanticValueArgs.concat(locationArgs) : semanticValueArgs;
|
|
1467
1472
|
production[2].apply(production, _toConsumableArray(semanticActionArgs));
|
|
1468
1473
|
reduceStackEntry.semanticValue = __;
|
|
@@ -1851,28 +1856,26 @@ var require_regexp_tree = __commonJS({
|
|
|
1851
1856
|
function parseError(message) {
|
|
1852
1857
|
throw new SyntaxError(message);
|
|
1853
1858
|
}
|
|
1854
|
-
|
|
1859
|
+
module.exports = yyparse;
|
|
1855
1860
|
}
|
|
1856
1861
|
});
|
|
1857
1862
|
|
|
1858
1863
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/index.js
|
|
1859
1864
|
var require_parser = __commonJS({
|
|
1860
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/index.js"(
|
|
1861
|
-
"use strict";
|
|
1865
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/parser/index.js"(exports$1, module) {
|
|
1862
1866
|
var regexpTreeParser = require_regexp_tree();
|
|
1863
1867
|
var generatedParseFn = regexpTreeParser.parse.bind(regexpTreeParser);
|
|
1864
1868
|
regexpTreeParser.parse = function(regexp, options) {
|
|
1865
1869
|
return generatedParseFn("" + regexp, options);
|
|
1866
1870
|
};
|
|
1867
1871
|
regexpTreeParser.setOptions({ captureLocations: false });
|
|
1868
|
-
|
|
1872
|
+
module.exports = regexpTreeParser;
|
|
1869
1873
|
}
|
|
1870
1874
|
});
|
|
1871
1875
|
|
|
1872
1876
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/traverse/node-path.js
|
|
1873
1877
|
var require_node_path = __commonJS({
|
|
1874
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/traverse/node-path.js"(
|
|
1875
|
-
"use strict";
|
|
1878
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/traverse/node-path.js"(exports$1, module) {
|
|
1876
1879
|
var _createClass = /* @__PURE__ */ (function() {
|
|
1877
1880
|
function defineProperties(target, props) {
|
|
1878
1881
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -2198,14 +2201,13 @@ var require_node_path = __commonJS({
|
|
|
2198
2201
|
}
|
|
2199
2202
|
return value;
|
|
2200
2203
|
}
|
|
2201
|
-
|
|
2204
|
+
module.exports = NodePath;
|
|
2202
2205
|
}
|
|
2203
2206
|
});
|
|
2204
2207
|
|
|
2205
2208
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/traverse/index.js
|
|
2206
2209
|
var require_traverse = __commonJS({
|
|
2207
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/traverse/index.js"(
|
|
2208
|
-
"use strict";
|
|
2210
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/traverse/index.js"(exports$1, module) {
|
|
2209
2211
|
var NodePath = require_node_path();
|
|
2210
2212
|
function astTraverse(root) {
|
|
2211
2213
|
var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
@@ -2254,7 +2256,7 @@ var require_traverse = __commonJS({
|
|
|
2254
2256
|
}
|
|
2255
2257
|
visit(root, null);
|
|
2256
2258
|
}
|
|
2257
|
-
|
|
2259
|
+
module.exports = {
|
|
2258
2260
|
/**
|
|
2259
2261
|
* Traverses an AST.
|
|
2260
2262
|
*
|
|
@@ -2439,8 +2441,7 @@ var require_traverse = __commonJS({
|
|
|
2439
2441
|
|
|
2440
2442
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/transform/index.js
|
|
2441
2443
|
var require_transform = __commonJS({
|
|
2442
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/transform/index.js"(
|
|
2443
|
-
"use strict";
|
|
2444
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/transform/index.js"(exports$1, module) {
|
|
2444
2445
|
var _createClass = /* @__PURE__ */ (function() {
|
|
2445
2446
|
function defineProperties(target, props) {
|
|
2446
2447
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -2522,7 +2523,7 @@ var require_transform = __commonJS({
|
|
|
2522
2523
|
}]);
|
|
2523
2524
|
return TransformResult2;
|
|
2524
2525
|
})();
|
|
2525
|
-
|
|
2526
|
+
module.exports = {
|
|
2526
2527
|
/**
|
|
2527
2528
|
* Expose `TransformResult`.
|
|
2528
2529
|
*/
|
|
@@ -2573,11 +2574,10 @@ var require_transform = __commonJS({
|
|
|
2573
2574
|
|
|
2574
2575
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/index.js
|
|
2575
2576
|
var require_compat_transpiler = __commonJS({
|
|
2576
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/index.js"(
|
|
2577
|
-
"use strict";
|
|
2577
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/index.js"(exports$1, module) {
|
|
2578
2578
|
var compatTransforms = require_transforms();
|
|
2579
2579
|
var _transform = require_transform();
|
|
2580
|
-
|
|
2580
|
+
module.exports = {
|
|
2581
2581
|
/**
|
|
2582
2582
|
* Translates a regexp in new syntax to equivalent regexp in old syntax.
|
|
2583
2583
|
*
|
|
@@ -2609,9 +2609,8 @@ var require_compat_transpiler = __commonJS({
|
|
|
2609
2609
|
|
|
2610
2610
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/utils/clone.js
|
|
2611
2611
|
var require_clone = __commonJS({
|
|
2612
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/utils/clone.js"(
|
|
2613
|
-
|
|
2614
|
-
module2.exports = function clone(obj) {
|
|
2612
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/utils/clone.js"(exports$1, module) {
|
|
2613
|
+
module.exports = function clone(obj) {
|
|
2615
2614
|
if (obj === null || typeof obj !== "object") {
|
|
2616
2615
|
return obj;
|
|
2617
2616
|
}
|
|
@@ -2631,9 +2630,8 @@ var require_clone = __commonJS({
|
|
|
2631
2630
|
|
|
2632
2631
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-surrogate-pair-to-single-unicode-transform.js
|
|
2633
2632
|
var require_char_surrogate_pair_to_single_unicode_transform = __commonJS({
|
|
2634
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-surrogate-pair-to-single-unicode-transform.js"(
|
|
2635
|
-
|
|
2636
|
-
module2.exports = {
|
|
2633
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-surrogate-pair-to-single-unicode-transform.js"(exports$1, module) {
|
|
2634
|
+
module.exports = {
|
|
2637
2635
|
shouldRun: function shouldRun(ast) {
|
|
2638
2636
|
return ast.flags.includes("u");
|
|
2639
2637
|
},
|
|
@@ -2651,15 +2649,14 @@ var require_char_surrogate_pair_to_single_unicode_transform = __commonJS({
|
|
|
2651
2649
|
|
|
2652
2650
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-code-to-simple-char-transform.js
|
|
2653
2651
|
var require_char_code_to_simple_char_transform = __commonJS({
|
|
2654
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-code-to-simple-char-transform.js"(
|
|
2655
|
-
"use strict";
|
|
2652
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-code-to-simple-char-transform.js"(exports$1, module) {
|
|
2656
2653
|
var UPPER_A_CP = "A".codePointAt(0);
|
|
2657
2654
|
var UPPER_Z_CP = "Z".codePointAt(0);
|
|
2658
2655
|
var LOWER_A_CP = "a".codePointAt(0);
|
|
2659
2656
|
var LOWER_Z_CP = "z".codePointAt(0);
|
|
2660
2657
|
var DIGIT_0_CP = "0".codePointAt(0);
|
|
2661
2658
|
var DIGIT_9_CP = "9".codePointAt(0);
|
|
2662
|
-
|
|
2659
|
+
module.exports = {
|
|
2663
2660
|
Char: function Char(path3) {
|
|
2664
2661
|
var node = path3.node, parent = path3.parent;
|
|
2665
2662
|
if (isNaN(node.codePoint) || node.kind === "simple") {
|
|
@@ -2705,11 +2702,10 @@ var require_char_code_to_simple_char_transform = __commonJS({
|
|
|
2705
2702
|
|
|
2706
2703
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-case-insensitive-lowercase-transform.js
|
|
2707
2704
|
var require_char_case_insensitive_lowercase_transform = __commonJS({
|
|
2708
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-case-insensitive-lowercase-transform.js"(
|
|
2709
|
-
"use strict";
|
|
2705
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-case-insensitive-lowercase-transform.js"(exports$1, module) {
|
|
2710
2706
|
var UPPER_A_CP = "A".codePointAt(0);
|
|
2711
2707
|
var UPPER_Z_CP = "Z".codePointAt(0);
|
|
2712
|
-
|
|
2708
|
+
module.exports = {
|
|
2713
2709
|
_AZClassRanges: null,
|
|
2714
2710
|
_hasUFlag: false,
|
|
2715
2711
|
init: function init(ast) {
|
|
@@ -2782,9 +2778,8 @@ var require_char_case_insensitive_lowercase_transform = __commonJS({
|
|
|
2782
2778
|
|
|
2783
2779
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-remove-duplicates-transform.js
|
|
2784
2780
|
var require_char_class_remove_duplicates_transform = __commonJS({
|
|
2785
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-remove-duplicates-transform.js"(
|
|
2786
|
-
|
|
2787
|
-
module2.exports = {
|
|
2781
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-remove-duplicates-transform.js"(exports$1, module) {
|
|
2782
|
+
module.exports = {
|
|
2788
2783
|
CharacterClass: function CharacterClass(path3) {
|
|
2789
2784
|
var node = path3.node;
|
|
2790
2785
|
var sources = {};
|
|
@@ -2804,8 +2799,7 @@ var require_char_class_remove_duplicates_transform = __commonJS({
|
|
|
2804
2799
|
|
|
2805
2800
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/transform/utils.js
|
|
2806
2801
|
var require_utils = __commonJS({
|
|
2807
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/transform/utils.js"(
|
|
2808
|
-
"use strict";
|
|
2802
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/transform/utils.js"(exports$1, module) {
|
|
2809
2803
|
function _toConsumableArray(arr) {
|
|
2810
2804
|
if (Array.isArray(arr)) {
|
|
2811
2805
|
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
|
|
@@ -2855,7 +2849,7 @@ var require_utils = __commonJS({
|
|
|
2855
2849
|
}
|
|
2856
2850
|
}
|
|
2857
2851
|
}
|
|
2858
|
-
|
|
2852
|
+
module.exports = {
|
|
2859
2853
|
disjunctionToList,
|
|
2860
2854
|
listToDisjunction,
|
|
2861
2855
|
increaseQuantifierByOne
|
|
@@ -2865,11 +2859,10 @@ var require_utils = __commonJS({
|
|
|
2865
2859
|
|
|
2866
2860
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/quantifiers-merge-transform.js
|
|
2867
2861
|
var require_quantifiers_merge_transform = __commonJS({
|
|
2868
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/quantifiers-merge-transform.js"(
|
|
2869
|
-
"use strict";
|
|
2862
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/quantifiers-merge-transform.js"(exports$1, module) {
|
|
2870
2863
|
var _require = require_utils();
|
|
2871
2864
|
var increaseQuantifierByOne = _require.increaseQuantifierByOne;
|
|
2872
|
-
|
|
2865
|
+
module.exports = {
|
|
2873
2866
|
Repetition: function Repetition(path3) {
|
|
2874
2867
|
var node = path3.node, parent = path3.parent;
|
|
2875
2868
|
if (parent.type !== "Alternative" || !path3.index) {
|
|
@@ -2933,9 +2926,8 @@ var require_quantifiers_merge_transform = __commonJS({
|
|
|
2933
2926
|
|
|
2934
2927
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/quantifier-range-to-symbol-transform.js
|
|
2935
2928
|
var require_quantifier_range_to_symbol_transform = __commonJS({
|
|
2936
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/quantifier-range-to-symbol-transform.js"(
|
|
2937
|
-
|
|
2938
|
-
module2.exports = {
|
|
2929
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/quantifier-range-to-symbol-transform.js"(exports$1, module) {
|
|
2930
|
+
module.exports = {
|
|
2939
2931
|
Quantifier: function Quantifier(path3) {
|
|
2940
2932
|
var node = path3.node;
|
|
2941
2933
|
if (node.kind !== "Range") {
|
|
@@ -2974,9 +2966,8 @@ var require_quantifier_range_to_symbol_transform = __commonJS({
|
|
|
2974
2966
|
|
|
2975
2967
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-classranges-to-chars-transform.js
|
|
2976
2968
|
var require_char_class_classranges_to_chars_transform = __commonJS({
|
|
2977
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-classranges-to-chars-transform.js"(
|
|
2978
|
-
|
|
2979
|
-
module2.exports = {
|
|
2969
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-classranges-to-chars-transform.js"(exports$1, module) {
|
|
2970
|
+
module.exports = {
|
|
2980
2971
|
ClassRange: function ClassRange(path3) {
|
|
2981
2972
|
var node = path3.node;
|
|
2982
2973
|
if (node.from.codePoint === node.to.codePoint) {
|
|
@@ -2992,8 +2983,7 @@ var require_char_class_classranges_to_chars_transform = __commonJS({
|
|
|
2992
2983
|
|
|
2993
2984
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-to-meta-transform.js
|
|
2994
2985
|
var require_char_class_to_meta_transform = __commonJS({
|
|
2995
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-to-meta-transform.js"(
|
|
2996
|
-
"use strict";
|
|
2986
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-to-meta-transform.js"(exports$1, module) {
|
|
2997
2987
|
function _toConsumableArray(arr) {
|
|
2998
2988
|
if (Array.isArray(arr)) {
|
|
2999
2989
|
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
|
|
@@ -3004,7 +2994,7 @@ var require_char_class_to_meta_transform = __commonJS({
|
|
|
3004
2994
|
return Array.from(arr);
|
|
3005
2995
|
}
|
|
3006
2996
|
}
|
|
3007
|
-
|
|
2997
|
+
module.exports = {
|
|
3008
2998
|
_hasIFlag: false,
|
|
3009
2999
|
_hasUFlag: false,
|
|
3010
3000
|
init: function init(ast) {
|
|
@@ -3136,9 +3126,8 @@ var require_char_class_to_meta_transform = __commonJS({
|
|
|
3136
3126
|
|
|
3137
3127
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-to-single-char-transform.js
|
|
3138
3128
|
var require_char_class_to_single_char_transform = __commonJS({
|
|
3139
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-to-single-char-transform.js"(
|
|
3140
|
-
|
|
3141
|
-
module2.exports = {
|
|
3129
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-to-single-char-transform.js"(exports$1, module) {
|
|
3130
|
+
module.exports = {
|
|
3142
3131
|
CharacterClass: function CharacterClass(path3) {
|
|
3143
3132
|
var node = path3.node;
|
|
3144
3133
|
if (node.expressions.length !== 1 || !hasAppropriateSiblings(path3) || !isAppropriateChar(node.expressions[0])) {
|
|
@@ -3195,9 +3184,8 @@ var require_char_class_to_single_char_transform = __commonJS({
|
|
|
3195
3184
|
|
|
3196
3185
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-escape-unescape-transform.js
|
|
3197
3186
|
var require_char_escape_unescape_transform = __commonJS({
|
|
3198
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-escape-unescape-transform.js"(
|
|
3199
|
-
|
|
3200
|
-
module2.exports = {
|
|
3187
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-escape-unescape-transform.js"(exports$1, module) {
|
|
3188
|
+
module.exports = {
|
|
3201
3189
|
_hasXFlag: false,
|
|
3202
3190
|
init: function init(ast) {
|
|
3203
3191
|
this._hasXFlag = ast.flags.includes("x");
|
|
@@ -3295,9 +3283,8 @@ var require_char_escape_unescape_transform = __commonJS({
|
|
|
3295
3283
|
|
|
3296
3284
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-classranges-merge-transform.js
|
|
3297
3285
|
var require_char_class_classranges_merge_transform = __commonJS({
|
|
3298
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-classranges-merge-transform.js"(
|
|
3299
|
-
|
|
3300
|
-
module2.exports = {
|
|
3286
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/char-class-classranges-merge-transform.js"(exports$1, module) {
|
|
3287
|
+
module.exports = {
|
|
3301
3288
|
_hasIUFlags: false,
|
|
3302
3289
|
init: function init(ast) {
|
|
3303
3290
|
this._hasIUFlags = ast.flags.includes("i") && ast.flags.includes("u");
|
|
@@ -3514,13 +3501,12 @@ var require_char_class_classranges_merge_transform = __commonJS({
|
|
|
3514
3501
|
|
|
3515
3502
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/disjunction-remove-duplicates-transform.js
|
|
3516
3503
|
var require_disjunction_remove_duplicates_transform = __commonJS({
|
|
3517
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/disjunction-remove-duplicates-transform.js"(
|
|
3518
|
-
"use strict";
|
|
3504
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/disjunction-remove-duplicates-transform.js"(exports$1, module) {
|
|
3519
3505
|
var NodePath = require_node_path();
|
|
3520
3506
|
var _require = require_utils();
|
|
3521
3507
|
var disjunctionToList = _require.disjunctionToList;
|
|
3522
3508
|
var listToDisjunction = _require.listToDisjunction;
|
|
3523
|
-
|
|
3509
|
+
module.exports = {
|
|
3524
3510
|
Disjunction: function Disjunction(path3) {
|
|
3525
3511
|
var node = path3.node;
|
|
3526
3512
|
var uniqueNodesMap = {};
|
|
@@ -3540,9 +3526,8 @@ var require_disjunction_remove_duplicates_transform = __commonJS({
|
|
|
3540
3526
|
|
|
3541
3527
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/group-single-chars-to-char-class.js
|
|
3542
3528
|
var require_group_single_chars_to_char_class = __commonJS({
|
|
3543
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/group-single-chars-to-char-class.js"(
|
|
3544
|
-
|
|
3545
|
-
module2.exports = {
|
|
3529
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/group-single-chars-to-char-class.js"(exports$1, module) {
|
|
3530
|
+
module.exports = {
|
|
3546
3531
|
Disjunction: function Disjunction(path3) {
|
|
3547
3532
|
var node = path3.node, parent = path3.parent;
|
|
3548
3533
|
if (!handlers[parent.type]) {
|
|
@@ -3602,9 +3587,8 @@ var require_group_single_chars_to_char_class = __commonJS({
|
|
|
3602
3587
|
|
|
3603
3588
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/remove-empty-group-transform.js
|
|
3604
3589
|
var require_remove_empty_group_transform = __commonJS({
|
|
3605
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/remove-empty-group-transform.js"(
|
|
3606
|
-
|
|
3607
|
-
module2.exports = {
|
|
3590
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/remove-empty-group-transform.js"(exports$1, module) {
|
|
3591
|
+
module.exports = {
|
|
3608
3592
|
Group: function Group(path3) {
|
|
3609
3593
|
var node = path3.node, parent = path3.parent;
|
|
3610
3594
|
var childPath = path3.getChild();
|
|
@@ -3623,8 +3607,7 @@ var require_remove_empty_group_transform = __commonJS({
|
|
|
3623
3607
|
|
|
3624
3608
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/ungroup-transform.js
|
|
3625
3609
|
var require_ungroup_transform = __commonJS({
|
|
3626
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/ungroup-transform.js"(
|
|
3627
|
-
"use strict";
|
|
3610
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/ungroup-transform.js"(exports$1, module) {
|
|
3628
3611
|
function _toConsumableArray(arr) {
|
|
3629
3612
|
if (Array.isArray(arr)) {
|
|
3630
3613
|
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
|
|
@@ -3635,7 +3618,7 @@ var require_ungroup_transform = __commonJS({
|
|
|
3635
3618
|
return Array.from(arr);
|
|
3636
3619
|
}
|
|
3637
3620
|
}
|
|
3638
|
-
|
|
3621
|
+
module.exports = {
|
|
3639
3622
|
Group: function Group(path3) {
|
|
3640
3623
|
var node = path3.node, parent = path3.parent;
|
|
3641
3624
|
var childPath = path3.getChild();
|
|
@@ -3686,8 +3669,7 @@ var require_ungroup_transform = __commonJS({
|
|
|
3686
3669
|
|
|
3687
3670
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/combine-repeating-patterns-transform.js
|
|
3688
3671
|
var require_combine_repeating_patterns_transform = __commonJS({
|
|
3689
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/combine-repeating-patterns-transform.js"(
|
|
3690
|
-
"use strict";
|
|
3672
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/combine-repeating-patterns-transform.js"(exports$1, module) {
|
|
3691
3673
|
function _toConsumableArray(arr) {
|
|
3692
3674
|
if (Array.isArray(arr)) {
|
|
3693
3675
|
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
|
|
@@ -3701,7 +3683,7 @@ var require_combine_repeating_patterns_transform = __commonJS({
|
|
|
3701
3683
|
var NodePath = require_node_path();
|
|
3702
3684
|
var _require = require_utils();
|
|
3703
3685
|
var increaseQuantifierByOne = _require.increaseQuantifierByOne;
|
|
3704
|
-
|
|
3686
|
+
module.exports = {
|
|
3705
3687
|
Alternative: function Alternative(path3) {
|
|
3706
3688
|
var node = path3.node;
|
|
3707
3689
|
var index = 1;
|
|
@@ -3838,9 +3820,8 @@ var require_combine_repeating_patterns_transform = __commonJS({
|
|
|
3838
3820
|
|
|
3839
3821
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/index.js
|
|
3840
3822
|
var require_transforms2 = __commonJS({
|
|
3841
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/index.js"(
|
|
3842
|
-
|
|
3843
|
-
module2.exports = /* @__PURE__ */ new Map([
|
|
3823
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/transforms/index.js"(exports$1, module) {
|
|
3824
|
+
module.exports = /* @__PURE__ */ new Map([
|
|
3844
3825
|
// \ud83d\ude80 -> \u{1f680}
|
|
3845
3826
|
["charSurrogatePairToSingleUnicode", require_char_surrogate_pair_to_single_unicode_transform()],
|
|
3846
3827
|
// \u0061 -> a
|
|
@@ -3879,13 +3860,12 @@ var require_transforms2 = __commonJS({
|
|
|
3879
3860
|
|
|
3880
3861
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/index.js
|
|
3881
3862
|
var require_optimizer = __commonJS({
|
|
3882
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/index.js"(
|
|
3883
|
-
"use strict";
|
|
3863
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/optimizer/index.js"(exports$1, module) {
|
|
3884
3864
|
var clone = require_clone();
|
|
3885
3865
|
var parser = require_parser();
|
|
3886
3866
|
var transform = require_transform();
|
|
3887
3867
|
var optimizationTransforms = require_transforms2();
|
|
3888
|
-
|
|
3868
|
+
module.exports = {
|
|
3889
3869
|
/**
|
|
3890
3870
|
* Optimizer transforms a regular expression into an optimized version,
|
|
3891
3871
|
* replacing some sub-expressions with their idiomatic patterns.
|
|
@@ -3943,11 +3923,10 @@ var require_optimizer = __commonJS({
|
|
|
3943
3923
|
|
|
3944
3924
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/special-symbols.js
|
|
3945
3925
|
var require_special_symbols = __commonJS({
|
|
3946
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/special-symbols.js"(
|
|
3947
|
-
"use strict";
|
|
3926
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/special-symbols.js"(exports$1, module) {
|
|
3948
3927
|
var EPSILON = "\u03B5";
|
|
3949
3928
|
var EPSILON_CLOSURE = EPSILON + "*";
|
|
3950
|
-
|
|
3929
|
+
module.exports = {
|
|
3951
3930
|
EPSILON,
|
|
3952
3931
|
EPSILON_CLOSURE
|
|
3953
3932
|
};
|
|
@@ -3956,8 +3935,7 @@ var require_special_symbols = __commonJS({
|
|
|
3956
3935
|
|
|
3957
3936
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa.js
|
|
3958
3937
|
var require_nfa = __commonJS({
|
|
3959
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa.js"(
|
|
3960
|
-
"use strict";
|
|
3938
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa.js"(exports$1, module) {
|
|
3961
3939
|
var _slicedToArray = /* @__PURE__ */ (function() {
|
|
3962
3940
|
function sliceIterator(arr, i) {
|
|
3963
3941
|
var _arr = [];
|
|
@@ -4187,14 +4165,13 @@ var require_nfa = __commonJS({
|
|
|
4187
4165
|
}]);
|
|
4188
4166
|
return NFA2;
|
|
4189
4167
|
})();
|
|
4190
|
-
|
|
4168
|
+
module.exports = NFA;
|
|
4191
4169
|
}
|
|
4192
4170
|
});
|
|
4193
4171
|
|
|
4194
4172
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/dfa/dfa-minimizer.js
|
|
4195
4173
|
var require_dfa_minimizer = __commonJS({
|
|
4196
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/dfa/dfa-minimizer.js"(
|
|
4197
|
-
"use strict";
|
|
4174
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/dfa/dfa-minimizer.js"(exports$1, module) {
|
|
4198
4175
|
var _slicedToArray = /* @__PURE__ */ (function() {
|
|
4199
4176
|
function sliceIterator(arr, i) {
|
|
4200
4177
|
var _arr = [];
|
|
@@ -4525,7 +4502,7 @@ var require_dfa_minimizer = __commonJS({
|
|
|
4525
4502
|
}
|
|
4526
4503
|
return currentTransitionMap[s1].has(originalTransitionS1) && currentTransitionMap[s2].has(originalTransitionS2);
|
|
4527
4504
|
}
|
|
4528
|
-
|
|
4505
|
+
module.exports = {
|
|
4529
4506
|
minimize
|
|
4530
4507
|
};
|
|
4531
4508
|
}
|
|
@@ -4533,8 +4510,7 @@ var require_dfa_minimizer = __commonJS({
|
|
|
4533
4510
|
|
|
4534
4511
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/dfa/dfa.js
|
|
4535
4512
|
var require_dfa = __commonJS({
|
|
4536
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/dfa/dfa.js"(
|
|
4537
|
-
"use strict";
|
|
4513
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/dfa/dfa.js"(exports$1, module) {
|
|
4538
4514
|
var _createClass = /* @__PURE__ */ (function() {
|
|
4539
4515
|
function defineProperties(target, props) {
|
|
4540
4516
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -4844,14 +4820,13 @@ var require_dfa = __commonJS({
|
|
|
4844
4820
|
}]);
|
|
4845
4821
|
return DFA2;
|
|
4846
4822
|
})();
|
|
4847
|
-
|
|
4823
|
+
module.exports = DFA;
|
|
4848
4824
|
}
|
|
4849
4825
|
});
|
|
4850
4826
|
|
|
4851
4827
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/state.js
|
|
4852
4828
|
var require_state = __commonJS({
|
|
4853
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/state.js"(
|
|
4854
|
-
"use strict";
|
|
4829
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/state.js"(exports$1, module) {
|
|
4855
4830
|
var _createClass = /* @__PURE__ */ (function() {
|
|
4856
4831
|
function defineProperties(target, props) {
|
|
4857
4832
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -4910,14 +4885,13 @@ var require_state = __commonJS({
|
|
|
4910
4885
|
}]);
|
|
4911
4886
|
return State2;
|
|
4912
4887
|
})();
|
|
4913
|
-
|
|
4888
|
+
module.exports = State;
|
|
4914
4889
|
}
|
|
4915
4890
|
});
|
|
4916
4891
|
|
|
4917
4892
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa-state.js
|
|
4918
4893
|
var require_nfa_state = __commonJS({
|
|
4919
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa-state.js"(
|
|
4920
|
-
"use strict";
|
|
4894
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa-state.js"(exports$1, module) {
|
|
4921
4895
|
var _createClass = /* @__PURE__ */ (function() {
|
|
4922
4896
|
function defineProperties(target, props) {
|
|
4923
4897
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -5109,14 +5083,13 @@ var require_nfa_state = __commonJS({
|
|
|
5109
5083
|
}]);
|
|
5110
5084
|
return NFAState2;
|
|
5111
5085
|
})(State);
|
|
5112
|
-
|
|
5086
|
+
module.exports = NFAState;
|
|
5113
5087
|
}
|
|
5114
5088
|
});
|
|
5115
5089
|
|
|
5116
5090
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/builders.js
|
|
5117
5091
|
var require_builders = __commonJS({
|
|
5118
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/builders.js"(
|
|
5119
|
-
"use strict";
|
|
5092
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/builders.js"(exports$1, module) {
|
|
5120
5093
|
var NFA = require_nfa();
|
|
5121
5094
|
var NFAState = require_nfa_state();
|
|
5122
5095
|
var _require = require_special_symbols();
|
|
@@ -5230,7 +5203,7 @@ var require_builders = __commonJS({
|
|
|
5230
5203
|
fragment.in.addTransition(EPSILON, fragment.out);
|
|
5231
5204
|
return fragment;
|
|
5232
5205
|
}
|
|
5233
|
-
|
|
5206
|
+
module.exports = {
|
|
5234
5207
|
alt,
|
|
5235
5208
|
char,
|
|
5236
5209
|
e,
|
|
@@ -5245,8 +5218,7 @@ var require_builders = __commonJS({
|
|
|
5245
5218
|
|
|
5246
5219
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa-from-regexp.js
|
|
5247
5220
|
var require_nfa_from_regexp = __commonJS({
|
|
5248
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa-from-regexp.js"(
|
|
5249
|
-
"use strict";
|
|
5221
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/nfa/nfa-from-regexp.js"(exports$1, module) {
|
|
5250
5222
|
function _toConsumableArray(arr) {
|
|
5251
5223
|
if (Array.isArray(arr)) {
|
|
5252
5224
|
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
|
|
@@ -5307,7 +5279,7 @@ var require_nfa_from_regexp = __commonJS({
|
|
|
5307
5279
|
return gen(node.expression);
|
|
5308
5280
|
}
|
|
5309
5281
|
};
|
|
5310
|
-
|
|
5282
|
+
module.exports = {
|
|
5311
5283
|
/**
|
|
5312
5284
|
* Builds an NFA from the passed regexp.
|
|
5313
5285
|
*/
|
|
@@ -5329,13 +5301,12 @@ var require_nfa_from_regexp = __commonJS({
|
|
|
5329
5301
|
|
|
5330
5302
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/index.js
|
|
5331
5303
|
var require_finite_automaton = __commonJS({
|
|
5332
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/index.js"(
|
|
5333
|
-
"use strict";
|
|
5304
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/interpreter/finite-automaton/index.js"(exports$1, module) {
|
|
5334
5305
|
var NFA = require_nfa();
|
|
5335
5306
|
var DFA = require_dfa();
|
|
5336
5307
|
var nfaFromRegExp = require_nfa_from_regexp();
|
|
5337
5308
|
var builders = require_builders();
|
|
5338
|
-
|
|
5309
|
+
module.exports = {
|
|
5339
5310
|
/**
|
|
5340
5311
|
* Export NFA and DFA classes.
|
|
5341
5312
|
*/
|
|
@@ -5379,8 +5350,7 @@ var require_finite_automaton = __commonJS({
|
|
|
5379
5350
|
|
|
5380
5351
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/runtime/index.js
|
|
5381
5352
|
var require_runtime = __commonJS({
|
|
5382
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/runtime/index.js"(
|
|
5383
|
-
"use strict";
|
|
5353
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/compat-transpiler/runtime/index.js"(exports$1, module) {
|
|
5384
5354
|
var _createClass = /* @__PURE__ */ (function() {
|
|
5385
5355
|
function defineProperties(target, props) {
|
|
5386
5356
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -5461,7 +5431,7 @@ var require_runtime = __commonJS({
|
|
|
5461
5431
|
}]);
|
|
5462
5432
|
return RegExpTree2;
|
|
5463
5433
|
})();
|
|
5464
|
-
|
|
5434
|
+
module.exports = {
|
|
5465
5435
|
RegExpTree
|
|
5466
5436
|
};
|
|
5467
5437
|
}
|
|
@@ -5469,8 +5439,7 @@ var require_runtime = __commonJS({
|
|
|
5469
5439
|
|
|
5470
5440
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/regexp-tree.js
|
|
5471
5441
|
var require_regexp_tree2 = __commonJS({
|
|
5472
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/regexp-tree.js"(
|
|
5473
|
-
"use strict";
|
|
5442
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/dist/regexp-tree.js"(exports$1, module) {
|
|
5474
5443
|
var compatTranspiler = require_compat_transpiler();
|
|
5475
5444
|
var generator = require_generator();
|
|
5476
5445
|
var optimizer = require_optimizer();
|
|
@@ -5615,22 +5584,20 @@ var require_regexp_tree2 = __commonJS({
|
|
|
5615
5584
|
return re.exec(string);
|
|
5616
5585
|
}
|
|
5617
5586
|
};
|
|
5618
|
-
|
|
5587
|
+
module.exports = regexpTree2;
|
|
5619
5588
|
}
|
|
5620
5589
|
});
|
|
5621
5590
|
|
|
5622
5591
|
// ../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/index.js
|
|
5623
5592
|
var require_regexp_tree3 = __commonJS({
|
|
5624
|
-
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/index.js"(
|
|
5625
|
-
|
|
5626
|
-
module2.exports = require_regexp_tree2();
|
|
5593
|
+
"../../node_modules/.pnpm/regexp-tree@0.1.27/node_modules/regexp-tree/index.js"(exports$1, module) {
|
|
5594
|
+
module.exports = require_regexp_tree2();
|
|
5627
5595
|
}
|
|
5628
5596
|
});
|
|
5629
5597
|
|
|
5630
5598
|
// ../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/heuristic-analyzer.js
|
|
5631
5599
|
var require_heuristic_analyzer = __commonJS({
|
|
5632
|
-
"../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/heuristic-analyzer.js"(
|
|
5633
|
-
"use strict";
|
|
5600
|
+
"../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/heuristic-analyzer.js"(exports$1, module) {
|
|
5634
5601
|
var regexpTree2 = require_regexp_tree3();
|
|
5635
5602
|
var analyzer = require_analyzer();
|
|
5636
5603
|
var HeuristicAnalyzer = class extends analyzer.Analyzer {
|
|
@@ -5683,23 +5650,21 @@ var require_heuristic_analyzer = __commonJS({
|
|
|
5683
5650
|
return nRepetitions;
|
|
5684
5651
|
}
|
|
5685
5652
|
};
|
|
5686
|
-
|
|
5653
|
+
module.exports = HeuristicAnalyzer;
|
|
5687
5654
|
}
|
|
5688
5655
|
});
|
|
5689
5656
|
|
|
5690
5657
|
// ../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/analyzer-family.js
|
|
5691
5658
|
var require_analyzer_family = __commonJS({
|
|
5692
|
-
"../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/analyzer-family.js"(
|
|
5693
|
-
"use strict";
|
|
5659
|
+
"../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/lib/analyzer-family.js"(exports$1, module) {
|
|
5694
5660
|
var heuristicAnalyzer = require_heuristic_analyzer();
|
|
5695
|
-
|
|
5661
|
+
module.exports = [heuristicAnalyzer];
|
|
5696
5662
|
}
|
|
5697
5663
|
});
|
|
5698
5664
|
|
|
5699
5665
|
// ../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/index.js
|
|
5700
5666
|
var require_safe_regex = __commonJS({
|
|
5701
|
-
"../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/index.js"(
|
|
5702
|
-
"use strict";
|
|
5667
|
+
"../../node_modules/.pnpm/safe-regex@2.1.1/node_modules/safe-regex/index.js"(exports$1, module) {
|
|
5703
5668
|
var analyzer = require_analyzer();
|
|
5704
5669
|
var analyzerFamily = require_analyzer_family();
|
|
5705
5670
|
var DEFAULT_SAFE_REP_LIMIT = 25;
|
|
@@ -5751,30 +5716,9 @@ var require_safe_regex = __commonJS({
|
|
|
5751
5716
|
}
|
|
5752
5717
|
return analyzerSaysVulnerable;
|
|
5753
5718
|
}
|
|
5754
|
-
|
|
5719
|
+
module.exports = safeRegex;
|
|
5755
5720
|
}
|
|
5756
5721
|
});
|
|
5757
|
-
|
|
5758
|
-
// src/index.ts
|
|
5759
|
-
var index_exports = {};
|
|
5760
|
-
__export(index_exports, {
|
|
5761
|
-
ApprovedSpecsValidator: () => ApprovedSpecsValidator,
|
|
5762
|
-
ClientGenerator: () => ClientGenerator,
|
|
5763
|
-
CollectionProviderGenerator: () => CollectionProviderGenerator,
|
|
5764
|
-
EndpointFilter: () => EndpointFilter,
|
|
5765
|
-
OpenAPICollectionProvider: () => OpenAPICollectionProvider,
|
|
5766
|
-
OpenAPIParser: () => OpenAPIParser,
|
|
5767
|
-
OpenAPIPlugin: () => OpenAPIPlugin,
|
|
5768
|
-
SchemaResolver: () => SchemaResolver,
|
|
5769
|
-
TypeGenerator: () => TypeGenerator,
|
|
5770
|
-
ZodSchemaGenerator: () => ZodSchemaGenerator,
|
|
5771
|
-
createOpenAPIFetcher: () => createOpenAPIFetcher,
|
|
5772
|
-
createOpenAPIPlugin: () => createOpenAPIPlugin
|
|
5773
|
-
});
|
|
5774
|
-
module.exports = __toCommonJS(index_exports);
|
|
5775
|
-
|
|
5776
|
-
// src/parser/OpenAPIParser.ts
|
|
5777
|
-
var import_swagger_parser = __toESM(require("@apidevtools/swagger-parser"));
|
|
5778
5722
|
var OpenAPIParser = class {
|
|
5779
5723
|
/**
|
|
5780
5724
|
* Parse an OpenAPI specification from URL or file path
|
|
@@ -5793,13 +5737,13 @@ var OpenAPIParser = class {
|
|
|
5793
5737
|
async parse(specPath, options = {}) {
|
|
5794
5738
|
const { dereference = true, validate = true } = options;
|
|
5795
5739
|
try {
|
|
5796
|
-
const api = await
|
|
5740
|
+
const api = await SwaggerParser__default.default.parse(specPath);
|
|
5797
5741
|
if (validate) {
|
|
5798
|
-
await
|
|
5742
|
+
await SwaggerParser__default.default.validate(api);
|
|
5799
5743
|
}
|
|
5800
5744
|
let document;
|
|
5801
5745
|
if (dereference) {
|
|
5802
|
-
document = await
|
|
5746
|
+
document = await SwaggerParser__default.default.dereference(api);
|
|
5803
5747
|
} else {
|
|
5804
5748
|
document = api;
|
|
5805
5749
|
}
|
|
@@ -6139,9 +6083,6 @@ ${fields}
|
|
|
6139
6083
|
}
|
|
6140
6084
|
}
|
|
6141
6085
|
};
|
|
6142
|
-
|
|
6143
|
-
// src/compiler/TypeGenerator.ts
|
|
6144
|
-
var import_zod_to_ts = require("zod-to-ts");
|
|
6145
6086
|
var TypeGenerator = class {
|
|
6146
6087
|
/**
|
|
6147
6088
|
* Generate TypeScript type definition from a Zod schema
|
|
@@ -6161,9 +6102,9 @@ var TypeGenerator = class {
|
|
|
6161
6102
|
generate(zodSchema, options = {}) {
|
|
6162
6103
|
const { typeName = "GeneratedType", includeJsDoc = true } = options;
|
|
6163
6104
|
try {
|
|
6164
|
-
const auxiliaryTypeStore =
|
|
6165
|
-
const { node } =
|
|
6166
|
-
const typeCode =
|
|
6105
|
+
const auxiliaryTypeStore = zodToTs.createAuxiliaryTypeStore();
|
|
6106
|
+
const { node } = zodToTs.zodToTs(zodSchema, { auxiliaryTypeStore });
|
|
6107
|
+
const typeCode = zodToTs.printNode(node);
|
|
6167
6108
|
let result = "";
|
|
6168
6109
|
if (includeJsDoc && zodSchema.description) {
|
|
6169
6110
|
result += `/**
|
|
@@ -6215,12 +6156,12 @@ var TypeGenerator = class {
|
|
|
6215
6156
|
* @returns Complete TypeScript module code
|
|
6216
6157
|
*/
|
|
6217
6158
|
createModule(types, imports = []) {
|
|
6218
|
-
let
|
|
6159
|
+
let module = "";
|
|
6219
6160
|
if (imports.length > 0) {
|
|
6220
|
-
|
|
6161
|
+
module += imports.join("\n") + "\n\n";
|
|
6221
6162
|
}
|
|
6222
|
-
|
|
6223
|
-
return
|
|
6163
|
+
module += Object.values(types).join("\n");
|
|
6164
|
+
return module;
|
|
6224
6165
|
}
|
|
6225
6166
|
};
|
|
6226
6167
|
|
|
@@ -6575,7 +6516,7 @@ var ClientGenerator = class {
|
|
|
6575
6516
|
code += "// Request Schemas (Zod Validation)\n";
|
|
6576
6517
|
code += "// ============================================================================\n\n";
|
|
6577
6518
|
for (const endpoint of endpoints) {
|
|
6578
|
-
|
|
6519
|
+
endpoint.operationId || this.getMethodName(endpoint);
|
|
6579
6520
|
const typeName = this.getOperationTypeName(endpoint);
|
|
6580
6521
|
const schemaName = `${typeName}RequestSchema`;
|
|
6581
6522
|
const schemaCode = this.generateRequestSchemaForEndpoint(endpoint);
|
|
@@ -7698,30 +7639,6 @@ ${paramSchemas.join(",\n")}
|
|
|
7698
7639
|
}
|
|
7699
7640
|
};
|
|
7700
7641
|
|
|
7701
|
-
// src/runtime/OpenAPICollectionProvider.ts
|
|
7702
|
-
var OpenAPICollectionProvider = class {
|
|
7703
|
-
constructor(baseUrl, auth) {
|
|
7704
|
-
this.baseUrl = baseUrl;
|
|
7705
|
-
this.auth = auth;
|
|
7706
|
-
}
|
|
7707
|
-
/**
|
|
7708
|
-
* Fetch items from an API endpoint
|
|
7709
|
-
*/
|
|
7710
|
-
async fetchItems(endpoint) {
|
|
7711
|
-
throw new Error("Not yet implemented");
|
|
7712
|
-
}
|
|
7713
|
-
/**
|
|
7714
|
-
* Fetch a single item by slug
|
|
7715
|
-
*/
|
|
7716
|
-
async fetchItem(endpoint, slug) {
|
|
7717
|
-
throw new Error("Not yet implemented");
|
|
7718
|
-
}
|
|
7719
|
-
};
|
|
7720
|
-
|
|
7721
|
-
// src/prebuild/OpenAPIPlugin.ts
|
|
7722
|
-
var import_fs3 = __toESM(require("fs"));
|
|
7723
|
-
var import_path2 = __toESM(require("path"));
|
|
7724
|
-
|
|
7725
7642
|
// src/utils/EndpointFilter.ts
|
|
7726
7643
|
var EndpointFilter = class {
|
|
7727
7644
|
include;
|
|
@@ -7823,16 +7740,6 @@ var EndpointFilter = class {
|
|
|
7823
7740
|
return new RegExp(`^${result}$`);
|
|
7824
7741
|
}
|
|
7825
7742
|
};
|
|
7826
|
-
|
|
7827
|
-
// src/utils/ApprovedSpecsValidator.ts
|
|
7828
|
-
var import_crypto = __toESM(require("crypto"));
|
|
7829
|
-
var import_fs = __toESM(require("fs"));
|
|
7830
|
-
var import_https = __toESM(require("https"));
|
|
7831
|
-
var import_http = __toESM(require("http"));
|
|
7832
|
-
var import_url = require("url");
|
|
7833
|
-
var import_path = __toESM(require("path"));
|
|
7834
|
-
var import_fs2 = require("fs");
|
|
7835
|
-
var import_net = require("net");
|
|
7836
7743
|
var ApprovedSpecsValidator = class {
|
|
7837
7744
|
allowlist;
|
|
7838
7745
|
cache = /* @__PURE__ */ new Map();
|
|
@@ -7857,7 +7764,7 @@ var ApprovedSpecsValidator = class {
|
|
|
7857
7764
|
*/
|
|
7858
7765
|
buildAllowedDirs() {
|
|
7859
7766
|
const cwd = process.cwd();
|
|
7860
|
-
return [cwd,
|
|
7767
|
+
return [cwd, path2__default.default.join(cwd, "specs"), path2__default.default.join(cwd, ".stackwright")];
|
|
7861
7768
|
}
|
|
7862
7769
|
/**
|
|
7863
7770
|
* Validate that a file path is within allowed directories (path traversal prevention).
|
|
@@ -7868,10 +7775,10 @@ var ApprovedSpecsValidator = class {
|
|
|
7868
7775
|
*/
|
|
7869
7776
|
isPathAllowed(filePath) {
|
|
7870
7777
|
try {
|
|
7871
|
-
const realPath =
|
|
7778
|
+
const realPath = fs.realpathSync(filePath);
|
|
7872
7779
|
return this.ALLOWED_DIRS.some((dir) => {
|
|
7873
|
-
const realDir =
|
|
7874
|
-
return realPath.startsWith(realDir +
|
|
7780
|
+
const realDir = fs.realpathSync(dir);
|
|
7781
|
+
return realPath.startsWith(realDir + path2__default.default.sep) || realPath === realDir;
|
|
7875
7782
|
});
|
|
7876
7783
|
} catch {
|
|
7877
7784
|
return false;
|
|
@@ -7888,7 +7795,7 @@ var ApprovedSpecsValidator = class {
|
|
|
7888
7795
|
if (specUrl.startsWith("file://")) {
|
|
7889
7796
|
return true;
|
|
7890
7797
|
}
|
|
7891
|
-
if (
|
|
7798
|
+
if (fs__default.default.existsSync(specUrl)) {
|
|
7892
7799
|
return !this.isPathAllowed(specUrl);
|
|
7893
7800
|
}
|
|
7894
7801
|
if (!specUrl.startsWith("http://") && !specUrl.startsWith("https://")) {
|
|
@@ -7922,7 +7829,7 @@ var ApprovedSpecsValidator = class {
|
|
|
7922
7829
|
*/
|
|
7923
7830
|
isRedirectSafe(location, originalProtocol) {
|
|
7924
7831
|
try {
|
|
7925
|
-
const redirectUrl = new
|
|
7832
|
+
const redirectUrl = new url.URL(location);
|
|
7926
7833
|
if (redirectUrl.protocol === "http:" && originalProtocol === "https:") {
|
|
7927
7834
|
return false;
|
|
7928
7835
|
}
|
|
@@ -7961,7 +7868,7 @@ var ApprovedSpecsValidator = class {
|
|
|
7961
7868
|
return false;
|
|
7962
7869
|
}
|
|
7963
7870
|
}
|
|
7964
|
-
const ipVersion =
|
|
7871
|
+
const ipVersion = net.isIP(redirectUrl.hostname);
|
|
7965
7872
|
if (ipVersion === 6) {
|
|
7966
7873
|
const blockedPrefixes = [
|
|
7967
7874
|
"::1",
|
|
@@ -7994,12 +7901,12 @@ var ApprovedSpecsValidator = class {
|
|
|
7994
7901
|
*/
|
|
7995
7902
|
readAllowedFile(filePath) {
|
|
7996
7903
|
try {
|
|
7997
|
-
|
|
7998
|
-
const realPath =
|
|
7904
|
+
fs__default.default.lstatSync(filePath);
|
|
7905
|
+
const realPath = fs__default.default.realpathSync(filePath);
|
|
7999
7906
|
if (!this.isPathAllowed(realPath)) {
|
|
8000
7907
|
return { error: "File path outside allowed directories (path traversal blocked)" };
|
|
8001
7908
|
}
|
|
8002
|
-
return { content:
|
|
7909
|
+
return { content: fs__default.default.readFileSync(filePath, "utf8") };
|
|
8003
7910
|
} catch (e) {
|
|
8004
7911
|
const err = e;
|
|
8005
7912
|
if (err.code === "ENOENT") {
|
|
@@ -8072,7 +7979,7 @@ var ApprovedSpecsValidator = class {
|
|
|
8072
7979
|
error: "Invalid hash format in approved spec configuration"
|
|
8073
7980
|
};
|
|
8074
7981
|
}
|
|
8075
|
-
if (!
|
|
7982
|
+
if (!crypto__default.default.timingSafeEqual(
|
|
8076
7983
|
Buffer.from(hashResult.hash, "hex"),
|
|
8077
7984
|
Buffer.from(approved.sha256, "hex")
|
|
8078
7985
|
)) {
|
|
@@ -8130,7 +8037,7 @@ var ApprovedSpecsValidator = class {
|
|
|
8130
8037
|
return { error: contentResult.error };
|
|
8131
8038
|
}
|
|
8132
8039
|
const content = contentResult.content;
|
|
8133
|
-
const hash =
|
|
8040
|
+
const hash = crypto__default.default.createHash("sha256").update(content).digest("hex");
|
|
8134
8041
|
this.cache.set(url, { content, hash });
|
|
8135
8042
|
return { hash };
|
|
8136
8043
|
}
|
|
@@ -8138,18 +8045,18 @@ var ApprovedSpecsValidator = class {
|
|
|
8138
8045
|
* Download content from URL or file.
|
|
8139
8046
|
* Includes path traversal and SSRF protection.
|
|
8140
8047
|
*/
|
|
8141
|
-
async download(url, originalProtocol = "") {
|
|
8142
|
-
if (
|
|
8143
|
-
return this.readAllowedFile(url);
|
|
8048
|
+
async download(url$1, originalProtocol = "") {
|
|
8049
|
+
if (fs__default.default.existsSync(url$1)) {
|
|
8050
|
+
return this.readAllowedFile(url$1);
|
|
8144
8051
|
}
|
|
8145
|
-
if (!url.startsWith("http://") && !url.startsWith("https://")) {
|
|
8146
|
-
return { error: `Invalid URL protocol. Expected http:// or https://, got: ${url}` };
|
|
8052
|
+
if (!url$1.startsWith("http://") && !url$1.startsWith("https://")) {
|
|
8053
|
+
return { error: `Invalid URL protocol. Expected http:// or https://, got: ${url$1}` };
|
|
8147
8054
|
}
|
|
8148
|
-
const parsed = new
|
|
8055
|
+
const parsed = new url.URL(url$1);
|
|
8149
8056
|
const requestProtocol = originalProtocol || parsed.protocol;
|
|
8150
8057
|
return new Promise((resolve) => {
|
|
8151
|
-
const client = url.startsWith("https") ?
|
|
8152
|
-
const req = client.get(url, { timeout: 3e4 }, (res) => {
|
|
8058
|
+
const client = url$1.startsWith("https") ? https__default.default : http__default.default;
|
|
8059
|
+
const req = client.get(url$1, { timeout: 3e4 }, (res) => {
|
|
8153
8060
|
if (res.statusCode && res.statusCode >= 300 && res.statusCode < 400 && res.headers.location) {
|
|
8154
8061
|
const location = res.headers.location;
|
|
8155
8062
|
if (!this.isRedirectSafe(location, requestProtocol)) {
|
|
@@ -8191,7 +8098,7 @@ var ApprovedSpecsValidator = class {
|
|
|
8191
8098
|
urlsMatch(url1, url2) {
|
|
8192
8099
|
const normalize = (u) => {
|
|
8193
8100
|
try {
|
|
8194
|
-
const parsed = new
|
|
8101
|
+
const parsed = new url.URL(u);
|
|
8195
8102
|
const normalized = `${parsed.protocol}//${parsed.hostname}${parsed.pathname}`;
|
|
8196
8103
|
return normalized.replace(/\/$/, "").toLowerCase();
|
|
8197
8104
|
} catch {
|
|
@@ -8342,7 +8249,7 @@ var OpenAPIPlugin = class {
|
|
|
8342
8249
|
async processIntegration(config, projectRoot) {
|
|
8343
8250
|
const { name, spec, auth, mockUrl, collections, endpoints } = config;
|
|
8344
8251
|
console.log(` - Processing integration: ${name}`);
|
|
8345
|
-
const specPath = spec.startsWith("http") ? spec :
|
|
8252
|
+
const specPath = spec.startsWith("http") ? spec : path2__default.default.resolve(projectRoot, spec);
|
|
8346
8253
|
const parser = new OpenAPIParser();
|
|
8347
8254
|
const { document } = await parser.parse(specPath);
|
|
8348
8255
|
if (mockUrl) {
|
|
@@ -8356,8 +8263,8 @@ var OpenAPIPlugin = class {
|
|
|
8356
8263
|
const excludeStr = endpoints.exclude?.length ? ` (exclude: ${endpoints.exclude.join(", ")})` : "";
|
|
8357
8264
|
console.log(` > Filter: include [${includeStr}]${excludeStr}`);
|
|
8358
8265
|
}
|
|
8359
|
-
const outputDir =
|
|
8360
|
-
|
|
8266
|
+
const outputDir = path2__default.default.join(projectRoot, "src", "generated", name);
|
|
8267
|
+
fs__default.default.mkdirSync(outputDir, { recursive: true });
|
|
8361
8268
|
const schemaMapping = await this.generateSchemas(
|
|
8362
8269
|
document,
|
|
8363
8270
|
collections || [],
|
|
@@ -8480,7 +8387,7 @@ import { z } from 'zod';
|
|
|
8480
8387
|
};
|
|
8481
8388
|
}
|
|
8482
8389
|
}
|
|
8483
|
-
|
|
8390
|
+
fs__default.default.writeFileSync(path2__default.default.join(outputDir, "schemas.ts"), schemasCode);
|
|
8484
8391
|
return schemaMapping;
|
|
8485
8392
|
}
|
|
8486
8393
|
async generateTypes(document, collections, outputDir, integrationName) {
|
|
@@ -8505,7 +8412,7 @@ import type * as schemas from './schemas';
|
|
|
8505
8412
|
`;
|
|
8506
8413
|
}
|
|
8507
8414
|
}
|
|
8508
|
-
|
|
8415
|
+
fs__default.default.writeFileSync(path2__default.default.join(outputDir, "types.ts"), typesCode);
|
|
8509
8416
|
}
|
|
8510
8417
|
async generateProvider(document, config, outputDir, integrationName) {
|
|
8511
8418
|
const generator = new CollectionProviderGenerator(document);
|
|
@@ -8559,7 +8466,7 @@ import { ${Array.from(schemaImports).join(", ")} } from './schemas';
|
|
|
8559
8466
|
|
|
8560
8467
|
`;
|
|
8561
8468
|
providerCode += classBlocks.join("\n");
|
|
8562
|
-
|
|
8469
|
+
fs__default.default.writeFileSync(path2__default.default.join(outputDir, "provider.ts"), providerCode);
|
|
8563
8470
|
}
|
|
8564
8471
|
async generateClient(document, outputDir, integrationName, schemaMapping, endpointFilter) {
|
|
8565
8472
|
const paths = document.paths || {};
|
|
@@ -8583,7 +8490,7 @@ import { ${Array.from(schemaImports).join(", ")} } from './schemas';
|
|
|
8583
8490
|
validateResponses: true,
|
|
8584
8491
|
strictValidation: false
|
|
8585
8492
|
});
|
|
8586
|
-
|
|
8493
|
+
fs__default.default.writeFileSync(path2__default.default.join(outputDir, "client.ts"), clientCode);
|
|
8587
8494
|
}
|
|
8588
8495
|
extractComponentName(ref) {
|
|
8589
8496
|
const parts = ref.split("/");
|
|
@@ -8615,8 +8522,6 @@ import { ${Array.from(schemaImports).join(", ")} } from './schemas';
|
|
|
8615
8522
|
function createOpenAPIPlugin() {
|
|
8616
8523
|
return new OpenAPIPlugin();
|
|
8617
8524
|
}
|
|
8618
|
-
|
|
8619
|
-
// src/sources/openapi.ts
|
|
8620
8525
|
var BLOCKED_HOST_PATTERNS = [
|
|
8621
8526
|
/^localhost$/i,
|
|
8622
8527
|
/^127\./,
|
|
@@ -8641,26 +8546,38 @@ var BLOCKED_HOST_PATTERNS = [
|
|
|
8641
8546
|
// AWS metadata endpoint
|
|
8642
8547
|
/^metadata\.googleapis\.com$/i,
|
|
8643
8548
|
// GCP metadata endpoint
|
|
8549
|
+
/^metadata\.azure\.com$/i,
|
|
8550
|
+
// Azure metadata endpoint
|
|
8551
|
+
/^imds\.azure\.com$/i,
|
|
8552
|
+
// Azure IMDS endpoint
|
|
8644
8553
|
/^100\.100\.100\.200$/
|
|
8645
8554
|
// Alibaba Cloud metadata
|
|
8646
8555
|
];
|
|
8556
|
+
var BLOCKED_IPV6_PREFIXES = [
|
|
8557
|
+
"::1",
|
|
8558
|
+
// Loopback
|
|
8559
|
+
"fe80:",
|
|
8560
|
+
// Link-local
|
|
8561
|
+
"fc",
|
|
8562
|
+
// Unique local (fc00::/7 — covers fc00:: through fcff::)
|
|
8563
|
+
"fd"
|
|
8564
|
+
// Unique local (short form)
|
|
8565
|
+
];
|
|
8647
8566
|
var ALLOWED_PROTOCOLS = ["http:", "https:"];
|
|
8648
|
-
function
|
|
8567
|
+
function validateUrlSafe(baseUrl) {
|
|
8649
8568
|
let url;
|
|
8650
8569
|
try {
|
|
8651
8570
|
url = new URL(baseUrl);
|
|
8652
8571
|
} catch {
|
|
8653
|
-
throw new Error("
|
|
8572
|
+
throw new Error("SECURITY: baseUrl must be a valid absolute URL");
|
|
8654
8573
|
}
|
|
8655
8574
|
if (!ALLOWED_PROTOCOLS.includes(url.protocol)) {
|
|
8656
|
-
throw new Error(
|
|
8657
|
-
"SSRF Prevention: Only HTTP and HTTPS protocols are allowed, got " + url.protocol
|
|
8658
|
-
);
|
|
8575
|
+
throw new Error("SECURITY: Only HTTP and HTTPS protocols are allowed, got " + url.protocol);
|
|
8659
8576
|
}
|
|
8660
8577
|
const hostname = url.hostname.toLowerCase();
|
|
8661
8578
|
for (const pattern of BLOCKED_HOST_PATTERNS) {
|
|
8662
8579
|
if (pattern.test(hostname)) {
|
|
8663
|
-
throw new Error("
|
|
8580
|
+
throw new Error("SECURITY: Blocked internal network address: " + hostname);
|
|
8664
8581
|
}
|
|
8665
8582
|
}
|
|
8666
8583
|
const ip = url.hostname;
|
|
@@ -8669,37 +8586,75 @@ function validateFetchUrl(baseUrl) {
|
|
|
8669
8586
|
const first = octets[0];
|
|
8670
8587
|
const second = octets[1];
|
|
8671
8588
|
if (first !== void 0 && first === 127) {
|
|
8672
|
-
throw new Error("
|
|
8589
|
+
throw new Error("SECURITY: Base URL resolves to private IP");
|
|
8673
8590
|
}
|
|
8674
8591
|
if (first !== void 0 && first === 10) {
|
|
8675
|
-
throw new Error("
|
|
8592
|
+
throw new Error("SECURITY: Base URL resolves to private IP");
|
|
8676
8593
|
}
|
|
8677
8594
|
if (first !== void 0 && second !== void 0 && first === 172 && second >= 16 && second <= 31) {
|
|
8678
|
-
throw new Error("
|
|
8595
|
+
throw new Error("SECURITY: Base URL resolves to private IP");
|
|
8679
8596
|
}
|
|
8680
8597
|
if (first !== void 0 && second !== void 0 && first === 192 && second === 168) {
|
|
8681
|
-
throw new Error("
|
|
8598
|
+
throw new Error("SECURITY: Base URL resolves to private IP");
|
|
8682
8599
|
}
|
|
8683
8600
|
if (first !== void 0 && second !== void 0 && first === 169 && second === 254) {
|
|
8684
|
-
throw new Error("
|
|
8601
|
+
throw new Error("SECURITY: Base URL resolves to private IP");
|
|
8685
8602
|
}
|
|
8686
8603
|
if (first !== void 0 && first === 0) {
|
|
8687
|
-
throw new Error("
|
|
8604
|
+
throw new Error("SECURITY: Base URL resolves to private IP");
|
|
8605
|
+
}
|
|
8606
|
+
}
|
|
8607
|
+
const cleanHostname = hostname.replace(/^\[|\]$/g, "");
|
|
8608
|
+
const ipVersion = net.isIP(cleanHostname);
|
|
8609
|
+
if (ipVersion === 6) {
|
|
8610
|
+
for (const prefix of BLOCKED_IPV6_PREFIXES) {
|
|
8611
|
+
if (cleanHostname.startsWith(prefix)) {
|
|
8612
|
+
throw new Error("SECURITY: Base URL resolves to private IP");
|
|
8613
|
+
}
|
|
8614
|
+
}
|
|
8615
|
+
if (cleanHostname.startsWith("::ffff:")) {
|
|
8616
|
+
const mapped = cleanHostname.slice("::ffff:".length);
|
|
8617
|
+
let octets = null;
|
|
8618
|
+
const decMatch = mapped.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/);
|
|
8619
|
+
if (decMatch) {
|
|
8620
|
+
octets = decMatch.slice(1, 5).map(Number);
|
|
8621
|
+
}
|
|
8622
|
+
const hexMatch = mapped.match(/^([0-9a-f]{1,4}):([0-9a-f]{1,4})$/i);
|
|
8623
|
+
if (!octets && hexMatch && hexMatch[1] !== void 0 && hexMatch[2] !== void 0) {
|
|
8624
|
+
const high = parseInt(hexMatch[1], 16);
|
|
8625
|
+
const low = parseInt(hexMatch[2], 16);
|
|
8626
|
+
octets = [high >> 8 & 255, high & 255, low >> 8 & 255, low & 255];
|
|
8627
|
+
}
|
|
8628
|
+
if (octets !== null) {
|
|
8629
|
+
const o0 = octets[0];
|
|
8630
|
+
const o1 = octets[1];
|
|
8631
|
+
if (o0 === 127 || // 127.0.0.0/8 loopback
|
|
8632
|
+
o0 === 10 || // 10.0.0.0/8 private
|
|
8633
|
+
o0 === 0 || // 0.0.0.0/8 current network
|
|
8634
|
+
o0 === 172 && o1 !== void 0 && o1 >= 16 && o1 <= 31 || // 172.16/12 private
|
|
8635
|
+
o0 === 192 && o1 === 168 || // 192.168/16 private
|
|
8636
|
+
o0 === 169 && o1 === 254) {
|
|
8637
|
+
throw new Error("SECURITY: Base URL resolves to private IP");
|
|
8638
|
+
}
|
|
8639
|
+
} else {
|
|
8640
|
+
throw new Error("SECURITY: Base URL resolves to unrecognisable IPv4-mapped address");
|
|
8641
|
+
}
|
|
8688
8642
|
}
|
|
8689
8643
|
}
|
|
8690
8644
|
return url;
|
|
8691
8645
|
}
|
|
8646
|
+
var isUrlSafe = validateUrlSafe;
|
|
8692
8647
|
function validateEndpoint(endpoint) {
|
|
8693
8648
|
if (endpoint.includes("..")) {
|
|
8694
|
-
throw new Error("
|
|
8649
|
+
throw new Error("SECURITY: Path traversal detected in endpoint");
|
|
8695
8650
|
}
|
|
8696
8651
|
if (endpoint.includes("\\")) {
|
|
8697
|
-
throw new Error("
|
|
8652
|
+
throw new Error("SECURITY: Backslash detected in endpoint");
|
|
8698
8653
|
}
|
|
8699
8654
|
}
|
|
8700
8655
|
function createOpenAPIFetcher(config) {
|
|
8701
8656
|
const { baseUrl, endpoint, method = "get", params, body, headers = {}, auth, schema } = config;
|
|
8702
|
-
const validatedBaseUrl =
|
|
8657
|
+
const validatedBaseUrl = validateUrlSafe(baseUrl);
|
|
8703
8658
|
validateEndpoint(endpoint);
|
|
8704
8659
|
return async () => {
|
|
8705
8660
|
const url = new URL(endpoint, validatedBaseUrl.toString());
|
|
@@ -8724,7 +8679,9 @@ function createOpenAPIFetcher(config) {
|
|
|
8724
8679
|
const response = await fetch(url.toString(), {
|
|
8725
8680
|
method: method.toUpperCase(),
|
|
8726
8681
|
headers: requestHeaders,
|
|
8727
|
-
body: supportsBody && body ? JSON.stringify(body) : null
|
|
8682
|
+
body: supportsBody && body ? JSON.stringify(body) : null,
|
|
8683
|
+
redirect: "error"
|
|
8684
|
+
// Prevent SSRF via 301/302 redirect to internal addresses
|
|
8728
8685
|
});
|
|
8729
8686
|
if (!response.ok) {
|
|
8730
8687
|
const safeStatus = response.status;
|
|
@@ -8737,18 +8694,19 @@ function createOpenAPIFetcher(config) {
|
|
|
8737
8694
|
return result;
|
|
8738
8695
|
};
|
|
8739
8696
|
}
|
|
8740
|
-
|
|
8741
|
-
|
|
8742
|
-
|
|
8743
|
-
|
|
8744
|
-
|
|
8745
|
-
|
|
8746
|
-
|
|
8747
|
-
|
|
8748
|
-
|
|
8749
|
-
|
|
8750
|
-
|
|
8751
|
-
|
|
8752
|
-
|
|
8753
|
-
|
|
8754
|
-
|
|
8697
|
+
|
|
8698
|
+
exports.ApprovedSpecsValidator = ApprovedSpecsValidator;
|
|
8699
|
+
exports.ClientGenerator = ClientGenerator;
|
|
8700
|
+
exports.CollectionProviderGenerator = CollectionProviderGenerator;
|
|
8701
|
+
exports.EndpointFilter = EndpointFilter;
|
|
8702
|
+
exports.OpenAPIParser = OpenAPIParser;
|
|
8703
|
+
exports.OpenAPIPlugin = OpenAPIPlugin;
|
|
8704
|
+
exports.SchemaResolver = SchemaResolver;
|
|
8705
|
+
exports.TypeGenerator = TypeGenerator;
|
|
8706
|
+
exports.ZodSchemaGenerator = ZodSchemaGenerator;
|
|
8707
|
+
exports.createOpenAPIFetcher = createOpenAPIFetcher;
|
|
8708
|
+
exports.createOpenAPIPlugin = createOpenAPIPlugin;
|
|
8709
|
+
exports.isUrlSafe = isUrlSafe;
|
|
8710
|
+
exports.validateUrlSafe = validateUrlSafe;
|
|
8711
|
+
//# sourceMappingURL=index.js.map
|
|
8712
|
+
//# sourceMappingURL=index.js.map
|