@cmflow/atlas 3.4.0-beta.8 → 3.4.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 (50) hide show
  1. package/README.md +110 -18
  2. package/dist/{types-smD5SZe9.d.mts → UserConfig-BlRknCRh.d.mts} +40 -15
  3. package/dist/bin/atlas.d.mts +2 -0
  4. package/dist/bin/atlas.mjs +22554 -2981
  5. package/dist/bin/atlas.mjs.map +1 -0
  6. package/dist/defineExpressionRule-GhkeHHT8.mjs +10 -0
  7. package/dist/defineExpressionRule-GhkeHHT8.mjs.map +1 -0
  8. package/dist/dist-DedUrNm2.mjs +6950 -0
  9. package/dist/dist-DedUrNm2.mjs.map +1 -0
  10. package/dist/index.d.mts +17 -6
  11. package/dist/index.mjs +1317 -1
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/rolldown-runtime-CGR6nZuH.mjs +34 -0
  14. package/dist/routeBackendTopologyService-bbiOHBq0.mjs +8769 -0
  15. package/dist/routeBackendTopologyService-bbiOHBq0.mjs.map +1 -0
  16. package/dist/rules/lodashGetRule.d.mts +2 -1
  17. package/dist/rules/lodashGetRule.mjs +23 -1
  18. package/dist/rules/lodashGetRule.mjs.map +1 -1
  19. package/dist/rules/mappingUtilityRule.d.mts +2 -1
  20. package/dist/rules/mappingUtilityRule.mjs +37 -1
  21. package/dist/rules/mappingUtilityRule.mjs.map +1 -1
  22. package/dist/rules/memberGetFieldRule.d.mts +2 -1
  23. package/dist/rules/memberGetFieldRule.mjs +26 -1
  24. package/dist/rules/memberGetFieldRule.mjs.map +1 -1
  25. package/dist/taskProgressService-BIc_o1wl.mjs +1247 -0
  26. package/dist/taskProgressService-BIc_o1wl.mjs.map +1 -0
  27. package/dist/token-CiiblKFL.mjs +62 -0
  28. package/dist/token-CiiblKFL.mjs.map +1 -0
  29. package/dist/token-util-Br4-y5kE.mjs +7 -0
  30. package/dist/token-util-Dnzm6rU4.mjs +471 -0
  31. package/dist/token-util-Dnzm6rU4.mjs.map +1 -0
  32. package/dist/workers/routeBackendTopologyWorker.d.mts +2 -0
  33. package/dist/workers/routeBackendTopologyWorker.mjs +29 -19
  34. package/dist/workers/routeBackendTopologyWorker.mjs.map +1 -0
  35. package/package.json +15 -14
  36. package/dist/defineExpressionRule-Dfvzj6n2.mjs +0 -2
  37. package/dist/defineExpressionRule-Dfvzj6n2.mjs.map +0 -1
  38. package/dist/routeBackendTopologyService-DkNyCtKt.mjs +0 -815
  39. package/dist/rules/cleanObjectRule.d.mts +0 -6
  40. package/dist/rules/cleanObjectRule.mjs +0 -2
  41. package/dist/rules/cleanObjectRule.mjs.map +0 -1
  42. package/dist/rules/cmsI18nFieldRule.d.mts +0 -12
  43. package/dist/rules/cmsI18nFieldRule.mjs +0 -2
  44. package/dist/rules/cmsI18nFieldRule.mjs.map +0 -1
  45. package/dist/rules/dateConversionRule.d.mts +0 -6
  46. package/dist/rules/dateConversionRule.mjs +0 -2
  47. package/dist/rules/dateConversionRule.mjs.map +0 -1
  48. package/dist/rules/quableI18nFieldRule.d.mts +0 -6
  49. package/dist/rules/quableI18nFieldRule.mjs +0 -2
  50. package/dist/rules/quableI18nFieldRule.mjs.map +0 -1
package/dist/index.mjs CHANGED
@@ -1,2 +1,1318 @@
1
- import{t as e}from"./defineExpressionRule-Dfvzj6n2.mjs";import{cmsI18nFieldRule as t}from"./rules/cmsI18nFieldRule.mjs";import{quableI18nFieldRule as n}from"./rules/quableI18nFieldRule.mjs";import{AsyncLocalStorage as r}from"node:async_hooks";import{spinner as i}from"@clack/prompts";function a(e){return e}function o(e){return e}const s=new class{async fetch(e,t){let n={accept:`application/json`,...t?.headers},r=await fetch(e,{...t,headers:n});if(!r.ok)throw Error(`Unable to fetch ${e}: ${r.status} ${r.statusText}`);if(t?.onProgress){let e=r.body?.getReader();if(!e)return r.json();let n=new TextDecoder,i=``;for(;;){let{done:r,value:a}=await e.read();if(r)break;i+=n.decode(a,{stream:!0}),t.onProgress(i)}return i+n.decode()}return r}async get(e,t){return(await this.fetch(e,t)).json()}};function c(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}const l=new class{#e=new r;attach(e,t){return this.#e.run(e,t)}log(e){this.#e.getStore()?.log(e)}report(e){let t=this.#e.getStore();(t?.report||t?.log)?.(e)}createStepProgress(e=e=>({id:e,title:e})){let t=i(),n,r=e=>{if(!n)return;let r=c(Date.now()-n.startedAt);t.stop(`${e||n.completedTitle||`${n.title} completed`} (${r})`),n=void 0},a=e=>{if(n?.id===e.id){t.message(e.detail?`${e.title}: ${e.detail}`:e.title);return}r(),n={id:e.id,title:e.title,completedTitle:e.completedTitle,startedAt:Date.now()},t.start(e.detail?`${e.title}: ${e.detail}`:e.title)},o=r=>this.attach({log:e=>t.message(n?`${n.title}: ${e}`:e),report:t=>a(e(t))},r);return{report(t){a(e(t))},start:a,execute:o,run:async(e,t)=>{a(e),await new Promise(e=>setImmediate(e));let n=await o(t);return r(),n},finish(e){r(e)},fail(e){if(!n)return;let r=c(Date.now()-n.startedAt);t.stop(`${e} (${r})`),n=void 0}}}};async function u(e,t){try{let n=await s.fetch(e,{signal:t?AbortSignal.timeout(t):void 0,onProgress(e){l.log(`Downloading (${(e.length/1048576).toFixed(1)} MB)`)}});return!n||typeof n==`object`?n:(l.log(`Parsing document`),JSON.parse(n))}catch(n){throw n instanceof Error&&(n.name===`AbortError`||n.name===`TimeoutError`)?Error(`OpenAPI download timed out after ${t}ms: ${e}`):Error(`Unable to fetch OpenAPI document from ${e}: ${n instanceof Error?n.message:String(n)}`)}}function d(e,t){if(!e||typeof e!=`object`||typeof e.$ref!=`string`||!e.$ref.startsWith(`#/`))return e;let n=t;for(let t of e.$ref.replace(`#/`,``).split(`/`).map(e=>e.replace(/~1/g,`/`).replace(/~0/g,`~`)))if(n=n?.[t],n===void 0)return e;return n}function f(e){return/^\d+$/.test(e)&&Number(e)>=200&&Number(e)<=299}function p(e,t){if(!e||typeof e!=`object`)return;if(e[`application/json`]?.schema)return d(e[`application/json`].schema,t);let n=Object.values(e).find(e=>e?.schema);return n?d(n.schema,t):void 0}function m(e,t,n=``){let r=d(e,t);if(!r||typeof r!=`object`)return[];if(Array.isArray(r.allOf))return r.allOf.flatMap(e=>m(e,t,n));if(r.type===`array`||r.items){let e=n?`${n}[]`:`[]`;return m(r.items,t,e)}let i=r.properties||{};return Object.keys(i).length?Object.entries(i).flatMap(([e,r])=>m(r,t,n?`${n}.${e}`:e)):n?[{path:n,description:r.description,deprecated:r.deprecated}]:[]}function h(e){return e===`query`?`QUERY`:e===`path`?`PATH`:e===`header`?`HEADER`:null}function g(e,t){let n=new Map,r=Array.isArray(e.parameters)?e.parameters:[];for(let e of r){let r=d(e,t),i=h(r?.in);if(!r||!i||!r.name)continue;let a=m(r.schema,t,r.name),o=a.length?a:[{path:r.name,description:r.description,deprecated:r.deprecated}];for(let e of o)n.set(`${i}:${e.path}`,{path:e.path,description:e.description||r.description,deprecated:e.deprecated??r.deprecated??!1,type:i})}let i=d(e.requestBody,t);if(i?.content){let e=p(i.content,t);for(let r of m(e,t))n.set(`BODY:${r.path}`,{path:r.path,description:r.description||i.description,deprecated:r.deprecated??!1,type:`BODY`})}return[...n.values()]}function _(e,t){let n=new Map,r=e?.responses||{};for(let[e,i]of Object.entries(r)){if(!f(e))continue;let r=d(i,t),a=p(r?.content,t);for(let e of m(a,t))n.set(e.path,{path:e.path,description:e.description||r?.description,deprecated:e.deprecated??!1,type:`RESPONSE_BODY`})}return[...n.values()]}function v(e){let t=new Map;for(let[n,r]of Object.entries(e.paths||{}))for(let[i,a]of Object.entries(r||{})){if(!/^(get|post|put|patch|delete|head|options)$/i.test(i))continue;let r=i.toUpperCase();for(let i of[...g(a,e),..._(a,e)]){let e=`${r}:${n}:${i.path}`;t.has(e)||t.set(e,{route:n,method:r,field:i.path,description:i.description})}}return[...t.values()]}async function y(e){return v(await u(e.url,e.timeoutMs))}export{t as cmsI18nFieldRule,o as defineBackendSource,a as defineConfig,e as defineExpressionRule,s as httpClient,y as openapiSource,n as quableI18nFieldRule};
1
+ import { fileURLToPath as __atlasFileURLToPath } from "node:url";
2
+ const __filename = __atlasFileURLToPath(import.meta.url);
3
+ import { r as __toESM, t as __commonJSMin } from "./rolldown-runtime-CGR6nZuH.mjs";
4
+ import { o as getUserConfig } from "./taskProgressService-BIc_o1wl.mjs";
5
+ import { a as loadOpenApiDocument, n as extractOpenApiBackendProperties, o as httpClient, t as require_dist } from "./dist-DedUrNm2.mjs";
6
+ import { t as defineExpressionRule } from "./defineExpressionRule-GhkeHHT8.mjs";
7
+ import path from "node:path";
8
+ import fsPromises from "node:fs/promises";
9
+
10
+ //#region src/fn/defineConfig.ts
11
+ function defineConfig(config) {
12
+ return config;
13
+ }
14
+
15
+ //#endregion
16
+ //#region src/fn/defineBackendSource.ts
17
+ var import_dist = require_dist();
18
+ const refreshEnvironmentVariable = "ATLAS_BACKEND_SOURCE_REFRESH";
19
+ function defineBackendSource(source) {
20
+ if (!source.cache || !source.resolve) return source;
21
+ const resolve = source.resolve;
22
+ return {
23
+ ...source,
24
+ resolve: async () => {
25
+ if (!(process.env[refreshEnvironmentVariable] === "true")) try {
26
+ const cached = (0, import_dist.parse)(await fsPromises.readFile(source.cache, "utf8"));
27
+ if (!Array.isArray(cached)) throw new Error("cache must contain a YAML array of backend properties");
28
+ return cached;
29
+ } catch (error) {
30
+ if (!(error instanceof Error) || !("code" in error) || error.code !== "ENOENT") throw error;
31
+ }
32
+ const properties = await resolve();
33
+ await fsPromises.mkdir(path.dirname(source.cache), { recursive: true });
34
+ await fsPromises.writeFile(source.cache, `${(0, import_dist.stringify)(properties)}\n`);
35
+ return properties;
36
+ }
37
+ };
38
+ }
39
+
40
+ //#endregion
41
+ //#region ../../node_modules/lodash/isArray.js
42
+ var require_isArray = /* @__PURE__ */ __commonJSMin(((exports, module) => {
43
+ /**
44
+ * Checks if `value` is classified as an `Array` object.
45
+ *
46
+ * @static
47
+ * @memberOf _
48
+ * @since 0.1.0
49
+ * @category Lang
50
+ * @param {*} value The value to check.
51
+ * @returns {boolean} Returns `true` if `value` is an array, else `false`.
52
+ * @example
53
+ *
54
+ * _.isArray([1, 2, 3]);
55
+ * // => true
56
+ *
57
+ * _.isArray(document.body.children);
58
+ * // => false
59
+ *
60
+ * _.isArray('abc');
61
+ * // => false
62
+ *
63
+ * _.isArray(_.noop);
64
+ * // => false
65
+ */
66
+ var isArray = Array.isArray;
67
+ module.exports = isArray;
68
+ }));
69
+
70
+ //#endregion
71
+ //#region ../../node_modules/lodash/_freeGlobal.js
72
+ var require__freeGlobal = /* @__PURE__ */ __commonJSMin(((exports, module) => {
73
+ /** Detect free variable `global` from Node.js. */
74
+ var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
75
+ module.exports = freeGlobal;
76
+ }));
77
+
78
+ //#endregion
79
+ //#region ../../node_modules/lodash/_root.js
80
+ var require__root = /* @__PURE__ */ __commonJSMin(((exports, module) => {
81
+ var freeGlobal = require__freeGlobal();
82
+ /** Detect free variable `self`. */
83
+ var freeSelf = typeof self == "object" && self && self.Object === Object && self;
84
+ /** Used as a reference to the global object. */
85
+ var root = freeGlobal || freeSelf || Function("return this")();
86
+ module.exports = root;
87
+ }));
88
+
89
+ //#endregion
90
+ //#region ../../node_modules/lodash/_Symbol.js
91
+ var require__Symbol = /* @__PURE__ */ __commonJSMin(((exports, module) => {
92
+ /** Built-in value references. */
93
+ var Symbol = require__root().Symbol;
94
+ module.exports = Symbol;
95
+ }));
96
+
97
+ //#endregion
98
+ //#region ../../node_modules/lodash/_getRawTag.js
99
+ var require__getRawTag = /* @__PURE__ */ __commonJSMin(((exports, module) => {
100
+ var Symbol = require__Symbol();
101
+ /** Used for built-in method references. */
102
+ var objectProto = Object.prototype;
103
+ /** Used to check objects for own properties. */
104
+ var hasOwnProperty = objectProto.hasOwnProperty;
105
+ /**
106
+ * Used to resolve the
107
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
108
+ * of values.
109
+ */
110
+ var nativeObjectToString = objectProto.toString;
111
+ /** Built-in value references. */
112
+ var symToStringTag = Symbol ? Symbol.toStringTag : void 0;
113
+ /**
114
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
115
+ *
116
+ * @private
117
+ * @param {*} value The value to query.
118
+ * @returns {string} Returns the raw `toStringTag`.
119
+ */
120
+ function getRawTag(value) {
121
+ var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag];
122
+ try {
123
+ value[symToStringTag] = void 0;
124
+ var unmasked = true;
125
+ } catch (e) {}
126
+ var result = nativeObjectToString.call(value);
127
+ if (unmasked) {
128
+ if (isOwn) value[symToStringTag] = tag;
129
+ else delete value[symToStringTag];
130
+ }
131
+ return result;
132
+ }
133
+ module.exports = getRawTag;
134
+ }));
135
+
136
+ //#endregion
137
+ //#region ../../node_modules/lodash/_objectToString.js
138
+ var require__objectToString = /* @__PURE__ */ __commonJSMin(((exports, module) => {
139
+ /**
140
+ * Used to resolve the
141
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
142
+ * of values.
143
+ */
144
+ var nativeObjectToString = Object.prototype.toString;
145
+ /**
146
+ * Converts `value` to a string using `Object.prototype.toString`.
147
+ *
148
+ * @private
149
+ * @param {*} value The value to convert.
150
+ * @returns {string} Returns the converted string.
151
+ */
152
+ function objectToString(value) {
153
+ return nativeObjectToString.call(value);
154
+ }
155
+ module.exports = objectToString;
156
+ }));
157
+
158
+ //#endregion
159
+ //#region ../../node_modules/lodash/_baseGetTag.js
160
+ var require__baseGetTag = /* @__PURE__ */ __commonJSMin(((exports, module) => {
161
+ var Symbol = require__Symbol();
162
+ var getRawTag = require__getRawTag();
163
+ var objectToString = require__objectToString();
164
+ /** `Object#toString` result references. */
165
+ var nullTag = "[object Null]";
166
+ var undefinedTag = "[object Undefined]";
167
+ /** Built-in value references. */
168
+ var symToStringTag = Symbol ? Symbol.toStringTag : void 0;
169
+ /**
170
+ * The base implementation of `getTag` without fallbacks for buggy environments.
171
+ *
172
+ * @private
173
+ * @param {*} value The value to query.
174
+ * @returns {string} Returns the `toStringTag`.
175
+ */
176
+ function baseGetTag(value) {
177
+ if (value == null) return value === void 0 ? undefinedTag : nullTag;
178
+ return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
179
+ }
180
+ module.exports = baseGetTag;
181
+ }));
182
+
183
+ //#endregion
184
+ //#region ../../node_modules/lodash/isObjectLike.js
185
+ var require_isObjectLike = /* @__PURE__ */ __commonJSMin(((exports, module) => {
186
+ /**
187
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
188
+ * and has a `typeof` result of "object".
189
+ *
190
+ * @static
191
+ * @memberOf _
192
+ * @since 4.0.0
193
+ * @category Lang
194
+ * @param {*} value The value to check.
195
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
196
+ * @example
197
+ *
198
+ * _.isObjectLike({});
199
+ * // => true
200
+ *
201
+ * _.isObjectLike([1, 2, 3]);
202
+ * // => true
203
+ *
204
+ * _.isObjectLike(_.noop);
205
+ * // => false
206
+ *
207
+ * _.isObjectLike(null);
208
+ * // => false
209
+ */
210
+ function isObjectLike(value) {
211
+ return value != null && typeof value == "object";
212
+ }
213
+ module.exports = isObjectLike;
214
+ }));
215
+
216
+ //#endregion
217
+ //#region ../../node_modules/lodash/isSymbol.js
218
+ var require_isSymbol = /* @__PURE__ */ __commonJSMin(((exports, module) => {
219
+ var baseGetTag = require__baseGetTag();
220
+ var isObjectLike = require_isObjectLike();
221
+ /** `Object#toString` result references. */
222
+ var symbolTag = "[object Symbol]";
223
+ /**
224
+ * Checks if `value` is classified as a `Symbol` primitive or object.
225
+ *
226
+ * @static
227
+ * @memberOf _
228
+ * @since 4.0.0
229
+ * @category Lang
230
+ * @param {*} value The value to check.
231
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
232
+ * @example
233
+ *
234
+ * _.isSymbol(Symbol.iterator);
235
+ * // => true
236
+ *
237
+ * _.isSymbol('abc');
238
+ * // => false
239
+ */
240
+ function isSymbol(value) {
241
+ return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag;
242
+ }
243
+ module.exports = isSymbol;
244
+ }));
245
+
246
+ //#endregion
247
+ //#region ../../node_modules/lodash/_isKey.js
248
+ var require__isKey = /* @__PURE__ */ __commonJSMin(((exports, module) => {
249
+ var isArray = require_isArray();
250
+ var isSymbol = require_isSymbol();
251
+ /** Used to match property names within property paths. */
252
+ var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/;
253
+ var reIsPlainProp = /^\w*$/;
254
+ /**
255
+ * Checks if `value` is a property name and not a property path.
256
+ *
257
+ * @private
258
+ * @param {*} value The value to check.
259
+ * @param {Object} [object] The object to query keys on.
260
+ * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
261
+ */
262
+ function isKey(value, object) {
263
+ if (isArray(value)) return false;
264
+ var type = typeof value;
265
+ if (type == "number" || type == "symbol" || type == "boolean" || value == null || isSymbol(value)) return true;
266
+ return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object(object);
267
+ }
268
+ module.exports = isKey;
269
+ }));
270
+
271
+ //#endregion
272
+ //#region ../../node_modules/lodash/isObject.js
273
+ var require_isObject = /* @__PURE__ */ __commonJSMin(((exports, module) => {
274
+ /**
275
+ * Checks if `value` is the
276
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
277
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
278
+ *
279
+ * @static
280
+ * @memberOf _
281
+ * @since 0.1.0
282
+ * @category Lang
283
+ * @param {*} value The value to check.
284
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
285
+ * @example
286
+ *
287
+ * _.isObject({});
288
+ * // => true
289
+ *
290
+ * _.isObject([1, 2, 3]);
291
+ * // => true
292
+ *
293
+ * _.isObject(_.noop);
294
+ * // => true
295
+ *
296
+ * _.isObject(null);
297
+ * // => false
298
+ */
299
+ function isObject(value) {
300
+ var type = typeof value;
301
+ return value != null && (type == "object" || type == "function");
302
+ }
303
+ module.exports = isObject;
304
+ }));
305
+
306
+ //#endregion
307
+ //#region ../../node_modules/lodash/isFunction.js
308
+ var require_isFunction = /* @__PURE__ */ __commonJSMin(((exports, module) => {
309
+ var baseGetTag = require__baseGetTag();
310
+ var isObject = require_isObject();
311
+ /** `Object#toString` result references. */
312
+ var asyncTag = "[object AsyncFunction]";
313
+ var funcTag = "[object Function]";
314
+ var genTag = "[object GeneratorFunction]";
315
+ var proxyTag = "[object Proxy]";
316
+ /**
317
+ * Checks if `value` is classified as a `Function` object.
318
+ *
319
+ * @static
320
+ * @memberOf _
321
+ * @since 0.1.0
322
+ * @category Lang
323
+ * @param {*} value The value to check.
324
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
325
+ * @example
326
+ *
327
+ * _.isFunction(_);
328
+ * // => true
329
+ *
330
+ * _.isFunction(/abc/);
331
+ * // => false
332
+ */
333
+ function isFunction(value) {
334
+ if (!isObject(value)) return false;
335
+ var tag = baseGetTag(value);
336
+ return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
337
+ }
338
+ module.exports = isFunction;
339
+ }));
340
+
341
+ //#endregion
342
+ //#region ../../node_modules/lodash/_coreJsData.js
343
+ var require__coreJsData = /* @__PURE__ */ __commonJSMin(((exports, module) => {
344
+ /** Used to detect overreaching core-js shims. */
345
+ var coreJsData = require__root()["__core-js_shared__"];
346
+ module.exports = coreJsData;
347
+ }));
348
+
349
+ //#endregion
350
+ //#region ../../node_modules/lodash/_isMasked.js
351
+ var require__isMasked = /* @__PURE__ */ __commonJSMin(((exports, module) => {
352
+ var coreJsData = require__coreJsData();
353
+ /** Used to detect methods masquerading as native. */
354
+ var maskSrcKey = function() {
355
+ var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || "");
356
+ return uid ? "Symbol(src)_1." + uid : "";
357
+ }();
358
+ /**
359
+ * Checks if `func` has its source masked.
360
+ *
361
+ * @private
362
+ * @param {Function} func The function to check.
363
+ * @returns {boolean} Returns `true` if `func` is masked, else `false`.
364
+ */
365
+ function isMasked(func) {
366
+ return !!maskSrcKey && maskSrcKey in func;
367
+ }
368
+ module.exports = isMasked;
369
+ }));
370
+
371
+ //#endregion
372
+ //#region ../../node_modules/lodash/_toSource.js
373
+ var require__toSource = /* @__PURE__ */ __commonJSMin(((exports, module) => {
374
+ /** Used to resolve the decompiled source of functions. */
375
+ var funcToString = Function.prototype.toString;
376
+ /**
377
+ * Converts `func` to its source code.
378
+ *
379
+ * @private
380
+ * @param {Function} func The function to convert.
381
+ * @returns {string} Returns the source code.
382
+ */
383
+ function toSource(func) {
384
+ if (func != null) {
385
+ try {
386
+ return funcToString.call(func);
387
+ } catch (e) {}
388
+ try {
389
+ return func + "";
390
+ } catch (e) {}
391
+ }
392
+ return "";
393
+ }
394
+ module.exports = toSource;
395
+ }));
396
+
397
+ //#endregion
398
+ //#region ../../node_modules/lodash/_baseIsNative.js
399
+ var require__baseIsNative = /* @__PURE__ */ __commonJSMin(((exports, module) => {
400
+ var isFunction = require_isFunction();
401
+ var isMasked = require__isMasked();
402
+ var isObject = require_isObject();
403
+ var toSource = require__toSource();
404
+ /**
405
+ * Used to match `RegExp`
406
+ * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
407
+ */
408
+ var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
409
+ /** Used to detect host constructors (Safari). */
410
+ var reIsHostCtor = /^\[object .+?Constructor\]$/;
411
+ /** Used for built-in method references. */
412
+ var funcProto = Function.prototype;
413
+ var objectProto = Object.prototype;
414
+ /** Used to resolve the decompiled source of functions. */
415
+ var funcToString = funcProto.toString;
416
+ /** Used to check objects for own properties. */
417
+ var hasOwnProperty = objectProto.hasOwnProperty;
418
+ /** Used to detect if a method is native. */
419
+ var reIsNative = RegExp("^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$");
420
+ /**
421
+ * The base implementation of `_.isNative` without bad shim checks.
422
+ *
423
+ * @private
424
+ * @param {*} value The value to check.
425
+ * @returns {boolean} Returns `true` if `value` is a native function,
426
+ * else `false`.
427
+ */
428
+ function baseIsNative(value) {
429
+ if (!isObject(value) || isMasked(value)) return false;
430
+ return (isFunction(value) ? reIsNative : reIsHostCtor).test(toSource(value));
431
+ }
432
+ module.exports = baseIsNative;
433
+ }));
434
+
435
+ //#endregion
436
+ //#region ../../node_modules/lodash/_getValue.js
437
+ var require__getValue = /* @__PURE__ */ __commonJSMin(((exports, module) => {
438
+ /**
439
+ * Gets the value at `key` of `object`.
440
+ *
441
+ * @private
442
+ * @param {Object} [object] The object to query.
443
+ * @param {string} key The key of the property to get.
444
+ * @returns {*} Returns the property value.
445
+ */
446
+ function getValue(object, key) {
447
+ return object == null ? void 0 : object[key];
448
+ }
449
+ module.exports = getValue;
450
+ }));
451
+
452
+ //#endregion
453
+ //#region ../../node_modules/lodash/_getNative.js
454
+ var require__getNative = /* @__PURE__ */ __commonJSMin(((exports, module) => {
455
+ var baseIsNative = require__baseIsNative();
456
+ var getValue = require__getValue();
457
+ /**
458
+ * Gets the native function at `key` of `object`.
459
+ *
460
+ * @private
461
+ * @param {Object} object The object to query.
462
+ * @param {string} key The key of the method to get.
463
+ * @returns {*} Returns the function if it's native, else `undefined`.
464
+ */
465
+ function getNative(object, key) {
466
+ var value = getValue(object, key);
467
+ return baseIsNative(value) ? value : void 0;
468
+ }
469
+ module.exports = getNative;
470
+ }));
471
+
472
+ //#endregion
473
+ //#region ../../node_modules/lodash/_nativeCreate.js
474
+ var require__nativeCreate = /* @__PURE__ */ __commonJSMin(((exports, module) => {
475
+ var nativeCreate = require__getNative()(Object, "create");
476
+ module.exports = nativeCreate;
477
+ }));
478
+
479
+ //#endregion
480
+ //#region ../../node_modules/lodash/_hashClear.js
481
+ var require__hashClear = /* @__PURE__ */ __commonJSMin(((exports, module) => {
482
+ var nativeCreate = require__nativeCreate();
483
+ /**
484
+ * Removes all key-value entries from the hash.
485
+ *
486
+ * @private
487
+ * @name clear
488
+ * @memberOf Hash
489
+ */
490
+ function hashClear() {
491
+ this.__data__ = nativeCreate ? nativeCreate(null) : {};
492
+ this.size = 0;
493
+ }
494
+ module.exports = hashClear;
495
+ }));
496
+
497
+ //#endregion
498
+ //#region ../../node_modules/lodash/_hashDelete.js
499
+ var require__hashDelete = /* @__PURE__ */ __commonJSMin(((exports, module) => {
500
+ /**
501
+ * Removes `key` and its value from the hash.
502
+ *
503
+ * @private
504
+ * @name delete
505
+ * @memberOf Hash
506
+ * @param {Object} hash The hash to modify.
507
+ * @param {string} key The key of the value to remove.
508
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
509
+ */
510
+ function hashDelete(key) {
511
+ var result = this.has(key) && delete this.__data__[key];
512
+ this.size -= result ? 1 : 0;
513
+ return result;
514
+ }
515
+ module.exports = hashDelete;
516
+ }));
517
+
518
+ //#endregion
519
+ //#region ../../node_modules/lodash/_hashGet.js
520
+ var require__hashGet = /* @__PURE__ */ __commonJSMin(((exports, module) => {
521
+ var nativeCreate = require__nativeCreate();
522
+ /** Used to stand-in for `undefined` hash values. */
523
+ var HASH_UNDEFINED = "__lodash_hash_undefined__";
524
+ /** Used to check objects for own properties. */
525
+ var hasOwnProperty = Object.prototype.hasOwnProperty;
526
+ /**
527
+ * Gets the hash value for `key`.
528
+ *
529
+ * @private
530
+ * @name get
531
+ * @memberOf Hash
532
+ * @param {string} key The key of the value to get.
533
+ * @returns {*} Returns the entry value.
534
+ */
535
+ function hashGet(key) {
536
+ var data = this.__data__;
537
+ if (nativeCreate) {
538
+ var result = data[key];
539
+ return result === HASH_UNDEFINED ? void 0 : result;
540
+ }
541
+ return hasOwnProperty.call(data, key) ? data[key] : void 0;
542
+ }
543
+ module.exports = hashGet;
544
+ }));
545
+
546
+ //#endregion
547
+ //#region ../../node_modules/lodash/_hashHas.js
548
+ var require__hashHas = /* @__PURE__ */ __commonJSMin(((exports, module) => {
549
+ var nativeCreate = require__nativeCreate();
550
+ /** Used to check objects for own properties. */
551
+ var hasOwnProperty = Object.prototype.hasOwnProperty;
552
+ /**
553
+ * Checks if a hash value for `key` exists.
554
+ *
555
+ * @private
556
+ * @name has
557
+ * @memberOf Hash
558
+ * @param {string} key The key of the entry to check.
559
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
560
+ */
561
+ function hashHas(key) {
562
+ var data = this.__data__;
563
+ return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key);
564
+ }
565
+ module.exports = hashHas;
566
+ }));
567
+
568
+ //#endregion
569
+ //#region ../../node_modules/lodash/_hashSet.js
570
+ var require__hashSet = /* @__PURE__ */ __commonJSMin(((exports, module) => {
571
+ var nativeCreate = require__nativeCreate();
572
+ /** Used to stand-in for `undefined` hash values. */
573
+ var HASH_UNDEFINED = "__lodash_hash_undefined__";
574
+ /**
575
+ * Sets the hash `key` to `value`.
576
+ *
577
+ * @private
578
+ * @name set
579
+ * @memberOf Hash
580
+ * @param {string} key The key of the value to set.
581
+ * @param {*} value The value to set.
582
+ * @returns {Object} Returns the hash instance.
583
+ */
584
+ function hashSet(key, value) {
585
+ var data = this.__data__;
586
+ this.size += this.has(key) ? 0 : 1;
587
+ data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value;
588
+ return this;
589
+ }
590
+ module.exports = hashSet;
591
+ }));
592
+
593
+ //#endregion
594
+ //#region ../../node_modules/lodash/_Hash.js
595
+ var require__Hash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
596
+ var hashClear = require__hashClear();
597
+ var hashDelete = require__hashDelete();
598
+ var hashGet = require__hashGet();
599
+ var hashHas = require__hashHas();
600
+ var hashSet = require__hashSet();
601
+ /**
602
+ * Creates a hash object.
603
+ *
604
+ * @private
605
+ * @constructor
606
+ * @param {Array} [entries] The key-value pairs to cache.
607
+ */
608
+ function Hash(entries) {
609
+ var index = -1, length = entries == null ? 0 : entries.length;
610
+ this.clear();
611
+ while (++index < length) {
612
+ var entry = entries[index];
613
+ this.set(entry[0], entry[1]);
614
+ }
615
+ }
616
+ Hash.prototype.clear = hashClear;
617
+ Hash.prototype["delete"] = hashDelete;
618
+ Hash.prototype.get = hashGet;
619
+ Hash.prototype.has = hashHas;
620
+ Hash.prototype.set = hashSet;
621
+ module.exports = Hash;
622
+ }));
623
+
624
+ //#endregion
625
+ //#region ../../node_modules/lodash/_listCacheClear.js
626
+ var require__listCacheClear = /* @__PURE__ */ __commonJSMin(((exports, module) => {
627
+ /**
628
+ * Removes all key-value entries from the list cache.
629
+ *
630
+ * @private
631
+ * @name clear
632
+ * @memberOf ListCache
633
+ */
634
+ function listCacheClear() {
635
+ this.__data__ = [];
636
+ this.size = 0;
637
+ }
638
+ module.exports = listCacheClear;
639
+ }));
640
+
641
+ //#endregion
642
+ //#region ../../node_modules/lodash/eq.js
643
+ var require_eq = /* @__PURE__ */ __commonJSMin(((exports, module) => {
644
+ /**
645
+ * Performs a
646
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
647
+ * comparison between two values to determine if they are equivalent.
648
+ *
649
+ * @static
650
+ * @memberOf _
651
+ * @since 4.0.0
652
+ * @category Lang
653
+ * @param {*} value The value to compare.
654
+ * @param {*} other The other value to compare.
655
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
656
+ * @example
657
+ *
658
+ * var object = { 'a': 1 };
659
+ * var other = { 'a': 1 };
660
+ *
661
+ * _.eq(object, object);
662
+ * // => true
663
+ *
664
+ * _.eq(object, other);
665
+ * // => false
666
+ *
667
+ * _.eq('a', 'a');
668
+ * // => true
669
+ *
670
+ * _.eq('a', Object('a'));
671
+ * // => false
672
+ *
673
+ * _.eq(NaN, NaN);
674
+ * // => true
675
+ */
676
+ function eq(value, other) {
677
+ return value === other || value !== value && other !== other;
678
+ }
679
+ module.exports = eq;
680
+ }));
681
+
682
+ //#endregion
683
+ //#region ../../node_modules/lodash/_assocIndexOf.js
684
+ var require__assocIndexOf = /* @__PURE__ */ __commonJSMin(((exports, module) => {
685
+ var eq = require_eq();
686
+ /**
687
+ * Gets the index at which the `key` is found in `array` of key-value pairs.
688
+ *
689
+ * @private
690
+ * @param {Array} array The array to inspect.
691
+ * @param {*} key The key to search for.
692
+ * @returns {number} Returns the index of the matched value, else `-1`.
693
+ */
694
+ function assocIndexOf(array, key) {
695
+ var length = array.length;
696
+ while (length--) if (eq(array[length][0], key)) return length;
697
+ return -1;
698
+ }
699
+ module.exports = assocIndexOf;
700
+ }));
701
+
702
+ //#endregion
703
+ //#region ../../node_modules/lodash/_listCacheDelete.js
704
+ var require__listCacheDelete = /* @__PURE__ */ __commonJSMin(((exports, module) => {
705
+ var assocIndexOf = require__assocIndexOf();
706
+ /** Built-in value references. */
707
+ var splice = Array.prototype.splice;
708
+ /**
709
+ * Removes `key` and its value from the list cache.
710
+ *
711
+ * @private
712
+ * @name delete
713
+ * @memberOf ListCache
714
+ * @param {string} key The key of the value to remove.
715
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
716
+ */
717
+ function listCacheDelete(key) {
718
+ var data = this.__data__, index = assocIndexOf(data, key);
719
+ if (index < 0) return false;
720
+ if (index == data.length - 1) data.pop();
721
+ else splice.call(data, index, 1);
722
+ --this.size;
723
+ return true;
724
+ }
725
+ module.exports = listCacheDelete;
726
+ }));
727
+
728
+ //#endregion
729
+ //#region ../../node_modules/lodash/_listCacheGet.js
730
+ var require__listCacheGet = /* @__PURE__ */ __commonJSMin(((exports, module) => {
731
+ var assocIndexOf = require__assocIndexOf();
732
+ /**
733
+ * Gets the list cache value for `key`.
734
+ *
735
+ * @private
736
+ * @name get
737
+ * @memberOf ListCache
738
+ * @param {string} key The key of the value to get.
739
+ * @returns {*} Returns the entry value.
740
+ */
741
+ function listCacheGet(key) {
742
+ var data = this.__data__, index = assocIndexOf(data, key);
743
+ return index < 0 ? void 0 : data[index][1];
744
+ }
745
+ module.exports = listCacheGet;
746
+ }));
747
+
748
+ //#endregion
749
+ //#region ../../node_modules/lodash/_listCacheHas.js
750
+ var require__listCacheHas = /* @__PURE__ */ __commonJSMin(((exports, module) => {
751
+ var assocIndexOf = require__assocIndexOf();
752
+ /**
753
+ * Checks if a list cache value for `key` exists.
754
+ *
755
+ * @private
756
+ * @name has
757
+ * @memberOf ListCache
758
+ * @param {string} key The key of the entry to check.
759
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
760
+ */
761
+ function listCacheHas(key) {
762
+ return assocIndexOf(this.__data__, key) > -1;
763
+ }
764
+ module.exports = listCacheHas;
765
+ }));
766
+
767
+ //#endregion
768
+ //#region ../../node_modules/lodash/_listCacheSet.js
769
+ var require__listCacheSet = /* @__PURE__ */ __commonJSMin(((exports, module) => {
770
+ var assocIndexOf = require__assocIndexOf();
771
+ /**
772
+ * Sets the list cache `key` to `value`.
773
+ *
774
+ * @private
775
+ * @name set
776
+ * @memberOf ListCache
777
+ * @param {string} key The key of the value to set.
778
+ * @param {*} value The value to set.
779
+ * @returns {Object} Returns the list cache instance.
780
+ */
781
+ function listCacheSet(key, value) {
782
+ var data = this.__data__, index = assocIndexOf(data, key);
783
+ if (index < 0) {
784
+ ++this.size;
785
+ data.push([key, value]);
786
+ } else data[index][1] = value;
787
+ return this;
788
+ }
789
+ module.exports = listCacheSet;
790
+ }));
791
+
792
+ //#endregion
793
+ //#region ../../node_modules/lodash/_ListCache.js
794
+ var require__ListCache = /* @__PURE__ */ __commonJSMin(((exports, module) => {
795
+ var listCacheClear = require__listCacheClear();
796
+ var listCacheDelete = require__listCacheDelete();
797
+ var listCacheGet = require__listCacheGet();
798
+ var listCacheHas = require__listCacheHas();
799
+ var listCacheSet = require__listCacheSet();
800
+ /**
801
+ * Creates an list cache object.
802
+ *
803
+ * @private
804
+ * @constructor
805
+ * @param {Array} [entries] The key-value pairs to cache.
806
+ */
807
+ function ListCache(entries) {
808
+ var index = -1, length = entries == null ? 0 : entries.length;
809
+ this.clear();
810
+ while (++index < length) {
811
+ var entry = entries[index];
812
+ this.set(entry[0], entry[1]);
813
+ }
814
+ }
815
+ ListCache.prototype.clear = listCacheClear;
816
+ ListCache.prototype["delete"] = listCacheDelete;
817
+ ListCache.prototype.get = listCacheGet;
818
+ ListCache.prototype.has = listCacheHas;
819
+ ListCache.prototype.set = listCacheSet;
820
+ module.exports = ListCache;
821
+ }));
822
+
823
+ //#endregion
824
+ //#region ../../node_modules/lodash/_Map.js
825
+ var require__Map = /* @__PURE__ */ __commonJSMin(((exports, module) => {
826
+ var Map = require__getNative()(require__root(), "Map");
827
+ module.exports = Map;
828
+ }));
829
+
830
+ //#endregion
831
+ //#region ../../node_modules/lodash/_mapCacheClear.js
832
+ var require__mapCacheClear = /* @__PURE__ */ __commonJSMin(((exports, module) => {
833
+ var Hash = require__Hash();
834
+ var ListCache = require__ListCache();
835
+ var Map = require__Map();
836
+ /**
837
+ * Removes all key-value entries from the map.
838
+ *
839
+ * @private
840
+ * @name clear
841
+ * @memberOf MapCache
842
+ */
843
+ function mapCacheClear() {
844
+ this.size = 0;
845
+ this.__data__ = {
846
+ "hash": new Hash(),
847
+ "map": new (Map || ListCache)(),
848
+ "string": new Hash()
849
+ };
850
+ }
851
+ module.exports = mapCacheClear;
852
+ }));
853
+
854
+ //#endregion
855
+ //#region ../../node_modules/lodash/_isKeyable.js
856
+ var require__isKeyable = /* @__PURE__ */ __commonJSMin(((exports, module) => {
857
+ /**
858
+ * Checks if `value` is suitable for use as unique object key.
859
+ *
860
+ * @private
861
+ * @param {*} value The value to check.
862
+ * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
863
+ */
864
+ function isKeyable(value) {
865
+ var type = typeof value;
866
+ return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null;
867
+ }
868
+ module.exports = isKeyable;
869
+ }));
870
+
871
+ //#endregion
872
+ //#region ../../node_modules/lodash/_getMapData.js
873
+ var require__getMapData = /* @__PURE__ */ __commonJSMin(((exports, module) => {
874
+ var isKeyable = require__isKeyable();
875
+ /**
876
+ * Gets the data for `map`.
877
+ *
878
+ * @private
879
+ * @param {Object} map The map to query.
880
+ * @param {string} key The reference key.
881
+ * @returns {*} Returns the map data.
882
+ */
883
+ function getMapData(map, key) {
884
+ var data = map.__data__;
885
+ return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map;
886
+ }
887
+ module.exports = getMapData;
888
+ }));
889
+
890
+ //#endregion
891
+ //#region ../../node_modules/lodash/_mapCacheDelete.js
892
+ var require__mapCacheDelete = /* @__PURE__ */ __commonJSMin(((exports, module) => {
893
+ var getMapData = require__getMapData();
894
+ /**
895
+ * Removes `key` and its value from the map.
896
+ *
897
+ * @private
898
+ * @name delete
899
+ * @memberOf MapCache
900
+ * @param {string} key The key of the value to remove.
901
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
902
+ */
903
+ function mapCacheDelete(key) {
904
+ var result = getMapData(this, key)["delete"](key);
905
+ this.size -= result ? 1 : 0;
906
+ return result;
907
+ }
908
+ module.exports = mapCacheDelete;
909
+ }));
910
+
911
+ //#endregion
912
+ //#region ../../node_modules/lodash/_mapCacheGet.js
913
+ var require__mapCacheGet = /* @__PURE__ */ __commonJSMin(((exports, module) => {
914
+ var getMapData = require__getMapData();
915
+ /**
916
+ * Gets the map value for `key`.
917
+ *
918
+ * @private
919
+ * @name get
920
+ * @memberOf MapCache
921
+ * @param {string} key The key of the value to get.
922
+ * @returns {*} Returns the entry value.
923
+ */
924
+ function mapCacheGet(key) {
925
+ return getMapData(this, key).get(key);
926
+ }
927
+ module.exports = mapCacheGet;
928
+ }));
929
+
930
+ //#endregion
931
+ //#region ../../node_modules/lodash/_mapCacheHas.js
932
+ var require__mapCacheHas = /* @__PURE__ */ __commonJSMin(((exports, module) => {
933
+ var getMapData = require__getMapData();
934
+ /**
935
+ * Checks if a map value for `key` exists.
936
+ *
937
+ * @private
938
+ * @name has
939
+ * @memberOf MapCache
940
+ * @param {string} key The key of the entry to check.
941
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
942
+ */
943
+ function mapCacheHas(key) {
944
+ return getMapData(this, key).has(key);
945
+ }
946
+ module.exports = mapCacheHas;
947
+ }));
948
+
949
+ //#endregion
950
+ //#region ../../node_modules/lodash/_mapCacheSet.js
951
+ var require__mapCacheSet = /* @__PURE__ */ __commonJSMin(((exports, module) => {
952
+ var getMapData = require__getMapData();
953
+ /**
954
+ * Sets the map `key` to `value`.
955
+ *
956
+ * @private
957
+ * @name set
958
+ * @memberOf MapCache
959
+ * @param {string} key The key of the value to set.
960
+ * @param {*} value The value to set.
961
+ * @returns {Object} Returns the map cache instance.
962
+ */
963
+ function mapCacheSet(key, value) {
964
+ var data = getMapData(this, key), size = data.size;
965
+ data.set(key, value);
966
+ this.size += data.size == size ? 0 : 1;
967
+ return this;
968
+ }
969
+ module.exports = mapCacheSet;
970
+ }));
971
+
972
+ //#endregion
973
+ //#region ../../node_modules/lodash/_MapCache.js
974
+ var require__MapCache = /* @__PURE__ */ __commonJSMin(((exports, module) => {
975
+ var mapCacheClear = require__mapCacheClear();
976
+ var mapCacheDelete = require__mapCacheDelete();
977
+ var mapCacheGet = require__mapCacheGet();
978
+ var mapCacheHas = require__mapCacheHas();
979
+ var mapCacheSet = require__mapCacheSet();
980
+ /**
981
+ * Creates a map cache object to store key-value pairs.
982
+ *
983
+ * @private
984
+ * @constructor
985
+ * @param {Array} [entries] The key-value pairs to cache.
986
+ */
987
+ function MapCache(entries) {
988
+ var index = -1, length = entries == null ? 0 : entries.length;
989
+ this.clear();
990
+ while (++index < length) {
991
+ var entry = entries[index];
992
+ this.set(entry[0], entry[1]);
993
+ }
994
+ }
995
+ MapCache.prototype.clear = mapCacheClear;
996
+ MapCache.prototype["delete"] = mapCacheDelete;
997
+ MapCache.prototype.get = mapCacheGet;
998
+ MapCache.prototype.has = mapCacheHas;
999
+ MapCache.prototype.set = mapCacheSet;
1000
+ module.exports = MapCache;
1001
+ }));
1002
+
1003
+ //#endregion
1004
+ //#region ../../node_modules/lodash/memoize.js
1005
+ var require_memoize = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1006
+ var MapCache = require__MapCache();
1007
+ /** Error message constants. */
1008
+ var FUNC_ERROR_TEXT = "Expected a function";
1009
+ /**
1010
+ * Creates a function that memoizes the result of `func`. If `resolver` is
1011
+ * provided, it determines the cache key for storing the result based on the
1012
+ * arguments provided to the memoized function. By default, the first argument
1013
+ * provided to the memoized function is used as the map cache key. The `func`
1014
+ * is invoked with the `this` binding of the memoized function.
1015
+ *
1016
+ * **Note:** The cache is exposed as the `cache` property on the memoized
1017
+ * function. Its creation may be customized by replacing the `_.memoize.Cache`
1018
+ * constructor with one whose instances implement the
1019
+ * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
1020
+ * method interface of `clear`, `delete`, `get`, `has`, and `set`.
1021
+ *
1022
+ * @static
1023
+ * @memberOf _
1024
+ * @since 0.1.0
1025
+ * @category Function
1026
+ * @param {Function} func The function to have its output memoized.
1027
+ * @param {Function} [resolver] The function to resolve the cache key.
1028
+ * @returns {Function} Returns the new memoized function.
1029
+ * @example
1030
+ *
1031
+ * var object = { 'a': 1, 'b': 2 };
1032
+ * var other = { 'c': 3, 'd': 4 };
1033
+ *
1034
+ * var values = _.memoize(_.values);
1035
+ * values(object);
1036
+ * // => [1, 2]
1037
+ *
1038
+ * values(other);
1039
+ * // => [3, 4]
1040
+ *
1041
+ * object.a = 2;
1042
+ * values(object);
1043
+ * // => [1, 2]
1044
+ *
1045
+ * // Modify the result cache.
1046
+ * values.cache.set(object, ['a', 'b']);
1047
+ * values(object);
1048
+ * // => ['a', 'b']
1049
+ *
1050
+ * // Replace `_.memoize.Cache`.
1051
+ * _.memoize.Cache = WeakMap;
1052
+ */
1053
+ function memoize(func, resolver) {
1054
+ if (typeof func != "function" || resolver != null && typeof resolver != "function") throw new TypeError(FUNC_ERROR_TEXT);
1055
+ var memoized = function() {
1056
+ var args = arguments, key = resolver ? resolver.apply(this, args) : args[0], cache = memoized.cache;
1057
+ if (cache.has(key)) return cache.get(key);
1058
+ var result = func.apply(this, args);
1059
+ memoized.cache = cache.set(key, result) || cache;
1060
+ return result;
1061
+ };
1062
+ memoized.cache = new (memoize.Cache || MapCache)();
1063
+ return memoized;
1064
+ }
1065
+ memoize.Cache = MapCache;
1066
+ module.exports = memoize;
1067
+ }));
1068
+
1069
+ //#endregion
1070
+ //#region ../../node_modules/lodash/_memoizeCapped.js
1071
+ var require__memoizeCapped = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1072
+ var memoize = require_memoize();
1073
+ /** Used as the maximum memoize cache size. */
1074
+ var MAX_MEMOIZE_SIZE = 500;
1075
+ /**
1076
+ * A specialized version of `_.memoize` which clears the memoized function's
1077
+ * cache when it exceeds `MAX_MEMOIZE_SIZE`.
1078
+ *
1079
+ * @private
1080
+ * @param {Function} func The function to have its output memoized.
1081
+ * @returns {Function} Returns the new memoized function.
1082
+ */
1083
+ function memoizeCapped(func) {
1084
+ var result = memoize(func, function(key) {
1085
+ if (cache.size === MAX_MEMOIZE_SIZE) cache.clear();
1086
+ return key;
1087
+ });
1088
+ var cache = result.cache;
1089
+ return result;
1090
+ }
1091
+ module.exports = memoizeCapped;
1092
+ }));
1093
+
1094
+ //#endregion
1095
+ //#region ../../node_modules/lodash/_stringToPath.js
1096
+ var require__stringToPath = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1097
+ var memoizeCapped = require__memoizeCapped();
1098
+ /** Used to match property names within property paths. */
1099
+ var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
1100
+ /** Used to match backslashes in property paths. */
1101
+ var reEscapeChar = /\\(\\)?/g;
1102
+ /**
1103
+ * Converts `string` to a property path array.
1104
+ *
1105
+ * @private
1106
+ * @param {string} string The string to convert.
1107
+ * @returns {Array} Returns the property path array.
1108
+ */
1109
+ var stringToPath = memoizeCapped(function(string) {
1110
+ var result = [];
1111
+ if (string.charCodeAt(0) === 46) result.push("");
1112
+ string.replace(rePropName, function(match, number, quote, subString) {
1113
+ result.push(quote ? subString.replace(reEscapeChar, "$1") : number || match);
1114
+ });
1115
+ return result;
1116
+ });
1117
+ module.exports = stringToPath;
1118
+ }));
1119
+
1120
+ //#endregion
1121
+ //#region ../../node_modules/lodash/_arrayMap.js
1122
+ var require__arrayMap = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1123
+ /**
1124
+ * A specialized version of `_.map` for arrays without support for iteratee
1125
+ * shorthands.
1126
+ *
1127
+ * @private
1128
+ * @param {Array} [array] The array to iterate over.
1129
+ * @param {Function} iteratee The function invoked per iteration.
1130
+ * @returns {Array} Returns the new mapped array.
1131
+ */
1132
+ function arrayMap(array, iteratee) {
1133
+ var index = -1, length = array == null ? 0 : array.length, result = Array(length);
1134
+ while (++index < length) result[index] = iteratee(array[index], index, array);
1135
+ return result;
1136
+ }
1137
+ module.exports = arrayMap;
1138
+ }));
1139
+
1140
+ //#endregion
1141
+ //#region ../../node_modules/lodash/_baseToString.js
1142
+ var require__baseToString = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1143
+ var Symbol = require__Symbol();
1144
+ var arrayMap = require__arrayMap();
1145
+ var isArray = require_isArray();
1146
+ var isSymbol = require_isSymbol();
1147
+ /** Used as references for various `Number` constants. */
1148
+ var INFINITY = 1 / 0;
1149
+ /** Used to convert symbols to primitives and strings. */
1150
+ var symbolProto = Symbol ? Symbol.prototype : void 0;
1151
+ var symbolToString = symbolProto ? symbolProto.toString : void 0;
1152
+ /**
1153
+ * The base implementation of `_.toString` which doesn't convert nullish
1154
+ * values to empty strings.
1155
+ *
1156
+ * @private
1157
+ * @param {*} value The value to process.
1158
+ * @returns {string} Returns the string.
1159
+ */
1160
+ function baseToString(value) {
1161
+ if (typeof value == "string") return value;
1162
+ if (isArray(value)) return arrayMap(value, baseToString) + "";
1163
+ if (isSymbol(value)) return symbolToString ? symbolToString.call(value) : "";
1164
+ var result = value + "";
1165
+ return result == "0" && 1 / value == -INFINITY ? "-0" : result;
1166
+ }
1167
+ module.exports = baseToString;
1168
+ }));
1169
+
1170
+ //#endregion
1171
+ //#region ../../node_modules/lodash/toString.js
1172
+ var require_toString = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1173
+ var baseToString = require__baseToString();
1174
+ /**
1175
+ * Converts `value` to a string. An empty string is returned for `null`
1176
+ * and `undefined` values. The sign of `-0` is preserved.
1177
+ *
1178
+ * @static
1179
+ * @memberOf _
1180
+ * @since 4.0.0
1181
+ * @category Lang
1182
+ * @param {*} value The value to convert.
1183
+ * @returns {string} Returns the converted string.
1184
+ * @example
1185
+ *
1186
+ * _.toString(null);
1187
+ * // => ''
1188
+ *
1189
+ * _.toString(-0);
1190
+ * // => '-0'
1191
+ *
1192
+ * _.toString([1, 2, 3]);
1193
+ * // => '1,2,3'
1194
+ */
1195
+ function toString(value) {
1196
+ return value == null ? "" : baseToString(value);
1197
+ }
1198
+ module.exports = toString;
1199
+ }));
1200
+
1201
+ //#endregion
1202
+ //#region ../../node_modules/lodash/_castPath.js
1203
+ var require__castPath = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1204
+ var isArray = require_isArray();
1205
+ var isKey = require__isKey();
1206
+ var stringToPath = require__stringToPath();
1207
+ var toString = require_toString();
1208
+ /**
1209
+ * Casts `value` to a path array if it's not one.
1210
+ *
1211
+ * @private
1212
+ * @param {*} value The value to inspect.
1213
+ * @param {Object} [object] The object to query keys on.
1214
+ * @returns {Array} Returns the cast property path array.
1215
+ */
1216
+ function castPath(value, object) {
1217
+ if (isArray(value)) return value;
1218
+ return isKey(value, object) ? [value] : stringToPath(toString(value));
1219
+ }
1220
+ module.exports = castPath;
1221
+ }));
1222
+
1223
+ //#endregion
1224
+ //#region ../../node_modules/lodash/_toKey.js
1225
+ var require__toKey = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1226
+ var isSymbol = require_isSymbol();
1227
+ /** Used as references for various `Number` constants. */
1228
+ var INFINITY = 1 / 0;
1229
+ /**
1230
+ * Converts `value` to a string key if it's not a string or symbol.
1231
+ *
1232
+ * @private
1233
+ * @param {*} value The value to inspect.
1234
+ * @returns {string|symbol} Returns the key.
1235
+ */
1236
+ function toKey(value) {
1237
+ if (typeof value == "string" || isSymbol(value)) return value;
1238
+ var result = value + "";
1239
+ return result == "0" && 1 / value == -INFINITY ? "-0" : result;
1240
+ }
1241
+ module.exports = toKey;
1242
+ }));
1243
+
1244
+ //#endregion
1245
+ //#region ../../node_modules/lodash/_baseGet.js
1246
+ var require__baseGet = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1247
+ var castPath = require__castPath();
1248
+ var toKey = require__toKey();
1249
+ /**
1250
+ * The base implementation of `_.get` without support for default values.
1251
+ *
1252
+ * @private
1253
+ * @param {Object} object The object to query.
1254
+ * @param {Array|string} path The path of the property to get.
1255
+ * @returns {*} Returns the resolved value.
1256
+ */
1257
+ function baseGet(object, path) {
1258
+ path = castPath(path, object);
1259
+ var index = 0, length = path.length;
1260
+ while (object != null && index < length) object = object[toKey(path[index++])];
1261
+ return index && index == length ? object : void 0;
1262
+ }
1263
+ module.exports = baseGet;
1264
+ }));
1265
+
1266
+ //#endregion
1267
+ //#region ../../node_modules/lodash/get.js
1268
+ var require_get = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1269
+ var baseGet = require__baseGet();
1270
+ /**
1271
+ * Gets the value at `path` of `object`. If the resolved value is
1272
+ * `undefined`, the `defaultValue` is returned in its place.
1273
+ *
1274
+ * @static
1275
+ * @memberOf _
1276
+ * @since 3.7.0
1277
+ * @category Object
1278
+ * @param {Object} object The object to query.
1279
+ * @param {Array|string} path The path of the property to get.
1280
+ * @param {*} [defaultValue] The value returned for `undefined` resolved values.
1281
+ * @returns {*} Returns the resolved value.
1282
+ * @example
1283
+ *
1284
+ * var object = { 'a': [{ 'b': { 'c': 3 } }] };
1285
+ *
1286
+ * _.get(object, 'a[0].b.c');
1287
+ * // => 3
1288
+ *
1289
+ * _.get(object, ['a', '0', 'b', 'c']);
1290
+ * // => 3
1291
+ *
1292
+ * _.get(object, 'a.b.c', 'default');
1293
+ * // => 'default'
1294
+ */
1295
+ function get(object, path, defaultValue) {
1296
+ var result = object == null ? void 0 : baseGet(object, path);
1297
+ return result === void 0 ? defaultValue : result;
1298
+ }
1299
+ module.exports = get;
1300
+ }));
1301
+
1302
+ //#endregion
1303
+ //#region src/fn/constant.ts
1304
+ var import_get = /* @__PURE__ */ __toESM(require_get(), 1);
1305
+ function constant(name, defaultValue) {
1306
+ return (0, import_get.default)(getUserConfig().envs, name, (0, import_get.default)(process.env, name, defaultValue));
1307
+ }
1308
+
1309
+ //#endregion
1310
+ //#region src/services/openapi/openapiSource.ts
1311
+ async function openapiSource(params) {
1312
+ const document = "spec" in params ? params.spec : await loadOpenApiDocument(params.url, params.timeoutMs);
1313
+ return extractOpenApiBackendProperties(document);
1314
+ }
1315
+
1316
+ //#endregion
1317
+ export { constant, defineBackendSource, defineConfig, defineExpressionRule, httpClient, openapiSource };
2
1318
  //# sourceMappingURL=index.mjs.map