typia 6.2.0 → 6.3.0-dev.20240624
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/lib/index.mjs +6 -1
- package/lib/index.mjs.map +1 -1
- package/lib/reflect.d.ts +2 -0
- package/lib/reflect.js +5 -1
- package/lib/reflect.js.map +1 -1
- package/lib/transformers/CallExpressionTransformer.js +8 -2
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/features/reflect/ReflectMetadataTransformer.d.ts +1 -1
- package/lib/transformers/features/reflect/ReflectMetadataTransformer.js +37 -39
- package/lib/transformers/features/reflect/ReflectMetadataTransformer.js.map +1 -1
- package/lib/transformers/features/reflect/ReflectNameTransformer.d.ts +6 -0
- package/lib/transformers/features/reflect/ReflectNameTransformer.js +57 -0
- package/lib/transformers/features/reflect/ReflectNameTransformer.js.map +1 -0
- package/package.json +2 -2
- package/src/reflect.ts +6 -0
- package/src/transformers/CallExpressionTransformer.ts +6 -2
- package/src/transformers/features/reflect/ReflectMetadataTransformer.ts +1 -2
- package/src/transformers/features/reflect/ReflectNameTransformer.ts +66 -0
package/lib/index.mjs
CHANGED
|
@@ -2509,13 +2509,18 @@ const metadataPure = Object.assign(metadata, {
|
|
|
2509
2509
|
from: input => input
|
|
2510
2510
|
});
|
|
2511
2511
|
|
|
2512
|
+
function name() {
|
|
2513
|
+
halt$1("name");
|
|
2514
|
+
}
|
|
2515
|
+
|
|
2512
2516
|
function halt$1(name) {
|
|
2513
2517
|
throw new Error(`Error on typia.reflect.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
|
|
2514
2518
|
}
|
|
2515
2519
|
|
|
2516
2520
|
var reflect = Object.freeze({
|
|
2517
2521
|
__proto__: null,
|
|
2518
|
-
metadata: metadataPure
|
|
2522
|
+
metadata: metadataPure,
|
|
2523
|
+
name
|
|
2519
2524
|
});
|
|
2520
2525
|
|
|
2521
2526
|
var index = Object.freeze({
|
package/lib/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/types.js","../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/sets.js","../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/util.js","../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/positions.js","../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/index.js","../node_modules/.pnpm/drange@1.1.1/node_modules/drange/lib/index.js","../node_modules/.pnpm/randexp@0.5.3/node_modules/randexp/lib/randexp.js","../src/utils/RandomGenerator/RandomGenerator.ts","../src/functional/$every.ts","../src/TypeGuardError.ts","../src/functional/$guard.ts","../src/functional/$join.ts","../src/functional/$report.ts","../src/functional/$is_between.ts","../src/functional/$stoll.ts","../src/functional/is.ts","../src/functional/Namespace/functional.ts","../src/functional/$number.ts","../src/functional/$rest.ts","../src/functional/$string.ts","../src/functional/$tail.ts","../src/functional/$throws.ts","../src/functional/Namespace/json.ts","../src/functional/$FormDataReader/$FormDataReader.ts","../src/functional/$HeadersReader/$HeadersReader.ts","../src/functional/$ParameterReader/$ParameterReader.ts","../src/functional/$QueryReader/$QueryReader.ts","../src/functional/Namespace/http.ts","../src/utils/StringUtil/StringUtil.ts","../src/utils/NamingConvention/NamingConvention.ts","../src/functional/$convention.ts","../src/functional/Namespace/notations.ts","../src/functional/$clone.ts","../src/functional/$any.ts","../src/functional/Namespace/misc.ts","../src/functional/$ProtobufReader.ts","../src/functional/$strlen.ts","../src/functional/$ProtobufSizer.ts","../src/functional/$ProtobufWriter.ts","../src/functional/Namespace/protobuf.ts","../src/functional/Namespace/index.ts","../src/functional.ts","../src/http.ts","../src/json.ts","../src/misc.ts","../src/notations.ts","../src/protobuf.ts","../src/reflect.ts","../src/module.ts"],"sourcesContent":["module.exports = {\n ROOT : 0,\n GROUP : 1,\n POSITION : 2,\n SET : 3,\n RANGE : 4,\n REPETITION : 5,\n REFERENCE : 6,\n CHAR : 7,\n};\n","const types = require('./types');\n\nconst INTS = () => [{ type: types.RANGE , from: 48, to: 57 }];\n\nconst WORDS = () => {\n return [\n { type: types.CHAR, value: 95 },\n { type: types.RANGE, from: 97, to: 122 },\n { type: types.RANGE, from: 65, to: 90 }\n ].concat(INTS());\n};\n\nconst WHITESPACE = () => {\n return [\n { type: types.CHAR, value: 9 },\n { type: types.CHAR, value: 10 },\n { type: types.CHAR, value: 11 },\n { type: types.CHAR, value: 12 },\n { type: types.CHAR, value: 13 },\n { type: types.CHAR, value: 32 },\n { type: types.CHAR, value: 160 },\n { type: types.CHAR, value: 5760 },\n { type: types.RANGE, from: 8192, to: 8202 },\n { type: types.CHAR, value: 8232 },\n { type: types.CHAR, value: 8233 },\n { type: types.CHAR, value: 8239 },\n { type: types.CHAR, value: 8287 },\n { type: types.CHAR, value: 12288 },\n { type: types.CHAR, value: 65279 }\n ];\n};\n\nconst NOTANYCHAR = () => {\n return [\n { type: types.CHAR, value: 10 },\n { type: types.CHAR, value: 13 },\n { type: types.CHAR, value: 8232 },\n { type: types.CHAR, value: 8233 },\n ];\n};\n\n// Predefined class objects.\nexports.words = () => ({ type: types.SET, set: WORDS(), not: false });\nexports.notWords = () => ({ type: types.SET, set: WORDS(), not: true });\nexports.ints = () => ({ type: types.SET, set: INTS(), not: false });\nexports.notInts = () => ({ type: types.SET, set: INTS(), not: true });\nexports.whitespace = () => ({ type: types.SET, set: WHITESPACE(), not: false });\nexports.notWhitespace = () => ({ type: types.SET, set: WHITESPACE(), not: true });\nexports.anyChar = () => ({ type: types.SET, set: NOTANYCHAR(), not: true });\n","const types = require('./types');\nconst sets = require('./sets');\n\n\nconst CTRL = '@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^ ?';\nconst SLSH = { '0': 0, 't': 9, 'n': 10, 'v': 11, 'f': 12, 'r': 13 };\n\n/**\n * Finds character representations in str and convert all to\n * their respective characters\n *\n * @param {String} str\n * @return {String}\n */\nexports.strToChars = function(str) {\n /* jshint maxlen: false */\n var chars_regex = /(\\[\\\\b\\])|(\\\\)?\\\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|(0?[0-7]{2})|c([@A-Z[\\\\\\]^?])|([0tnvfr]))/g;\n str = str.replace(chars_regex, function(s, b, lbs, a16, b16, c8, dctrl, eslsh) {\n if (lbs) {\n return s;\n }\n\n var code = b ? 8 :\n a16 ? parseInt(a16, 16) :\n b16 ? parseInt(b16, 16) :\n c8 ? parseInt(c8, 8) :\n dctrl ? CTRL.indexOf(dctrl) :\n SLSH[eslsh];\n\n var c = String.fromCharCode(code);\n\n // Escape special regex characters.\n if (/[[\\]{}^$.|?*+()]/.test(c)) {\n c = '\\\\' + c;\n }\n\n return c;\n });\n\n return str;\n};\n\n\n/**\n * turns class into tokens\n * reads str until it encounters a ] not preceeded by a \\\n *\n * @param {String} str\n * @param {String} regexpStr\n * @return {Array.<Array.<Object>, Number>}\n */\nexports.tokenizeClass = (str, regexpStr) => {\n /* jshint maxlen: false */\n var tokens = [];\n var regexp = /\\\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\\\)(.)|([^\\]\\\\]))-(?:\\\\)?([^\\]]))|(\\])|(?:\\\\)?([^])/g;\n var rs, c;\n\n\n while ((rs = regexp.exec(str)) != null) {\n if (rs[1]) {\n tokens.push(sets.words());\n\n } else if (rs[2]) {\n tokens.push(sets.ints());\n\n } else if (rs[3]) {\n tokens.push(sets.whitespace());\n\n } else if (rs[4]) {\n tokens.push(sets.notWords());\n\n } else if (rs[5]) {\n tokens.push(sets.notInts());\n\n } else if (rs[6]) {\n tokens.push(sets.notWhitespace());\n\n } else if (rs[7]) {\n tokens.push({\n type: types.RANGE,\n from: (rs[8] || rs[9]).charCodeAt(0),\n to: rs[10].charCodeAt(0),\n });\n\n } else if ((c = rs[12])) {\n tokens.push({\n type: types.CHAR,\n value: c.charCodeAt(0),\n });\n\n } else {\n return [tokens, regexp.lastIndex];\n }\n }\n\n exports.error(regexpStr, 'Unterminated character class');\n};\n\n\n/**\n * Shortcut to throw errors.\n *\n * @param {String} regexp\n * @param {String} msg\n */\nexports.error = (regexp, msg) => {\n throw new SyntaxError('Invalid regular expression: /' + regexp + '/: ' + msg);\n};\n","const types = require('./types');\nexports.wordBoundary = () => ({ type: types.POSITION, value: 'b' });\nexports.nonWordBoundary = () => ({ type: types.POSITION, value: 'B' });\nexports.begin = () => ({ type: types.POSITION, value: '^' });\nexports.end = () => ({ type: types.POSITION, value: '$' });\n","const util = require('./util');\nconst types = require('./types');\nconst sets = require('./sets');\nconst positions = require('./positions');\n\n\nmodule.exports = (regexpStr) => {\n var i = 0, l, c,\n start = { type: types.ROOT, stack: []},\n\n // Keep track of last clause/group and stack.\n lastGroup = start,\n last = start.stack,\n groupStack = [];\n\n\n var repeatErr = (i) => {\n util.error(regexpStr, `Nothing to repeat at column ${i - 1}`);\n };\n\n // Decode a few escaped characters.\n var str = util.strToChars(regexpStr);\n l = str.length;\n\n // Iterate through each character in string.\n while (i < l) {\n c = str[i++];\n\n switch (c) {\n // Handle escaped characters, inclues a few sets.\n case '\\\\':\n c = str[i++];\n\n switch (c) {\n case 'b':\n last.push(positions.wordBoundary());\n break;\n\n case 'B':\n last.push(positions.nonWordBoundary());\n break;\n\n case 'w':\n last.push(sets.words());\n break;\n\n case 'W':\n last.push(sets.notWords());\n break;\n\n case 'd':\n last.push(sets.ints());\n break;\n\n case 'D':\n last.push(sets.notInts());\n break;\n\n case 's':\n last.push(sets.whitespace());\n break;\n\n case 'S':\n last.push(sets.notWhitespace());\n break;\n\n default:\n // Check if c is integer.\n // In which case it's a reference.\n if (/\\d/.test(c)) {\n last.push({ type: types.REFERENCE, value: parseInt(c, 10) });\n\n // Escaped character.\n } else {\n last.push({ type: types.CHAR, value: c.charCodeAt(0) });\n }\n }\n\n break;\n\n\n // Positionals.\n case '^':\n last.push(positions.begin());\n break;\n\n case '$':\n last.push(positions.end());\n break;\n\n\n // Handle custom sets.\n case '[':\n // Check if this class is 'anti' i.e. [^abc].\n var not;\n if (str[i] === '^') {\n not = true;\n i++;\n } else {\n not = false;\n }\n\n // Get all the characters in class.\n var classTokens = util.tokenizeClass(str.slice(i), regexpStr);\n\n // Increase index by length of class.\n i += classTokens[1];\n last.push({\n type: types.SET,\n set: classTokens[0],\n not,\n });\n\n break;\n\n\n // Class of any character except \\n.\n case '.':\n last.push(sets.anyChar());\n break;\n\n\n // Push group onto stack.\n case '(':\n // Create group.\n var group = {\n type: types.GROUP,\n stack: [],\n remember: true,\n };\n\n c = str[i];\n\n // If if this is a special kind of group.\n if (c === '?') {\n c = str[i + 1];\n i += 2;\n\n // Match if followed by.\n if (c === '=') {\n group.followedBy = true;\n\n // Match if not followed by.\n } else if (c === '!') {\n group.notFollowedBy = true;\n\n } else if (c !== ':') {\n util.error(regexpStr,\n `Invalid group, character '${c}'` +\n ` after '?' at column ${i - 1}`);\n }\n\n group.remember = false;\n }\n\n // Insert subgroup into current group stack.\n last.push(group);\n\n // Remember the current group for when the group closes.\n groupStack.push(lastGroup);\n\n // Make this new group the current group.\n lastGroup = group;\n last = group.stack;\n break;\n\n\n // Pop group out of stack.\n case ')':\n if (groupStack.length === 0) {\n util.error(regexpStr, `Unmatched ) at column ${i - 1}`);\n }\n lastGroup = groupStack.pop();\n\n // Check if this group has a PIPE.\n // To get back the correct last stack.\n last = lastGroup.options ?\n lastGroup.options[lastGroup.options.length - 1] : lastGroup.stack;\n break;\n\n\n // Use pipe character to give more choices.\n case '|':\n // Create array where options are if this is the first PIPE\n // in this clause.\n if (!lastGroup.options) {\n lastGroup.options = [lastGroup.stack];\n delete lastGroup.stack;\n }\n\n // Create a new stack and add to options for rest of clause.\n var stack = [];\n lastGroup.options.push(stack);\n last = stack;\n break;\n\n\n // Repetition.\n // For every repetition, remove last element from last stack\n // then insert back a RANGE object.\n // This design is chosen because there could be more than\n // one repetition symbols in a regex i.e. `a?+{2,3}`.\n case '{':\n var rs = /^(\\d+)(,(\\d+)?)?\\}/.exec(str.slice(i)), min, max;\n if (rs !== null) {\n if (last.length === 0) {\n repeatErr(i);\n }\n min = parseInt(rs[1], 10);\n max = rs[2] ? rs[3] ? parseInt(rs[3], 10) : Infinity : min;\n i += rs[0].length;\n\n last.push({\n type: types.REPETITION,\n min,\n max,\n value: last.pop(),\n });\n } else {\n last.push({\n type: types.CHAR,\n value: 123,\n });\n }\n break;\n\n case '?':\n if (last.length === 0) {\n repeatErr(i);\n }\n last.push({\n type: types.REPETITION,\n min: 0,\n max: 1,\n value: last.pop(),\n });\n break;\n\n case '+':\n if (last.length === 0) {\n repeatErr(i);\n }\n last.push({\n type: types.REPETITION,\n min: 1,\n max: Infinity,\n value: last.pop(),\n });\n break;\n\n case '*':\n if (last.length === 0) {\n repeatErr(i);\n }\n last.push({\n type: types.REPETITION,\n min: 0,\n max: Infinity,\n value: last.pop(),\n });\n break;\n\n\n // Default is a character that is not `\\[](){}?+*^$`.\n default:\n last.push({\n type: types.CHAR,\n value: c.charCodeAt(0),\n });\n }\n\n }\n\n // Check if any groups have not been closed.\n if (groupStack.length !== 0) {\n util.error(regexpStr, 'Unterminated group');\n }\n\n return start;\n};\n\nmodule.exports.types = types;\n","'use strict';\n/* eslint indent: 4 */\n\n\n// Private helper class\nclass SubRange {\n constructor(low, high) {\n this.low = low;\n this.high = high;\n this.length = 1 + high - low;\n }\n\n overlaps(range) {\n return !(this.high < range.low || this.low > range.high);\n }\n\n touches(range) {\n return !(this.high + 1 < range.low || this.low - 1 > range.high);\n }\n\n // Returns inclusive combination of SubRanges as a SubRange.\n add(range) {\n return new SubRange(\n Math.min(this.low, range.low),\n Math.max(this.high, range.high)\n );\n }\n\n // Returns subtraction of SubRanges as an array of SubRanges.\n // (There's a case where subtraction divides it in 2)\n subtract(range) {\n if (range.low <= this.low && range.high >= this.high) {\n return [];\n } else if (range.low > this.low && range.high < this.high) {\n return [\n new SubRange(this.low, range.low - 1),\n new SubRange(range.high + 1, this.high)\n ];\n } else if (range.low <= this.low) {\n return [new SubRange(range.high + 1, this.high)];\n } else {\n return [new SubRange(this.low, range.low - 1)];\n }\n }\n\n toString() {\n return this.low == this.high ?\n this.low.toString() : this.low + '-' + this.high;\n }\n}\n\n\nclass DRange {\n constructor(a, b) {\n this.ranges = [];\n this.length = 0;\n if (a != null) this.add(a, b);\n }\n\n _update_length() {\n this.length = this.ranges.reduce((previous, range) => {\n return previous + range.length;\n }, 0);\n }\n\n add(a, b) {\n var _add = (subrange) => {\n var i = 0;\n while (i < this.ranges.length && !subrange.touches(this.ranges[i])) {\n i++;\n }\n var newRanges = this.ranges.slice(0, i);\n while (i < this.ranges.length && subrange.touches(this.ranges[i])) {\n subrange = subrange.add(this.ranges[i]);\n i++;\n }\n newRanges.push(subrange);\n this.ranges = newRanges.concat(this.ranges.slice(i));\n this._update_length();\n }\n\n if (a instanceof DRange) {\n a.ranges.forEach(_add);\n } else {\n if (b == null) b = a;\n _add(new SubRange(a, b));\n }\n return this;\n }\n\n subtract(a, b) {\n var _subtract = (subrange) => {\n var i = 0;\n while (i < this.ranges.length && !subrange.overlaps(this.ranges[i])) {\n i++;\n }\n var newRanges = this.ranges.slice(0, i);\n while (i < this.ranges.length && subrange.overlaps(this.ranges[i])) {\n newRanges = newRanges.concat(this.ranges[i].subtract(subrange));\n i++;\n }\n this.ranges = newRanges.concat(this.ranges.slice(i));\n this._update_length();\n };\n\n if (a instanceof DRange) {\n a.ranges.forEach(_subtract);\n } else {\n if (b == null) b = a;\n _subtract(new SubRange(a, b));\n }\n return this;\n }\n\n intersect(a, b) {\n var newRanges = [];\n var _intersect = (subrange) => {\n var i = 0;\n while (i < this.ranges.length && !subrange.overlaps(this.ranges[i])) {\n i++;\n }\n while (i < this.ranges.length && subrange.overlaps(this.ranges[i])) {\n var low = Math.max(this.ranges[i].low, subrange.low);\n var high = Math.min(this.ranges[i].high, subrange.high);\n newRanges.push(new SubRange(low, high));\n i++;\n }\n };\n\n if (a instanceof DRange) {\n a.ranges.forEach(_intersect);\n } else {\n if (b == null) b = a;\n _intersect(new SubRange(a, b));\n }\n this.ranges = newRanges;\n this._update_length();\n return this;\n }\n\n index(index) {\n var i = 0;\n while (i < this.ranges.length && this.ranges[i].length <= index) {\n index -= this.ranges[i].length;\n i++;\n }\n return this.ranges[i].low + index;\n }\n\n toString() {\n return '[ ' + this.ranges.join(', ') + ' ]';\n }\n\n clone() {\n return new DRange(this);\n }\n\n numbers() {\n return this.ranges.reduce((result, subrange) => {\n var i = subrange.low;\n while (i <= subrange.high) {\n result.push(i);\n i++;\n }\n return result;\n }, []);\n }\n\n subranges() {\n return this.ranges.map((subrange) => ({\n low: subrange.low,\n high: subrange.high,\n length: 1 + subrange.high - subrange.low\n }));\n }\n}\n\nmodule.exports = DRange;\n","const ret = require('ret');\nconst DRange = require('drange');\nconst types = ret.types;\n\n\nmodule.exports = class RandExp {\n /**\n * @constructor\n * @param {RegExp|String} regexp\n * @param {String} m\n */\n constructor(regexp, m) {\n this._setDefaults(regexp);\n if (regexp instanceof RegExp) {\n this.ignoreCase = regexp.ignoreCase;\n this.multiline = regexp.multiline;\n regexp = regexp.source;\n\n } else if (typeof regexp === 'string') {\n this.ignoreCase = m && m.indexOf('i') !== -1;\n this.multiline = m && m.indexOf('m') !== -1;\n } else {\n throw new Error('Expected a regexp or string');\n }\n\n this.tokens = ret(regexp);\n }\n\n\n /**\n * Checks if some custom properties have been set for this regexp.\n *\n * @param {RandExp} randexp\n * @param {RegExp} regexp\n */\n _setDefaults(regexp) {\n // When a repetitional token has its max set to Infinite,\n // randexp won't actually generate a random amount between min and Infinite\n // instead it will see Infinite as min + 100.\n this.max = regexp.max != null ? regexp.max :\n RandExp.prototype.max != null ? RandExp.prototype.max : 100;\n\n // This allows expanding to include additional characters\n // for instance: RandExp.defaultRange.add(0, 65535);\n this.defaultRange = regexp.defaultRange ?\n regexp.defaultRange : this.defaultRange.clone();\n\n if (regexp.randInt) {\n this.randInt = regexp.randInt;\n }\n }\n\n\n /**\n * Generates the random string.\n *\n * @return {String}\n */\n gen() {\n return this._gen(this.tokens, []);\n }\n\n\n /**\n * Generate random string modeled after given tokens.\n *\n * @param {Object} token\n * @param {Array.<String>} groups\n * @return {String}\n */\n _gen(token, groups) {\n var stack, str, n, i, l;\n\n switch (token.type) {\n case types.ROOT:\n case types.GROUP:\n // Ignore lookaheads for now.\n if (token.followedBy || token.notFollowedBy) { return ''; }\n\n // Insert placeholder until group string is generated.\n if (token.remember && token.groupNumber === undefined) {\n token.groupNumber = groups.push(null) - 1;\n }\n\n stack = token.options ?\n this._randSelect(token.options) : token.stack;\n\n str = '';\n for (i = 0, l = stack.length; i < l; i++) {\n str += this._gen(stack[i], groups);\n }\n\n if (token.remember) {\n groups[token.groupNumber] = str;\n }\n return str;\n\n case types.POSITION:\n // Do nothing for now.\n return '';\n\n case types.SET:\n var expandedSet = this._expand(token);\n if (!expandedSet.length) { return ''; }\n return String.fromCharCode(this._randSelect(expandedSet));\n\n case types.REPETITION:\n // Randomly generate number between min and max.\n n = this.randInt(token.min,\n token.max === Infinity ? token.min + this.max : token.max);\n\n str = '';\n for (i = 0; i < n; i++) {\n str += this._gen(token.value, groups);\n }\n\n return str;\n\n case types.REFERENCE:\n return groups[token.value - 1] || '';\n\n case types.CHAR:\n var code = this.ignoreCase && this._randBool() ?\n this._toOtherCase(token.value) : token.value;\n return String.fromCharCode(code);\n }\n }\n\n\n /**\n * If code is alphabetic, converts to other case.\n * If not alphabetic, returns back code.\n *\n * @param {Number} code\n * @return {Number}\n */\n _toOtherCase(code) {\n return code + (97 <= code && code <= 122 ? -32 :\n 65 <= code && code <= 90 ? 32 : 0);\n }\n\n\n /**\n * Randomly returns a true or false value.\n *\n * @return {Boolean}\n */\n _randBool() {\n return !this.randInt(0, 1);\n }\n\n\n /**\n * Randomly selects and returns a value from the array.\n *\n * @param {Array.<Object>} arr\n * @return {Object}\n */\n _randSelect(arr) {\n if (arr instanceof DRange) {\n return arr.index(this.randInt(0, arr.length - 1));\n }\n return arr[this.randInt(0, arr.length - 1)];\n }\n\n\n /**\n * expands a token to a DiscontinuousRange of characters which has a\n * length and an index function (for random selecting)\n *\n * @param {Object} token\n * @return {DiscontinuousRange}\n */\n _expand(token) {\n if (token.type === ret.types.CHAR) {\n return new DRange(token.value);\n } else if (token.type === ret.types.RANGE) {\n return new DRange(token.from, token.to);\n } else {\n let drange = new DRange();\n for (let i = 0; i < token.set.length; i++) {\n let subrange = this._expand(token.set[i]);\n drange.add(subrange);\n if (this.ignoreCase) {\n for (let j = 0; j < subrange.length; j++) {\n let code = subrange.index(j);\n let otherCaseCode = this._toOtherCase(code);\n if (code !== otherCaseCode) {\n drange.add(otherCaseCode);\n }\n }\n }\n }\n if (token.not) {\n return this.defaultRange.clone().subtract(drange);\n } else {\n return this.defaultRange.clone().intersect(drange);\n }\n }\n }\n\n\n /**\n * Randomly generates and returns a number between a and b (inclusive).\n *\n * @param {Number} a\n * @param {Number} b\n * @return {Number}\n */\n randInt(a, b) {\n return a + Math.floor(Math.random() * (1 + b - a));\n }\n\n\n /**\n * Default range of characters to generate from.\n */\n get defaultRange() {\n return this._range = this._range || new DRange(32, 126);\n }\n\n set defaultRange(range) {\n this._range = range;\n }\n\n\n /**\n *\n * Enables use of randexp with a shorter call.\n *\n * @param {RegExp|String| regexp}\n * @param {String} m\n * @return {String}\n */\n static randexp(regexp, m) {\n var randexp;\n if(typeof regexp === 'string') {\n regexp = new RegExp(regexp, m);\n }\n\n if (regexp._randexp === undefined) {\n randexp = new RandExp(regexp, m);\n regexp._randexp = randexp;\n } else {\n randexp = regexp._randexp;\n randexp._setDefaults(regexp);\n }\n return randexp.gen();\n }\n\n\n /**\n * Enables sugary /regexp/.gen syntax.\n */\n static sugar() {\n /* eshint freeze:false */\n RegExp.prototype.gen = function() {\n return RandExp.randexp(this);\n };\n }\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["types","ROOT","GROUP","POSITION","SET","RANGE","REPETITION","REFERENCE","CHAR","require$$0","INTS","type","from","to","WORDS","value","concat","WHITESPACE","NOTANYCHAR","sets","words","set","not","notWords","ints","notInts","whitespace","notWhitespace","anyChar","require$$1","CTRL","SLSH","t","n","v","f","r","exports","strToChars","str","chars_regex","replace","s","b","lbs","a16","b16","c8","dctrl","eslsh","code","parseInt","indexOf","c","String","fromCharCode","test","tokenizeClass","regexpStr","tokens","regexp","rs","exec","push","charCodeAt","lastIndex","error","msg","SyntaxError","positions","wordBoundary","nonWordBoundary","begin","end","util","require$$2","require$$3","libModule","i","l","start","stack","lastGroup","last","groupStack","repeatErr","length","classTokens","slice","group","remember","followedBy","notFollowedBy","pop","options","min","max","Infinity","SubRange","constructor","low","high","this","overlaps","range","touches","add","Math","subtract","toString","DRange$1","DRange","a","ranges","_update_length","reduce","previous","_add","subrange","newRanges","forEach","_subtract","intersect","_intersect","index","join","clone","numbers","result","subranges","map","lib","ret","randexp","RandExp","m","_setDefaults","RegExp","ignoreCase","multiline","source","Error","prototype","defaultRange","randInt","gen","_gen","token","groups","groupNumber","undefined","_randSelect","expandedSet","_expand","_randBool","_toOtherCase","arr","drange","j","otherCaseCode","floor","random","_range","_randexp","sugar","ALPHABETS","boolean","integer","bigint","BigInt","Number","number","string","Array","fill","array","closure","count","_e","pick","pattern","regex","byte","password","uuid","email","hostname","idnEmail","idnHostname","iri","url","iriReference","ipv4","ipv6","uri","uriReference","uriTemplate","datetime","Date","now","DAY","toISOString","date","substring","time","duration","period","durate","jsonPointer","relativeJsonPointer","elements","filter","_unit","unit","$every","pred","TypeGuardError","props","super","message","method","path","expected","proto","Object","setPrototypeOf","__proto__","$guard","exceptionable","factory","$join","variable","JSON","stringify","reserved","RESERVED","has","Set","$report","reportable","exceptable","$is_between","minimum","maximum","$is_bigint_string","is","is_between","is_bigint_string","functionalAssert","errorFactory","p","$number","isFinite","$rest","$string","len","point","$tail","$throws","tail","rest","throws","input","File","toNumber","toBigint","alternative","blob","Blob","file","isNaN","params","URLSearchParams","formData","$FormDataReader","headers","$HeadersReader","parameter","$ParameterReader","query","$QueryReader","capitalize","toUpperCase","snake","indexes","prev","splice","toLowerCase","first","camel","unsnake","pascal","escaper","prefix","ch","prevFirst","prevLength","piece","StringUtil.capitalize","$convention","rename","main","isArray","Boolean","valueOf","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigUint64Array","Int8Array","Int16Array","Int32Array","BigInt64Array","Float32Array","Float64Array","DataView","object","fromEntries","entries","key","base","any","NamingConvention.camel","NamingConvention.pascal","NamingConvention.snake","$clone","parse","$any","val","prune","$ProtobufReader","buf","ptr","view","buffer","byteOffset","byteLength","size","uint32","varint32","int32","sint32","uint64","varint64","int64","sint64","N01","bool","float","getFloat32","double","getFloat64","bytes","subarray","utf8","decode","skip","u8","skipType","wireType","loaded","u8n","N7F","N80","asIntN","getUint8","TextDecoder","$strlen","$ProtobufSizer","pos","varlen","varlenidx","_value","fork","ldelim","endPos","startPos","idx","reset","asUintN","NX7F","ND07","$ProtobufWriter","sizer","variant32","variant64","ND01","ND63","setFloat32","setFloat64","binary","encode","finish","NX80","TextEncoder","Reader","Sizer","Writer","strlen","assert","every","guard","predicate","matched","validate","report","res","success","errorList","errors","generator","RandomGenerator","assertFunction","halt","assertFunctionPure","assign","Namespace.assert","Namespace.functional.functionalAssert","assertParametersPure","assertReturn","assertReturnPure","assertEqualsFunction","assertEqualsFunctionPure","assertEqualsParameters","assertEqualsParametersPure","assertEqualsReturn","assertEqualsReturnPure","isFunction","isFunctionPure","Namespace.is","isParameters","isParametersPure","isReturn","isReturnPure","equalsFunction","equalsFunctionPure","equalsParameters","equalsParametersPure","equalsReturn","equalsReturnPure","validateFunction","validateFunctionPure","Namespace.validate","validateParameters","validateParametersPure","validateReturn","validateReturnPure","validateEqualsFunction","validateEqualsFunctionPure","validateEqualsParameters","validateEqualsParametersPure","validateEqualsReturn","validateEqualsReturnPure","name","formDataPure","Namespace.http.formData","assertFormData","assertFormDataPure","isFormData","isFormDataPure","validateFormData","validateFormDataPure","queryPure","Namespace.http.query","assertQuery","assertQueryPure","isQuery","isQueryPure","validateQuery","validateQueryPure","headersPure","Namespace.http.headers","assertHeaders","assertHeadersPure","isHeaders","isHeadersPure","validateHeaders","validateHeadersPure","parameterPure","Namespace.http.parameter","createFormData","createFormDataPure","createAssertFormData","createAssertFormDataPure","createIsFormData","createIsFormDataPure","createValidateFormData","createValidateFormDataPure","createQuery","createQueryPure","createAssertQuery","createAssertQueryPure","createIsQuery","createIsQueryPure","createValidateQuery","createValidateQueryPure","createHeaders","createHeadersPure","createAssertHeaders","createAssertHeadersPure","createIsHeaders","createIsHeadersPure","createValidateHeaders","createValidateHeadersPure","createParameter","createParameterPure","application","assertParse","assertParsePure","isParse","isParsePure","validateParse","validateParsePure","stringifyPure","Namespace.json.stringify","assertStringify","assertStringifyPure","isStringify","isStringifyPure","validateStringify","validateStringifyPure","createIsParse","createIsParsePure","createAssertParse","createAssertParsePure","createValidateParse","createValidateParsePure","createStringify","createStringifyPure","createAssertStringify","createAssertStringifyPure","createIsStringify","createIsStringifyPure","createValidateStringify","createValidateStringifyPure","literals","clonePure","Namespace.misc.clone","assertClone","assertClonePure","isClone","isClonePure","validateClone","validateClonePure","prunePure","Namespace.misc.prune","assertPrune","assertPrunePure","isPrune","isPrunePure","validatePrune","validatePrunePure","createClone","createClonePure","createAssertClone","createAssertClonePure","createIsClone","createIsClonePure","createValidateClone","createValidateClonePure","createPrune","createPrunePure","createAssertPrune","createAssertPrunePure","createIsPrune","createIsPrunePure","createValidatePrune","createValidatePrunePure","camelPure","Namespace.notations.camel","assertCamel","assertCamelPure","isCamel","isCamelPure","validateCamel","validateCamelPure","pascalPure","Namespace.notations.pascal","assertPascal","assertPascalPure","isPascal","isPascalPure","validatePascal","validatePascalPure","snakePure","Namespace.notations.snake","assertSnake","assertSnakePure","isSnake","isSnakePure","validateSnake","validateSnakePure","createCamel","createCamelPure","createAssertCamel","createAssertCamelPure","createIsCamel","createIsCamelPure","createValidateCamel","createValidateCamelPure","createPascal","createPascalPure","createAssertPascal","createAssertPascalPure","createIsPascal","createIsPascalPure","createValidatePascal","createValidatePascalPure","createSnake","createSnakePure","createAssertSnake","createAssertSnakePure","createIsSnake","createIsSnakePure","createValidateSnake","createValidateSnakePure","decodePure","Namespace.protobuf.decode","assertDecode","assertDecodePure","isDecode","isDecodePure","validateDecode","validateDecodePure","encodePure","Namespace.protobuf.encode","assertEncode","assertEncodePure","isEncode","isEncodePure","validateEncode","validateEncodePure","createDecode","createDecodePure","createIsDecode","createIsDecodePure","createAssertDecode","createAssertDecodePure","createValidateDecode","createValidateDecodePure","createEncode","createEncodePure","createIsEncode","createIsEncodePure","createAssertEncode","createAssertEncodePure","createValidateEncode","createValidateEncodePure","metadata","metadataPure","assertPure","assertGuard","assertGuardPure","isPure","validatePure","assertEquals","assertEqualsPure","assertGuardEquals","assertGuardEqualsPure","equals","equalsPure","validateEquals","validateEqualsPure","randomPure","Namespace.random","createAssert","createAssertPure","createAssertGuard","createAssertGuardPure","createIs","createIsPure","createValidate","createValidatePure","createAssertEquals","createAssertEqualsPure","createAssertGuardEquals","createAssertGuardEqualsPure","createEquals","createEqualsPure","createValidateEquals","createValidateEqualsPure","createRandom","createRandomPure"],"mappings":";;;;;;;;;;AAAA,IAAAA,UAAiB;IACfC,MAAa;IACbC,OAAa;IACbC,UAAa;IACbC,KAAa;IACbC,OAAa;IACbC,YAAa;IACbC,WAAa;IACbC,MAAa;;;;;ACRf,MAAMR,UAAQS;;AAEd,MAAMC,OAAO,MAAM,EAAC;IAAEC,MAAMX,QAAMK;IAAQO,MAAM;IAAIC,IAAI;;;AAExD,MAAMC,QAAQ,MACL,EACL;IAAEH,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMK;IAAOO,MAAM;IAAIC,IAAI;GACnC;IAAEF,MAAMX,QAAMK;IAAOO,MAAM;IAAIC,IAAI;IACnCG,OAAON;;AAGX,MAAMO,aAAa,MACV,EACL;IAAEN,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMK;IAAOO,MAAM;IAAMC,IAAI;GACrC;IAAEF,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;;;AAI/B,MAAMG,aAAa,MACV,EACL;IAAEP,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;GAC3B;IAAEJ,MAAMX,QAAMQ;IAAMO,OAAO;;;AAK/BI,OAAAC,QAAgB,OAAA;IAAST,MAAMX,QAAMI;IAAKiB,KAAKP;IAASQ,KAAK;;;AAC7DH,OAAAI,WAAmB,OAAA;IAASZ,MAAMX,QAAMI;IAAKiB,KAAKP;IAASQ,KAAK;;;AAChEH,OAAAK,OAAe,OAAA;IAASb,MAAMX,QAAMI;IAAKiB,KAAKX;IAAQY,KAAK;;;AAC3DH,OAAAM,UAAkB,OAAA;IAASd,MAAMX,QAAMI;IAAKiB,KAAKX;IAAQY,KAAK;;;AAC9DH,OAAAO,aAAqB,OAAA;IAASf,MAAMX,QAAMI;IAAKiB,KAAKJ;IAAcK,KAAK;;;AACvEH,OAAAQ,gBAAwB,OAAA;IAAShB,MAAMX,QAAMI;IAAKiB,KAAKJ;IAAcK,KAAK;;;AAC1EH,OAAAS,UAAkB;IAASjB,MAAMX,QAAMI;IAAKiB,KAAKH;IAAcI,KAAK;;;;IChDpE,MAAMtB,QAAQS;IACd,MAAMU,OAAQU;IAGd,MAAMC,OAAO;IACb,MAAMC,OAAO;QAAE,GAAK;QAAGC,GAAK;QAAGC,GAAK;QAAIC,GAAK;QAAIC,GAAK;QAAIC,GAAK;;IAS/DC,QAAqBC,aAAA,SAASC;QAE5B,IAAIC,cAAc;QAClBD,MAAMA,IAAIE,QAAQD,cAAa,SAASE,GAAGC,GAAGC,KAAKC,KAAKC,KAAKC,IAAIC,OAAOC;YACtE,IAAIL,KAAK;gBACP,OAAOF;AACR;YAED,IAAIQ,OAAOP,IAAI,IACbE,MAAQM,SAASN,KAAK,MACtBC,MAAQK,SAASL,KAAK,MACtBC,KAAQI,SAASJ,IAAM,KACvBC,QAAQlB,KAAKsB,QAAQJ,SACrBjB,KAAKkB;YAEP,IAAII,IAAIC,OAAOC,aAAaL;YAG5B,IAAI,mBAAmBM,KAAKH,IAAI;gBAC9BA,IAAI,OAAOA;AACZ;YAED,OAAOA;AACX;QAEE,OAAOd;AACT;IAWAF,QAAAoB,gBAAwB,CAAClB,KAAKmB;QAE5B,IAAIC,SAAS;QACb,IAAIC,SAAS;QACb,IAAIC,IAAIR;QAGR,QAAQQ,KAAKD,OAAOE,KAAKvB,SAAS,MAAM;YACtC,IAAIsB,GAAG,IAAI;gBACTF,OAAOI,KAAK5C,KAAKC;AAEvB,mBAAW,IAAIyC,GAAG,IAAI;gBAChBF,OAAOI,KAAK5C,KAAKK;AAEvB,mBAAW,IAAIqC,GAAG,IAAI;gBAChBF,OAAOI,KAAK5C,KAAKO;AAEvB,mBAAW,IAAImC,GAAG,IAAI;gBAChBF,OAAOI,KAAK5C,KAAKI;AAEvB,mBAAW,IAAIsC,GAAG,IAAI;gBAChBF,OAAOI,KAAK5C,KAAKM;AAEvB,mBAAW,IAAIoC,GAAG,IAAI;gBAChBF,OAAOI,KAAK5C,KAAKQ;AAEvB,mBAAW,IAAIkC,GAAG,IAAI;gBAChBF,OAAOI,KAAK;oBACVpD,MAAMX,MAAMK;oBACZO,OAAOiD,GAAG,MAAMA,GAAG,IAAIG,WAAW;oBAClCnD,IAAIgD,GAAG,IAAIG,WAAW;;AAGzB,mBAAM,IAAKX,IAAIQ,GAAG,KAAM;gBACvBF,OAAOI,KAAK;oBACVpD,MAAMX,MAAMQ;oBACZO,OAAOsC,EAAEW,WAAW;;AAG5B,mBAAW;gBACL,OAAO,EAACL,QAAQC,OAAOK;AACxB;AACF;QAED5B,QAAQ6B,MAAMR,WAAW;AAA+B;IAU1DrB,QAAA6B,QAAgB,CAACN,QAAQO;QACvB,MAAM,IAAIC,YAAY,kCAAkCR,SAAS,QAAQO;AAAI;;;;;AC1G/E,MAAMnE,UAAQS;;AACd4D,YAAAC,eAAuB,OAAA;IAAS3D,MAAMX,QAAMG;IAAUY,OAAO;;;AAC7DsD,YAAAE,kBAA0B,OAAA;IAAS5D,MAAMX,QAAMG;IAAUY,OAAO;;;AAChEsD,YAAAG,QAAgB,OAAA;IAAS7D,MAAMX,QAAMG;IAAUY,OAAO;;;AACtDsD,YAAAI,MAAc,OAAA;IAAS9D,MAAMX,QAAMG;IAAUY,OAAO;;;ACJpD,MAAM2D,OAAYjE;;AAClB,MAAMT,UAAY6B;;AAClB,MAAMV,OAAYwD;;AAClB,MAAMN,YAAYO;;AAGlBC,MAAcxC,UAAIqB;IAChB,IAAIoB,IAAI,GAAGC,GAAG1B,GACZ2B,QAAQ;QAAErE,MAAMX,QAAMC;QAAMgF,OAAO;OAGnCC,YAAYF,OACZG,OAAOH,MAAMC,OACbG,aAAa;IAGf,IAAIC,YAAaP;QACfJ,KAAKR,MAAMR,WAAW,+BAA+BoB,IAAI;AAAI;IAI/D,IAAIvC,MAAMmC,KAAKpC,WAAWoB;IAC1BqB,IAAIxC,IAAI+C;IAGR,OAAOR,IAAIC,GAAG;QACZ1B,IAAId,IAAIuC;QAER,QAAQzB;UAEN,KAAK;YACHA,IAAId,IAAIuC;YAER,QAAQzB;cACN,KAAK;gBACH8B,KAAKpB,KAAKM,UAAUC;gBACpB;;cAEF,KAAK;gBACHa,KAAKpB,KAAKM,UAAUE;gBACpB;;cAEF,KAAK;gBACHY,KAAKpB,KAAK5C,KAAKC;gBACf;;cAEF,KAAK;gBACH+D,KAAKpB,KAAK5C,KAAKI;gBACf;;cAEF,KAAK;gBACH4D,KAAKpB,KAAK5C,KAAKK;gBACf;;cAEF,KAAK;gBACH2D,KAAKpB,KAAK5C,KAAKM;gBACf;;cAEF,KAAK;gBACH0D,KAAKpB,KAAK5C,KAAKO;gBACf;;cAEF,KAAK;gBACHyD,KAAKpB,KAAK5C,KAAKQ;gBACf;;cAEF;gBAGE,IAAI,KAAK6B,KAAKH,IAAI;oBAChB8B,KAAKpB,KAAK;wBAAEpD,MAAMX,QAAMO;wBAAWQ,OAAOoC,SAASE,GAAG;;AAGpE,uBAAmB;oBACL8B,KAAKpB,KAAK;wBAAEpD,MAAMX,QAAMQ;wBAAMO,OAAOsC,EAAEW,WAAW;;AACnD;;YAGL;;UAIF,KAAK;YACHmB,KAAKpB,KAAKM,UAAUG;YACpB;;UAEF,KAAK;YACHW,KAAKpB,KAAKM,UAAUI;YACpB;;UAIF,KAAK;YAEH,IAAInD;YACJ,IAAIiB,IAAIuC,OAAO,KAAK;gBAClBxD,MAAM;gBACNwD;AACV,mBAAe;gBACLxD,MAAM;AACP;YAGD,IAAIiE,cAAcb,KAAKjB,cAAclB,IAAIiD,MAAMV,IAAIpB;YAGnDoB,KAAKS,YAAY;YACjBJ,KAAKpB,KAAK;gBACRpD,MAAMX,QAAMI;gBACZiB,KAAKkE,YAAY;gBACjBjE;;YAGF;;UAIF,KAAK;YACH6D,KAAKpB,KAAK5C,KAAKS;YACf;;UAIF,KAAK;YAEH,IAAI6D,QAAQ;gBACV9E,MAAMX,QAAME;gBACZ+E,OAAO;gBACPS,UAAU;;YAGZrC,IAAId,IAAIuC;YAGR,IAAIzB,MAAM,KAAK;gBACbA,IAAId,IAAIuC,IAAI;gBACZA,KAAK;gBAGL,IAAIzB,MAAM,KAAK;oBACboC,MAAME,aAAa;AAG/B,uBAAiB,IAAItC,MAAM,KAAK;oBACpBoC,MAAMG,gBAAgB;AAElC,uBAAiB,IAAIvC,MAAM,KAAK;oBACpBqB,KAAKR,MAAMR,WACT,6BAA6BL,OAC7B,wBAAwByB,IAAI;AAC/B;gBAEDW,MAAMC,WAAW;AAClB;YAGDP,KAAKpB,KAAK0B;YAGVL,WAAWrB,KAAKmB;YAGhBA,YAAYO;YACZN,OAAOM,MAAMR;YACb;;UAIF,KAAK;YACH,IAAIG,WAAWE,WAAW,GAAG;gBAC3BZ,KAAKR,MAAMR,WAAW,yBAAyBoB,IAAI;AACpD;YACDI,YAAYE,WAAWS;YAIvBV,OAAOD,UAAUY,UACfZ,UAAUY,QAAQZ,UAAUY,QAAQR,SAAS,KAAKJ,UAAUD;YAC9D;;UAIF,KAAK;YAGH,KAAKC,UAAUY,SAAS;gBACtBZ,UAAUY,UAAU,EAACZ,UAAUD;uBACxBC,UAAUD;AAClB;YAGD,IAAIA,QAAQ;YACZC,UAAUY,QAAQ/B,KAAKkB;YACvBE,OAAOF;YACP;;UAQF,KAAK;YACH,IAAIpB,KAAK,qBAAqBC,KAAKvB,IAAIiD,MAAMV,KAAKiB,KAAKC;YACvD,IAAInC,OAAO,MAAM;gBACf,IAAIsB,KAAKG,WAAW,GAAG;oBACrBD,UAAUP;AACX;gBACDiB,MAAM5C,SAASU,GAAG,IAAI;gBACtBmC,MAAMnC,GAAG,KAAKA,GAAG,KAAKV,SAASU,GAAG,IAAI,MAAMoC,WAAWF;gBACvDjB,KAAKjB,GAAG,GAAGyB;gBAEXH,KAAKpB,KAAK;oBACRpD,MAAMX,QAAMM;oBACZyF;oBACAC;oBACAjF,OAAOoE,KAAKU;;AAExB,mBAAe;gBACLV,KAAKpB,KAAK;oBACRpD,MAAMX,QAAMQ;oBACZO,OAAO;;AAEV;YACD;;UAEF,KAAK;YACH,IAAIoE,KAAKG,WAAW,GAAG;gBACrBD,UAAUP;AACX;YACDK,KAAKpB,KAAK;gBACRpD,MAAMX,QAAMM;gBACZyF,KAAK;gBACLC,KAAK;gBACLjF,OAAOoE,KAAKU;;YAEd;;UAEF,KAAK;YACH,IAAIV,KAAKG,WAAW,GAAG;gBACrBD,UAAUP;AACX;YACDK,KAAKpB,KAAK;gBACRpD,MAAMX,QAAMM;gBACZyF,KAAK;gBACLC,KAAKC;gBACLlF,OAAOoE,KAAKU;;YAEd;;UAEF,KAAK;YACH,IAAIV,KAAKG,WAAW,GAAG;gBACrBD,UAAUP;AACX;YACDK,KAAKpB,KAAK;gBACRpD,MAAMX,QAAMM;gBACZyF,KAAK;gBACLC,KAAKC;gBACLlF,OAAOoE,KAAKU;;YAEd;;UAIF;YACEV,KAAKpB,KAAK;gBACRpD,MAAMX,QAAMQ;gBACZO,OAAOsC,EAAEW,WAAW;;;AAI3B;IAGD,IAAIoB,WAAWE,WAAW,GAAG;QAC3BZ,KAAKR,MAAMR,WAAW;AACvB;IAED,OAAOsB;AAAK;;AAGdH,MAAAxC,QAAArC,QAAuBA;;;;ACpRvB,MAAMkG;IACF,WAAAC,CAAYC,KAAKC;QACbC,KAAKF,MAAMA;QACXE,KAAKD,OAAOA;QACZC,KAAKhB,SAAS,IAAIe,OAAOD;AAC5B;IAED,QAAAG,CAASC;QACL,SAASF,KAAKD,OAAOG,MAAMJ,OAAOE,KAAKF,MAAMI,MAAMH;AACtD;IAED,OAAAI,CAAQD;QACJ,SAASF,KAAKD,OAAO,IAAIG,MAAMJ,OAAOE,KAAKF,MAAM,IAAII,MAAMH;AAC9D;IAGD,GAAAK,CAAIF;QACA,OAAO,IAAIN,SACPS,KAAKZ,IAAIO,KAAKF,KAAKI,MAAMJ,MACzBO,KAAKX,IAAIM,KAAKD,MAAMG,MAAMH;AAEjC;IAID,QAAAO,CAASJ;QACL,IAAIA,MAAMJ,OAAOE,KAAKF,OAAOI,MAAMH,QAAQC,KAAKD,MAAM;YAClD,OAAO;AACnB,eAAe,IAAIG,MAAMJ,MAAME,KAAKF,OAAOI,MAAMH,OAAOC,KAAKD,MAAM;YACvD,OAAO,EACH,IAAIH,SAASI,KAAKF,KAAKI,MAAMJ,MAAM,IACnC,IAAIF,SAASM,MAAMH,OAAO,GAAGC,KAAKD;AAEzC,eAAM,IAAIG,MAAMJ,OAAOE,KAAKF,KAAK;YAC9B,OAAO,EAAC,IAAIF,SAASM,MAAMH,OAAO,GAAGC,KAAKD;AACtD,eAAe;YACH,OAAO,EAAC,IAAIH,SAASI,KAAKF,KAAKI,MAAMJ,MAAM;AAC9C;AACJ;IAED,QAAAS;QACI,OAAOP,KAAKF,OAAOE,KAAKD,OACpBC,KAAKF,IAAIS,aAAaP,KAAKF,MAAM,MAAME,KAAKD;AACnD;;;AAIL,IAAAS,WAAA,MAAMC;IACF,WAAAZ,CAAYa,GAAGrE;QACX2D,KAAKW,SAAS;QACdX,KAAKhB,SAAS;QACd,IAAI0B,KAAK,MAAMV,KAAKI,IAAIM,GAAGrE;AAC9B;IAED,cAAAuE;QACIZ,KAAKhB,SAASgB,KAAKW,OAAOE,QAAO,CAACC,UAAUZ,UACjCY,WAAWZ,MAAMlB,SACzB;AACN;IAED,GAAAoB,CAAIM,GAAGrE;QACH,IAAI0E,OAAQC;YACR,IAAIxC,IAAI;YACR,OAAOA,IAAIwB,KAAKW,OAAO3B,WAAWgC,SAASb,QAAQH,KAAKW,OAAOnC,KAAK;gBAChEA;AACH;YACD,IAAIyC,YAAYjB,KAAKW,OAAOzB,MAAM,GAAGV;YACrC,OAAOA,IAAIwB,KAAKW,OAAO3B,UAAUgC,SAASb,QAAQH,KAAKW,OAAOnC,KAAK;gBAC/DwC,WAAWA,SAASZ,IAAIJ,KAAKW,OAAOnC;gBACpCA;AACH;YACDyC,UAAUxD,KAAKuD;YACfhB,KAAKW,SAASM,UAAUvG,OAAOsF,KAAKW,OAAOzB,MAAMV;YACjDwB,KAAKY;AAAgB;QAGzB,IAAIF,aAAaD,QAAQ;YACrBC,EAAEC,OAAOO,QAAQH;AAC7B,eAAe;YACH,IAAI1E,KAAK,MAAMA,IAAIqE;YACnBK,KAAK,IAAInB,SAASc,GAAGrE;AACxB;QACD,OAAO2D;AACV;IAED,QAAAM,CAASI,GAAGrE;QACR,IAAI8E,YAAaH;YACb,IAAIxC,IAAI;YACR,OAAOA,IAAIwB,KAAKW,OAAO3B,WAAWgC,SAASf,SAASD,KAAKW,OAAOnC,KAAK;gBACjEA;AACH;YACD,IAAIyC,YAAYjB,KAAKW,OAAOzB,MAAM,GAAGV;YACrC,OAAOA,IAAIwB,KAAKW,OAAO3B,UAAUgC,SAASf,SAASD,KAAKW,OAAOnC,KAAK;gBAChEyC,YAAYA,UAAUvG,OAAOsF,KAAKW,OAAOnC,GAAG8B,SAASU;gBACrDxC;AACH;YACDwB,KAAKW,SAASM,UAAUvG,OAAOsF,KAAKW,OAAOzB,MAAMV;YACjDwB,KAAKY;AAAgB;QAGzB,IAAIF,aAAaD,QAAQ;YACrBC,EAAEC,OAAOO,QAAQC;AAC7B,eAAe;YACH,IAAI9E,KAAK,MAAMA,IAAIqE;YACnBS,UAAU,IAAIvB,SAASc,GAAGrE;AAC7B;QACD,OAAO2D;AACV;IAED,SAAAoB,CAAUV,GAAGrE;QACT,IAAI4E,YAAY;QAChB,IAAII,aAAcL;YACd,IAAIxC,IAAI;YACR,OAAOA,IAAIwB,KAAKW,OAAO3B,WAAWgC,SAASf,SAASD,KAAKW,OAAOnC,KAAK;gBACjEA;AACH;YACD,OAAOA,IAAIwB,KAAKW,OAAO3B,UAAUgC,SAASf,SAASD,KAAKW,OAAOnC,KAAK;gBAChE,IAAIsB,MAAMO,KAAKX,IAAIM,KAAKW,OAAOnC,GAAGsB,KAAKkB,SAASlB;gBAChD,IAAIC,OAAOM,KAAKZ,IAAIO,KAAKW,OAAOnC,GAAGuB,MAAMiB,SAASjB;gBAClDkB,UAAUxD,KAAK,IAAImC,SAASE,KAAKC;gBACjCvB;AACH;AAAA;QAGL,IAAIkC,aAAaD,QAAQ;YACrBC,EAAEC,OAAOO,QAAQG;AAC7B,eAAe;YACH,IAAIhF,KAAK,MAAMA,IAAIqE;YACnBW,WAAW,IAAIzB,SAASc,GAAGrE;AAC9B;QACD2D,KAAKW,SAASM;QACdjB,KAAKY;QACL,OAAOZ;AACV;IAED,KAAAsB,CAAMA;QACF,IAAI9C,IAAI;QACR,OAAOA,IAAIwB,KAAKW,OAAO3B,UAAUgB,KAAKW,OAAOnC,GAAGQ,UAAUsC,OAAO;YAC7DA,SAAStB,KAAKW,OAAOnC,GAAGQ;YACxBR;AACH;QACD,OAAOwB,KAAKW,OAAOnC,GAAGsB,MAAMwB;AAC/B;IAED,QAAAf;QACI,OAAO,OAAOP,KAAKW,OAAOY,KAAK,QAAQ;AAC1C;IAED,KAAAC;QACI,OAAO,IAAIf,OAAOT;AACrB;IAED,OAAAyB;QACI,OAAOzB,KAAKW,OAAOE,QAAO,CAACa,QAAQV;YAC/B,IAAIxC,IAAIwC,SAASlB;YACjB,OAAOtB,KAAKwC,SAASjB,MAAM;gBACvB2B,OAAOjE,KAAKe;gBACZA;AACH;YACD,OAAOkD;AAAM,YACd;AACN;IAED,SAAAC;QACI,OAAO3B,KAAKW,OAAOiB,KAAKZ,aAAc;YAClClB,KAAKkB,SAASlB;YACdC,MAAMiB,SAASjB;YACff,QAAQ,IAAIgC,SAASjB,OAAOiB,SAASlB;;AAE5C;;;AAGL,IAAA+B,MAAiBpB;;ACjLjB,MAAMqB,MAAS3H;;AACf,MAAMsG,SAASlF;;AACf,MAAM7B,QAASoI,IAAIpI;;IAGnBqI,UAAiB,MAAMC;IAMrB,WAAAnC,CAAYvC,QAAQ2E;QAClBjC,KAAKkC,aAAa5E;QAClB,IAAIA,kBAAkB6E,QAAQ;YAC5BnC,KAAKoC,aAAa9E,OAAO8E;YACzBpC,KAAKqC,YAAY/E,OAAO+E;YACxB/E,SAASA,OAAOgF;AAEtB,eAAW,WAAWhF,WAAW,UAAU;YACrC0C,KAAKoC,aAAaH,KAAKA,EAAEnF,QAAQ,UAAU;YAC3CkD,KAAKqC,YAAYJ,KAAKA,EAAEnF,QAAQ,UAAU;AAChD,eAAW;YACL,MAAM,IAAIyF,MAAM;AACjB;QAEDvC,KAAK3C,SAASyE,IAAIxE;AACnB;IASD,YAAA4E,CAAa5E;QAIX0C,KAAKN,MAAMpC,OAAOoC,OAAO,OAAOpC,OAAOoC,MACrCsC,QAAQQ,UAAU9C,OAAO,OAAOsC,QAAQQ,UAAU9C,MAAM;QAI1DM,KAAKyC,eAAenF,OAAOmF,eACzBnF,OAAOmF,eAAezC,KAAKyC,aAAajB;QAE1C,IAAIlE,OAAOoF,SAAS;YAClB1C,KAAK0C,UAAUpF,OAAOoF;AACvB;AACF;IAQD,GAAAC;QACE,OAAO3C,KAAK4C,KAAK5C,KAAK3C,QAAQ;AAC/B;IAUD,IAAAuF,CAAKC,OAAOC;QACV,IAAInE,OAAO1C,KAAKN,GAAG6C,GAAGC;QAEtB,QAAQoE,MAAMxI;UACZ,KAAKX,MAAMC;UACX,KAAKD,MAAME;YAET,IAAIiJ,MAAMxD,cAAcwD,MAAMvD,eAAe;gBAAE,OAAO;AAAK;YAG3D,IAAIuD,MAAMzD,YAAYyD,MAAME,gBAAgBC,WAAW;gBACrDH,MAAME,cAAcD,OAAOrF,KAAK,QAAQ;AACzC;YAEDkB,QAAQkE,MAAMrD,UACZQ,KAAKiD,YAAYJ,MAAMrD,WAAWqD,MAAMlE;YAE1C1C,MAAM;YACN,KAAKuC,IAAI,GAAGC,IAAIE,MAAMK,QAAQR,IAAIC,GAAGD,KAAK;gBACxCvC,OAAO+D,KAAK4C,KAAKjE,MAAMH,IAAIsE;AAC5B;YAED,IAAID,MAAMzD,UAAU;gBAClB0D,OAAOD,MAAME,eAAe9G;AAC7B;YACD,OAAOA;;UAET,KAAKvC,MAAMG;YAET,OAAO;;UAET,KAAKH,MAAMI;YACT,IAAIoJ,cAAclD,KAAKmD,QAAQN;YAC/B,KAAKK,YAAYlE,QAAQ;gBAAE,OAAO;AAAK;YACvC,OAAOhC,OAAOC,aAAa+C,KAAKiD,YAAYC;;UAE9C,KAAKxJ,MAAMM;YAET2B,IAAIqE,KAAK0C,QAAQG,MAAMpD,KACrBoD,MAAMnD,QAAQC,WAAWkD,MAAMpD,MAAMO,KAAKN,MAAMmD,MAAMnD;YAExDzD,MAAM;YACN,KAAKuC,IAAI,GAAGA,IAAI7C,GAAG6C,KAAK;gBACtBvC,OAAO+D,KAAK4C,KAAKC,MAAMpI,OAAOqI;AAC/B;YAED,OAAO7G;;UAET,KAAKvC,MAAMO;YACT,OAAO6I,OAAOD,MAAMpI,QAAQ,MAAM;;UAEpC,KAAKf,MAAMQ;YACT,IAAI0C,OAAOoD,KAAKoC,cAAcpC,KAAKoD,cACjCpD,KAAKqD,aAAaR,MAAMpI,SAASoI,MAAMpI;YACzC,OAAOuC,OAAOC,aAAaL;;AAEhC;IAUD,YAAAyG,CAAazG;QACX,OAAOA,QAAQ,MAAMA,QAAQA,QAAQ,OAAO,KAC1C,MAAMA,QAAQA,QAAQ,KAAO,KAAK;AACrC;IAQD,SAAAwG;QACE,QAAQpD,KAAK0C,QAAQ,GAAG;AACzB;IASD,WAAAO,CAAYK;QACV,IAAIA,eAAe7C,QAAQ;YACzB,OAAO6C,IAAIhC,MAAMtB,KAAK0C,QAAQ,GAAGY,IAAItE,SAAS;AAC/C;QACD,OAAOsE,IAAItD,KAAK0C,QAAQ,GAAGY,IAAItE,SAAS;AACzC;IAUD,OAAAmE,CAAQN;QACN,IAAIA,MAAMxI,SAASyH,IAAIpI,MAAMQ,MAAM;YACjC,OAAO,IAAIuG,OAAOoC,MAAMpI;AACzB,eAAM,IAAIoI,MAAMxI,SAASyH,IAAIpI,MAAMK,OAAO;YACzC,OAAO,IAAI0G,OAAOoC,MAAMvI,MAAMuI,MAAMtI;AAC1C,eAAW;YACL,IAAIgJ,SAAS,IAAI9C;YACjB,KAAK,IAAIjC,IAAI,GAAGA,IAAIqE,MAAM9H,IAAIiE,QAAQR,KAAK;gBACzC,IAAIwC,WAAWhB,KAAKmD,QAAQN,MAAM9H,IAAIyD;gBACtC+E,OAAOnD,IAAIY;gBACX,IAAIhB,KAAKoC,YAAY;oBACnB,KAAK,IAAIoB,IAAI,GAAGA,IAAIxC,SAAShC,QAAQwE,KAAK;wBACxC,IAAI5G,OAAOoE,SAASM,MAAMkC;wBAC1B,IAAIC,gBAAgBzD,KAAKqD,aAAazG;wBACtC,IAAIA,SAAS6G,eAAe;4BAC1BF,OAAOnD,IAAIqD;AACZ;AACF;AACF;AACF;YACD,IAAIZ,MAAM7H,KAAK;gBACb,OAAOgF,KAAKyC,aAAajB,QAAQlB,SAASiD;AAClD,mBAAa;gBACL,OAAOvD,KAAKyC,aAAajB,QAAQJ,UAAUmC;AAC5C;AACF;AACF;IAUD,OAAAb,CAAQhC,GAAGrE;QACT,OAAOqE,IAAIL,KAAKqD,MAAMrD,KAAKsD,YAAY,IAAItH,IAAIqE;AAChD;IAMD,gBAAI+B;QACF,OAAOzC,KAAK4D,SAAS5D,KAAK4D,UAAU,IAAInD,OAAO,IAAI;AACpD;IAED,gBAAIgC,CAAavC;QACfF,KAAK4D,SAAS1D;AACf;IAWD,cAAO6B,CAAQzE,QAAQ2E;QACrB,IAAIF;QACJ,WAAUzE,WAAW,UAAU;YAC7BA,SAAS,IAAI6E,OAAO7E,QAAQ2E;AAC7B;QAED,IAAI3E,OAAOuG,aAAab,WAAW;YACjCjB,UAAU,IAAIC,QAAQ1E,QAAQ2E;YAC9B3E,OAAOuG,WAAW9B;AACxB,eAAW;YACLA,UAAUzE,OAAOuG;YACjB9B,QAAQG,aAAa5E;AACtB;QACD,OAAOyE,QAAQY;AAChB;IAMD,YAAOmB;QAEL3B,OAAOK,UAAUG,MAAM;YACrB,OAAOX,QAAQD,QAAQ/B;AAC7B;AACG;;;;;ACjQH,MAAM+D,YAAY;;AAKX,MAAMC,YAAU,MAAM3D,KAAKsD,WAAW;;AACtC,MAAMM,UAAU,CAACxE,KAAcC;IACpCD,QAAAA,MAAQ;IACRC,QAAAA,MAAQ;IACR,OAAOW,KAAKqD,MAAMrD,KAAKsD,YAAYjE,MAAMD,MAAM,MAAMA;AAAG;;AAEnD,MAAMyE,WAAS,CAACzE,KAAcC,QACnCyE,OAAOF,QAAQG,OAAO3E,OAAO0E,OAAO,KAAKC,OAAO1E,OAAOyE,OAAO;;AACzD,MAAME,WAAS,CAAC5E,KAAcC;IACnCD,QAAAA,MAAQ;IACRC,QAAAA,MAAQ;IACR,OAAOW,KAAKsD,YAAYjE,MAAMD,OAAOA;AAAG;;AAEnC,MAAM6E,WAAUtF,UACrB,IAAIuF,MAAMvF,UAAUiF,QAAQ,GAAG,KAC5BO,KAAK,GACL5C,KAAI,MAAMmC,UAAUE,QAAQ,GAAGF,UAAU/E,SAAS,MAClDuC,KAAK;;AAEH,MAAMkD,UAAQ,CAAIC,SAA+BC,UACtD,IAAIJ,MAAMI,SAAS3F,UAAUwF,KAAK,GAAG5C,KAAI,CAACgD,IAAItD,UAAUoD,QAAQpD;;AAC3D,MAAMuD,OAAWJ,SAAkBA,MAAMR,QAAQ,GAAGQ,MAAMzF,SAAS;;AACnE,MAAMA,SAAS,MAAMiF,QAAQ,GAAG;;AAChC,MAAMa,UAAWC;IACtB,MAAMjJ,IAAa,IAAIkG,QAAQ+C;IAC/B,KAAK,IAAIvG,IAAY,GAAGA,IAAI,MAAMA,GAAG;QACnC,MAAMvC,MAAcH,EAAE6G;QACtB,IAAIoC,MAAM7H,KAAKjB,MAAM,OAAOA;AAC7B;IACD,OAAOH,EAAE6G;AAAK;;AAOT,MAAMqC,OAAO,MAAM;;AACnB,MAAMC,WAAW,MAAMX,SAAOL,QAAQ,GAAG;;AACzC,MAAMc,QAAQ,MACnB;;AACK,MAAMG,OAAO,MAClB,uCAAuC/I,QAAQ,UAAUY;IACvD,MAAMjB,IAAKuE,KAAKsD,WAAW,KAAM;IACjC,MAAM/H,IAAImB,MAAM,MAAMjB,IAAKA,IAAI,IAAO;IACtC,OAAOF,EAAE2E,SAAS;AAAG;;AAIlB,MAAM4E,QAAQ,MAAM,GAAGb,SAAO,OAAOA,SAAO,OAAOA,SAAO;;AAC1D,MAAMc,WAAW,MAAM,GAAGd,SAAO,OAAOA,SAAO;;AAC/C,MAAMe,WAAW,MAAMF;;AACvB,MAAMG,cAAc,MAAMF;;AAC1B,MAAMG,MAAM,MAAMC;;AAClB,MAAMC,eAAe,MAAMD;;AAC3B,MAAME,OAAO,MAAMjB,SAAM,MAAMR,QAAQ,GAAG,OAAM,GAAG1C,KAAK;;AACxD,MAAMoE,OAAO,MAClBlB,SAAM,MAAMR,QAAQ,GAAG,OAAO1D,SAAS,MAAK,GAAGgB,KAAK;;AAC/C,MAAMqE,MAAM,MAAMJ;;AAClB,MAAMK,eAAe,MAAML;;AAC3B,MAAMM,cAAc,MAAMN;;AAC1B,MAAMA,MAAM,MAAM,WAAWlB,SAAO,OAAOA,SAAO;;AAGlD,MAAMyB,WAAW,CAACtG,KAAcC,QACrC,IAAIsG,KACF3B,SAAO5E,OAAOuG,KAAKC,QAAQ,KAAKC,KAAKxG,OAAOsG,KAAKC,QAAQ,IAAIC,MAC7DC;;AACG,MAAMC,OAAO,CAAC3G,KAAcC,QACjC,IAAIsG,KAAK3B,SAAO5E,OAAO,GAAGC,OAAOsG,KAAKC,QAAQ,IAC3CE,cACAE,UAAU,GAAG;;AACX,MAAMC,OAAO,MAAM,IAAIN,KAAK3B,SAAO,GAAG6B,MAAMC,cAAcE,UAAU;;AACpE,MAAME,WAAW;IACtB,MAAMC,SAAiBC,OAAO,EAC5B,EAAC,KAAKxC,QAAQ,GAAG,QACjB,EAAC,KAAKA,QAAQ,GAAG,OACjB,EAAC,KAAKA,QAAQ,GAAG;IAEnB,MAAMqC,OAAeG,OAAO,EAC1B,EAAC,KAAKxC,QAAQ,GAAG,OACjB,EAAC,KAAKA,QAAQ,GAAG,OACjB,EAAC,KAAKA,QAAQ,GAAG;IAEnB,IAAIuC,OAAOxH,SAASsH,KAAKtH,WAAW,GAAG,OAAO;IAC9C,OAAO,IAAIwH,SAASF,KAAKtH,SAAS,MAAM,KAAKsH;AAAM;;AAI9C,MAAMI,cAAc,MAAM,uBAAuBpC,SAAO;;AACxD,MAAMqC,sBAAsB,MAAM,GAAG1C,QAAQ,GAAG;;AAEvD,MAAMiC,MAAM;;AACZ,MAAMO,SAAUG,YACdA,SACGC,QAAO,EAAEC,OAAOrM,WAAWA,UAAU,IACrCmH,KAAI,EAAEmF,MAAMtM,WAAW,GAAGA,QAAQsM,SAClCxF,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrGH,MAAMyF,SAAS,CACpBvC,OACAwC;IAEA,IAAIrJ,QAAsD;IAC1D,KAAK,IAAIY,IAAY,GAAGA,IAAIiG,MAAMzF,UAAUR,GAC1C,IAAI,UAAUZ,QAAQqJ,KAAKxC,MAAMjG,IAAKA,KAAK,OAAOZ;IACpD,OAAO;AAAI;;ACTP,MAAOsJ,uBAAuB3E;IAMlC,WAAA1C,CAAmBsH;QAEjBC,MACED,MAAME,WACJ,YAAYF,MAAMG,yBAChBH,MAAMI,OAAO,OAAOJ,MAAMI,SAAS,oBACnBJ,MAAMK;QAI5B,MAAMC,mBAAmBjF;QACzB,IAAIkF,OAAOC,gBAAgBD,OAAOC,eAAe3H,MAAMyH,aACjDzH,KAAa4H,YAAYH;QAG/BzH,KAAKsH,SAASH,MAAMG;QACpBtH,KAAKuH,OAAOJ,MAAMI;QAClBvH,KAAKwH,WAAWL,MAAMK;QACtBxH,KAAKvF,QAAQ0M,MAAM1M;AACpB;;;ACpBI,MAAMoN,SACVP,UACD,CACEQ,eACAX,OACAY;IAEA,IAAID,kBAAkB,MACpB,OAAOC,WAAO,CAAMZ,SAAU,IAAID,eAAeC,SAAS;QACxDG;QACAC,MAAMJ,MAAMI;QACZC,UAAUL,MAAMK;QAChB/M,OAAO0M,MAAM1M;;IAEjB,OAAO;AAAK;;ACnBT,MAAMuN,QAAS/L,OACpBgM,SAAShM,OAAO,IAAIA,QAAQ,IAAIiM,KAAKC,UAAUlM;;AAEjD,MAAMgM,WAAYhM,OAChBmM,SAASnM,SAAS,SAAS,8BAA8BiB,KAAKjB;;AAEhE,MAAMmM,WAAYnM,OAAyBoM,SAASC,IAAIrM;;AAExD,MAAMoM,WAAwB,IAAIE,IAAI,EACpC,SACA,QACA,SACA,SACA,SACA,YACA,YACA,WACA,UACA,MACA,QACA,QACA,UACA,WACA,SACA,WACA,OACA,YACA,MACA,UACA,MACA,cACA,OACA,QACA,UACA,SACA,UACA,QACA,SACA,QACA,OACA,UACA,OACA,QACA,SACA;;AC1CK,MAAMC,UAAW/D;IACtB,MAAMgE,aAAclB;QAClB,IAAI9C,MAAMzF,WAAW,GAAG,OAAO;QAC/B,MAAMH,OAAe4F,MAAMA,MAAMzF,SAAS,GAAIuI;QAC9C,OAAOA,KAAKvI,SAASH,KAAKG,UAAUH,KAAKwH,UAAU,GAAGkB,KAAKvI,YAAYuI;AAAI;IAE7E,OAAO,CAACmB,YAAqB9K;QAC3B,IAAI8K,cAAcD,WAAW7K,MAAM2J,OAAO9C,MAAMhH,KAAKG;QACrD,OAAO;AAAK;AACb;;ACXI,MAAM+K,cAAc,CAAClO,OAAemO,SAAiBC,YAC1DD,WAAWnO,SAASA,SAASoO;;ACDxB,MAAMC,oBAAqB7M;IAChC;QACEkI,OAAOlI;QACP,OAAO;AACR,MAAC;QACA,OAAO;AACR;AAAA;;ACAI,MAAM8M,OAAK,OAAO;IACvBC,YAAYL;IACZM,kBAAkBH;;;ACNb,MAAMI,mBAAmB,OAAO;IACrCC,cAAeC,KAA6B,IAAIlC,eAAekC;;;ACD1D,MAAMC,UAAW5O;IACtB,IAAI6O,SAAS7O,WAAW,OACtB,MAAM,IAAIyM,eAAe;QACvBI,QAAQ;QACRE,UAAU;QACV/M;QACA4M,SAAS;;IAEb,OAAO5M;AAAK;;ACVP,MAAM8O,QAAStN,OACbA,IAAI+C,WAAW,IAAI,KAAK,MAAM/C,IAAIoK,UAAU,GAAGpK,IAAI+C,SAAS;;ACY9D,MAAMwK,UAAWvN;IACtB,MAAMwN,MAAMxN,IAAI+C;IAChB,IAAI0C,SAAS;IACb,IAAI7C,QAAQ;IACZ,IAAI6K,QAAQ;IAGZ,KAAK,IAAIlL,IAAI,GAAGA,IAAIiL,KAAKjL,KAAK;QAC5BkL,QAAQzN,IAAIyB,WAAWc;QACvB,IAAIkL,QAAQ,IAAI;YACd,OAAOxB,KAAKC,UAAUlM;AACvB;QACD,IAAIyN,SAAS,SAAUA,SAAS,OAAQ;YAEtC,OAAOxB,KAAKC,UAAUlM;AACvB;QACD,IACEyN,UAAU,MACVA,UAAU,IACV;YACA7K,UAAU,MAAMA,OAAO;YACvB6C,UAAUzF,IAAIiD,MAAML,MAAML,KAAK;YAC/BK,OAAOL;AACR;AACF;IAED,OACGK,UAAU,KAAK,MAAM5C,MAAM,OAAQ,MAAMyF,SAASzF,IAAIiD,MAAML,QAAQ;AACrE;;ACtCG,MAAM8K,QAAS1N,OACpBA,IAAIA,IAAI+C,SAAS,OAAO,MAAM/C,IAAIoK,UAAU,GAAGpK,IAAI+C,SAAS,KAAK/C;;ACF5D,MAAM2N,UACVtC,UACAH;IACC,MAAM,IAAID,eAAe;WACpBC;QACHG,QAAQ,SAASA;;AACjB;;ACDC,MAAMa,cAAab,WAAoB;OACzCyB;IACH1E,QAAQgF;IACR/E,QAAQkF;IACRK,MAAMF;IACNG,MAAMP;IACNQ,QAAQH,QAAQ,QAAQtC;;;ACbnB,MAAMtD,YACXgG,SAEAA,iBAAiBC,OACZD,QACDA,UAAU,OACRhH,YACAgH,UAAU,SACR,OACAA,MAAMhL,WAAW,IACf,OACAgL,UAAU,UAAUA,UAAU,MAC5B,OACAA,UAAU,WAAWA,UAAU,MAC7B,QACCA;;AAEV,MAAM3F,WACX2F,SAEAA,iBAAiBC,OACZD,UACCA,OAAOhL,SACPgL,UAAU,SACR,OACCE,WAASF,SACZhH;;AAED,MAAMkB,WACX8F,SAEAA,iBAAiBC,OACZD,UACCA,OAAOhL,SACPgL,UAAU,SACR,OACCG,WAASH,SACZhH;;AAED,MAAMsB,WACX0F,SAEAA,iBAAiBC,OACZD,QACDA,UAAU,OACRhH,YACAgH,UAAU,SACR,OACAA;;AAEH,MAAMvF,UAAQ,CAACuF,OAAcI,gBAClCJ,MAAMhL,SAASgL,QAAQI;;AAElB,MAAMC,OAAQL,SACnBA,iBAAiBM,OACbN,QACAA,UAAU,OACRhH,YACAgH,UAAU,SACR,OACCA;;AAEJ,MAAMO,OAAQP,SACnBA,iBAAiBC,OACbD,QACAA,UAAU,OACRhH,YACAgH,UAAU,SACR,OACCA;;AAEX,MAAME,aAAYjO;IAChB,MAAMxB,QAAgB2J,OAAOnI;IAC7B,OAAOuO,MAAM/P,SAASwB,MAAMxB;AAAK;;AAGnC,MAAM0P,aAAYlO;IAChB;QACE,OAAOkI,OAAOlI;AACf,MAAC;QACA,OAAOA;AACR;AAAA;;;;;;;;;;;;;ACjFI,MAAM+H,YAAWvJ,SACtBA,UAAUuI,YACNvI,UAAU,SACR,OACAA,UAAU,UACR,QACAA,QACJuI;;AACC,MAAMkB,WAAUzJ,SACrBA,UAAUuI,YAAYmH,WAAS1P,SAASuI;;AACnC,MAAMqB,WAAU5J,SACrBA,UAAUuI,YAAYkH,WAASzP,SAASuI;;AACnC,MAAMsB,WAAU7J,SAA8BA;;AAErD,MAAM0P,aAAYlO;IAChB;QACE,OAAOkI,OAAOlI;AACf,MAAC;QACA,OAAOA;AACR;AAAA;;AAGH,MAAMiO,aAAYjO;IAChB,MAAMxB,QAAgB2J,OAAOnI;IAC7B,OAAOuO,MAAM/P,SAASwB,MAAMxB;AAAK;;;;;;;;;;ACxB5B,MAAMuJ,YAAWvJ,SACtBA,UAAU,SACNA,UAAU,UAAUA,UAAU,MAC5B,OACAA,UAAU,WAAWA,UAAU,MAC7B,QACAA,QACJ;;AAEC,MAAMyJ,WAAUzJ,SACrBA,UAAU,SAAS0P,WAAS1P,SAAS;;AAEhC,MAAM4J,WAAU5J,SACrBA,UAAU,SAASyP,WAASzP,SAAS;;AAEhC,MAAM6J,WAAU7J,SAAmBA,UAAU,SAASA,QAAQ;;AAErE,MAAMyP,aAAYjO;IAChB,MAAMxB,QAAgB2J,OAAOnI;IAC7B,OAAOuO,MAAM/P,SAASwB,MAAMxB;AAAK;;AAGnC,MAAM0P,aAAYlO;IAChB;QACE,OAAOkI,OAAOlI;AACf,MAAC;QACA,OAAOA;AACR;AAAA;;;;;;;;;;AC3BI,MAAM+H,UAAW/H,OACtBA,QAAQ,OACJ+G,YACA/G,QAAQ,SACN,OACAA,IAAI+C,WAAW,IACb,OACA/C,QAAQ,UAAUA,QAAQ,MACxB,OACAA,QAAQ,WAAWA,QAAQ,MACzB,QACCA;;AAER,MAAMoI,SAAUpI,SACnBA,KAAK+C,SAAU/C,QAAQ,SAAS,OAAQiO,SAASjO,OAAgB+G;;AAE9D,MAAMkB,SAAUjI,SACnBA,KAAK+C,SAAU/C,QAAQ,SAAS,OAAQkO,SAASlO,OAAgB+G;;AAE9D,MAAMsB,SAAUrI,OACrBA,QAAQ,OAAO+G,YAAY/G,QAAQ,SAAS,OAAOA;;AAE9C,MAAMwO,SAAUT;IACrB,WAAWA,UAAU,UAAU;QAC7B,MAAM1I,QAAgB0I,MAAMlN,QAAQ;QACpCkN,QAAQ1I,WAAW,IAAI,KAAK0I,MAAM3D,UAAU/E,QAAQ;QACpD,OAAO,IAAIoJ,gBAAgBV;AAC5B;IACD,OAAOA;AAAK;;AAGP,MAAMvF,QAAQ,CAACuF,OAAcI,gBAClCJ,MAAMhL,SAASgL,QAAQI;;AAEzB,MAAMF,WAAYjO;IAChB,MAAMxB,QAAgB2J,OAAOnI;IAC7B,OAAOuO,MAAM/P,SAASwB,MAAMxB;AAAK;;AAGnC,MAAM0P,WAAYlO;IAChB;QACE,OAAOkI,OAAOlI;AACf,MAAC;QACA,OAAOA;AACR;AAAA;;;;;;;;;;;;ACvCI,MAAM0O,aAAW,MAAMC;;AACvB,MAAMC,YAAU,MAAMC;;AACtB,MAAMC,cAAY,MAAMC;;AACxB,MAAMC,UAAQ,MAAMC;;ACRpB,MAAMC,aAAclP,OACzBA,IAAI+C,SAAS/C,IAAI,GAAImP,gBAAgBnP,IAAIiD,MAAM,KAAKjD;;ACChD,SAAUoP,QAAMpP;IACpB,MAAMqP,UAAoB;IAC1B,KAAK,IAAI9M,IAAY,GAAGA,IAAIvC,IAAI+C,QAAQR,KAAK;QAC3C,MAAM5B,OAAeX,IAAIyB,WAAWc;QACpC,IAAI,MAAM5B,QAAQA,QAAQ,IAAI0O,QAAQ7N,KAAKe;AAC5C;IACD,KAAK,IAAIA,IAAY8M,QAAQtM,SAAS,GAAGR,IAAI,KAAKA,GAAG;QACnD,MAAMyH,MAAcqF,QAAQ9M;QAC5B,MAAM+M,OAAeD,QAAQ9M,IAAI;QACjC,IAAIyH,MAAMsF,SAAS,GAAGD,QAAQE,OAAOhN,GAAG;AACzC;IACD,IAAI8M,QAAQtM,WAAW,KAAKsM,QAAQ,OAAO,GAAGA,QAAQE,OAAO,GAAG;IAChE,IAAIF,QAAQtM,WAAW,GAAG,OAAO/C,IAAIwP;IAErC,IAAI3J,MAAc;IAClB,KAAK,IAAItD,IAAY,GAAGA,IAAI8M,QAAQtM,QAAQR,KAAK;QAC/C,MAAMkN,QAAgBlN,MAAM,IAAI,IAAI8M,QAAQ9M,IAAI;QAChD,MAAMK,OAAeyM,QAAQ9M;QAE7BsD,OAAO7F,IAAIoK,UAAUqF,OAAO7M,MAAM4M;QAClC3J,OAAO;AACR;IACDA,OAAO7F,IAAIoK,UAAUiF,QAAQA,QAAQtM,SAAS,IAAKyM;IACnD,OAAO3J;AACT;;AAEM,SAAU6J,QAAM1P;IACpB,OAAO2P,SAAS3P;QACd,IAAIA,IAAI+C,WAAW,GAAG,OAAO/C,UACxB,IAAIA,IAAI,OAAOA,IAAI,GAAImP,eAC1B,OAAOnP,IAAI,GAAIwP,gBAAgBxP,IAAIoK,UAAU,SAC1C,OAAOpK;AAAG,OAJV2P,CAKJ3P;AACL;;AAEM,SAAU4P,SAAO5P;IACrB,OAAO2P,SAAS3P;QACd,IAAIA,IAAI+C,WAAW,GAAG,OAAO/C,UACxB,IAAIA,IAAI,OAAOA,IAAI,GAAIwP,eAC1B,OAAOxP,IAAI,GAAImP,gBAAgBnP,IAAIoK,UAAU,SAC1C,OAAOpK;AAAG,OAJV2P,CAKJ3P;AACL;;AAEA,MAAM2P,UACHE,WACA7P;IAEC,IAAI8P,SAAiB;IACrB,KAAK,IAAIvN,IAAY,GAAGA,IAAIvC,IAAI+C,QAAQR,KAAK;QAC3C,IAAIvC,IAAIuC,OAAO,KAAKuN,UAAU,UACzB;AACN;IACD,IAAIA,OAAO/M,WAAW,GAAG/C,MAAMA,IAAIoK,UAAU0F,OAAO/M;IAEpD,MAAMsM,UAA8B;IACpC,KAAK,IAAI9M,IAAY,GAAGA,IAAIvC,IAAI+C,QAAQR,KAAK;QAC3C,MAAMwN,KAAa/P,IAAIuC;QACvB,IAAIwN,OAAO,KAAK;QAEhB,MAAMnN,OAAOyM,QAAQA,QAAQtM,SAAS;QACtC,IAAIH,SAASmE,aAAanE,KAAK,KAAKA,KAAK,OAAOL,GAAG8M,QAAQ7N,KAAK,EAACe,GAAG,aAC7DK,KAAK;AACb;IACD,IAAIyM,QAAQtM,WAAW,GAAG,OAAO+M,SAASD,QAAQ7P;IAGlD,IAAI6F,MAAc;IAClB,KAAK,IAAItD,IAAY,GAAGA,IAAI8M,QAAQtM,QAAQR,KAAK;QAC/C,OAAOkN,SAASJ,QAAQ9M;QACxB,IAAIA,MAAM,GACR,IAAIkN,UAAU,GAAG5J,OAAO,UACnBA,OAAO7F,IAAIoK,UAAU,GAAGqF,aAC1B;YACH,OAAOO,WAAWC,cAAcZ,QAAQ9M,IAAI;YAC5C,MAAM2N,QAAgBlQ,IAAIoK,UAAU4F,YAAYC,YAAYR;YAC5D,IAAIS,MAAMnN,QAAQ8C,OAAOsK,WAAsBD;AAChD;AACF;IACD,MAAMtN,OAAOyM,QAAQA,QAAQtM,SAAS;IACtC,MAAMmN,QAAgBlQ,IAAIoK,UAAUxH,KAAK,KAAKA,KAAK;IACnD,IAAIA,KAAKG,QAAQ8C,OAAOsK,WAAsBD;IAC9C,OAAOJ,SAASD,QAAQhK;AAAI;;ACpFzB,MAAMuK,cAAeC;IAC1B,MAAMC,OAAQvC;QACZ,WAAWA,UAAU,UACnB,IAAIA,UAAU,MAAM,OAAO,WACtB,IAAIzF,MAAMiI,QAAQxC,QAAQ,OAAOA,MAAMpI,IAAI2K,YAC3C,IACHvC,iBAAiByC,WACjBzC,iBAAiB7F,UACjB6F,iBAAiB5F,UACjB4F,iBAAiBhN,QAEjB,OAAOgN,MAAM0C,gBACV,IAAI1C,iBAAiBhE,MAAM,OAAO,IAAIA,KAAKgE,aAC3C,IACHA,iBAAiB2C,cACjB3C,iBAAiB4C,qBACjB5C,iBAAiB6C,eACjB7C,iBAAiB8C,eACjB9C,iBAAiB+C,kBACjB/C,iBAAiBgD,aACjBhD,iBAAiBiD,cACjBjD,iBAAiBkD,cACjBlD,iBAAiBmD,iBACjBnD,iBAAiBoD,gBACjBpD,iBAAiBqD,gBACjBrD,iBAAiBsD,UAEjB,OAAOtD,YACJ,OAAOuD,OAAOvD;QACrB,OAAOA;AAAK;IAEd,MAAMuD,SAAUvD,SACdtC,OAAO8F,YACL9F,OAAO+F,QAAQzD,OAAOpI,KAAI,EAAE8L,KAAKjT,WAAW,EAAC6R,OAAOoB,MAAMnB,KAAK9R;IAEnE,OAAO8R;AAAI;;AC7BN,MAAMZ,UAASrE,WAAoB;OACrCqG,KAAKrG;IACRsG,KAAKvB,YAAYwB;;;AAEZ,MAAMhC,WAAUvE,WAAoB;OACtCqG,KAAKrG;IACRsG,KAAKvB,YAAYyB;;;AAEZ,MAAMzC,UAAS/D,WAAoB;OACrCqG,KAAKrG;IACRsG,KAAKvB,YAAY0B;;;AAGnB,MAAMJ,OAAQrG,WAAoB;OAC7ByB;IACHgB,QAAQH,QAAQ,aAAatC;;;ACnBxB,MAAM0G,SAAavT,SACxByN,KAAK+F,MAAM/F,KAAKC,UAAU1N;;ACDrB,MAAMyT,OAAQC,OACnBA,QAAQnL,YAAYgL,OAAOG,OAAOnL;;ACC7B,MAAMxB,UAAS8F,WAAoB;OACrCyB;IACHgB,QAAQH,QAAQ,QAAQtC;IACxBsG,KAAKM;;;AAGA,MAAME,UAAS9G,WAAoB;OACrCyB;IACHgB,QAAQH,QAAQ,QAAQtC;;;MCTb+G;IAgBX,WAAAxO,CAAmByO;QACjBtO,KAAKsO,MAAMA;QACXtO,KAAKuO,MAAM;QACXvO,KAAKwO,OAAO,IAAIlB,SAASgB,IAAIG,QAAQH,IAAII,YAAYJ,IAAIK;AAC1D;IAEM,KAAArN;QACL,OAAOtB,KAAKuO;AACb;IAEM,IAAAK;QACL,OAAO5O,KAAKsO,IAAItP;AACjB;IAEM,MAAA6P;QACL,OAAO7O,KAAK8O;AACb;IAEM,KAAAC;QACL,OAAO/O,KAAK8O;AACb;IAEM,MAAAE;QACL,MAAMvU,QAAgBuF,KAAK8O;QAC3B,OAAQrU,UAAU,MAAOA,QAAQ;AAClC;IAEM,MAAAwU;QACL,OAAOjP,KAAKkP;AACb;IAEM,KAAAC;QACL,OAAOnP,KAAKkP;AACb;IAEM,MAAAE;QACL,MAAM3U,QAAQuF,KAAKkP;QACnB,OAAQzU,SAAS4U,QAAS5U,QAAQ4U;AACnC;IAEM,IAAAC;QACL,OAAOtP,KAAK8O,eAAe;AAC5B;IAEM,KAAAS;QACL,MAAM9U,QAAgBuF,KAAKwO,KAAKgB,WAAWxP,KAAKuO,KAAK;QACrDvO,KAAKuO,OAAO;QACZ,OAAO9T;AACR;IAEM,MAAAgV;QACL,MAAMhV,QAAgBuF,KAAKwO,KAAKkB,WAAW1P,KAAKuO,KAAK;QACrDvO,KAAKuO,OAAO;QACZ,OAAO9T;AACR;IAEM,KAAAkV;QACL,MAAM3Q,SAAiBgB,KAAK6O;QAC5B,MAAMvU,OAAe0F,KAAKuO;QAC1BvO,KAAKuO,OAAOvP;QACZ,OAAOgB,KAAKsO,IAAIsB,SAAStV,MAAMA,OAAO0E;AACvC;IAEM,MAAAsF;QACL,OAAOuL,OAAKC,OAAO9P,KAAK2P;AACzB;IAEM,IAAAI,CAAK/Q;QACV,IAAIA,WAAW,GAAG,OAAOgB,KAAKgQ,OAAO,YAChC;YACH,IAAIhQ,KAAKsB,UAAUtC,SAASgB,KAAK4O,QAC/B,MAAM,IAAIrM,MAAM;YAClBvC,KAAKuO,OAAOvP;AACb;AACF;IAEM,QAAAiR,CAASC;QACd,QAAQA;UACN,KAAA;YACElQ,KAAK+P,KAAK;YACV;;UACF,KAAA;YACE/P,KAAK+P,KAAK;YACV;;UACF,KAAA;YACE/P,KAAK+P,KAAK/P,KAAK6O;YACf;;UACF,KAAA;YACE,QAAQqB,WAAWlQ,KAAK6O,WAAW,OAAgC,GACjE7O,KAAKiQ,SAASC;YAChB;;UACF,KAAA;YACElQ,KAAK+P,KAAK;YACV;;UACF;YACE,MAAM,IAAIxN,MAAM,qBAAqB2N,sBAAsBlQ,KAAKuO;;AAErE;IAEO,QAAAO;QACN,IAAIqB;QACJ,IAAI1V;QAEJA,SAAS0V,SAASnQ,KAAKgQ,QAAQ;QAC/B,IAAIG,SAAS,KAAM,OAAO1V;QAE1BA,WAAW0V,SAASnQ,KAAKgQ,QAAQ,QAAS;QAC1C,IAAIG,SAAS,KAAM,OAAO1V;QAE1BA,WAAW0V,SAASnQ,KAAKgQ,QAAQ,QAAS;QAC1C,IAAIG,SAAS,KAAM,OAAO1V;QAE1BA,WAAW0V,SAASnQ,KAAKgQ,QAAQ,QAAS;QAC1C,IAAIG,SAAS,KAAM,OAAO1V;QAE1BA,WAAW0V,SAASnQ,KAAKgQ,QAAQ,OAAQ;QACzC,IAAIG,SAAS,KAAM,OAAO1V;QAG1B,IAAIuF,KAAKgQ,OAAO,KAAM,OAAOvV;QAC7B,IAAIuF,KAAKgQ,OAAO,KAAM,OAAOvV;QAC7B,IAAIuF,KAAKgQ,OAAO,KAAM,OAAOvV;QAC7B,IAAIuF,KAAKgQ,OAAO,KAAM,OAAOvV;QAC7B,IAAIuF,KAAKgQ,OAAO,KAAM,OAAOvV;QAE7B,OAAOA;AACR;IAEO,QAAAyU;QACN,IAAIiB;QACJ,IAAI1V;QAEJA,SAAS0V,SAASnQ,KAAKoQ,SAASC;QAChC,IAAIF,SAASG,KAAK,OAAO7V;QAEzBA,WAAW0V,SAASnQ,KAAKoQ,SAASC,QAAQlM,OAAO;QACjD,IAAIgM,SAASG,KAAK,OAAO7V;QAEzBA,WAAW0V,SAASnQ,KAAKoQ,SAASC,QAAQlM,OAAO;QACjD,IAAIgM,SAASG,KAAK,OAAO7V;QAEzBA,WAAW0V,SAASnQ,KAAKoQ,SAASC,QAAQlM,OAAO;QACjD,IAAIgM,SAASG,KAAK,OAAO7V;QAEzBA,WAAW0V,SAASnQ,KAAKoQ,SAASC,QAAQlM,OAAO;QACjD,IAAIgM,SAASG,KAAK,OAAO7V;QAEzBA,WAAW0V,SAASnQ,KAAKoQ,SAASC,QAAQlM,OAAO;QACjD,IAAIgM,SAASG,KAAK,OAAO7V;QAEzBA,WAAW0V,SAASnQ,KAAKoQ,SAASC,QAAQlM,OAAO;QACjD,IAAIgM,SAASG,KAAK,OAAO7V;QAEzBA,WAAW0V,SAASnQ,KAAKoQ,SAASC,QAAQlM,OAAO;QACjD,IAAIgM,SAASG,KAAK,OAAO7V;QAEzBA,WAAW0V,SAASnQ,KAAKoQ,SAASC,QAAQlM,OAAO;QACjD,IAAIgM,SAASG,KAAK,OAAO7V;QAEzBA,UAAUuF,KAAKoQ,QAAQf,QAAQlL,OAAO;QACtC,OAAOA,OAAOoM,OAAO,IAAI9V;AAC1B;IAEO,EAAAuV;QACN,OAAOhQ,KAAKwO,KAAKgC,SAASxQ,KAAKuO;AAChC;IAEO,GAAA6B;QACN,OAAOjM,OAAOnE,KAAKgQ;AACpB;;;AAGH,MAAMH,SAAwB,IAAIY;;AAClC,MAAMpB,MAAuBlL,OAAO;;AACpC,MAAMkM,MAAuBlM,OAAO;;AACpC,MAAMmM,MAAuBnM,OAAO;;AClM7B,MAAMuM,UAAWtU;IACtB,IAAIC;IACJ,IAAImC;IACJ,IAAIzB;IACJ,KAAKV,IAAImC,IAAI,GAAIzB,IAAIX,EAAEsB,WAAWc,MAAOnC,KAAKU,KAAK,KAAK,IAAIA,KAAK,IAAI,IAAI;IACzE,OAAOV;AAAC;;MCDGsU;IAqBX,WAAA9Q,CAAmBb,SAAiB;QAClCgB,KAAKyJ,MAAMzK;QACXgB,KAAK4Q,MAAM;QACX5Q,KAAK6Q,SAAS;QACd7Q,KAAK8Q,YAAY;AAClB;IAEM,IAAAxB;QACLtP,KAAKyJ,OAAO;AACb;IACM,KAAAsF,CAAMtU;QACX,IAAIA,QAAQ,GAAG;YAEbuF,KAAKyJ,OAAO;AACb,eAAM;YACLzJ,KAAK8O,SAASrU;AACf;AACF;IACM,MAAAuU,CAAOvU;QACZuF,KAAK8O,SAAUrU,SAAS,IAAMA,SAAS;AACxC;IACM,MAAAoU,CAAOpU;QACZuF,KAAK8O,SAASrU;AACf;IAEM,KAAA0U,CAAM1U;QACXuF,KAAKkP,gBAAgBzU,UAAU,WAAW0J,OAAO1J,SAASA;AAC3D;IACM,MAAA2U,CAAO3U;QACZ,WAAWA,UAAU,UAAUA,QAAQ0J,OAAO1J;QAC9CuF,KAAKkP,SAAUzU,SAAS0J,OAAO,KAAO1J,SAAS0J,OAAO;AACvD;IACM,MAAA8K,CAAOxU;QACZuF,KAAKkP,gBAAgBzU,UAAU,WAAW0J,OAAO1J,SAASA;AAC3D;IAcM,KAAA8U,CAAMwB;QACX/Q,KAAKyJ,OAAO;AACb;IACM,MAAAgG,CAAOsB;QACZ/Q,KAAKyJ,OAAO;AACb;IAEM,KAAAkG,CAAMlV;QACXuF,KAAK6O,OAAOpU,MAAMkU;QAClB3O,KAAKyJ,OAAOhP,MAAMkU;AACnB;IACM,MAAArK,CAAO7J;QACZ,MAAMgP,MAAciH,QAAQjW;QAC5BuF,KAAK6Q,OAAOpT,KAAKgM;QACjBzJ,KAAK6O,OAAOpF;QACZzJ,KAAKyJ,OAAOA;AACb;IAEM,IAAAuH;QACLhR,KAAK4Q,IAAInT,KAAKuC,KAAKyJ;QACnBzJ,KAAK8Q,UAAUrT,KAAKuC,KAAK6Q,OAAO7R;QAChCgB,KAAK6Q,OAAOpT,KAAK;AAClB;IAEM,MAAAwT;QACL,MAAMjR,KAAK4Q,IAAI5R,UAAUgB,KAAK8Q,UAAU9R,SACtC,MAAM,IAAIuD,MACR;QAGJ,MAAM2O,SAASlR,KAAKyJ;QACpB,MAAM0H,WAAWnR,KAAK4Q,IAAIrR;QAC1B,MAAM6R,MAAMpR,KAAK8Q,UAAUvR;QAC3B,MAAMkK,MAAMyH,SAASC;QAErBnR,KAAK6Q,OAAOO,OAAO3H;QACnBzJ,KAAK6O,OAAOpF;AACb;IAEM,KAAA4H;QACLrR,KAAKyJ,MAAM;QAEXzJ,KAAK4Q,IAAI5R,SAAS;QAClBgB,KAAK6Q,OAAO7R,SAAS;QACrBgB,KAAK8Q,UAAU9R,SAAS;AACzB;IAEO,QAAA8P,CAASrU;QACfuF,KAAKyJ,OACHhP,QAAQ,IACJ,KACAA,QAAQ,MACN,IACAA,QAAQ,QACN,IACAA,QAAQ,UACN,IACAA,QAAQ,YACN,IACA;AACf;IAEO,QAAAyU,CAASf;QACfA,MAAMhK,OAAOmN,QAAQ,IAAInD;QACzB,OAAOA,MAAMoD,QAAM;cACfvR,KAAKyJ;YACP0E,MAAMA,OAAOqD;AACd;UACCxR,KAAKyJ;AACR;;;AAGH,MAAM+H,SAAwBrN,OAAO;;AACrC,MAAMoN,SAAwBpN,OAAO;;MC9IxBsN;IA0BX,WAAA5R,CAAY6R;QACV1R,KAAK0R,QAAQA;QACb1R,KAAKsO,MAAM,IAAI3B,WAAW+E,MAAMjI;QAChCzJ,KAAKwO,OAAO,IAAIlB,SAAStN,KAAKsO,IAAIG;QAClCzO,KAAKuO,MAAM;QACXvO,KAAK8Q,YAAY;AAClB;IAED,MAAArC;QACE,OAAOzO,KAAKsO;AACb;IAED,IAAAgB,CAAK7U;QACHuF,KAAKgF,KAAKvK,QAAQ,IAAI;AACvB;IAED,IAAAuK,CAAKvK;QACHuF,KAAKsO,IAAItO,KAAKuO,SAAS9T,QAAQ;AAChC;IAED,KAAAsU,CAAMtU;QACJ,IAAIA,QAAQ,GAAGuF,KAAKmP,MAAM1U,aACrBuF,KAAK2R,UAAUlX,UAAU;AAC/B;IAED,MAAAuU,CAAOvU;QACLuF,KAAK2R,UAAWlX,SAAS,IAAMA,SAAS;AACzC;IAED,MAAAoU,CAAOpU;QACLuF,KAAK2R,UAAUlX;AAChB;IAED,MAAA2U,CAAO3U;QACLA,QAAQ0J,OAAO1J;QACfuF,KAAK4R,UAAWnX,SAASoX,OAASpX,SAASqX;AAC5C;IAED,KAAA3C,CAAM1U;QACJuF,KAAK4R,UAAUzN,OAAO1J;AACvB;IAED,MAAAwU,CAAOxU;QACLuF,KAAK4R,UAAUzN,OAAO1J;AACvB;IAED,KAAA8U,CAAMpB;QACJnO,KAAKwO,KAAKuD,WAAW/R,KAAKuO,KAAKJ,KAAK;QACpCnO,KAAKuO,OAAO;AACb;IAED,MAAAkB,CAAOtB;QACLnO,KAAKwO,KAAKwD,WAAWhS,KAAKuO,KAAKJ,KAAK;QACpCnO,KAAKuO,OAAO;AACb;IAED,KAAAoB,CAAMlV;QACJuF,KAAK6O,OAAOpU,MAAMkU;QAClB,KAAK,IAAInQ,IAAI,GAAGA,IAAI/D,MAAMkU,YAAYnQ,KAAKwB,KAAKsO,IAAItO,KAAKuO,SAAS9T,MAAM+D;AACzE;IAED,MAAA8F,CAAO7J;QACL,MAAMgP,MAAczJ,KAAK6Q;QACzB7Q,KAAK6O,OAAOpF;QAEZ,MAAMwI,SAAqBpC,KAAKqC,OAAOzX;QACvC,KAAK,IAAI+D,IAAI,GAAGA,IAAIyT,OAAOtD,YAAYnQ,KACrCwB,KAAKsO,IAAItO,KAAKuO,SAAS0D,OAAOzT;AACjC;IAED,IAAAwS;QACEhR,KAAK6O,OAAO7O,KAAK6Q;AAClB;IAED,MAAAI,IAEC;IAED,MAAAkB;QACE,OAAOnS,KAAKsO;AACb;IAED,KAAA+C;QACErR,KAAKsO,MAAM,IAAI3B,WAAW3M,KAAK0R,MAAMjI;QACrCzJ,KAAKwO,OAAO,IAAIlB,SAAStN,KAAKsO,IAAIG;QAClCzO,KAAKuO,MAAM;QACXvO,KAAK8Q,YAAY;AAClB;IAEO,SAAAa,CAAUxD;QAChB,OAAOA,MAAM,KAAM;YACjBnO,KAAKsO,IAAItO,KAAKuO,SAAUJ,MAAM,MAAQ;YACtCA,MAAMA,QAAQ;AACf;QACDnO,KAAKsO,IAAItO,KAAKuO,SAASJ;AACxB;IAEO,SAAAyD,CAAUzD;QAChBA,MAAMhK,OAAOmN,QAAQ,IAAInD;QACzB,OAAOA,MAAMoD,MAAM;YACjBvR,KAAKsO,IAAItO,KAAKuO,SAASnK,OAAQ+J,MAAMoD,OAAQa;YAC7CjE,MAAMA,OAAOqD;AACd;QACDxR,KAAKsO,IAAItO,KAAKuO,SAASnK,OAAO+J;AAC/B;IAEO,MAAA0C;QACN,OAAO7Q,KAAK8Q,aAAa9Q,KAAK0R,MAAMb,OAAO7R,SACvC,IACAgB,KAAK0R,MAAMb,OAAO7Q,KAAK8Q;AAC5B;;;AAGH,MAAMjB,OAAwB,IAAIwC;;AAElC,MAAMR,OAAwB1N,OAAO;;AACrC,MAAMqN,OAAwBrN,OAAO;;AACrC,MAAM2N,OAAwB3N,OAAO;;AACrC,MAAMoN,OAAwBpN,OAAO;;AACrC,MAAMiO,OAAwBjO,OAAO;;AC9I9B,MAAM2L,WAAUxI,WAAoB;OACtCyB;IACHuJ,QAAQjE;IACRtE,QAAQH,QAAQ,YAAYtC;;;AAGvB,MAAM4K,WAAU5K,WAAoB;OACtCyB;IACHwJ,OAAO5B;IACP6B,QAAQf;IACRgB,QAAQ/B;IACR3G,QAAQH,QAAQtC;;;ACCX,MAAMoL,WAAUpL,WAAoB;OACtCyB;IACHxH,MAAMyG;IACN2K,OAAO3L;IACP4L,OAAO/K,OAAO,SAASP;IACvBuL,WAAW,CACTC,SACAhL,eACApD;QAEA,IAAIoO,YAAY,SAAShL,kBAAkB,MACzC,MAAM,IAAIZ,eAAe;eACpBxC;YACH4C,QAAQ,SAASA;;QAErB,OAAOwL;AAAO;;;AAIX,MAAMC,aAAW,OAAO;OAC1BhK;IACHxH,MAAMyG;IACNgL,QAAQxK;IACRqK,WACGI,OACD,CACEH,SACAhL,eACApD;QAGA,IAAIoO,YAAY,SAAShL,kBAAkB,MACzC;YACEmL,IAAIC,YAAJD,IAAIC,UAAY;YAChB,MAAMC,YAAaF,IAA6BG;YAGhD,MAAMxV,QAAQ8G;YACd,IAAIyO,UAAUnU,QAAQ;gBACpB,MAAMH,OAAOsU,UAAUA,UAAUnU,SAAS,GAAIuI;gBAC9C,IACE1I,KAAKG,UAAUpB,MAAM2J,KAAKvI,UAC1BH,KAAKwH,UAAU,GAAGzI,MAAM2J,KAAKvI,YAAYpB,MAAM2J,MAE/C;AACH;YACD4L,UAAU1V,KAAKG;YACf;AACD,UAhBD;QAiBF,OAAOkV;AAAO;;;AAIb,MAAMnP,WAAS,OAAO;IAC3B0P,WAAWC;IACXzO;;;ACrBF,SAAS0O;IACPC,OAAK;AACP;;AACA,MAAMC,qBAAsC/L,OAAOgM,OAKjDH,gBACiBI,SAAiB,8BACjBC;;AA2CnB,MAAMC,uBAAwCnM,OAAOgM,OAKnDH,gBACiBI,SAAiB,8BACjBC;;AAwCnB,SAASE;IACPN,OAAK;AACP;;AACA,MAAMO,mBAAoCrM,OAAOgM,OAK/CI,cACiBH,SAAiB,4BACjBC;;AA6CnB,SAASI;IACPR,OAAK;AACP;;AACA,MAAMS,2BAA4CvM,OAAOgM,OAKvDM,sBACiBL,SAAiB,oCACjBC;;AAyCnB,SAASM;IACPV,OAAK;AACP;;AACA,MAAMW,6BAA8CzM,OAAOgM,OAKzDQ,wBACiBP,SAAiB,sCACjBC;;AAwCnB,SAASQ;IACPZ,OAAK;AACP;;AACA,MAAMa,yBAA0C3M,OAAOgM,OAKrDU,oBACiBT,SAAiB,kCACjBC;;AAwCnB,SAASU;IACPd,OAAK;AACP;;AACA,MAAMe,iBAAkC7M,OAAOgM,OAC7CY,YACiBE;;AAqCnB,SAASC;IACPjB,OAAK;AACP;;AACA,MAAMkB,mBAAoChN,OAAOgM,OAG/Ce,cAA+BD;;AAoCjC,SAASG;IACPnB,OAAK;AACP;;AACA,MAAMoB,eAAgClN,OAAOgM,OAC3CiB,UACiBH;;AAoCnB,SAASK;IACPrB,OAAK;AACP;;AACA,MAAMsB,qBAAsCpN,OAAOgM,OAGjDmB,gBAAiCL;;AAgCnC,SAASO;IACPvB,OAAK;AACP;;AACA,MAAMwB,uBAAwCtN,OAAOgM,OAGnDqB,kBAAmCP;;AAmCrC,SAASS;IACPzB,OAAK;AACP;;AACA,MAAM0B,mBAAoCxN,OAAOgM,OAG/CuB,cAA+BT;;AAgDjC,SAASW;IACP3B,OAAK;AACP;;AACA,MAAM4B,uBAAwC1N,OAAOgM,OAGnDyB,kBAAmCE;;AAwCrC,SAASC;IACP9B,OAAK;AACP;;AACA,MAAM+B,yBAA0C7N,OAAOgM,OAGrD4B,oBAAqCD;;AAwCvC,SAASG;IACPhC,OAAK;AACP;;AACA,MAAMiC,qBAAsC/N,OAAOgM,OAGjD8B,gBAAiCH;;AA6CnC,SAASK;IACPlC,OAAK;AACP;;AACA,MAAMmC,6BAA8CjO,OAAOgM,OAGzDgC,wBAAyCL;;AAwC3C,SAASO;IACPpC,OAAK;AACP;;AACA,MAAMqC,+BAAgDnO,OAAOgM,OAG3DkC,0BAA2CP;;AAwC7C,SAASS;IACPtC,OAAK;AACP;;AACA,MAAMuC,2BAA4CrO,OAAOgM,OAGvDoC,sBAAuCT;;AASzC,SAAS7B,OAAKwC;IACZ,MAAM,IAAIzT,MACR,6BAA6ByT;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;ACrzBA,SAASrL;IACP6I,OAAK;AACP;;AACA,MAAMyC,eAAgCvO,OAAOgM,OAC3C/I,UACiBuL;;AAyCnB,SAASC;IACP3C,OAAK;AACP;;AACA,MAAM4C,qBAAsC1O,OAAOgM,OAKjDyC,gBACiBD,cACAvC,SAAiB;;AAoCpC,SAAS0C;IACP7C,OAAK;AACP;;AACA,MAAM8C,iBAAkC5O,OAAOgM,OAK7C2C,YACiBH,cACA1B;;AAwCnB,SAAS+B;IACP/C,OAAK;AACP;;AACA,MAAMgD,uBAAwC9O,OAAOgM,OAKnD6C,kBACiBL,cACAb;;AA2CnB,SAASpK;IACPuI,OAAK;AACP;;AACA,MAAMiD,YAA6B/O,OAAOgM,OACxCzI,OACiByL;;AAyCnB,SAASC;IACPnD,OAAK;AACP;;AACA,MAAMoD,kBAAmClP,OAAOgM,OAK9CiD,aACiBD,WACA/C,SAAiB;;AAsCpC,SAASkD;IACPrD,OAAK;AACP;;AAEA,MAAMsD,cAA+BpP,OAAOgM,OAC1CmD,SACiBH,WACAlC;;AAuCnB,SAASuC;IACPvD,OAAK;AACP;;AACA,MAAMwD,oBAAqCtP,OAAOgM,OAKhDqD,eACiBL,WACArB;;AAkEnB,SAASxK;IACP2I,OAAK;AACP;;AAEA,MAAMyD,cAA+BvP,OAAOgM,OAC1C7I,SACiBqM;;AA+DnB,SAASC;IACP3D,OAAK;AACP;;AAEA,MAAM4D,oBAAqC1P,OAAOgM,OAKhDyD,eACiBD,aACAvD,SAAiB;;AA8DpC,SAAS0D;IACP7D,OAAK;AACP;;AACA,MAAM8D,gBAAiC5P,OAAOgM,OAC5C2D,WACiBH,aACA1C;;AA6DnB,SAAS+C;IACP/D,OAAK;AACP;;AAEA,MAAMgE,sBAAuC9P,OAAOgM,OAKlD6D,iBACiBL,aACA7B;;AA2BnB,SAAStK;IACPyI,OAAK;AACP;;AAEA,MAAMiE,gBAAiC/P,OAAOgM,OAC5C3I,WACiB2M,eACA/D,SAAiB;;AA+BpC,SAASgE;IACPnE,OAAK;AACP;;AAEA,MAAMoE,qBAAsClQ,OAAOgM,OAGjDiE,gBAAiCzB;;AAiCnC,SAAS2B;IACPrE,OAAK;AACP;;AAEA,MAAMsE,2BAA4CpQ,OAAOgM,OAKvDmE,sBACiB3B,cACAvC,SAAiB;;AA4BpC,SAASoE;IACPvE,OAAK;AACP;;AAEA,MAAMwE,uBAAwCtQ,OAAOgM,OAKnDqE,kBACiB7B,cACA1B;;AA8BnB,SAASyD;IAGPzE,OAAK;AACP;;AAEA,MAAM0E,6BAA8CxQ,OAAOgM,OAKzDuE,wBACiB/B,cACAb;;AA8BnB,SAAS8C;IACP3E,OAAK;AACP;;AAEA,MAAM4E,kBAAmC1Q,OAAOgM,OAC9CyE,aACiBzB;;AAkCnB,SAAS2B;IACP7E,OAAK;AACP;;AAEA,MAAM8E,wBAAyC5Q,OAAOgM,OAKpD2E,mBACiB3B,WACA/C,SAAiB;;AA8BpC,SAAS4E;IACP/E,OAAK;AACP;;AAEA,MAAMgF,oBAAqC9Q,OAAOgM,OAKhD6E,eACiB7B,WACAlC;;AA8BnB,SAASiE;IAGPjF,OAAK;AACP;;AAEA,MAAMkF,0BAA2ChR,OAAOgM,OAKtD+E,qBACiB/B,WACArB;;AA8BnB,SAASsD;IAGPnF,OAAK;AACP;;AAEA,MAAMoF,oBAAqClR,OAAOgM,OAGhDiF,eAAgCzB;;AAiClC,SAAS2B;IAGPrF,OAAK;AACP;;AAEA,MAAMsF,0BAA2CpR,OAAOgM,OAKtDmF,qBACiB3B,aACAvD,SAAiB;;AA8BpC,SAASoF;IAGPvF,OAAK;AACP;;AAEA,MAAMwF,sBAAuCtR,OAAOgM,OAKlDqF,iBACiB7B,aACA1C;;AA8BnB,SAASyE;IAGPzF,OAAK;AACP;;AAEA,MAAM0F,4BAA6CxR,OAAOgM,OAKxDuF,uBACiB/B,aACA7B;;AA4BnB,SAAS8D;IACP3F,OAAK;AACP;;AAEA,MAAM4F,sBAAuC1R,OAAOgM,OAKlDyF,iBACiBzB,eACA/D,SAAiB;;AAOpC,SAASH,OAAKwC;IACZ,MAAM,IAAIzT,MACR,uBAAuByT;AAE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SCjrCgBqD;IACd7F,OAAK;AACP;;AAyDA,SAAS8F;IACP9F,OAAK;AACP;;AACA,MAAM+F,kBAAmC7R,OAAOgM,OAC9C4F,aACiB3F,SAAiB;;AA+CpC,SAAS6F;IACPhG,OAAK;AACP;;AACA,MAAMiG,cAA+B/R,OAAOgM,OAC1C8F,SACiBhF;;AAiDnB,SAASkF;IACPlG,OAAK;AACP;;AACA,MAAMmG,oBAAqCjS,OAAOgM,OAGhDgG,eAAgCrE;;AAiClC,SAASlN;IACPqL,OAAK;AACP;;AACA,MAAMoG,gBAAiClS,OAAOgM,OAC5CvL,WACiB0R,YAAyB;;AA6D5C,SAASC;IACPtG,OAAK;AACP;;AACA,MAAMuG,sBAAuCrS,OAAOgM,OAKlDoG,iBACiBnG,SAAiB,yBACjBkG,YAAyB;;AAqD5C,SAASG;IACPxG,OAAK;AACP;;AAEA,MAAMyG,kBAAmCvS,OAAOgM,OAK9CsG,aACiBxF,QACAqF,YAAyB;;AAuD5C,SAASK;IACP1G,OAAK;AACP;;AACA,MAAM2G,wBAAyCzS,OAAOgM,OAKpDwG,mBACiB7E,cACAwE,YAAyB;;AA+B5C,SAASO;IACP5G,OAAK;AACP;;AACA,MAAM6G,oBAAqC3S,OAAOgM,OAGhD0G,eAAeX;;AAiCjB,SAASa;IACP9G,OAAK;AACP;;AACA,MAAM+G,wBAAyC7S,OAAOgM,OAGpD4G,mBAAmBf;;AA2BrB,SAASiB;IAGPhH,OAAK;AACP;;AAEA,MAAMiH,0BAA2C/S,OAAOgM,OAGtD8G,qBAAqBb;;AA2BvB,SAASe;IACPlH,OAAK;AACP;;AAEA,MAAMmH,sBAAuCjT,OAAOgM,OAGlDgH,iBAAiBd;;AAiCnB,SAASgB;IACPpH,OAAK;AACP;;AAEA,MAAMqH,4BAA6CnT,OAAOgM,OAGxDkH,uBAAuBb;;AA2BzB,SAASe;IACPtH,OAAK;AACP;;AAEA,MAAMuH,wBAAyCrT,OAAOgM,OAGpDoH,mBAAmBb;;AA2BrB,SAASe;IACPxH,OAAK;AACP;;AAEA,MAAMyH,8BAA+CvT,OAAOgM,OAG1DsH,yBAAyBb;;AAM3B,SAAS3G,OAAKwC;IACZ,MAAM,IAAIzT,MACR,uBAAuByT;AAE3B;;;;;;;;;;;;;;;;;;;;;SC3qBgBkF;IACd1H,OAAK;AACP;;AA4BA,SAAShS;IACPgS,OAAK;AACP;;AACA,MAAM2H,YAA6BzT,OAAOgM,OACxClS,OACiB4Z,QAAqB;;AAqDxC,SAASC;IACP7H,OAAK;AACP;;AACA,MAAM8H,kBAAmC5T,OAAOgM,OAK9C2H,aACiB1H,SAAiB,qBACjByH,QAAqB;;AA6CxC,SAASG;IACP/H,OAAK;AACP;;AACA,MAAMgI,cAA+B9T,OAAOgM,OAC1C6H,SACiB/G,QACA4G,QAAqB;;AA2CxC,SAASK;IACPjI,OAAK;AACP;;AACA,MAAMkI,oBAAqChU,OAAOgM,OAKhD+H,eACiBpG,cACA+F,QAAqB;;AAiCxC,SAAShN;IACPoF,OAAK;AACP;;AACA,MAAMmI,YAA6BjU,OAAOgM,OACxCtF,OACiBwN,QAAqB;;AAqDxC,SAASC;IACPrI,OAAK;AACP;;AACA,MAAMsI,kBAAmCpU,OAAOgM,OAK9CmI,aACiBlI,SAAiB,qBACjBiI,QAAqB;;AA6CxC,SAASG;IACPvI,OAAK;AACP;;AACA,MAAMwI,cAA+BtU,OAAOgM,OAC1CqI,SACiBvH,QACAoH,QAAqB;;AA+CxC,SAASK;IACPzI,OAAK;AACP;;AAEA,MAAM0I,oBAAqCxU,OAAOgM,OAKhDuI,eACiBL,QAAqB,kBACrBvG;;AA+BnB,SAAS8G;IACP3I,OAAK;AACP;;AACA,MAAM4I,kBAAmC1U,OAAOgM,OAC9CyI,aACAhB;;AAkCF,SAASkB;IACP7I,OAAK;AACP;;AACA,MAAM8I,wBAAyC5U,OAAOgM,OAGpD2I,mBAAmBf;;AA2BrB,SAASiB;IACP/I,OAAK;AACP;;AACA,MAAMgJ,oBAAqC9U,OAAOgM,OAGhD6I,eAAef;;AA2BjB,SAASiB;IACPjJ,OAAK;AACP;;AACA,MAAMkJ,0BAA2ChV,OAAOgM,OAGtD+I,qBAAqBf;;AA2BvB,SAASiB;IACPnJ,OAAK;AACP;;AACA,MAAMoJ,kBAAmClV,OAAOgM,OAC9CiJ,aACAhB;;AAkCF,SAASkB;IACPrJ,OAAK;AACP;;AACA,MAAMsJ,wBAAyCpV,OAAOgM,OAGpDmJ,mBAAmBf;;AA2BrB,SAASiB;IACPvJ,OAAK;AACP;;AACA,MAAMwJ,oBAAqCtV,OAAOgM,OAGhDqJ,eAAef;;AA2BjB,SAASiB;IACPzJ,OAAK;AACP;;AACA,MAAM0J,0BAA2CxV,OAAOgM,OAGtDuJ,qBAAqBf;;AAMvB,SAAS1I,OAAKwC;IACZ,MAAM,IAAIzT,MACR,uBAAuByT;AAE3B;;;;;;;;;;;;;;;;;;;;;;;AC3sBA,SAASrK;IACP,OAAO6H,OAAK;AACd;;AACA,MAAM2J,YAA6BzV,OAAOgM,OACxC/H,OACiByR,QAA0B;;AA2C7C,SAASC;IACP,OAAO7J,OAAK;AACd;;AACA,MAAM8J,kBAAmC5V,OAAOgM,OAK9C2J,aACiBD,QAA0B,gBAC1BzJ,SAAiB;;AAmCpC,SAAS4J;IACP,OAAO/J,OAAK;AACd;;AACA,MAAMgK,cAA+B9V,OAAOgM,OAC1C6J,SACiBH,QAA0B,YAC1B5I;;AAuCnB,SAASiJ;IACP,OAAOjK,OAAK;AACd;;AACA,MAAMkK,oBAAqChW,OAAOgM,OAKhD+J,eACiBL,QAA0B,kBAC1B/H;;AA+BnB,SAASxJ;IACP,OAAO2H,OAAK;AACd;;AACA,MAAMmK,aAA8BjW,OAAOgM,OACzC7H,QACiB+R,SAA2B;;AA2C9C,SAASC;IACP,OAAOrK,OAAK;AACd;;AACA,MAAMsK,mBAAoCpW,OAAOgM,OAK/CmK,cACiBD,SAA2B,iBAC3BjK,SAAiB;;AAmCpC,SAASoK;IACP,OAAOvK,OAAK;AACd;;AACA,MAAMwK,eAAgCtW,OAAOgM,OAC3CqK,UACiBH,SAA2B,aAC3BpJ;;AAuCnB,SAASyJ;IACP,OAAOzK,OAAK;AACd;;AACA,MAAM0K,qBAAsCxW,OAAOgM,OAKjDuK,gBACiBL,SAA2B,mBAC3BvI;;AA+BnB,SAAShK;IACP,OAAOmI,OAAK;AACd;;AACA,MAAM2K,YAA6BzW,OAAOgM,OACxCrI,OACiB+S,QAA0B;;AA2C7C,SAASC;IACP,OAAO7K,OAAK;AACd;;AACA,MAAM8K,kBAAmC5W,OAAOgM,OAK9C2K,aACiBD,QAA0B,gBAC1BzK,SAAiB;;AAmCpC,SAAS4K;IACP,OAAO/K,OAAK;AACd;;AACA,MAAMgL,cAA+B9W,OAAOgM,OAC1C6K,SACiBH,QAA0B,YAC1B5J;;AAuCnB,SAASiK;IACP,OAAOjL,OAAK;AACd;;AACA,MAAMkL,oBAAqChX,OAAOgM,OAKhD+K,eACiBL,QAA0B,kBAC1B/I;;AA8BnB,SAASsJ;IACPnL,OAAK;AACP;;AACA,MAAMoL,kBAAmClX,OAAOgM,OAC9CiL,aACiBvB,QAA0B;;AAkC7C,SAASyB;IACPrL,OAAK;AACP;;AACA,MAAMsL,wBAAyCpX,OAAOgM,OAKpDmL,mBACiBzB,QAA0B,sBAC1BzJ,SAAiB;;AA4BpC,SAASoL;IACPvL,OAAK;AACP;;AACA,MAAMwL,oBAAqCtX,OAAOgM,OAKhDqL,eACiB3B,QAA0B,kBAC1B5I;;AA4BnB,SAASyK;IACPzL,OAAK;AACP;;AACA,MAAM0L,0BAA2CxX,OAAOgM,OAKtDuL,qBACiB7B,QAA0B,wBAC1B/H;;AA4BnB,SAAS8J;IACP3L,OAAK;AACP;;AACA,MAAM4L,mBAAoC1X,OAAOgM,OAG/CyL,cAA+BvB,SAA2B;;AAiC5D,SAASyB;IACP7L,OAAK;AACP;;AACA,MAAM8L,yBAA0C5X,OAAOgM,OAKrD2L,oBACiBzB,SAA2B,uBAC3BjK,SAAiB;;AA4BpC,SAAS4L;IACP/L,OAAK;AACP;;AACA,MAAMgM,qBAAsC9X,OAAOgM,OAKjD6L,gBACiB3B,SAA2B,mBAC3BpJ;;AA4BnB,SAASiL;IACPjM,OAAK;AACP;;AACA,MAAMkM,2BAA4ChY,OAAOgM,OAKvD+L,sBACiB7B,SAA2B,yBAC3BvI;;AA4BnB,SAASsK;IACPnM,OAAK;AACP;;AACA,MAAMoM,kBAAmClY,OAAOgM,OAC9CiM,aACiBvB,QAA0B;;AAkC7C,SAASyB;IACPrM,OAAK;AACP;;AACA,MAAMsM,wBAAyCpY,OAAOgM,OAKpDmM,mBACiBzB,QAA0B,sBAC1BzK,SAAiB;;AA4BpC,SAASoM;IACPvM,OAAK;AACP;;AACA,MAAMwM,oBAAqCtY,OAAOgM,OAKhDqM,eACiB3B,QAA0B,kBAC1B5J;;AA4BnB,SAASyL;IACPzM,OAAK;AACP;;AACA,MAAM0M,0BAA2CxY,OAAOgM,OAKtDuM,qBACiB7B,QAA0B,wBAC1B/I;;AAOnB,SAAS7B,OAAKwC;IACZ,MAAM,IAAIzT,MACR,4BAA4ByT;AAEhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SC/7BgB3O;IACdmM,OAAK;AACP;;AAsEA,SAAS1D;IACP0D,OAAK;AACP;;AACA,MAAM2M,aAA8BzY,OAAOgM,OACzC5D,QACiBsQ,SAA0B;;AA2E7C,SAASC;IACP7M,OAAK;AACP;;AAEA,MAAM8M,mBAAoC5Y,OAAOgM,OAK/C2M,cACiB1M,SAAiB,0BACjByM,SAA0B;;AAmE7C,SAASG;IACP/M,OAAK;AACP;;AACA,MAAMgN,eAAgC9Y,OAAOgM,OAC3C6M,UACiB/L,QACA4L,SAA0B;;AAqE7C,SAASK;IACPjN,OAAK;AACP;;AACA,MAAMkN,qBAAsChZ,OAAOgM,OAKjD+M,gBACiBpL,cACA+K,SAA0B;;AAuC7C,SAASlO;IACPsB,OAAK;AACP;;AACA,MAAMmN,aAA8BjZ,OAAOgM,OACzCxB,QACiB0O,SAA0B;;AAiF7C,SAASC;IACPrN,OAAK;AACP;;AACA,MAAMsN,mBAAoCpZ,OAAOgM,OAK/CmN,cACiBlN,SAAiB,0BACjBiN,SAA0B;;AAyE7C,SAASG;IACPvN,OAAK;AACP;;AACA,MAAMwN,eAAgCtZ,OAAOgM,OAC3CqN,UACiBvM,QACAoM,SAA0B;;AA2E7C,SAASK;IACPzN,OAAK;AACP;;AACA,MAAM0N,qBAAsCxZ,OAAOgM,OAKjDuN,gBACiB5L,cACAuL,SAA0B;;AA+B7C,SAASO;IACP3N,OAAK;AACP;;AACA,MAAM4N,mBAAoC1Z,OAAOgM,OAG/CyN,cAA+Bf,SAA0B;;AA2B3D,SAASiB;IACP7N,OAAK;AACP;;AACA,MAAM8N,qBAAsC5Z,OAAOgM,OAKjD2N,gBACiB7M,QACA4L,SAA0B;;AAkC7C,SAASmB;IACP/N,OAAK;AACP;;AACA,MAAMgO,yBAA0C9Z,OAAOgM,OAKrD6N,oBACiB5N,SAAiB,gCACjByM,SAA0B;;AA8B7C,SAASqB;IAGPjO,OAAK;AACP;;AACA,MAAMkO,2BAA4Cha,OAAOgM,OAKvD+N,sBACiBpM,cACA+K,SAA0B;;AA4B7C,SAASuB;IACPnO,OAAK;AACP;;AACA,MAAMoO,mBAAoCla,OAAOgM,OAG/CiO,cAA+Bf,SAA0B;;AA2B3D,SAASiB;IACPrO,OAAK;AACP;;AACA,MAAMsO,qBAAsCpa,OAAOgM,OAKjDmO,gBACiBrN,QACAoM,SAA0B;;AAkC7C,SAASmB;IACPvO,OAAK;AACP;;AACA,MAAMwO,yBAA0Cta,OAAOgM,OAKrDqO,oBACiBpO,SAAiB,gCACjBiN,SAA0B;;AA4B7C,SAASqB;IACPzO,OAAK;AACP;;AACA,MAAM0O,2BAA4Cxa,OAAOgM,OAKvDuO,sBACiB5M,cACAuL,SAA0B;;AAO7C,SAASpN,OAAKwC;IACZ,MAAM,IAAIzT,MACR,2BAA2ByT;AAE/B;;;;;;;;;;;;;;;;;;;;;;;AC/7BA,SAASmM;IACP3O,OAAK;AACP;;AAEA,MAAM4O,eAAgC1a,OAAOgM,OAC3CyO,UACA;IAAE7nB,MAAO0P,SAAmBA;;;AAO9B,SAASwJ,OAAKwC;IACZ,MAAM,IAAIzT,MACR,0BAA0ByT;AAE9B;;;;;;;;;;;ACoCA,SAAStD;IACPc,KAAK;AACP;;AACM,MAAA6O,aAA8B3a,OAAOgM,OACzChB,QACiBiB,SAAiB;;AAmEpC,SAAS2O;IACP9O,KAAK;AACP;;AACM,MAAA+O,kBAAmC7a,OAAOgM,OAC9C4O,aACiB3O,SAAiB;;AAwDpC,SAAS5K;IACPyK,KAAK;AACP;;AACM,MAAAgP,SAA0B9a,OAAOgM,OACrC3K,IACiB4K,SAAiB;;AAyDpC,SAASZ;IACPS,KAAK;AACP;;AACM,MAAAiP,eAAgC/a,OAAOgM,OAC3CX,UACiBsC;;AAoEnB,SAASqN;IACPlP,KAAK;AACP;;AACA,MAAMmP,mBAAoCjb,OAAOgM,OAG/CgP,cAA+B/O,SAAiB;;AAwElD,SAASiP;IACPpP,KAAK;AACP;;AACA,MAAMqP,wBAAyCnb,OAAOgM,OAGpDkP,mBAAoCjP,SAAiB;;AAwDvD,SAASmP;IACPtP,KAAK;AACP;;AACM,MAAAuP,aAA8Brb,OAAOgM,OACzCoP,QACiBtO;;AA2DnB,SAASwO;IACPxP,KAAK;AACP;;AACA,MAAMyP,qBAAsCvb,OAAOgM,OAGjDsP,gBAAiC3N;;AA+CnC,SAAS1R;IACP6P,KAAK;AACP;;AACM,MAAA0P,aAA8Bxb,OAAOgM,OACzC/P,QACiBwf;;AAqCnB,SAASC;IACP5P,KAAK;AACP;;AACA,MAAM6P,mBAAoC3b,OAAOgM,OAG/C0P,cAAcf;;AA+DhB,SAASiB;IACP9P,KAAK;AACP;;AACA,MAAM+P,wBAAyC7b,OAAOgM,OAGpD4P,mBAAmBf;;AA2BrB,SAASiB;IACPhQ,KAAK;AACP;;AACA,MAAMiQ,eAAgC/b,OAAOgM,OAC3C8P,UACAhB;;AA4BF,SAASkB;IACPlQ,KAAK;AACP;;AACA,MAAMmQ,qBAAsCjc,OAAOgM,OAGjDgQ,gBAAgBjB;;AAiClB,SAASmB;IACPpQ,KAAK;AACP;;AACA,MAAMqQ,yBAA0Cnc,OAAOgM,OAGrDkQ,oBAAoBjB;;AA+DtB,SAASmB;IACPtQ,KAAK;AACP;;AACA,MAAMuQ,8BAA+Crc,OAAOgM,OAG1DoQ,yBAAyBjB;;AA2B3B,SAASmB;IACPxQ,KAAK;AACP;;AACA,MAAMyQ,mBAAoCvc,OAAOgM,OAG/CsQ,cAAcjB;;AA2BhB,SAASmB;IACP1Q,KAAK;AACP;;AACA,MAAM2Q,2BAA4Czc,OAAOgM,OAGvDwQ,sBAAsBjB;;AA+BxB,SAASmB;IACP5Q,KAAK;AACP;;AACA,MAAM6Q,mBAAoC3c,OAAOgM,OAG/C0Q,cAAclB;;AAMhB,SAAS1P,KAAKwC;IACZ,MAAM,IAAIzT,MACR,kBAAkByT;AAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1,2,3,4,5,6]}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/types.js","../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/sets.js","../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/util.js","../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/positions.js","../node_modules/.pnpm/ret@0.2.2/node_modules/ret/lib/index.js","../node_modules/.pnpm/drange@1.1.1/node_modules/drange/lib/index.js","../node_modules/.pnpm/randexp@0.5.3/node_modules/randexp/lib/randexp.js","../src/utils/RandomGenerator/RandomGenerator.ts","../src/functional/$every.ts","../src/TypeGuardError.ts","../src/functional/$guard.ts","../src/functional/$join.ts","../src/functional/$report.ts","../src/functional/$is_between.ts","../src/functional/$stoll.ts","../src/functional/is.ts","../src/functional/Namespace/functional.ts","../src/functional/$number.ts","../src/functional/$rest.ts","../src/functional/$string.ts","../src/functional/$tail.ts","../src/functional/$throws.ts","../src/functional/Namespace/json.ts","../src/functional/$FormDataReader/$FormDataReader.ts","../src/functional/$HeadersReader/$HeadersReader.ts","../src/functional/$ParameterReader/$ParameterReader.ts","../src/functional/$QueryReader/$QueryReader.ts","../src/functional/Namespace/http.ts","../src/utils/StringUtil/StringUtil.ts","../src/utils/NamingConvention/NamingConvention.ts","../src/functional/$convention.ts","../src/functional/Namespace/notations.ts","../src/functional/$clone.ts","../src/functional/$any.ts","../src/functional/Namespace/misc.ts","../src/functional/$ProtobufReader.ts","../src/functional/$strlen.ts","../src/functional/$ProtobufSizer.ts","../src/functional/$ProtobufWriter.ts","../src/functional/Namespace/protobuf.ts","../src/functional/Namespace/index.ts","../src/functional.ts","../src/http.ts","../src/json.ts","../src/misc.ts","../src/notations.ts","../src/protobuf.ts","../src/reflect.ts","../src/module.ts"],"sourcesContent":["module.exports = {\n ROOT : 0,\n GROUP : 1,\n POSITION : 2,\n SET : 3,\n RANGE : 4,\n REPETITION : 5,\n REFERENCE : 6,\n CHAR : 7,\n};\n","const types = require('./types');\n\nconst INTS = () => [{ type: types.RANGE , from: 48, to: 57 }];\n\nconst WORDS = () => {\n return [\n { type: types.CHAR, value: 95 },\n { type: types.RANGE, from: 97, to: 122 },\n { type: types.RANGE, from: 65, to: 90 }\n ].concat(INTS());\n};\n\nconst WHITESPACE = () => {\n return [\n { type: types.CHAR, value: 9 },\n { type: types.CHAR, value: 10 },\n { type: types.CHAR, value: 11 },\n { type: types.CHAR, value: 12 },\n { type: types.CHAR, value: 13 },\n { type: types.CHAR, value: 32 },\n { type: types.CHAR, value: 160 },\n { type: types.CHAR, value: 5760 },\n { type: types.RANGE, from: 8192, to: 8202 },\n { type: types.CHAR, value: 8232 },\n { type: types.CHAR, value: 8233 },\n { type: types.CHAR, value: 8239 },\n { type: types.CHAR, value: 8287 },\n { type: types.CHAR, value: 12288 },\n { type: types.CHAR, value: 65279 }\n ];\n};\n\nconst NOTANYCHAR = () => {\n return [\n { type: types.CHAR, value: 10 },\n { type: types.CHAR, value: 13 },\n { type: types.CHAR, value: 8232 },\n { type: types.CHAR, value: 8233 },\n ];\n};\n\n// Predefined class objects.\nexports.words = () => ({ type: types.SET, set: WORDS(), not: false });\nexports.notWords = () => ({ type: types.SET, set: WORDS(), not: true });\nexports.ints = () => ({ type: types.SET, set: INTS(), not: false });\nexports.notInts = () => ({ type: types.SET, set: INTS(), not: true });\nexports.whitespace = () => ({ type: types.SET, set: WHITESPACE(), not: false });\nexports.notWhitespace = () => ({ type: types.SET, set: WHITESPACE(), not: true });\nexports.anyChar = () => ({ type: types.SET, set: NOTANYCHAR(), not: true });\n","const types = require('./types');\nconst sets = require('./sets');\n\n\nconst CTRL = '@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^ ?';\nconst SLSH = { '0': 0, 't': 9, 'n': 10, 'v': 11, 'f': 12, 'r': 13 };\n\n/**\n * Finds character representations in str and convert all to\n * their respective characters\n *\n * @param {String} str\n * @return {String}\n */\nexports.strToChars = function(str) {\n /* jshint maxlen: false */\n var chars_regex = /(\\[\\\\b\\])|(\\\\)?\\\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|(0?[0-7]{2})|c([@A-Z[\\\\\\]^?])|([0tnvfr]))/g;\n str = str.replace(chars_regex, function(s, b, lbs, a16, b16, c8, dctrl, eslsh) {\n if (lbs) {\n return s;\n }\n\n var code = b ? 8 :\n a16 ? parseInt(a16, 16) :\n b16 ? parseInt(b16, 16) :\n c8 ? parseInt(c8, 8) :\n dctrl ? CTRL.indexOf(dctrl) :\n SLSH[eslsh];\n\n var c = String.fromCharCode(code);\n\n // Escape special regex characters.\n if (/[[\\]{}^$.|?*+()]/.test(c)) {\n c = '\\\\' + c;\n }\n\n return c;\n });\n\n return str;\n};\n\n\n/**\n * turns class into tokens\n * reads str until it encounters a ] not preceeded by a \\\n *\n * @param {String} str\n * @param {String} regexpStr\n * @return {Array.<Array.<Object>, Number>}\n */\nexports.tokenizeClass = (str, regexpStr) => {\n /* jshint maxlen: false */\n var tokens = [];\n var regexp = /\\\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\\\)(.)|([^\\]\\\\]))-(?:\\\\)?([^\\]]))|(\\])|(?:\\\\)?([^])/g;\n var rs, c;\n\n\n while ((rs = regexp.exec(str)) != null) {\n if (rs[1]) {\n tokens.push(sets.words());\n\n } else if (rs[2]) {\n tokens.push(sets.ints());\n\n } else if (rs[3]) {\n tokens.push(sets.whitespace());\n\n } else if (rs[4]) {\n tokens.push(sets.notWords());\n\n } else if (rs[5]) {\n tokens.push(sets.notInts());\n\n } else if (rs[6]) {\n tokens.push(sets.notWhitespace());\n\n } else if (rs[7]) {\n tokens.push({\n type: types.RANGE,\n from: (rs[8] || rs[9]).charCodeAt(0),\n to: rs[10].charCodeAt(0),\n });\n\n } else if ((c = rs[12])) {\n tokens.push({\n type: types.CHAR,\n value: c.charCodeAt(0),\n });\n\n } else {\n return [tokens, regexp.lastIndex];\n }\n }\n\n exports.error(regexpStr, 'Unterminated character class');\n};\n\n\n/**\n * Shortcut to throw errors.\n *\n * @param {String} regexp\n * @param {String} msg\n */\nexports.error = (regexp, msg) => {\n throw new SyntaxError('Invalid regular expression: /' + regexp + '/: ' + msg);\n};\n","const types = require('./types');\nexports.wordBoundary = () => ({ type: types.POSITION, value: 'b' });\nexports.nonWordBoundary = () => ({ type: types.POSITION, value: 'B' });\nexports.begin = () => ({ type: types.POSITION, value: '^' });\nexports.end = () => ({ type: types.POSITION, value: '$' });\n","const util = require('./util');\nconst types = require('./types');\nconst sets = require('./sets');\nconst positions = require('./positions');\n\n\nmodule.exports = (regexpStr) => {\n var i = 0, l, c,\n start = { type: types.ROOT, stack: []},\n\n // Keep track of last clause/group and stack.\n lastGroup = start,\n last = start.stack,\n groupStack = [];\n\n\n var repeatErr = (i) => {\n util.error(regexpStr, `Nothing to repeat at column ${i - 1}`);\n };\n\n // Decode a few escaped characters.\n var str = util.strToChars(regexpStr);\n l = str.length;\n\n // Iterate through each character in string.\n while (i < l) {\n c = str[i++];\n\n switch (c) {\n // Handle escaped characters, inclues a few sets.\n case '\\\\':\n c = str[i++];\n\n switch (c) {\n case 'b':\n last.push(positions.wordBoundary());\n break;\n\n case 'B':\n last.push(positions.nonWordBoundary());\n break;\n\n case 'w':\n last.push(sets.words());\n break;\n\n case 'W':\n last.push(sets.notWords());\n break;\n\n case 'd':\n last.push(sets.ints());\n break;\n\n case 'D':\n last.push(sets.notInts());\n break;\n\n case 's':\n last.push(sets.whitespace());\n break;\n\n case 'S':\n last.push(sets.notWhitespace());\n break;\n\n default:\n // Check if c is integer.\n // In which case it's a reference.\n if (/\\d/.test(c)) {\n last.push({ type: types.REFERENCE, value: parseInt(c, 10) });\n\n // Escaped character.\n } else {\n last.push({ type: types.CHAR, value: c.charCodeAt(0) });\n }\n }\n\n break;\n\n\n // Positionals.\n case '^':\n last.push(positions.begin());\n break;\n\n case '$':\n last.push(positions.end());\n break;\n\n\n // Handle custom sets.\n case '[':\n // Check if this class is 'anti' i.e. [^abc].\n var not;\n if (str[i] === '^') {\n not = true;\n i++;\n } else {\n not = false;\n }\n\n // Get all the characters in class.\n var classTokens = util.tokenizeClass(str.slice(i), regexpStr);\n\n // Increase index by length of class.\n i += classTokens[1];\n last.push({\n type: types.SET,\n set: classTokens[0],\n not,\n });\n\n break;\n\n\n // Class of any character except \\n.\n case '.':\n last.push(sets.anyChar());\n break;\n\n\n // Push group onto stack.\n case '(':\n // Create group.\n var group = {\n type: types.GROUP,\n stack: [],\n remember: true,\n };\n\n c = str[i];\n\n // If if this is a special kind of group.\n if (c === '?') {\n c = str[i + 1];\n i += 2;\n\n // Match if followed by.\n if (c === '=') {\n group.followedBy = true;\n\n // Match if not followed by.\n } else if (c === '!') {\n group.notFollowedBy = true;\n\n } else if (c !== ':') {\n util.error(regexpStr,\n `Invalid group, character '${c}'` +\n ` after '?' at column ${i - 1}`);\n }\n\n group.remember = false;\n }\n\n // Insert subgroup into current group stack.\n last.push(group);\n\n // Remember the current group for when the group closes.\n groupStack.push(lastGroup);\n\n // Make this new group the current group.\n lastGroup = group;\n last = group.stack;\n break;\n\n\n // Pop group out of stack.\n case ')':\n if (groupStack.length === 0) {\n util.error(regexpStr, `Unmatched ) at column ${i - 1}`);\n }\n lastGroup = groupStack.pop();\n\n // Check if this group has a PIPE.\n // To get back the correct last stack.\n last = lastGroup.options ?\n lastGroup.options[lastGroup.options.length - 1] : lastGroup.stack;\n break;\n\n\n // Use pipe character to give more choices.\n case '|':\n // Create array where options are if this is the first PIPE\n // in this clause.\n if (!lastGroup.options) {\n lastGroup.options = [lastGroup.stack];\n delete lastGroup.stack;\n }\n\n // Create a new stack and add to options for rest of clause.\n var stack = [];\n lastGroup.options.push(stack);\n last = stack;\n break;\n\n\n // Repetition.\n // For every repetition, remove last element from last stack\n // then insert back a RANGE object.\n // This design is chosen because there could be more than\n // one repetition symbols in a regex i.e. `a?+{2,3}`.\n case '{':\n var rs = /^(\\d+)(,(\\d+)?)?\\}/.exec(str.slice(i)), min, max;\n if (rs !== null) {\n if (last.length === 0) {\n repeatErr(i);\n }\n min = parseInt(rs[1], 10);\n max = rs[2] ? rs[3] ? parseInt(rs[3], 10) : Infinity : min;\n i += rs[0].length;\n\n last.push({\n type: types.REPETITION,\n min,\n max,\n value: last.pop(),\n });\n } else {\n last.push({\n type: types.CHAR,\n value: 123,\n });\n }\n break;\n\n case '?':\n if (last.length === 0) {\n repeatErr(i);\n }\n last.push({\n type: types.REPETITION,\n min: 0,\n max: 1,\n value: last.pop(),\n });\n break;\n\n case '+':\n if (last.length === 0) {\n repeatErr(i);\n }\n last.push({\n type: types.REPETITION,\n min: 1,\n max: Infinity,\n value: last.pop(),\n });\n break;\n\n case '*':\n if (last.length === 0) {\n repeatErr(i);\n }\n last.push({\n type: types.REPETITION,\n min: 0,\n max: Infinity,\n value: last.pop(),\n });\n break;\n\n\n // Default is a character that is not `\\[](){}?+*^$`.\n default:\n last.push({\n type: types.CHAR,\n value: c.charCodeAt(0),\n });\n }\n\n }\n\n // Check if any groups have not been closed.\n if (groupStack.length !== 0) {\n util.error(regexpStr, 'Unterminated group');\n }\n\n return start;\n};\n\nmodule.exports.types = types;\n","'use strict';\n/* eslint indent: 4 */\n\n\n// Private helper class\nclass SubRange {\n constructor(low, high) {\n this.low = low;\n this.high = high;\n this.length = 1 + high - low;\n }\n\n overlaps(range) {\n return !(this.high < range.low || this.low > range.high);\n }\n\n touches(range) {\n return !(this.high + 1 < range.low || this.low - 1 > range.high);\n }\n\n // Returns inclusive combination of SubRanges as a SubRange.\n add(range) {\n return new SubRange(\n Math.min(this.low, range.low),\n Math.max(this.high, range.high)\n );\n }\n\n // Returns subtraction of SubRanges as an array of SubRanges.\n // (There's a case where subtraction divides it in 2)\n subtract(range) {\n if (range.low <= this.low && range.high >= this.high) {\n return [];\n } else if (range.low > this.low && range.high < this.high) {\n return [\n new SubRange(this.low, range.low - 1),\n new SubRange(range.high + 1, this.high)\n ];\n } else if (range.low <= this.low) {\n return [new SubRange(range.high + 1, this.high)];\n } else {\n return [new SubRange(this.low, range.low - 1)];\n }\n }\n\n toString() {\n return this.low == this.high ?\n this.low.toString() : this.low + '-' + this.high;\n }\n}\n\n\nclass DRange {\n constructor(a, b) {\n this.ranges = [];\n this.length = 0;\n if (a != null) this.add(a, b);\n }\n\n _update_length() {\n this.length = this.ranges.reduce((previous, range) => {\n return previous + range.length;\n }, 0);\n }\n\n add(a, b) {\n var _add = (subrange) => {\n var i = 0;\n while (i < this.ranges.length && !subrange.touches(this.ranges[i])) {\n i++;\n }\n var newRanges = this.ranges.slice(0, i);\n while (i < this.ranges.length && subrange.touches(this.ranges[i])) {\n subrange = subrange.add(this.ranges[i]);\n i++;\n }\n newRanges.push(subrange);\n this.ranges = newRanges.concat(this.ranges.slice(i));\n this._update_length();\n }\n\n if (a instanceof DRange) {\n a.ranges.forEach(_add);\n } else {\n if (b == null) b = a;\n _add(new SubRange(a, b));\n }\n return this;\n }\n\n subtract(a, b) {\n var _subtract = (subrange) => {\n var i = 0;\n while (i < this.ranges.length && !subrange.overlaps(this.ranges[i])) {\n i++;\n }\n var newRanges = this.ranges.slice(0, i);\n while (i < this.ranges.length && subrange.overlaps(this.ranges[i])) {\n newRanges = newRanges.concat(this.ranges[i].subtract(subrange));\n i++;\n }\n this.ranges = newRanges.concat(this.ranges.slice(i));\n this._update_length();\n };\n\n if (a instanceof DRange) {\n a.ranges.forEach(_subtract);\n } else {\n if (b == null) b = a;\n _subtract(new SubRange(a, b));\n }\n return this;\n }\n\n intersect(a, b) {\n var newRanges = [];\n var _intersect = (subrange) => {\n var i = 0;\n while (i < this.ranges.length && !subrange.overlaps(this.ranges[i])) {\n i++;\n }\n while (i < this.ranges.length && subrange.overlaps(this.ranges[i])) {\n var low = Math.max(this.ranges[i].low, subrange.low);\n var high = Math.min(this.ranges[i].high, subrange.high);\n newRanges.push(new SubRange(low, high));\n i++;\n }\n };\n\n if (a instanceof DRange) {\n a.ranges.forEach(_intersect);\n } else {\n if (b == null) b = a;\n _intersect(new SubRange(a, b));\n }\n this.ranges = newRanges;\n this._update_length();\n return this;\n }\n\n index(index) {\n var i = 0;\n while (i < this.ranges.length && this.ranges[i].length <= index) {\n index -= this.ranges[i].length;\n i++;\n }\n return this.ranges[i].low + index;\n }\n\n toString() {\n return '[ ' + this.ranges.join(', ') + ' ]';\n }\n\n clone() {\n return new DRange(this);\n }\n\n numbers() {\n return this.ranges.reduce((result, subrange) => {\n var i = subrange.low;\n while (i <= subrange.high) {\n result.push(i);\n i++;\n }\n return result;\n }, []);\n }\n\n subranges() {\n return this.ranges.map((subrange) => ({\n low: subrange.low,\n high: subrange.high,\n length: 1 + subrange.high - subrange.low\n }));\n }\n}\n\nmodule.exports = DRange;\n","const ret = require('ret');\nconst DRange = require('drange');\nconst types = ret.types;\n\n\nmodule.exports = class RandExp {\n /**\n * @constructor\n * @param {RegExp|String} regexp\n * @param {String} m\n */\n constructor(regexp, m) {\n this._setDefaults(regexp);\n if (regexp instanceof RegExp) {\n this.ignoreCase = regexp.ignoreCase;\n this.multiline = regexp.multiline;\n regexp = regexp.source;\n\n } else if (typeof regexp === 'string') {\n this.ignoreCase = m && m.indexOf('i') !== -1;\n this.multiline = m && m.indexOf('m') !== -1;\n } else {\n throw new Error('Expected a regexp or string');\n }\n\n this.tokens = ret(regexp);\n }\n\n\n /**\n * Checks if some custom properties have been set for this regexp.\n *\n * @param {RandExp} randexp\n * @param {RegExp} regexp\n */\n _setDefaults(regexp) {\n // When a repetitional token has its max set to Infinite,\n // randexp won't actually generate a random amount between min and Infinite\n // instead it will see Infinite as min + 100.\n this.max = regexp.max != null ? regexp.max :\n RandExp.prototype.max != null ? RandExp.prototype.max : 100;\n\n // This allows expanding to include additional characters\n // for instance: RandExp.defaultRange.add(0, 65535);\n this.defaultRange = regexp.defaultRange ?\n regexp.defaultRange : this.defaultRange.clone();\n\n if (regexp.randInt) {\n this.randInt = regexp.randInt;\n }\n }\n\n\n /**\n * Generates the random string.\n *\n * @return {String}\n */\n gen() {\n return this._gen(this.tokens, []);\n }\n\n\n /**\n * Generate random string modeled after given tokens.\n *\n * @param {Object} token\n * @param {Array.<String>} groups\n * @return {String}\n */\n _gen(token, groups) {\n var stack, str, n, i, l;\n\n switch (token.type) {\n case types.ROOT:\n case types.GROUP:\n // Ignore lookaheads for now.\n if (token.followedBy || token.notFollowedBy) { return ''; }\n\n // Insert placeholder until group string is generated.\n if (token.remember && token.groupNumber === undefined) {\n token.groupNumber = groups.push(null) - 1;\n }\n\n stack = token.options ?\n this._randSelect(token.options) : token.stack;\n\n str = '';\n for (i = 0, l = stack.length; i < l; i++) {\n str += this._gen(stack[i], groups);\n }\n\n if (token.remember) {\n groups[token.groupNumber] = str;\n }\n return str;\n\n case types.POSITION:\n // Do nothing for now.\n return '';\n\n case types.SET:\n var expandedSet = this._expand(token);\n if (!expandedSet.length) { return ''; }\n return String.fromCharCode(this._randSelect(expandedSet));\n\n case types.REPETITION:\n // Randomly generate number between min and max.\n n = this.randInt(token.min,\n token.max === Infinity ? token.min + this.max : token.max);\n\n str = '';\n for (i = 0; i < n; i++) {\n str += this._gen(token.value, groups);\n }\n\n return str;\n\n case types.REFERENCE:\n return groups[token.value - 1] || '';\n\n case types.CHAR:\n var code = this.ignoreCase && this._randBool() ?\n this._toOtherCase(token.value) : token.value;\n return String.fromCharCode(code);\n }\n }\n\n\n /**\n * If code is alphabetic, converts to other case.\n * If not alphabetic, returns back code.\n *\n * @param {Number} code\n * @return {Number}\n */\n _toOtherCase(code) {\n return code + (97 <= code && code <= 122 ? -32 :\n 65 <= code && code <= 90 ? 32 : 0);\n }\n\n\n /**\n * Randomly returns a true or false value.\n *\n * @return {Boolean}\n */\n _randBool() {\n return !this.randInt(0, 1);\n }\n\n\n /**\n * Randomly selects and returns a value from the array.\n *\n * @param {Array.<Object>} arr\n * @return {Object}\n */\n _randSelect(arr) {\n if (arr instanceof DRange) {\n return arr.index(this.randInt(0, arr.length - 1));\n }\n return arr[this.randInt(0, arr.length - 1)];\n }\n\n\n /**\n * expands a token to a DiscontinuousRange of characters which has a\n * length and an index function (for random selecting)\n *\n * @param {Object} token\n * @return {DiscontinuousRange}\n */\n _expand(token) {\n if (token.type === ret.types.CHAR) {\n return new DRange(token.value);\n } else if (token.type === ret.types.RANGE) {\n return new DRange(token.from, token.to);\n } else {\n let drange = new DRange();\n for (let i = 0; i < token.set.length; i++) {\n let subrange = this._expand(token.set[i]);\n drange.add(subrange);\n if (this.ignoreCase) {\n for (let j = 0; j < subrange.length; j++) {\n let code = subrange.index(j);\n let otherCaseCode = this._toOtherCase(code);\n if (code !== otherCaseCode) {\n drange.add(otherCaseCode);\n }\n }\n }\n }\n if (token.not) {\n return this.defaultRange.clone().subtract(drange);\n } else {\n return this.defaultRange.clone().intersect(drange);\n }\n }\n }\n\n\n /**\n * Randomly generates and returns a number between a and b (inclusive).\n *\n * @param {Number} a\n * @param {Number} b\n * @return {Number}\n */\n randInt(a, b) {\n return a + Math.floor(Math.random() * (1 + b - a));\n }\n\n\n /**\n * Default range of characters to generate from.\n */\n get defaultRange() {\n return this._range = this._range || new DRange(32, 126);\n }\n\n set defaultRange(range) {\n this._range = range;\n }\n\n\n /**\n *\n * Enables use of randexp with a shorter call.\n *\n * @param {RegExp|String| regexp}\n * @param {String} m\n * @return {String}\n */\n static randexp(regexp, m) {\n var randexp;\n if(typeof regexp === 'string') {\n regexp = new RegExp(regexp, m);\n }\n\n if (regexp._randexp === undefined) {\n randexp = new RandExp(regexp, m);\n regexp._randexp = randexp;\n } else {\n randexp = regexp._randexp;\n randexp._setDefaults(regexp);\n }\n return randexp.gen();\n }\n\n\n /**\n * Enables sugary /regexp/.gen syntax.\n */\n static sugar() {\n /* eshint freeze:false */\n RegExp.prototype.gen = function() {\n return RandExp.randexp(this);\n };\n }\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["types","ROOT","GROUP","POSITION","SET","RANGE","REPETITION","REFERENCE","CHAR","require$$0","INTS","type","from","to","WORDS","value","concat","WHITESPACE","NOTANYCHAR","sets","words","set","not","notWords","ints","notInts","whitespace","notWhitespace","anyChar","require$$1","CTRL","SLSH","t","n","v","f","r","exports","strToChars","str","chars_regex","replace","s","b","lbs","a16","b16","c8","dctrl","eslsh","code","parseInt","indexOf","c","String","fromCharCode","test","tokenizeClass","regexpStr","tokens","regexp","rs","exec","push","charCodeAt","lastIndex","error","msg","SyntaxError","positions","wordBoundary","nonWordBoundary","begin","end","util","require$$2","require$$3","libModule","i","l","start","stack","lastGroup","last","groupStack","repeatErr","length","classTokens","slice","group","remember","followedBy","notFollowedBy","pop","options","min","max","Infinity","SubRange","constructor","low","high","this","overlaps","range","touches","add","Math","subtract","toString","DRange$1","DRange","a","ranges","_update_length","reduce","previous","_add","subrange","newRanges","forEach","_subtract","intersect","_intersect","index","join","clone","numbers","result","subranges","map","lib","ret","randexp","RandExp","m","_setDefaults","RegExp","ignoreCase","multiline","source","Error","prototype","defaultRange","randInt","gen","_gen","token","groups","groupNumber","undefined","_randSelect","expandedSet","_expand","_randBool","_toOtherCase","arr","drange","j","otherCaseCode","floor","random","_range","_randexp","sugar","ALPHABETS","boolean","integer","bigint","BigInt","Number","number","string","Array","fill","array","closure","count","_e","pick","pattern","regex","byte","password","uuid","email","hostname","idnEmail","idnHostname","iri","url","iriReference","ipv4","ipv6","uri","uriReference","uriTemplate","datetime","Date","now","DAY","toISOString","date","substring","time","duration","period","durate","jsonPointer","relativeJsonPointer","elements","filter","_unit","unit","$every","pred","TypeGuardError","props","super","message","method","path","expected","proto","Object","setPrototypeOf","__proto__","$guard","exceptionable","factory","$join","variable","JSON","stringify","reserved","RESERVED","has","Set","$report","reportable","exceptable","$is_between","minimum","maximum","$is_bigint_string","is","is_between","is_bigint_string","functionalAssert","errorFactory","p","$number","isFinite","$rest","$string","len","point","$tail","$throws","tail","rest","throws","input","File","toNumber","toBigint","alternative","blob","Blob","file","isNaN","params","URLSearchParams","formData","$FormDataReader","headers","$HeadersReader","parameter","$ParameterReader","query","$QueryReader","capitalize","toUpperCase","snake","indexes","prev","splice","toLowerCase","first","camel","unsnake","pascal","escaper","prefix","ch","prevFirst","prevLength","piece","StringUtil.capitalize","$convention","rename","main","isArray","Boolean","valueOf","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigUint64Array","Int8Array","Int16Array","Int32Array","BigInt64Array","Float32Array","Float64Array","DataView","object","fromEntries","entries","key","base","any","NamingConvention.camel","NamingConvention.pascal","NamingConvention.snake","$clone","parse","$any","val","prune","$ProtobufReader","buf","ptr","view","buffer","byteOffset","byteLength","size","uint32","varint32","int32","sint32","uint64","varint64","int64","sint64","N01","bool","float","getFloat32","double","getFloat64","bytes","subarray","utf8","decode","skip","u8","skipType","wireType","loaded","u8n","N7F","N80","asIntN","getUint8","TextDecoder","$strlen","$ProtobufSizer","pos","varlen","varlenidx","_value","fork","ldelim","endPos","startPos","idx","reset","asUintN","NX7F","ND07","$ProtobufWriter","sizer","variant32","variant64","ND01","ND63","setFloat32","setFloat64","binary","encode","finish","NX80","TextEncoder","Reader","Sizer","Writer","strlen","assert","every","guard","predicate","matched","validate","report","res","success","errorList","errors","generator","RandomGenerator","assertFunction","halt","assertFunctionPure","assign","Namespace.assert","Namespace.functional.functionalAssert","assertParametersPure","assertReturn","assertReturnPure","assertEqualsFunction","assertEqualsFunctionPure","assertEqualsParameters","assertEqualsParametersPure","assertEqualsReturn","assertEqualsReturnPure","isFunction","isFunctionPure","Namespace.is","isParameters","isParametersPure","isReturn","isReturnPure","equalsFunction","equalsFunctionPure","equalsParameters","equalsParametersPure","equalsReturn","equalsReturnPure","validateFunction","validateFunctionPure","Namespace.validate","validateParameters","validateParametersPure","validateReturn","validateReturnPure","validateEqualsFunction","validateEqualsFunctionPure","validateEqualsParameters","validateEqualsParametersPure","validateEqualsReturn","validateEqualsReturnPure","name","formDataPure","Namespace.http.formData","assertFormData","assertFormDataPure","isFormData","isFormDataPure","validateFormData","validateFormDataPure","queryPure","Namespace.http.query","assertQuery","assertQueryPure","isQuery","isQueryPure","validateQuery","validateQueryPure","headersPure","Namespace.http.headers","assertHeaders","assertHeadersPure","isHeaders","isHeadersPure","validateHeaders","validateHeadersPure","parameterPure","Namespace.http.parameter","createFormData","createFormDataPure","createAssertFormData","createAssertFormDataPure","createIsFormData","createIsFormDataPure","createValidateFormData","createValidateFormDataPure","createQuery","createQueryPure","createAssertQuery","createAssertQueryPure","createIsQuery","createIsQueryPure","createValidateQuery","createValidateQueryPure","createHeaders","createHeadersPure","createAssertHeaders","createAssertHeadersPure","createIsHeaders","createIsHeadersPure","createValidateHeaders","createValidateHeadersPure","createParameter","createParameterPure","application","assertParse","assertParsePure","isParse","isParsePure","validateParse","validateParsePure","stringifyPure","Namespace.json.stringify","assertStringify","assertStringifyPure","isStringify","isStringifyPure","validateStringify","validateStringifyPure","createIsParse","createIsParsePure","createAssertParse","createAssertParsePure","createValidateParse","createValidateParsePure","createStringify","createStringifyPure","createAssertStringify","createAssertStringifyPure","createIsStringify","createIsStringifyPure","createValidateStringify","createValidateStringifyPure","literals","clonePure","Namespace.misc.clone","assertClone","assertClonePure","isClone","isClonePure","validateClone","validateClonePure","prunePure","Namespace.misc.prune","assertPrune","assertPrunePure","isPrune","isPrunePure","validatePrune","validatePrunePure","createClone","createClonePure","createAssertClone","createAssertClonePure","createIsClone","createIsClonePure","createValidateClone","createValidateClonePure","createPrune","createPrunePure","createAssertPrune","createAssertPrunePure","createIsPrune","createIsPrunePure","createValidatePrune","createValidatePrunePure","camelPure","Namespace.notations.camel","assertCamel","assertCamelPure","isCamel","isCamelPure","validateCamel","validateCamelPure","pascalPure","Namespace.notations.pascal","assertPascal","assertPascalPure","isPascal","isPascalPure","validatePascal","validatePascalPure","snakePure","Namespace.notations.snake","assertSnake","assertSnakePure","isSnake","isSnakePure","validateSnake","validateSnakePure","createCamel","createCamelPure","createAssertCamel","createAssertCamelPure","createIsCamel","createIsCamelPure","createValidateCamel","createValidateCamelPure","createPascal","createPascalPure","createAssertPascal","createAssertPascalPure","createIsPascal","createIsPascalPure","createValidatePascal","createValidatePascalPure","createSnake","createSnakePure","createAssertSnake","createAssertSnakePure","createIsSnake","createIsSnakePure","createValidateSnake","createValidateSnakePure","decodePure","Namespace.protobuf.decode","assertDecode","assertDecodePure","isDecode","isDecodePure","validateDecode","validateDecodePure","encodePure","Namespace.protobuf.encode","assertEncode","assertEncodePure","isEncode","isEncodePure","validateEncode","validateEncodePure","createDecode","createDecodePure","createIsDecode","createIsDecodePure","createAssertDecode","createAssertDecodePure","createValidateDecode","createValidateDecodePure","createEncode","createEncodePure","createIsEncode","createIsEncodePure","createAssertEncode","createAssertEncodePure","createValidateEncode","createValidateEncodePure","metadata","metadataPure","assertPure","assertGuard","assertGuardPure","isPure","validatePure","assertEquals","assertEqualsPure","assertGuardEquals","assertGuardEqualsPure","equals","equalsPure","validateEquals","validateEqualsPure","randomPure","Namespace.random","createAssert","createAssertPure","createAssertGuard","createAssertGuardPure","createIs","createIsPure","createValidate","createValidatePure","createAssertEquals","createAssertEqualsPure","createAssertGuardEquals","createAssertGuardEqualsPure","createEquals","createEqualsPure","createValidateEquals","createValidateEqualsPure","createRandom","createRandomPure"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6]}
|
package/lib/reflect.d.ts
CHANGED
|
@@ -33,3 +33,5 @@ declare function metadata(): never;
|
|
|
33
33
|
declare function metadata<Types extends unknown[]>(): IMetadataApplication;
|
|
34
34
|
declare const metadataPure: typeof metadata;
|
|
35
35
|
export { metadataPure as metadata };
|
|
36
|
+
export declare function name<T, Regular extends boolean = false>(): string;
|
|
37
|
+
export declare function name(): never;
|
package/lib/reflect.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.metadata = void 0;
|
|
3
|
+
exports.name = exports.metadata = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* @internal
|
|
6
6
|
*/
|
|
@@ -9,6 +9,10 @@ function metadata() {
|
|
|
9
9
|
}
|
|
10
10
|
var metadataPure = /** @__PURE__ */ Object.assign(metadata, { from: function (input) { return input; } });
|
|
11
11
|
exports.metadata = metadataPure;
|
|
12
|
+
function name() {
|
|
13
|
+
halt("name");
|
|
14
|
+
}
|
|
15
|
+
exports.name = name;
|
|
12
16
|
/**
|
|
13
17
|
* @internal
|
|
14
18
|
*/
|
package/lib/reflect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reflect.js","sourceRoot":"","sources":["../src/reflect.ts"],"names":[],"mappings":";;;AAoCA;;GAEG;AACH,SAAS,QAAQ;IACf,IAAI,CAAC,UAAU,CAAC,CAAC;AACnB,CAAC;AAED,IAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CACjD,QAAQ,EACR,EAAE,IAAI,EAAE,UAAC,KAAc,IAAK,OAAA,KAAK,EAAL,CAAK,EAAE,CACpC,CAAC;AACuB,gCAAQ;
|
|
1
|
+
{"version":3,"file":"reflect.js","sourceRoot":"","sources":["../src/reflect.ts"],"names":[],"mappings":";;;AAoCA;;GAEG;AACH,SAAS,QAAQ;IACf,IAAI,CAAC,UAAU,CAAC,CAAC;AACnB,CAAC;AAED,IAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CACjD,QAAQ,EACR,EAAE,IAAI,EAAE,UAAC,KAAc,IAAK,OAAA,KAAK,EAAL,CAAK,EAAE,CACpC,CAAC;AACuB,gCAAQ;AAIjC,SAAgB,IAAI;IAClB,IAAI,CAAC,MAAM,CAAC,CAAC;AACf,CAAC;AAFD,oBAEC;AAED;;GAEG;AACH,SAAS,IAAI,CAAC,IAAY;IACxB,MAAM,IAAI,KAAK,CACb,iCAA0B,IAAI,8FAA2F,CAC1H,CAAC;AACJ,CAAC"}
|
|
@@ -108,6 +108,7 @@ var ProtobufMessageTransformer_1 = require("./features/protobuf/ProtobufMessageT
|
|
|
108
108
|
var ProtobufValidateDecodeTransformer_1 = require("./features/protobuf/ProtobufValidateDecodeTransformer");
|
|
109
109
|
var ProtobufValidateEncodeTransformer_1 = require("./features/protobuf/ProtobufValidateEncodeTransformer");
|
|
110
110
|
var ReflectMetadataTransformer_1 = require("./features/reflect/ReflectMetadataTransformer");
|
|
111
|
+
var ReflectNameTransformer_1 = require("./features/reflect/ReflectNameTransformer");
|
|
111
112
|
var CallExpressionTransformer;
|
|
112
113
|
(function (CallExpressionTransformer) {
|
|
113
114
|
CallExpressionTransformer.transform = function (project) {
|
|
@@ -169,7 +170,9 @@ var FUNCTORS = {
|
|
|
169
170
|
validateEquals: function () { return ValidateTransformer_1.ValidateTransformer.transform(true); },
|
|
170
171
|
// RANDOM + INTERNAL
|
|
171
172
|
random: function () { return RandomTransformer_1.RandomTransformer.transform; },
|
|
172
|
-
metadata: function () { return
|
|
173
|
+
metadata: function () { return function (project) { return function () {
|
|
174
|
+
return ReflectMetadataTransformer_1.ReflectMetadataTransformer.transform(project);
|
|
175
|
+
}; }; },
|
|
173
176
|
// FACTORIES
|
|
174
177
|
createAssert: function () {
|
|
175
178
|
return CreateAssertTransformer_1.CreateAssertTransformer.transform({ equals: false, guard: false });
|
|
@@ -409,7 +412,10 @@ var FUNCTORS = {
|
|
|
409
412
|
},
|
|
410
413
|
},
|
|
411
414
|
reflect: {
|
|
412
|
-
metadata: function () { return
|
|
415
|
+
metadata: function () { return function (project) { return function () {
|
|
416
|
+
return ReflectMetadataTransformer_1.ReflectMetadataTransformer.transform(project);
|
|
417
|
+
}; }; },
|
|
418
|
+
name: function () { return function (project) { return function () { return ReflectNameTransformer_1.ReflectNameTransformer.transform(project); }; }; },
|
|
413
419
|
},
|
|
414
420
|
misc: {
|
|
415
421
|
literals: function () { return function (project) { return function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CallExpressionTransformer.js","sourceRoot":"","sources":["../../src/transformers/CallExpressionTransformer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CallExpressionTransformer.js","sourceRoot":"","sources":["../../src/transformers/CallExpressionTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
import ts from "typescript";
|
|
3
3
|
import { IProject } from "../../IProject";
|
|
4
4
|
export declare namespace ReflectMetadataTransformer {
|
|
5
|
-
const transform: (project: IProject) => (
|
|
5
|
+
const transform: (project: IProject) => (expression: ts.CallExpression) => ts.Expression;
|
|
6
6
|
}
|
|
@@ -12,48 +12,46 @@ var TransformerError_1 = require("../../TransformerError");
|
|
|
12
12
|
var ReflectMetadataTransformer;
|
|
13
13
|
(function (ReflectMetadataTransformer) {
|
|
14
14
|
ReflectMetadataTransformer.transform = function (project) {
|
|
15
|
-
return function (
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
message: "no generic argument.",
|
|
22
|
-
});
|
|
23
|
-
// VALIDATE TUPLE ARGUMENTS
|
|
24
|
-
var top = expression.typeArguments[0];
|
|
25
|
-
if (!typescript_1.default.isTupleTypeNode(top))
|
|
26
|
-
return expression;
|
|
27
|
-
else if (top.elements.some(function (child) { return !typescript_1.default.isTypeNode(child); }))
|
|
28
|
-
return expression;
|
|
29
|
-
// GET TYPES
|
|
30
|
-
var types = top.elements.map(function (child) {
|
|
31
|
-
return project.checker.getTypeFromTypeNode(child);
|
|
15
|
+
return function (expression) {
|
|
16
|
+
var _a;
|
|
17
|
+
if (!((_a = expression.typeArguments) === null || _a === void 0 ? void 0 : _a.length))
|
|
18
|
+
throw new TransformerError_1.TransformerError({
|
|
19
|
+
code: "typia.reflect.metadata",
|
|
20
|
+
message: "no generic argument.",
|
|
32
21
|
});
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
throw TransformerError_1.TransformerError.from("typia.reflect.metadata")(result.errors);
|
|
48
|
-
return result.data;
|
|
22
|
+
// VALIDATE TUPLE ARGUMENTS
|
|
23
|
+
var top = expression.typeArguments[0];
|
|
24
|
+
if (!typescript_1.default.isTupleTypeNode(top))
|
|
25
|
+
return expression;
|
|
26
|
+
else if (top.elements.some(function (child) { return !typescript_1.default.isTypeNode(child); }))
|
|
27
|
+
return expression;
|
|
28
|
+
// GET TYPES
|
|
29
|
+
var types = top.elements.map(function (child) {
|
|
30
|
+
return project.checker.getTypeFromTypeNode(child);
|
|
31
|
+
});
|
|
32
|
+
if (types.some(function (t) { return t.isTypeParameter(); }))
|
|
33
|
+
throw new TransformerError_1.TransformerError({
|
|
34
|
+
code: "typia.reflect.metadata",
|
|
35
|
+
message: "non-specified generic argument(s).",
|
|
49
36
|
});
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
37
|
+
// METADATA
|
|
38
|
+
var collection = new MetadataCollection_1.MetadataCollection();
|
|
39
|
+
var metadatas = types.map(function (type) {
|
|
40
|
+
var result = MetadataFactory_1.MetadataFactory.analyze(project.checker, project.context)({
|
|
41
|
+
escape: true,
|
|
42
|
+
constant: true,
|
|
43
|
+
absorb: true,
|
|
44
|
+
})(collection)(type);
|
|
45
|
+
if (result.success === false)
|
|
46
|
+
throw TransformerError_1.TransformerError.from("typia.reflect.metadata")(result.errors);
|
|
47
|
+
return result.data;
|
|
48
|
+
});
|
|
49
|
+
// CONVERT TO PRIMITIVE TYPE
|
|
50
|
+
var app = {
|
|
51
|
+
metadatas: metadatas.map(function (metadata) { return metadata.toJSON(); }),
|
|
52
|
+
components: collection.toJSON(),
|
|
56
53
|
};
|
|
54
|
+
return LiteralFactory_1.LiteralFactory.generate(app);
|
|
57
55
|
};
|
|
58
56
|
};
|
|
59
57
|
})(ReflectMetadataTransformer || (exports.ReflectMetadataTransformer = ReflectMetadataTransformer = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReflectMetadataTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/reflect/ReflectMetadataTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,4EAA2E;AAC3E,sEAAqE;AAMrE,2DAA0D;AAE1D,IAAiB,0BAA0B,
|
|
1
|
+
{"version":3,"file":"ReflectMetadataTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/reflect/ReflectMetadataTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,4EAA2E;AAC3E,sEAAqE;AAMrE,2DAA0D;AAE1D,IAAiB,0BAA0B,CAiD1C;AAjDD,WAAiB,0BAA0B;IAC5B,oCAAS,GACpB,UAAC,OAAiB;QAClB,OAAA,UAAC,UAA6B;;YAC5B,IAAI,CAAC,CAAA,MAAA,UAAU,CAAC,aAAa,0CAAE,MAAM,CAAA;gBACnC,MAAM,IAAI,mCAAgB,CAAC;oBACzB,IAAI,EAAE,wBAAwB;oBAC9B,OAAO,EAAE,sBAAsB;iBAChC,CAAC,CAAC;YAEL,2BAA2B;YAC3B,IAAM,GAAG,GAAY,UAAU,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC;YAClD,IAAI,CAAC,oBAAE,CAAC,eAAe,CAAC,GAAG,CAAC;gBAAE,OAAO,UAAU,CAAC;iBAC3C,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,oBAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAArB,CAAqB,CAAC;gBAC1D,OAAO,UAAU,CAAC;YAEpB,YAAY;YACZ,IAAM,KAAK,GAAc,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,KAAK;gBAC9C,OAAA,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAoB,CAAC;YAAzD,CAAyD,CAC1D,CAAC;YACF,IAAI,KAAK,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,eAAe,EAAE,EAAnB,CAAmB,CAAC;gBACxC,MAAM,IAAI,mCAAgB,CAAC;oBACzB,IAAI,EAAE,wBAAwB;oBAC9B,OAAO,EAAE,oCAAoC;iBAC9C,CAAC,CAAC;YAEL,WAAW;YACX,IAAM,UAAU,GAAuB,IAAI,uCAAkB,EAAE,CAAC;YAChE,IAAM,SAAS,GAAoB,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI;gBAChD,IAAM,MAAM,GAAG,iCAAe,CAAC,OAAO,CACpC,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;oBACA,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,IAAI;iBACb,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;gBACrB,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;oBAC1B,MAAM,mCAAgB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACvE,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,4BAA4B;YAC5B,IAAM,GAAG,GAAyB;gBAChC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,UAAC,QAAQ,IAAK,OAAA,QAAQ,CAAC,MAAM,EAAE,EAAjB,CAAiB,CAAC;gBACzD,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE;aAChC,CAAC;YACF,OAAO,+BAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;IA7CD,CA6CC,CAAC;AACN,CAAC,EAjDgB,0BAA0B,0CAA1B,0BAA0B,QAiD1C"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/// <reference types="ts-expose-internals/typescript" />
|
|
2
|
+
import ts from "typescript";
|
|
3
|
+
import { IProject } from "../../IProject";
|
|
4
|
+
export declare namespace ReflectNameTransformer {
|
|
5
|
+
const transform: (project: IProject) => (expression: ts.CallExpression) => ts.Expression;
|
|
6
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ReflectNameTransformer = void 0;
|
|
7
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
var MetadataCollection_1 = require("../../../factories/MetadataCollection");
|
|
9
|
+
var MetadataFactory_1 = require("../../../factories/MetadataFactory");
|
|
10
|
+
var TransformerError_1 = require("../../TransformerError");
|
|
11
|
+
var ReflectNameTransformer;
|
|
12
|
+
(function (ReflectNameTransformer) {
|
|
13
|
+
ReflectNameTransformer.transform = function (project) {
|
|
14
|
+
return function (expression) {
|
|
15
|
+
var _a;
|
|
16
|
+
if (!((_a = expression.typeArguments) === null || _a === void 0 ? void 0 : _a.length))
|
|
17
|
+
throw new TransformerError_1.TransformerError({
|
|
18
|
+
code: "typia.reflect.metadata",
|
|
19
|
+
message: "no generic argument.",
|
|
20
|
+
});
|
|
21
|
+
var top = expression.typeArguments[0];
|
|
22
|
+
var regular = (function () {
|
|
23
|
+
// CHECK SECOND ARGUMENT EXISTENCE
|
|
24
|
+
var second = expression.typeArguments[1];
|
|
25
|
+
if (second === undefined)
|
|
26
|
+
return false;
|
|
27
|
+
// GET BOOELAN VALUE
|
|
28
|
+
var value = getMetadata(project)(second);
|
|
29
|
+
return value.size() === 1 &&
|
|
30
|
+
value.constants.length === 1 &&
|
|
31
|
+
value.constants[0].type === "boolean" &&
|
|
32
|
+
value.constants[0].values.length === 1
|
|
33
|
+
? value.constants[0].values[0].value
|
|
34
|
+
: false;
|
|
35
|
+
})();
|
|
36
|
+
// RETURNS NAME
|
|
37
|
+
return typescript_1.default.factory.createStringLiteral(regular ? getMetadata(project)(top).getName() : top.getFullText());
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
})(ReflectNameTransformer || (exports.ReflectNameTransformer = ReflectNameTransformer = {}));
|
|
41
|
+
var getMetadata = function (project) {
|
|
42
|
+
return function (node) {
|
|
43
|
+
var type = project.checker.getTypeFromTypeNode(node);
|
|
44
|
+
var collection = new MetadataCollection_1.MetadataCollection({
|
|
45
|
+
replace: MetadataCollection_1.MetadataCollection.replace,
|
|
46
|
+
});
|
|
47
|
+
var result = MetadataFactory_1.MetadataFactory.analyze(project.checker, project.context)({
|
|
48
|
+
escape: false,
|
|
49
|
+
constant: true,
|
|
50
|
+
absorb: false,
|
|
51
|
+
})(collection)(type);
|
|
52
|
+
if (result.success === false)
|
|
53
|
+
throw TransformerError_1.TransformerError.from("typia.reflect.name")(result.errors);
|
|
54
|
+
return result.data;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=ReflectNameTransformer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReflectNameTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/reflect/ReflectNameTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,4EAA2E;AAC3E,sEAAqE;AAOrE,2DAA0D;AAE1D,IAAiB,sBAAsB,CA8BtC;AA9BD,WAAiB,sBAAsB;IACxB,gCAAS,GACpB,UAAC,OAAiB;QAClB,OAAA,UAAC,UAA6B;;YAC5B,IAAI,CAAC,CAAA,MAAA,UAAU,CAAC,aAAa,0CAAE,MAAM,CAAA;gBACnC,MAAM,IAAI,mCAAgB,CAAC;oBACzB,IAAI,EAAE,wBAAwB;oBAC9B,OAAO,EAAE,sBAAsB;iBAChC,CAAC,CAAC;YACL,IAAM,GAAG,GAAY,UAAU,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC;YAClD,IAAM,OAAO,GAAY,CAAC;gBACxB,kCAAkC;gBAClC,IAAM,MAAM,GAAwB,UAAU,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC;gBACjE,IAAI,MAAM,KAAK,SAAS;oBAAE,OAAO,KAAK,CAAC;gBAEvC,oBAAoB;gBACpB,IAAM,KAAK,GAAa,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;gBACrD,OAAO,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;oBACvB,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;oBAC5B,KAAK,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,IAAI,KAAK,SAAS;oBACtC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;oBACvC,CAAC,CAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,KAAiB;oBACnD,CAAC,CAAC,KAAK,CAAC;YACZ,CAAC,CAAC,EAAE,CAAC;YAEL,eAAe;YACf,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CACnC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAClE,CAAC;QACJ,CAAC;IA1BD,CA0BC,CAAC;AACN,CAAC,EA9BgB,sBAAsB,sCAAtB,sBAAsB,QA8BtC;AAED,IAAM,WAAW,GACf,UAAC,OAAiB;IAClB,OAAA,UAAC,IAAa;QACZ,IAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,mBAAmB,CACvD,IAAmB,CACpB,CAAC;QACF,IAAM,UAAU,GAAuB,IAAI,uCAAkB,CAAC;YAC5D,OAAO,EAAE,uCAAkB,CAAC,OAAO;SACpC,CAAC,CAAC;QACH,IAAM,MAAM,GACV,iCAAe,CAAC,OAAO,CACrB,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;YACA,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,KAAK;SACd,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;YAC1B,MAAM,mCAAgB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;AAnBD,CAmBC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "typia",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.3.0-dev.20240624",
|
|
4
4
|
"description": "Superfast runtime validators with only one line",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"randexp": "^0.5.3"
|
|
75
75
|
},
|
|
76
76
|
"peerDependencies": {
|
|
77
|
-
"typescript": ">=4.8.0 <5.
|
|
77
|
+
"typescript": ">=4.8.0 <5.5.0"
|
|
78
78
|
},
|
|
79
79
|
"devDependencies": {
|
|
80
80
|
"@rollup/plugin-commonjs": "^26.0.1",
|
package/src/reflect.ts
CHANGED
|
@@ -47,6 +47,12 @@ const metadataPure = /** @__PURE__ */ Object.assign<typeof metadata, {}>(
|
|
|
47
47
|
);
|
|
48
48
|
export { metadataPure as metadata };
|
|
49
49
|
|
|
50
|
+
export function name<T, Regular extends boolean = false>(): string;
|
|
51
|
+
export function name(): never;
|
|
52
|
+
export function name(): never {
|
|
53
|
+
halt("name");
|
|
54
|
+
}
|
|
55
|
+
|
|
50
56
|
/**
|
|
51
57
|
* @internal
|
|
52
58
|
*/
|
|
@@ -107,6 +107,7 @@ import { ProtobufMessageTransformer } from "./features/protobuf/ProtobufMessageT
|
|
|
107
107
|
import { ProtobufValidateDecodeTransformer } from "./features/protobuf/ProtobufValidateDecodeTransformer";
|
|
108
108
|
import { ProtobufValidateEncodeTransformer } from "./features/protobuf/ProtobufValidateEncodeTransformer";
|
|
109
109
|
import { ReflectMetadataTransformer } from "./features/reflect/ReflectMetadataTransformer";
|
|
110
|
+
import { ReflectNameTransformer } from "./features/reflect/ReflectNameTransformer";
|
|
110
111
|
|
|
111
112
|
export namespace CallExpressionTransformer {
|
|
112
113
|
export const transform =
|
|
@@ -179,7 +180,8 @@ const FUNCTORS: Record<string, Record<string, () => Task>> = {
|
|
|
179
180
|
|
|
180
181
|
// RANDOM + INTERNAL
|
|
181
182
|
random: () => RandomTransformer.transform,
|
|
182
|
-
metadata: () =>
|
|
183
|
+
metadata: () => (project) => () =>
|
|
184
|
+
ReflectMetadataTransformer.transform(project),
|
|
183
185
|
|
|
184
186
|
// FACTORIES
|
|
185
187
|
createAssert: () =>
|
|
@@ -405,7 +407,9 @@ const FUNCTORS: Record<string, Record<string, () => Task>> = {
|
|
|
405
407
|
ProtobufCreateValidateDecodeTransformer.transform,
|
|
406
408
|
},
|
|
407
409
|
reflect: {
|
|
408
|
-
metadata: () =>
|
|
410
|
+
metadata: () => (project) => () =>
|
|
411
|
+
ReflectMetadataTransformer.transform(project),
|
|
412
|
+
name: () => (project) => () => ReflectNameTransformer.transform(project),
|
|
409
413
|
},
|
|
410
414
|
misc: {
|
|
411
415
|
literals: () => (project) => () =>
|
|
@@ -13,11 +13,10 @@ import { TransformerError } from "../../TransformerError";
|
|
|
13
13
|
export namespace ReflectMetadataTransformer {
|
|
14
14
|
export const transform =
|
|
15
15
|
(project: IProject) =>
|
|
16
|
-
(_modulo: ts.LeftHandSideExpression) =>
|
|
17
16
|
(expression: ts.CallExpression): ts.Expression => {
|
|
18
17
|
if (!expression.typeArguments?.length)
|
|
19
18
|
throw new TransformerError({
|
|
20
|
-
code: "typia.metadata",
|
|
19
|
+
code: "typia.reflect.metadata",
|
|
21
20
|
message: "no generic argument.",
|
|
22
21
|
});
|
|
23
22
|
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
|
|
3
|
+
import { MetadataCollection } from "../../../factories/MetadataCollection";
|
|
4
|
+
import { MetadataFactory } from "../../../factories/MetadataFactory";
|
|
5
|
+
|
|
6
|
+
import { Metadata } from "../../../schemas/metadata/Metadata";
|
|
7
|
+
|
|
8
|
+
import { ValidationPipe } from "../../../typings/ValidationPipe";
|
|
9
|
+
|
|
10
|
+
import { IProject } from "../../IProject";
|
|
11
|
+
import { TransformerError } from "../../TransformerError";
|
|
12
|
+
|
|
13
|
+
export namespace ReflectNameTransformer {
|
|
14
|
+
export const transform =
|
|
15
|
+
(project: IProject) =>
|
|
16
|
+
(expression: ts.CallExpression): ts.Expression => {
|
|
17
|
+
if (!expression.typeArguments?.length)
|
|
18
|
+
throw new TransformerError({
|
|
19
|
+
code: "typia.reflect.metadata",
|
|
20
|
+
message: "no generic argument.",
|
|
21
|
+
});
|
|
22
|
+
const top: ts.Node = expression.typeArguments[0]!;
|
|
23
|
+
const regular: boolean = (() => {
|
|
24
|
+
// CHECK SECOND ARGUMENT EXISTENCE
|
|
25
|
+
const second: ts.Node | undefined = expression.typeArguments[1]!;
|
|
26
|
+
if (second === undefined) return false;
|
|
27
|
+
|
|
28
|
+
// GET BOOELAN VALUE
|
|
29
|
+
const value: Metadata = getMetadata(project)(second);
|
|
30
|
+
return value.size() === 1 &&
|
|
31
|
+
value.constants.length === 1 &&
|
|
32
|
+
value.constants[0]!.type === "boolean" &&
|
|
33
|
+
value.constants[0]!.values.length === 1
|
|
34
|
+
? (value.constants[0]!.values[0]!.value as boolean)
|
|
35
|
+
: false;
|
|
36
|
+
})();
|
|
37
|
+
|
|
38
|
+
// RETURNS NAME
|
|
39
|
+
return ts.factory.createStringLiteral(
|
|
40
|
+
regular ? getMetadata(project)(top).getName() : top.getFullText(),
|
|
41
|
+
);
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
const getMetadata =
|
|
46
|
+
(project: IProject) =>
|
|
47
|
+
(node: ts.Node): Metadata => {
|
|
48
|
+
const type: ts.Type = project.checker.getTypeFromTypeNode(
|
|
49
|
+
node as ts.TypeNode,
|
|
50
|
+
);
|
|
51
|
+
const collection: MetadataCollection = new MetadataCollection({
|
|
52
|
+
replace: MetadataCollection.replace,
|
|
53
|
+
});
|
|
54
|
+
const result: ValidationPipe<Metadata, MetadataFactory.IError> =
|
|
55
|
+
MetadataFactory.analyze(
|
|
56
|
+
project.checker,
|
|
57
|
+
project.context,
|
|
58
|
+
)({
|
|
59
|
+
escape: false,
|
|
60
|
+
constant: true,
|
|
61
|
+
absorb: false,
|
|
62
|
+
})(collection)(type);
|
|
63
|
+
if (result.success === false)
|
|
64
|
+
throw TransformerError.from("typia.reflect.name")(result.errors);
|
|
65
|
+
return result.data;
|
|
66
|
+
};
|