@notifiles/sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +26 -0
  3. package/dist/index.modern.cjs +856 -0
  4. package/dist/index.modern.cjs.map +1 -0
  5. package/dist/index.modern.modern.js +690 -0
  6. package/dist/index.modern.modern.js.map +1 -0
  7. package/package.json +152 -0
  8. package/src/cloud/add/index.js +38 -0
  9. package/src/cloud/add/index.test.js +38 -0
  10. package/src/cloud/add/lib/validate.js +16 -0
  11. package/src/cloud/index.js +3 -0
  12. package/src/cloud/list/index.js +18 -0
  13. package/src/cloud/list/index.test.js +13 -0
  14. package/src/email/build copy/lib/perform/email.js +52 -0
  15. package/src/index.js +3 -0
  16. package/src/lib/adaptSettings.js +12 -0
  17. package/src/lib/cloudLibrary/bunny/index.js +2 -0
  18. package/src/lib/cloudLibrary/bunny/isValid.js +32 -0
  19. package/src/lib/cloudLibrary/bunny/upload.js +35 -0
  20. package/src/lib/cloudLibrary/index.js +20 -0
  21. package/src/lib/cloudLibrary/minio/index.js +4 -0
  22. package/src/lib/cloudLibrary/minio/isValid.js +33 -0
  23. package/src/lib/cloudLibrary/minio/remove.js +58 -0
  24. package/src/lib/cloudLibrary/minio/upload.js +61 -0
  25. package/src/lib/cloudLibrary/minio/uploadFolder.js +26 -0
  26. package/src/lib/entries/getAtPath.js +105 -0
  27. package/src/lib/entries/isPathEntry.js +29 -0
  28. package/src/lib/entries.js +144 -0
  29. package/src/lib/fs/checkFileExists.js +6 -0
  30. package/src/lib/fs/directoryFilesRecursive.js +83 -0
  31. package/src/lib/fs/ensureDirectoryExists.js +10 -0
  32. package/src/lib/fs/getFileCallerURL.js +12 -0
  33. package/src/lib/fs/importFileAsText.js +15 -0
  34. package/src/lib/fs/importJSONAsync.js +16 -0
  35. package/src/lib/fs/importYAMLAsync.js +14 -0
  36. package/src/lib/remark/hastToHtml.js +6 -0
  37. package/src/lib/remark/htmlToHast.js +6 -0
  38. package/src/lib/remark/htmlToMarkdown copy.js +12 -0
  39. package/src/lib/remark/htmlToMarkdown.js +23 -0
  40. package/src/lib/remark/htmlToMdast.js +13 -0
  41. package/src/lib/remark/htmlToMdast_.js +21 -0
  42. package/src/lib/remark/htmlToMdast_3.js +21 -0
  43. package/src/lib/remark/markdownToHTML.js +22 -0
  44. package/src/lib/remark/markdownToLexer.js +19 -0
  45. package/src/lib/remark/mdastToHTML.js +8 -0
  46. package/src/lib/remark/mdastToMarkdown.js +24 -0
  47. package/src/lib/remark/mdastToString.js +12 -0
  48. package/src/project/index.js +4 -0
  49. package/src/project/isProject/index.js +26 -0
  50. package/src/project/isProject/index.test.js +13 -0
  51. package/src/project/isProject/sync.js +18 -0
  52. package/src/project/lib/activity/createFileIfNeeded.js +33 -0
  53. package/src/project/lib/activity/defaultContent.json +5 -0
  54. package/src/project/lib/activity/updateToFile.js +32 -0
  55. package/src/project/lib/manifest/createFileIfNeeded.js +44 -0
  56. package/src/project/lib/manifest/read.js +21 -0
  57. package/src/project/lib/manifest/update.js +36 -0
  58. package/src/project/lib/manifest/updateToFile.js +22 -0
  59. package/src/project/new/index.js +2 -0
  60. package/src/project/new/plain.js +49 -0
  61. package/src/project/new/plain.test.js +38 -0
  62. package/src/template/build/entry.js +37 -0
  63. package/src/template/build/index.js +2 -0
  64. package/src/template/build/lib/email/index.js +100 -0
  65. package/src/template/build/lib/email/translate.js +16 -0
  66. package/src/template/build/lib/textmessage/index.js +44 -0
  67. package/src/template/build/lib/textmessage/translate.js +25 -0
  68. package/src/template/build/path.js +18 -0
  69. package/src/template/build/path.test.js +29 -0
  70. package/src/template/cloudify/entry.js +20 -0
  71. package/src/template/cloudify/index.js +2 -0
  72. package/src/template/cloudify/lib/email/attachments/addAttachment.js +24 -0
  73. package/src/template/cloudify/lib/email/attachments/index.js +137 -0
  74. package/src/template/cloudify/lib/email/attachments/treatLocalFile.js +13 -0
  75. package/src/template/cloudify/lib/email/attachments/treatRemoteFile.js +26 -0
  76. package/src/template/cloudify/lib/email/image/index.js +90 -0
  77. package/src/template/cloudify/lib/email/image/treatLocalFile.js +13 -0
  78. package/src/template/cloudify/lib/email/image/treatRemoteFile.js +26 -0
  79. package/src/template/cloudify/lib/email/index.js +77 -0
  80. package/src/template/cloudify/lib/remove.js +14 -0
  81. package/src/template/cloudify/lib/textMessage.js +9 -0
  82. package/src/template/cloudify/lib/upload.js +14 -0
  83. package/src/template/cloudify/path.js +20 -0
  84. package/src/template/cloudify/path.test.js +24 -0
  85. package/src/template/consolidate/entry.js +18 -0
  86. package/src/template/consolidate/index.js +2 -0
  87. package/src/template/consolidate/lib/email.js +63 -0
  88. package/src/template/consolidate/lib/image/index.js +35 -0
  89. package/src/template/consolidate/lib/image/treatLocalFile.js +14 -0
  90. package/src/template/consolidate/lib/image/treatRemoteFile.js +25 -0
  91. package/src/template/consolidate/lib/textMessage.js +5 -0
  92. package/src/template/consolidate/path.js +18 -0
  93. package/src/template/consolidate/path.test.js +14 -0
  94. package/src/template/format/entry.js +57 -0
  95. package/src/template/format/index.js +2 -0
  96. package/src/template/format/path.js +18 -0
  97. package/src/template/format/path.test.js +29 -0
  98. package/src/template/index.js +8 -0
  99. package/src/template/lib/activity/createFileIfNeeded.js +33 -0
  100. package/src/template/lib/activity/defaultContent.json +4 -0
  101. package/src/template/lib/activity/get.js +20 -0
  102. package/src/template/lib/activity/updateToFile.js +33 -0
  103. package/src/template/lib/manifest/createFileIfNeeded.js +41 -0
  104. package/src/template/lib/manifest/read.js +22 -0
  105. package/src/template/lib/manifest/update.js +18 -0
  106. package/src/template/lib/manifest/updateToFile.js +22 -0
  107. package/src/template/new/index.js +66 -0
  108. package/src/template/new/index.test.js +19 -0
  109. package/src/template/optimize/entry.js +18 -0
  110. package/src/template/optimize/index.js +2 -0
  111. package/src/template/optimize/lib/email.js +58 -0
  112. package/src/template/optimize/lib/image/index.js +40 -0
  113. package/src/template/optimize/lib/textMessage.js +8 -0
  114. package/src/template/optimize/path.js +18 -0
  115. package/src/template/optimize/path.test.js +16 -0
  116. package/src/template/sync/entry.js +18 -0
  117. package/src/template/sync/index.js +2 -0
  118. package/src/template/sync/lib/email.js +86 -0
  119. package/src/template/sync/lib/textMessage.js +80 -0
  120. package/src/template/sync/lib/upload.js +14 -0
  121. package/src/template/sync/path.js +18 -0
  122. package/src/template/sync/path.test.js +29 -0
  123. package/src/template/update/index.js +1 -0
  124. package/src/template/update/path.js +41 -0
  125. package/src/template/update/path.test.js +46 -0
  126. package/src/template/version/entry.js +10 -0
  127. package/src/template/version/index.js +2 -0
  128. package/src/template/version/lib/perform.js +74 -0
  129. package/src/template/version/lib/reset.js +16 -0
  130. package/src/template/version/lib/updatePost.js +16 -0
  131. package/src/template/version/path.js +20 -0
  132. package/src/template/version/path.test.js +16 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.modern.cjs","sources":["../src/commands/build/generator/prompt/validators/nonEmpty.js","../src/commands/build/generator/prompt/validators/index.js","../src/commands/build/generator/prompt/ask.js","../src/commands/build/generator/prompt/promptModule.js","../src/commands/build/generator/prompt/index.js","../src/commands/build/generator/template.js","../src/lib/getFileCallerURL.js","../src/commands/build/generator/fs.js","../src/commands/build/generator/ui.js","../src/commands/build/generator/mergeOptions.js","../src/commands/build/generator/index.js","../src/commands/build/buildCommand.js","../src/lib/formatOptionForYargs.js","../src/commands/build/index.js","../src/commands/index.js","../src/lib/checkFileExists.js","../src/lib/directoryFilesRecursive.js","../src/loadOptions/index.js","../src/launch.js"],"sourcesContent":["\nexport default async ({ input, params }) => {\n return input && input.length > 0\n}\n","import nonEmpty from \"./nonEmpty.js\"\n\nexport default a => {\n switch (a.type) {\n default:\n case 'nonEmpty': {\n return nonEmpty\n }\n }\n}\n","import getValidators from './validators/index.js'\nimport Bluebird from \"bluebird\"\nimport chalk from \"chalk\"\n\nexport default async (props) => {\n const {\n payload,\n question,\n generator,\n promptModule,\n promptType } = props\n\n let {\n name,\n message,\n defaultValue,\n validators = [{ type: 'nonEmpty' }] } = question\n\n if (!name) {\n return\n }\n\n let value = payload[name]\n if (!value && question.alias) {\n value = payload[question.alias]\n }\n const valueIsDefined = !(value === null || value === undefined)\n if (valueIsDefined) {\n generator.print.log(`${chalk.green('✓')} ${chalk.bold(message ? message : name)} ${chalk.italic(value)}`)\n return\n }\n\n const isQuick = payload['quick'] || payload['q']\n if (isQuick && valueIsDefined) {\n generator.print.log(`${chalk.green('✓')} ${chalk.bold(message ? message : name)} ${chalk.italic(value)}`)\n return\n }\n\n if (isQuick && !(defaultValue === null || defaultValue === undefined)) {\n payload[name] = defaultValue\n generator.print.log(`${chalk.green('✓')} ${chalk.bold(message ? message : name)} ${chalk.italic(payload[name])}`)\n return\n }\n\n payload[name] = (await promptModule.prompt({\n ...props.question,\n type: promptType,\n name,\n message,\n default: value ? value : defaultValue,\n validate: async input => {\n let isValid = true\n await Bluebird.Promise.mapSeries(\n validators,\n async validator => {\n\n const validate = getValidators(validator)\n if (validate) {\n const _i = await validate({ input, ...validator })\n if (!_i) {\n isValid = false\n }\n return\n }\n\n if (validate.regex) {\n const f = new RegExp(validate.regex, 'g')\n // isValid = validator.regex.test(input)\n isValid = f.test(input)\n }\n })\n if (props.question.validate) {\n isValid = props.question.validate(input)\n }\n return isValid\n }\n }))[name]\n\n return payload[name]\n}\n","import inquirer from 'inquirer'\nexport default (id) => {\n switch (id) {\n default:\n case 'inquirer':\n return inquirer\n }\n}\n","import ask from './ask.js'\nimport Bluebird from \"bluebird\"\nimport _promptModule from './promptModule.js'\n\nimport inquirerPromptAutocomplete from 'inquirer-autocomplete-prompt'\nimport inquirerFileTreeSelection from 'inquirer-file-tree-selection-prompt'\nimport inquirerParseJsonFile from 'inquirer-parse-json-file'\n\nexport default ({ generator }) => {\n\n const prompt = {\n ask: async (value) => {\n const questions = Array.isArray(value) ? value : [value]\n const result = {}\n await Bluebird.Promise.mapSeries(\n questions,\n async question => {\n let fullQuestion = {\n ...question\n }\n const items = generator.options.filter(a => a.name === question.name)\n if (items && items.length) {\n fullQuestion = {\n ...items[0],\n ...fullQuestion\n }\n }\n const { type: promptType = 'input',\n module: _f\n } = fullQuestion.prompt ? fullQuestion.prompt : {}\n\n let promptModule = _f ? _f : _promptModule()\n if (typeof promptModule === 'string') {\n promptModule = _promptModule(_f)\n }\n\n const v = await ask({\n question: fullQuestion,\n payload: generator.payload,\n generator,\n promptModule,\n promptType\n })\n\n result[question.name] = v\n return v\n })\n return result\n },\n confirm: async () => {\n\n },\n registerPrompt: (promptModule, key, module) => {\n promptModule.registerPrompt(key, module)\n }\n }\n\n const promptModule = _promptModule()\n prompt.registerPrompt(promptModule, 'autocomplete', inquirerPromptAutocomplete)\n prompt.registerPrompt(promptModule, 'file-tree-selection', inquirerFileTreeSelection)\n prompt.registerPrompt(promptModule, 'json-file', inquirerParseJsonFile)\n\n return prompt\n}\n\n","import ejs from 'ejs'\n\nexport default ({ generator }) => {\n return {\n render: (text, data) => {\n return ejs.render(text, data)\n },\n }\n}\n\n","export default () => {\n const error = new Error()\n const stack = error.stack?.split('\\n')\n const data = stack[3]\n const filePathPattern = new RegExp(`(file:[/]{2}.+[^:0-9]):{1}[0-9]+:{1}[0-9]+`)\n const result = filePathPattern.exec(data)\n let filePath = ''\n if (result && (result.length > 1)) {\n filePath = result[1]\n }\n return filePath\n}\n","import jetpack from 'fs-jetpack'\nimport fs from 'fs'\nimport getFileCallerURL from '../../../lib/getFileCallerURL.js'\nimport _path from 'path'\n\nexport default ({ generator }) => {\n\n return {\n ...jetpack,\n copy: async ({ source, destination, useRelativeCall = false }) => {\n return fs.promises.cp(source, destination)\n },\n copyTpl: async (source, destination, data) => {\n const entry = await fs.promises.readFile(source)\n const result = ejs.render(entry, data)\n await fs.promises.writeFile(destination, result)\n },\n copyFraction: async ({ source, destination, data, useRelativeCall = true }) => {\n let _source = source\n if (useRelativeCall) {\n let sou = getFileCallerURL()\n sou = _path.dirname(sou)\n sou = sou.replace('file://', '')\n _source = `${sou}/template/${_source}`\n }\n\n const re = await jetpack.copyAsync(_source, destination, { overwrite: true })\n return re\n // return fs.promises.copyFile(_source, destination)\n },\n }\n}\n\n","import chalk from \"chalk\"\n\nexport default ({ generator }) => {\n return {\n drawSectionHeader: ({ title, subTitle, type = 'text' }) => {\n switch (type) {\n case 'h1': {\n generator.print.log(`\\n`)\n generator.print.log(chalk.white.bgRed.bold(`${title}`))\n if (subTitle) {\n generator.print.log(chalk.italic(`${subTitle}\\n`))\n }\n generator.print.log(`----`)\n generator.print.log(``)\n } break\n case 'h2': {\n generator.print.log(`\\n`)\n generator.print.log(chalk.white.bgGreen.bold(`${title}`))\n if (subTitle) {\n generator.print.log(chalk.italic(`${subTitle}\\n`))\n }\n } break\n default: {\n generator.print.log(chalk.blue.bold(`\\n${title}`))\n if (subTitle) {\n generator.print.log(chalk.italic(`${subTitle}\\n`))\n }\n } break\n }\n\n\n },\n }\n}\n\n","\nimport _ from 'underscore'\nimport lodash from 'lodash'\n\nexport default ({ handlerOptions = [], generator }) => {\n\n generator.options = handlerOptions.map(option => {\n switch (option.scope) {\n case 'private': {\n return option\n }\n default: break\n }\n\n const i = _.findWhere(generator.libraryOptions,\n { name: option.name })\n\n if (!i) {\n return option\n }\n\n let result = { ...option }\n lodash.merge(\n result,\n i,\n )\n return result\n })\n}\n","import prompt from './prompt/index.js'\nimport template from './template.js'\nimport fs from './fs.js'\nimport cp from 'child_process'\nimport ui from './ui.js'\nimport mergeOptions from './mergeOptions.js'\n\nexport default ({ payload, options = [] }) => {\n\n const generator = {\n payload,\n print: console,\n libraryOptions: options,\n options: []\n }\n\n generator.mergeOptions = (op) => mergeOptions({ handlerOptions: op, generator })\n\n generator.ui = ui({ generator })\n generator.prompt = prompt({ generator })\n generator.template = template({ generator })\n generator.fs = fs({ generator })\n generator.spawn = async (command, args, options) => {\n return new Promise(resolve => {\n const result = cp.spawn(command, args, options)\n result.on('close', () => {\n resolve()\n })\n })\n }\n\n return generator\n}\n","\nexport default async ({\n path,\n generator,\n payload,\n fileName }) => {\n const data = (await import(path)).default\n const { name = '',\n description = '',\n // options = {},\n handler,\n example } = data\n\n const command = {\n command: name,\n desc: description,\n builder: {},\n handler: (argv,) => {\n data.handler({ generator, payload, argv })\n }\n }\n\n return {\n command,\n data: {\n ...data,\n options: (data.options && data.options.length) ? data.options : []\n }\n }\n}\n","\nexport default ({ option, yargs }) => {\n const { name, description, message, type = 'string', global = false, alias, defaultValue } = option\n\n yargs.option(name, {\n desc: description ? description : message,\n type,\n global,\n alias,\n default: defaultValue\n })\n}\n","import jetpack from 'fs-jetpack'\nimport fs from 'fs'\nimport buildCommand from './buildCommand.js'\nimport formatOptionForYargs from '../../lib/formatOptionForYargs.js'\n\nconst operation = async ({ path, generator, yargs, root = false, payload }) => {\n const candidates = await jetpack.listAsync(path)\n if (!candidates || !candidates.length) {\n return\n }\n\n const commands = []\n let index = null\n\n let subCommands = []\n\n await Promise.all(candidates.map(async item => {\n const __path = `${path}/${item}`\n const stat = await fs.promises.stat(__path)\n if (!stat || !stat.isDirectory()) {\n return null\n }\n\n const subCommand = await operation({ path: __path, generator, payload, yargs })\n subCommands.push(subCommand)\n }))\n\n await Promise.all(candidates.map(async item => {\n const __path = `${path}/${item}`\n const stat = await fs.promises.stat(__path)\n if (!stat || stat.isDirectory()) {\n return null\n }\n\n const { data: commandData, command } = await buildCommand({ path: __path, generator, fileName: item, payload })\n\n if (item === 'index.js') {\n return\n }\n\n command.builder = yargs => {\n fixOptions({ generator, commandOptions: commandData.options, yargs })\n if (commandData.example) {\n yargs.example(commandData.example)\n }\n }\n if (commandData.usage) {\n }\n commands.push(command)\n\n }))\n\n await Promise.all(candidates.map(async item => {\n const __path = `${path}/${item}`\n const stat = await fs.promises.stat(__path)\n if (!stat || stat.isDirectory()) {\n return null\n }\n\n if (item !== 'index.js') {\n return\n }\n\n const { data: commandData, command } = await buildCommand({ path: __path, generator, fileName: item, payload })\n\n if (!root) {\n command.builder = yargs => {\n fixOptions({ generator, commandOptions: commandData.options, yargs })\n // commandData.options.forEach(option => formatOptionForYargs({ option, yargs }))\n if (commandData.example) {\n yargs.example(commandData.example)\n }\n commands.forEach(subCommand => {\n yargs.command(subCommand)\n })\n subCommands.forEach(subCommand => {\n yargs.command(subCommand.index)\n })\n }\n }\n else {\n subCommands.forEach(subCommand => {\n yargs.command(subCommand.index)\n })\n }\n\n\n index = command\n }))\n\n return { index, commands }\n}\n\nexport default operation\n\n\n\nimport parseArgv from 'tiny-parse-argv'\nconst fixOptions = ({ generator, commandOptions, yargs }) => {\n let nativeArgv = parseArgv(process.argv)\n delete nativeArgv[\"--\"]\n delete nativeArgv[\"_\"]\n Object.keys(nativeArgv).forEach(n => {\n generator.payload[n] = nativeArgv[n]\n })\n\n const _options = (commandOptions && commandOptions.length)\n ? commandOptions\n : []\n const options = _options.map(option => {\n const value = nativeArgv[option.name]\n return {\n ...option,\n value\n }\n })\n generator.mergeOptions(options)\n generator.options.forEach(option => formatOptionForYargs({ option, yargs }))\n}\n","import buildGenerator from './build/generator/index.js'\nimport buildDir from './build/index.js'\n\nexport default async ({ path, yargs, options }) => {\n\n const commandsPath = `${path}/commands`\n const payload = {}\n const generator = buildGenerator({ payload, options, yargs })\n const { index, commands } = await buildDir({ path: commandsPath, generator, yargs, root: true, payload })\n commands.forEach(command => {\n yargs.command(command)\n })\n\n yargs.argv\n return commands\n}\n","import fs from 'fs'\nexport default async (file) => {\n return fs.promises.access(file, fs.constants.F_OK)\n .then(() => true)\n .catch(() => false)\n}","import checkFileExists from './checkFileExists.js'\nimport fs from 'fs'\nimport _path from 'path'\nimport _ from 'underscore'\n//https://www.npmjs.com/package/directory-import\n\n\nconst perform = async ({ path,\n includeMeta = false,\n excludes = ['spec.js'],\n includeExtensions = ['.js', '.ts', '.json']\n}) => {\n try {\n if (!(await checkFileExists(path))) {\n return null\n }\n\n const items = await fs.promises.readdir(path)\n\n if (!items || !items.length) {\n return null\n }\n\n let results = (await Promise.all(items.map(async item => {\n\n\n const __path = _path.join(path, item)\n\n const _stat = await fs.promises.stat(__path)\n if (!_stat) {\n return null\n }\n\n const isDir = _stat.isDirectory()\n if (isDir) {\n return perform({ path: __path })\n }\n\n if (!(await checkFileExists(__path))) {\n return null\n }\n\n if (item.includes('spec.js')) {\n return null\n }\n const extension = getExtension(item)\n if (!includeExtensions.includes(extension)) {\n return null\n }\n\n if (includeMeta) {\n const racine = getFileRaw(__path)\n const _module = await import(__path)\n const md = `${racine}.md`\n let documentation = null\n if ((await checkFileExists(md))) {\n documentation = await fs.promises.readFile(md, 'utf8')\n }\n\n return [{\n module: _module,\n path: __path,\n documentation\n }]\n } else {\n return [(await import(__path))]\n }\n }))).filter(a => a)\n\n results = _.flatten(results)\n return results\n }\n catch (e) {\n console.error(e)\n return null\n }\n}\n\nconst getExtension = str => str.slice(str.lastIndexOf(\".\"))\nconst getFileRaw = str => str.split('.').slice(0, -1).join('.')\n\n\nexport default perform\n","import directoryFilesRecursive from '../lib/directoryFilesRecursive.js'\n\nexport default async ({ path, config, }) => {\n const optionsPath = `${path}/options`\n let files = await directoryFilesRecursive({\n path: optionsPath,\n includeMeta: false\n })\n files = files ? files.map(f => f.default) : []\n return files\n}\n","// https://medium.com/netscape/a-guide-to-create-a-nodejs-command-line-package-c2166ad0452e\n// https://www.reddit.com/r/node/comments/12uak6h/npx_not_running_correctly/\n// https://docs.npmjs.com/cli/v9/configuring-npm/package-json#bin\n// https://github.com/yargs/yargs/issues/1844#issuecomment-998966393\n// https://github.com/yargs/yargs/issues/225#issuecomment-699540088\n// https://github.com/lirantal/nodejs-cli-apps-best-practices\n\n// https://stackoverflow.com/a/69503617\n/*\nchmod +x ./dist/app.cjs\nyarn link\nservable\n*/\n\nimport _yargs from 'yargs';\nimport { hideBin } from 'yargs/helpers';\nimport fs from 'fs';\nimport registerCommands from './commands/index.js';\nimport _path from 'path';\nimport getFileCallerURL from './lib/getFileCallerURL.js';\nimport loadOptions from './loadOptions/index.js';\n\n\nexport default async ({ path, npmPackage, config } = {}) => {\n\n // import options from './options.js';\n let __actualPath = path\n if (!__actualPath) {\n const ce = getFileCallerURL()\n __actualPath = _path.dirname(ce)\n __actualPath = __actualPath.replace('file://', '')\n }\n\n\n let __actualNpmPackage = npmPackage\n if (!__actualNpmPackage) {\n const __d = _path.resolve(__actualPath, '../package.json')\n if (fs.existsSync(__d)) {\n __actualNpmPackage = JSON.parse(fs.readFileSync(__d).toString())\n }\n }\n if (!__actualNpmPackage) {\n __actualNpmPackage = { version: \"0.0.0\" }\n }\n\n let __actualConfig = config\n if (!__actualConfig) {\n const __d = _path.resolve(__actualPath, '../cli.config.json')\n if (fs.existsSync(__d)) {\n __actualConfig = JSON.parse(fs.readFileSync(__d).toString())\n }\n }\n if (!__actualConfig) {\n __actualConfig = {}\n }\n //https://github.com/yargs/yargs/issues/569\n\n\n\n const yargs = _yargs(hideBin(process.argv))\n\n\n yargs\n // .options(options)\n .usage('Usage: servable <command>')\n .demandCommand(1)\n .wrap(Math.min(yargs.terminalWidth(), 160))\n .help('help')\n .alias('help', 'h')\n .version(__actualNpmPackage.version)\n .alias('version', 'v')\n .hide('help')\n .hide('version')\n .epilog('Made by Servable.')\n\n const options = await loadOptions({ path: __actualPath, config: __actualConfig })\n await registerCommands({ path: __actualPath, yargs, config: __actualConfig, options })\n\n}\n\n\n"],"names":["_ref","input","Promise","resolve","length","e","reject","a","type","nonEmpty","props","payload","question","generator","promptModule","promptType","name","message","defaultValue","_question$validators","validators","value","alias","valueIsDefined","undefined","print","log","chalk","green","bold","italic","isQuick","prompt","_extends","validate","isValid","Bluebird","mapSeries","validator","_temp2","_result","_exit","regex","f","RegExp","test","getValidators","_temp","then","_i","_promptModule$prompt","id","inquirer","ask","questions","Array","isArray","result","fullQuestion","items","options","filter","_ref2","_ref2$type","_f","module","_promptModule","v","confirm","registerPrompt","key","inquirerPromptAutocomplete","inquirerFileTreeSelection","inquirerParseJsonFile","render","text","data","ejs","_error$stack","error","Error","stack","split","filePathPattern","exec","filePath","jetpack","copy","source","destination","fs","promises","cp","copyTpl","readFile","entry","writeFile","copyFraction","_ref3","_ref3$useRelativeCall","useRelativeCall","_source","sou","getFileCallerURL","_path","dirname","replace","copyAsync","overwrite","drawSectionHeader","title","subTitle","white","bgRed","bgGreen","blue","_ref$handlerOptions","handlerOptions","map","option","scope","i","_","findWhere","libraryOptions","lodash","merge","_ref$options","console","mergeOptions","op","ui","template","spawn","command","args","on","path","_import","_data$name","_data$description","description","handler","example","desc","builder","argv","yargs","_option$type","_option$global","global","operation","_ref$root","root","listAsync","candidates","commands","index","subCommands","all","item","__path","stat","isDirectory","subCommand","push","buildCommand","fileName","commandData","fixOptions","commandOptions","usage","forEach","_ref4","nativeArgv","parseArgv","process","Object","keys","n","_options","formatOptionForYargs","commandsPath","buildGenerator","buildDir","file","access","constants","F_OK","_catch","body","recover","perform","_ref$includeMeta","includeMeta","_ref$includeExtension","includeExtensions","_exit2","checkFileExists","_checkFileExists","readdir","join","_stat","_exit3","isDir","_checkFileExists2","includes","extension","getExtension","racine","getFileRaw","_module","md","documentation","_checkFileExists3","_temp4","_temp3","_fs$promises$readFile","_Promise$all","results","flatten","str","slice","lastIndexOf","optionsPath","directoryFilesRecursive","files","npmPackage","config","__actualPath","ce","__actualNpmPackage","__d","existsSync","JSON","parse","readFileSync","toString","version","__actualConfig","_yargs","hideBin","demandCommand","wrap","Math","min","terminalWidth","help","hide","epilog","loadOptions","registerCommands"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,eAAA,CAAA,UAAAA,IAAA,EAAA;AAAA,EAAA,IAAwBC,KAAK,GAAAD,IAAA,CAALC,KAAK,CAAQ;EAAA,IAAO;IAC1C,OAAAC,OAAA,CAAAC,OAAA,CAAOF,KAAK,IAAIA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAA,CAAA;AAClC,GAAC,QAAAC,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA;;ACDD,oBAAe,CAAA,UAAAE,CAAC,EAAI;EAClB,QAAQA,CAAC,CAACC,IAAI;AACZ,IAAA,QAAA;AACA,IAAA,KAAK,UAAU;AAAE,MAAA;AACf,QAAA,OAAOC,QAAQ,CAAA;AACjB,OAAA;AACF,GAAA;AACF,CAAC;;ACLD,WAAA,CAAA,UAAsBC,KAAK,EAAA;EAAA,IAAK;AAC9B,IAAA,IACEC,OAAO,GAIQD,KAAK,CAJpBC,OAAO;MACPC,QAAQ,GAGOF,KAAK,CAHpBE,QAAQ;MACRC,SAAS,GAEMH,KAAK,CAFpBG,SAAS;MACTC,YAAY,GACGJ,KAAK,CADpBI,YAAY;MACZC,UAAU,GAAKL,KAAK,CAApBK,UAAU,CAAA;AAEZ,IAAA,IACEC,IAAI,GAGoCJ,QAAQ,CAHhDI,IAAI;MACJC,OAAO,GAEiCL,QAAQ,CAFhDK,OAAO;MACPC,YAAY,GAC4BN,QAAQ,CADhDM,YAAY;MAAAC,oBAAA,GAC4BP,QAAQ,CAAhDQ,UAAU;MAAVA,UAAU,GAAAD,oBAAA,KAAA,KAAA,CAAA,GAAG,CAAC;AAAEX,QAAAA,IAAI,EAAE,UAAA;OAAY,CAAC,GAAAW,oBAAA,CAAA;IAErC,IAAI,CAACH,IAAI,EAAE;MACT,OAAAd,OAAA,CAAAC,OAAA,EAAA,CAAA;AACF,KAAA;AAEA,IAAA,IAAIkB,KAAK,GAAGV,OAAO,CAACK,IAAI,CAAC,CAAA;AACzB,IAAA,IAAI,CAACK,KAAK,IAAIT,QAAQ,CAACU,KAAK,EAAE;AAC5BD,MAAAA,KAAK,GAAGV,OAAO,CAACC,QAAQ,CAACU,KAAK,CAAC,CAAA;AACjC,KAAA;IACA,IAAMC,cAAc,GAAG,EAAEF,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKG,SAAS,CAAC,CAAA;AAC/D,IAAA,IAAID,cAAc,EAAE;AAClBV,MAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAAIC,yBAAK,CAACC,KAAK,CAAC,GAAG,CAAC,GAAA,GAAA,GAAID,yBAAK,CAACE,IAAI,CAACZ,OAAO,GAAGA,OAAO,GAAGD,IAAI,CAAC,GAAIW,GAAAA,GAAAA,yBAAK,CAACG,MAAM,CAACT,KAAK,CAAG,CAAC,CAAA;MACzG,OAAAnB,OAAA,CAAAC,OAAA,EAAA,CAAA;AACF,KAAA;IAEA,IAAM4B,OAAO,GAAGpB,OAAO,CAAC,OAAO,CAAC,IAAIA,OAAO,CAAC,GAAG,CAAC,CAAA;IAChD,IAAIoB,OAAO,IAAIR,cAAc,EAAE;AAC7BV,MAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAAIC,yBAAK,CAACC,KAAK,CAAC,GAAG,CAAC,GAAA,GAAA,GAAID,yBAAK,CAACE,IAAI,CAACZ,OAAO,GAAGA,OAAO,GAAGD,IAAI,CAAC,GAAIW,GAAAA,GAAAA,yBAAK,CAACG,MAAM,CAACT,KAAK,CAAG,CAAC,CAAA;MACzG,OAAAnB,OAAA,CAAAC,OAAA,EAAA,CAAA;AACF,KAAA;IAEA,IAAI4B,OAAO,IAAI,EAAEb,YAAY,KAAK,IAAI,IAAIA,YAAY,KAAKM,SAAS,CAAC,EAAE;AACrEb,MAAAA,OAAO,CAACK,IAAI,CAAC,GAAGE,YAAY,CAAA;AAC5BL,MAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAAIC,yBAAK,CAACC,KAAK,CAAC,GAAG,CAAC,GAAID,GAAAA,GAAAA,yBAAK,CAACE,IAAI,CAACZ,OAAO,GAAGA,OAAO,GAAGD,IAAI,CAAC,SAAIW,yBAAK,CAACG,MAAM,CAACnB,OAAO,CAACK,IAAI,CAAC,CAAG,CAAC,CAAA;MACjH,OAAAd,OAAA,CAAAC,OAAA,EAAA,CAAA;AACF,KAAA;AAAC,IAAA,OAAAD,OAAA,CAAAC,OAAA,CAEsBW,YAAY,CAACkB,MAAM,CAAAC,QAAA,CAAA,EAAA,EACrCvB,KAAK,CAACE,QAAQ,EAAA;AACjBJ,MAAAA,IAAI,EAAEO,UAAU;AAChBC,MAAAA,IAAI,EAAJA,IAAI;AACJC,MAAAA,OAAO,EAAPA,OAAO;AACP,MAAA,SAAA,EAASI,KAAK,GAAGA,KAAK,GAAGH,YAAY;MACrCgB,QAAQ,EAAA,UAAQjC,KAAK,EAAA;QAAA,IAAI;UACvB,IAAIkC,OAAO,GAAG,IAAI,CAAA;AAAA,UAAA,OAAAjC,OAAA,CAAAC,OAAA,CACZiC,4BAAQ,CAAClC,OAAO,CAACmC,SAAS,CAC9BjB,UAAU,EAAA,UACJkB,SAAS,EAAA;YAAA,IAAI;cAAA,IAAAC,MAAA,GAAAA,SAAAA,MAAAA,CAAAC,OAAA,EAAA;gBAAA,IAAAC,KAAA,SAAAD,OAAA,CAAA;gBAAA,IAWbN,QAAQ,CAACQ,KAAK,EAAA;kBAChB,IAAMC,CAAC,GAAG,IAAIC,MAAM,CAACV,QAAQ,CAACQ,KAAK,EAAE,GAAG,CAAC,CAAA;AACzC;AACAP,kBAAAA,OAAO,GAAGQ,CAAC,CAACE,IAAI,CAAC5C,KAAK,CAAC,CAAA;AAAA,iBAAA;AAAA,eAAA,CAAA;AAAA,cAAA,IAAAwC,KAAA,CAAA;AAZzB,cAAA,IAAMP,QAAQ,GAAGY,aAAa,CAACR,SAAS,CAAC,CAAA;AAAA,cAAA,IAAAS,KAAA,GAAA,YAAA;AAAA,gBAAA,IACrCb,QAAQ,EAAA;AAAA,kBAAA,OAAAhC,OAAA,CAAAC,OAAA,CACO+B,QAAQ,CAAAD,QAAA,CAAA;AAAGhC,oBAAAA,KAAK,EAALA,KAAAA;AAAK,mBAAA,EAAKqC,SAAS,CAAE,CAAC,CAAAU,CAAAA,IAAA,WAA5CC,EAAE,EAAA;oBACR,IAAI,CAACA,EAAE,EAAE;AACPd,sBAAAA,OAAO,GAAG,KAAK,CAAA;AACjB,qBAAA;oBAACM,KAAA,GAAA,CAAA,CAAA;AAAA,mBAAA,CAAA,CAAA;AAAA,iBAAA;AAAA,eAAA,EAAA,CAAA;AAAA,cAAA,OAAAvC,OAAA,CAAAC,OAAA,CAAA4C,KAAA,IAAAA,KAAA,CAAAC,IAAA,GAAAD,KAAA,CAAAC,IAAA,CAAAT,MAAA,CAAAA,GAAAA,MAAA,CAAAQ,KAAA,CAAA,CAAA,CAAA;AASL,aAAC,QAAA1C,CAAA,EAAA;AAAA,cAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,aAAA;AAAA,WAAA,CAAC,EAAA2C,IAAA,CAAA,YAAA;AACJ,YAAA,IAAItC,KAAK,CAACE,QAAQ,CAACsB,QAAQ,EAAE;cAC3BC,OAAO,GAAGzB,KAAK,CAACE,QAAQ,CAACsB,QAAQ,CAACjC,KAAK,CAAC,CAAA;AAC1C,aAAA;AACA,YAAA,OAAOkC,OAAO,CAAA;AAAA,WAAA,CAAA,CAAA;AAChB,SAAC,QAAA9B,CAAA,EAAA;AAAA,UAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,SAAA;AAAA,OAAA;AAAA,KAAA,CACF,CAAC,CAAA,CAAA2C,IAAA,CAAA,UAAAE,oBAAA,EAAA;AAhCFvC,MAAAA,OAAO,CAACK,IAAI,CAAC,GAAGkC,oBAAA,CAgCZlC,IAAI,CAAC,CAAA;MAET,OAAOL,OAAO,CAACK,IAAI,CAAC,CAAA;AAAA,KAAA,CAAA,CAAA;AACtB,GAAC,QAAAX,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA;;AC9ED,oBAAe,CAAA,UAAC8C,EAAE,EAAK;AACrB,EAAA,QAAQA,EAAE;AACR,IAAA,QAAA;AACA,IAAA,KAAK,UAAU;AACb,MAAA,OAAOC,4BAAQ,CAAA;AACnB,GAAA;AACF,CAAC;;ACCD,aAAe,CAAA,UAAApD,IAAA,EAAmB;AAAA,EAAA,IAAhBa,SAAS,GAAAb,IAAA,CAATa,SAAS,CAAA;AAEzB,EAAA,IAAMmB,MAAM,GAAG;IACbqB,GAAG,EAAA,UAAShC,KAAK,EAAA;MAAA,IAAK;AACpB,QAAA,IAAMiC,SAAS,GAAGC,KAAK,CAACC,OAAO,CAACnC,KAAK,CAAC,GAAGA,KAAK,GAAG,CAACA,KAAK,CAAC,CAAA;QACxD,IAAMoC,MAAM,GAAG,EAAE,CAAA;AAAA,QAAA,OAAAvD,OAAA,CAAAC,OAAA,CACXiC,4BAAQ,CAAClC,OAAO,CAACmC,SAAS,CAC9BiB,SAAS,EAAA,UACH1C,QAAQ,EAAA;UAAA,IAAI;AAChB,YAAA,IAAI8C,YAAY,GAAAzB,QAAA,CAAA,EAAA,EACXrB,QAAQ,CACZ,CAAA;YACD,IAAM+C,KAAK,GAAG9C,SAAS,CAAC+C,OAAO,CAACC,MAAM,CAAC,UAAAtD,CAAC,EAAA;AAAA,cAAA,OAAIA,CAAC,CAACS,IAAI,KAAKJ,QAAQ,CAACI,IAAI,CAAA;aAAC,CAAA,CAAA;AACrE,YAAA,IAAI2C,KAAK,IAAIA,KAAK,CAACvD,MAAM,EAAE;cACzBsD,YAAY,GAAAzB,QAAA,CACP0B,EAAAA,EAAAA,KAAK,CAAC,CAAC,CAAC,EACRD,YAAY,CAChB,CAAA;AACH,aAAA;YACA,IAAAI,KAAA,GAEIJ,YAAY,CAAC1B,MAAM,GAAG0B,YAAY,CAAC1B,MAAM,GAAG,EAAE;cAAA+B,UAAA,GAAAD,KAAA,CAF1CtD,IAAI;AAAEO,cAAAA,UAAU,GAAAgD,UAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,UAAA;cACxBC,EAAE,GAAAF,KAAA,CAAVG,MAAM,CAAA;YAGR,IAAInD,cAAY,GAAGkD,EAAE,GAAGA,EAAE,GAAGE,aAAa,EAAE,CAAA;AAC5C,YAAA,IAAI,OAAOpD,cAAY,KAAK,QAAQ,EAAE;AACpCA,cAAAA,cAAY,GAAGoD,aAAa,CAACF,EAAE,CAAC,CAAA;AAClC,aAAA;AAAC,YAAA,OAAA9D,OAAA,CAAAC,OAAA,CAEekD,IAAG,CAAC;AAClBzC,cAAAA,QAAQ,EAAE8C,YAAY;cACtB/C,OAAO,EAAEE,SAAS,CAACF,OAAO;AAC1BE,cAAAA,SAAS,EAATA,SAAS;AACTC,cAAAA,YAAY,EAAZA,cAAY;AACZC,cAAAA,UAAU,EAAVA,UAAAA;AACF,aAAC,CAAC,CAAA,CAAAiC,IAAA,CAAA,UANImB,CAAC,EAAA;AAQPV,cAAAA,MAAM,CAAC7C,QAAQ,CAACI,IAAI,CAAC,GAAGmD,CAAC,CAAA;AACzB,cAAA,OAAOA,CAAC,CAAA;AAAA,aAAA,CAAA,CAAA;AACV,WAAC,QAAA9D,CAAA,EAAA;AAAA,YAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,WAAA;AAAA,SAAA,CAAC,EAAA2C,IAAA,CAAA,YAAA;AACJ,UAAA,OAAOS,MAAM,CAAA;AAAA,SAAA,CAAA,CAAA;AACf,OAAC,QAAApD,CAAA,EAAA;AAAA,QAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,OAAA;AAAA,KAAA;IACD+D,OAAO,EAAA,YAAc;MAAA,OAAAlE,OAAA,CAAAC,OAAA,EAAA,CAAA;KAEpB;IACDkE,cAAc,EAAE,SAAAA,cAACvD,CAAAA,YAAY,EAAEwD,GAAG,EAAEL,MAAM,EAAK;AAC7CnD,MAAAA,YAAY,CAACuD,cAAc,CAACC,GAAG,EAAEL,MAAM,CAAC,CAAA;AAC1C,KAAA;GACD,CAAA;AAED,EAAA,IAAMnD,YAAY,GAAGoD,aAAa,EAAE,CAAA;EACpClC,MAAM,CAACqC,cAAc,CAACvD,YAAY,EAAE,cAAc,EAAEyD,8CAA0B,CAAC,CAAA;EAC/EvC,MAAM,CAACqC,cAAc,CAACvD,YAAY,EAAE,qBAAqB,EAAE0D,6CAAyB,CAAC,CAAA;EACrFxC,MAAM,CAACqC,cAAc,CAACvD,YAAY,EAAE,WAAW,EAAE2D,yCAAqB,CAAC,CAAA;AAEvE,EAAA,OAAOzC,MAAM,CAAA;AACf,CAAC;;AC7DD,eAAe,CAAA,UAAAhC,IAAA,EAAmB;EAChC,OAAO;AACL0E,IAAAA,MAAM,EAAE,SAAAA,MAAAA,CAACC,IAAI,EAAEC,IAAI,EAAK;AACtB,MAAA,OAAOC,uBAAG,CAACH,MAAM,CAACC,IAAI,EAAEC,IAAI,CAAC,CAAA;AAC/B,KAAA;GACD,CAAA;AACH,CAAC;;ACRD,uBAAA,CAAe,YAAM;AAAA,EAAA,IAAAE,YAAA,CAAA;AACnB,EAAA,IAAMC,KAAK,GAAG,IAAIC,KAAK,EAAE,CAAA;AACzB,EAAA,IAAMC,KAAK,GAAA,CAAAH,YAAA,GAAGC,KAAK,CAACE,KAAK,KAAA,IAAA,GAAA,KAAA,CAAA,GAAXH,YAAA,CAAaI,KAAK,CAAC,IAAI,CAAC,CAAA;AACtC,EAAA,IAAMN,IAAI,GAAGK,KAAK,CAAC,CAAC,CAAC,CAAA;AACrB,EAAA,IAAME,eAAe,GAAG,IAAIvC,MAAM,6CAA6C,CAAC,CAAA;AAChF,EAAA,IAAMa,MAAM,GAAG0B,eAAe,CAACC,IAAI,CAACR,IAAI,CAAC,CAAA;EACzC,IAAIS,QAAQ,GAAG,EAAE,CAAA;AACjB,EAAA,IAAI5B,MAAM,IAAKA,MAAM,CAACrD,MAAM,GAAG,CAAE,EAAE;AACjCiF,IAAAA,QAAQ,GAAG5B,MAAM,CAAC,CAAC,CAAC,CAAA;AACtB,GAAA;AACA,EAAA,OAAO4B,QAAQ,CAAA;AACjB,CAAC;;ACND,SAAe,CAAA,UAAArF,IAAA,EAAmB;EAEhC,OAAAiC,QAAA,KACKqD,2BAAO,EAAA;IACVC,IAAI,EAAA,UAAAzB,KAAA,EAAA;AAAA,MAAA,IAAW0B,MAAM,GAAA1B,KAAA,CAAN0B,MAAM,CAAA;QAAEC,WAAW,GAAA3B,KAAA,CAAX2B,WAAW,CAAyB;MAAA,IAAO;AAChE,QAAA,OAAAvF,OAAA,CAAAC,OAAA,CAAOuF,sBAAE,CAACC,QAAQ,CAACC,EAAE,CAACJ,MAAM,EAAEC,WAAW,CAAC,CAAA,CAAA;AAC5C,OAAC,QAAApF,CAAA,EAAA;AAAA,QAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,OAAA;AAAA,KAAA;AACDwF,IAAAA,OAAO,YAASL,MAAM,EAAEC,WAAW,EAAEb,IAAI,EAAA;MAAA,IAAK;AAAA,QAAA,OAAA1E,OAAA,CAAAC,OAAA,CACxBuF,sBAAE,CAACC,QAAQ,CAACG,QAAQ,CAACN,MAAM,CAAC,CAAAxC,CAAAA,IAAA,WAA1C+C,KAAK,EAAA;UACX,IAAMtC,MAAM,GAAGoB,GAAG,CAACH,MAAM,CAACqB,KAAK,EAAEnB,IAAI,CAAC,CAAA;AAAA,UAAA,OAAA1E,OAAA,CAAAC,OAAA,CAChCuF,sBAAE,CAACC,QAAQ,CAACK,SAAS,CAACP,WAAW,EAAEhC,MAAM,CAAC,EAAAT,IAAA,CAAA,YAAA,EAAA,CAAA,CAAA;AAAA,SAAA,CAAA,CAAA;AAClD,OAAC,QAAA3C,CAAA,EAAA;AAAA,QAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,OAAA;AAAA,KAAA;IACD4F,YAAY,EAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,IAAWV,MAAM,GAAAU,KAAA,CAANV,MAAM,CAAA;QAAEC,WAAW,GAAAS,KAAA,CAAXT,WAAW,CAAA;QAAMU,qBAAA,GAAAD,KAAA,CAAEE,eAAe,CAAA;AAAfA,QAAAA,eAAe,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,sBAAA;MAAA,IAAO;QAC7E,IAAIE,OAAO,GAAGb,MAAM,CAAA;AACpB,QAAA,IAAIY,eAAe,EAAE;AACnB,UAAA,IAAIE,GAAG,GAAGC,gBAAgB,EAAE,CAAA;AAC5BD,UAAAA,GAAG,GAAGE,yBAAK,CAACC,OAAO,CAACH,GAAG,CAAC,CAAA;UACxBA,GAAG,GAAGA,GAAG,CAACI,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;UAChCL,OAAO,GAAMC,GAAG,GAAA,YAAA,GAAaD,OAAS,CAAA;AACxC,SAAA;QAAC,OAAAnG,OAAA,CAAAC,OAAA,CAEgBmF,2BAAO,CAACqB,SAAS,CAACN,OAAO,EAAEZ,WAAW,EAAE;AAAEmB,UAAAA,SAAS,EAAE,IAAA;AAAK,SAAC,CAAC,CAE7E,CAAA;AACF,OAAC,QAAAvG,CAAA,EAAA;AAAA,QAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,OAAA;AAAA,KAAA;AAAA,GAAA,CAAA,CAAA;AAEL,CAAC;;AC7BD,SAAe,CAAA,UAAAL,IAAA,EAAmB;AAAA,EAAA,IAAhBa,SAAS,GAAAb,IAAA,CAATa,SAAS,CAAA;EACzB,OAAO;AACLgG,IAAAA,iBAAiB,EAAE,SAAAA,iBAAA/C,CAAAA,KAAA,EAAwC;AAAA,MAAA,IAArCgD,KAAK,GAAAhD,KAAA,CAALgD,KAAK;QAAEC,QAAQ,GAAAjD,KAAA,CAARiD,QAAQ;QAAAhD,UAAA,GAAAD,KAAA,CAAEtD,IAAI;AAAJA,QAAAA,IAAI,GAAAuD,UAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,UAAA,CAAA;AAClD,MAAA,QAAQvD,IAAI;AACV,QAAA,KAAK,IAAI;AAAE,UAAA;AACTK,YAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,KAAK,CAAC,CAAA;AACzBb,YAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAACC,yBAAK,CAACqF,KAAK,CAACC,KAAK,CAACpF,IAAI,CAAIiF,EAAAA,GAAAA,KAAO,CAAC,CAAC,CAAA;AACvD,YAAA,IAAIC,QAAQ,EAAE;AACZlG,cAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAACC,yBAAK,CAACG,MAAM,CAAIiF,QAAQ,GAAI,IAAA,CAAC,CAAC,CAAA;AACpD,aAAA;AACAlG,YAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,OAAO,CAAC,CAAA;AAC3Bb,YAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,GAAG,CAAC,CAAA;AACzB,WAAA;AAAE,UAAA,MAAA;AACF,QAAA,KAAK,IAAI;AAAE,UAAA;AACTb,YAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,KAAK,CAAC,CAAA;AACzBb,YAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAACC,yBAAK,CAACqF,KAAK,CAACE,OAAO,CAACrF,IAAI,CAAIiF,EAAAA,GAAAA,KAAO,CAAC,CAAC,CAAA;AACzD,YAAA,IAAIC,QAAQ,EAAE;AACZlG,cAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAACC,yBAAK,CAACG,MAAM,CAAIiF,QAAQ,GAAI,IAAA,CAAC,CAAC,CAAA;AACpD,aAAA;AACF,WAAA;AAAE,UAAA,MAAA;AACF,QAAA;AAAS,UAAA;AACPlG,YAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAACC,yBAAK,CAACwF,IAAI,CAACtF,IAAI,CAAMiF,IAAAA,GAAAA,KAAO,CAAC,CAAC,CAAA;AAClD,YAAA,IAAIC,QAAQ,EAAE;AACZlG,cAAAA,SAAS,CAACY,KAAK,CAACC,GAAG,CAACC,yBAAK,CAACG,MAAM,CAAIiF,QAAQ,GAAI,IAAA,CAAC,CAAC,CAAA;AACpD,aAAA;AACF,WAAA;AAAE,UAAA,MAAA;AACJ,OAAA;AAGF,KAAA;GACD,CAAA;AACH,CAAC;;AC7BD,mBAAe,CAAA,UAAA/G,IAAA,EAAwC;AAAA,EAAA,IAAAoH,mBAAA,GAAApH,IAAA,CAArCqH,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,mBAAA;IAAEvG,SAAS,GAAAb,IAAA,CAATa,SAAS,CAAA;EAE9CA,SAAS,CAAC+C,OAAO,GAAGyD,cAAc,CAACC,GAAG,CAAC,UAAAC,MAAM,EAAI;IAC/C,QAAQA,MAAM,CAACC,KAAK;AAClB,MAAA,KAAK,SAAS;AAAE,QAAA;AACd,UAAA,OAAOD,MAAM,CAAA;AACf,SAAA;AAEF,KAAA;IAEA,IAAME,CAAC,GAAGC,qBAAC,CAACC,SAAS,CAAC9G,SAAS,CAAC+G,cAAc,EAC5C;MAAE5G,IAAI,EAAEuG,MAAM,CAACvG,IAAAA;AAAK,KAAC,CAAC,CAAA;IAExB,IAAI,CAACyG,CAAC,EAAE;AACN,MAAA,OAAOF,MAAM,CAAA;AACf,KAAA;AAEA,IAAA,IAAI9D,MAAM,GAAAxB,QAAA,CAAA,EAAA,EAAQsF,MAAM,CAAE,CAAA;AAC1BM,IAAAA,0BAAM,CAACC,KAAK,CACVrE,MAAM,EACNgE,CACF,CAAC,CAAA;AACD,IAAA,OAAOhE,MAAM,CAAA;AACf,GAAC,CAAC,CAAA;AACJ,CAAC;;ACrBD,qBAAe,CAAA,UAAAzD,IAAA,EAA+B;AAAA,EAAA,IAA5BW,OAAO,GAAAX,IAAA,CAAPW,OAAO;IAAAoH,YAAA,GAAA/H,IAAA,CAAE4D,OAAO;AAAPA,IAAAA,OAAO,GAAAmE,YAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,YAAA,CAAA;AAErC,EAAA,IAAMlH,SAAS,GAAG;AAChBF,IAAAA,OAAO,EAAPA,OAAO;AACPc,IAAAA,KAAK,EAAEuG,OAAO;AACdJ,IAAAA,cAAc,EAAEhE,OAAO;AACvBA,IAAAA,OAAO,EAAE,EAAA;GACV,CAAA;AAED/C,EAAAA,SAAS,CAACoH,YAAY,GAAG,UAACC,EAAE,EAAA;AAAA,IAAA,OAAKD,YAAY,CAAC;AAAEZ,MAAAA,cAAc,EAAEa,EAAE;AAAErH,MAAAA,SAAS,EAATA,SAAAA;AAAU,KAAC,CAAC,CAAA;AAAA,GAAA,CAAA;AAEhFA,EAAAA,SAAS,CAACsH,EAAE,GAAGA,EAAE,CAAC;AAAEtH,IAAAA,SAAS,EAATA,SAAAA;AAAU,GAAC,CAAC,CAAA;AAChCA,EAAAA,SAAS,CAACmB,MAAM,GAAGA,MAAM,CAAC;AAAEnB,IAAAA,SAAS,EAATA,SAAAA;AAAU,GAAC,CAAC,CAAA;AACxCA,EAAAA,SAAS,CAACuH,QAAQ,GAAGA,QAAQ,CAAc,CAAC,CAAA;AAC5CvH,EAAAA,SAAS,CAAC6E,EAAE,GAAGA,EAAE,CAAc,CAAC,CAAA;AAChC7E,EAAAA,SAAS,CAACwH,KAAK,GAAA,UAAUC,OAAO,EAAEC,IAAI,EAAE3E,OAAO,EAAA;IAAA,IAAK;MAClD,OAAA1D,OAAA,CAAAC,OAAA,CAAO,IAAID,OAAO,CAAC,UAAAC,OAAO,EAAI;QAC5B,IAAMsD,MAAM,GAAGmC,sBAAE,CAACyC,KAAK,CAACC,OAAO,EAAEC,IAAI,EAAE3E,OAAO,CAAC,CAAA;AAC/CH,QAAAA,MAAM,CAAC+E,EAAE,CAAC,OAAO,EAAE,YAAM;AACvBrI,UAAAA,OAAO,EAAE,CAAA;AACX,SAAC,CAAC,CAAA;AACJ,OAAC,CAAC,CAAA,CAAA;AACJ,KAAC,QAAAE,CAAA,EAAA;AAAA,MAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,KAAA;AAAA,GAAA,CAAA;AAED,EAAA,OAAOQ,SAAS,CAAA;AAClB,CAAC;;AC/BD,mBAAA,CAAA,UAAAb,IAAA,EAAA;AAAA,EAAA,IACEyI,IAAI,GAAAzI,IAAA,CAAJyI,IAAI,CAAA;IACJ5H,SAAS,GAAAb,IAAA,CAATa,SAAS,CAAA;IACTF,OAAO,GAAAX,IAAA,CAAPW,OAAO,CACC;EAAA,IAAO;IAAA,OAAAT,OAAA,CAAAC,OAAA,CACK,sHAAOsI,IAAI,CAAC,CAAA,CAAAzF,IAAA,CAAA,UAAA0F,OAAA,EAAA;MAAhC,IAAM9D,IAAI,GAAG8D,OAAA,CAA4B,SAAA,CAAA,CAAA;AACzC,MAAA,IAAAC,UAAA,GAIc/D,IAAI,CAJV5D,IAAI;AAAJA,QAAAA,IAAI,GAAA2H,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;QAAAC,iBAAA,GAIHhE,IAAI,CAHhBiE,WAAW;AAAXA,QAAAA,WAAW,GAAAD,iBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,iBAAA;QAEhBE,OAAO,GACKlE,IAAI,CADhBkE,OAAO;QACPC,OAAO,GAAKnE,IAAI,CAAhBmE,OAAO,CAAA;AAET,MAAA,IAAMT,OAAO,GAAG;AACdA,QAAAA,OAAO,EAAEtH,IAAI;AACbgI,QAAAA,IAAI,EAAEH,WAAW;QACjBI,OAAO,EAAE,EAAE;AACXH,QAAAA,OAAO,EAAE,SAAAA,OAACI,CAAAA,IAAI,EAAM;UAClBtE,IAAI,CAACkE,OAAO,CAAC;AAAEjI,YAAAA,SAAS,EAATA,SAAS;AAAEF,YAAAA,OAAO,EAAPA,OAAO;AAAEuI,YAAAA,IAAI,EAAJA,IAAAA;AAAK,WAAC,CAAC,CAAA;AAC5C,SAAA;OACD,CAAA;MAED,OAAO;AACLZ,QAAAA,OAAO,EAAPA,OAAO;QACP1D,IAAI,EAAA3C,QAAA,CAAA,EAAA,EACC2C,IAAI,EAAA;AACPhB,UAAAA,OAAO,EAAGgB,IAAI,CAAChB,OAAO,IAAIgB,IAAI,CAAChB,OAAO,CAACxD,MAAM,GAAIwE,IAAI,CAAChB,OAAO,GAAG,EAAA;AAAE,SAAA,CAAA;OAErE,CAAA;AAAA,KAAA,CAAA,CAAA;AACH,GAAC,QAAAvD,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA;;AC5BD,2BAAe,CAAA,UAAAL,IAAA,EAAuB;AAAA,EAAA,IAApBuH,MAAM,GAAAvH,IAAA,CAANuH,MAAM;IAAE4B,KAAK,GAAAnJ,IAAA,CAALmJ,KAAK,CAAA;AAC7B,EAAA,IAAQnI,IAAI,GAAiFuG,MAAM,CAA3FvG,IAAI;IAAE6H,WAAW,GAAoEtB,MAAM,CAArFsB,WAAW;IAAE5H,OAAO,GAA2DsG,MAAM,CAAxEtG,OAAO;IAAAmI,YAAA,GAA2D7B,MAAM,CAA/D/G,IAAI;AAAJA,IAAAA,IAAI,GAAA4I,YAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,YAAA;IAAAC,cAAA,GAA0C9B,MAAM,CAA9C+B,MAAM;AAANA,IAAAA,MAAM,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IAAE/H,KAAK,GAAmBiG,MAAM,CAA9BjG,KAAK;IAAEJ,YAAY,GAAKqG,MAAM,CAAvBrG,YAAY,CAAA;AAExFiI,EAAAA,KAAK,CAAC5B,MAAM,CAACvG,IAAI,EAAE;AACjBgI,IAAAA,IAAI,EAAEH,WAAW,GAAGA,WAAW,GAAG5H,OAAO;AACzCT,IAAAA,IAAI,EAAJA,IAAI;AACJ8I,IAAAA,MAAM,EAANA,MAAM;AACNhI,IAAAA,KAAK,EAALA,KAAK;IACL,SAASJ,EAAAA,YAAAA;AACX,GAAC,CAAC,CAAA;AACJ,CAAC;;ACND,IAAMqI,SAAS,GAAA,SAATA,SAASA,CAAAvJ,IAAA,EAAA;AAAA,EAAA,IAAYyI,IAAI,GAAAzI,IAAA,CAAJyI,IAAI;IAAE5H,SAAS,GAAAb,IAAA,CAATa,SAAS;IAAEsI,KAAK,GAAAnJ,IAAA,CAALmJ,KAAK;IAAAK,SAAA,GAAAxJ,IAAA,CAAEyJ,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,SAAA;IAAE7I,OAAO,GAAAX,IAAA,CAAPW,OAAO,CAAA;EAAA,IAAO;AAAA,IAAA,OAAAT,OAAA,CAAAC,OAAA,CACpDmF,2BAAO,CAACoE,SAAS,CAACjB,IAAI,CAAC,CAAAzF,CAAAA,IAAA,WAA1C2G,UAAU,EAAA;AAChB,MAAA,IAAI,CAACA,UAAU,IAAI,CAACA,UAAU,CAACvJ,MAAM,EAAE;AACrC,QAAA,OAAA;AACF,OAAA;MAEA,IAAMwJ,QAAQ,GAAG,EAAE,CAAA;MACnB,IAAIC,KAAK,GAAG,IAAI,CAAA;MAEhB,IAAIC,WAAW,GAAG,EAAE,CAAA;AAAA,MAAA,OAAA5J,OAAA,CAAAC,OAAA,CAEdD,OAAO,CAAC6J,GAAG,CAACJ,UAAU,CAACrC,GAAG,CAAA,UAAO0C,IAAI,EAAA;QAAA,IAAI;AAC7C,UAAA,IAAMC,MAAM,GAAMxB,IAAI,GAAA,GAAA,GAAIuB,IAAM,CAAA;AAAA,UAAA,OAAA9J,OAAA,CAAAC,OAAA,CACbuF,sBAAE,CAACC,QAAQ,CAACuE,IAAI,CAACD,MAAM,CAAC,CAAAjH,CAAAA,IAAA,WAArCkH,IAAI,EAAA;AAAA,YAAA,OACN,CAACA,IAAI,IAAI,CAACA,IAAI,CAACC,WAAW,EAAE,GACvB,IAAI,GAAAjK,OAAA,CAAAC,OAAA,CAGYoJ,SAAS,CAAC;AAAEd,cAAAA,IAAI,EAAEwB,MAAM;AAAEpJ,cAAAA,SAAS,EAATA,SAAS;AAAEF,cAAAA,OAAO,EAAPA,OAAO;AAAEwI,cAAAA,KAAK,EAALA,KAAAA;AAAM,aAAC,CAAC,CAAA,CAAAnG,IAAA,CAAA,UAAzEoH,UAAU,EAAA;AAChBN,cAAAA,WAAW,CAACO,IAAI,CAACD,UAAU,CAAC,CAAA;AAAA,aAAA,CAAA,CAAA;AAAA,WAAA,CAAA,CAAA;AAC9B,SAAC,QAAA/J,CAAA,EAAA;AAAA,UAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,SAAA;OAAC,CAAA,CAAC,EAAA2C,IAAA,CAAA,YAAA;AAAA,QAAA,OAAA9C,OAAA,CAAAC,OAAA,CAEGD,OAAO,CAAC6J,GAAG,CAACJ,UAAU,CAACrC,GAAG,CAAA,UAAO0C,IAAI,EAAA;UAAA,IAAI;AAC7C,YAAA,IAAMC,MAAM,GAAMxB,IAAI,GAAA,GAAA,GAAIuB,IAAM,CAAA;AAAA,YAAA,OAAA9J,OAAA,CAAAC,OAAA,CACbuF,sBAAE,CAACC,QAAQ,CAACuE,IAAI,CAACD,MAAM,CAAC,CAAAjH,CAAAA,IAAA,WAArCkH,IAAI,EAAA;AAAA,cAAA,OACN,CAACA,IAAI,IAAIA,IAAI,CAACC,WAAW,EAAE,GACtB,IAAI,GAAAjK,OAAA,CAAAC,OAAA,CAGgCmK,YAAY,CAAC;AAAE7B,gBAAAA,IAAI,EAAEwB,MAAM;AAAEpJ,gBAAAA,SAAS,EAATA,SAAS;AAAE0J,gBAAAA,QAAQ,EAAEP,IAAI;AAAErJ,gBAAAA,OAAO,EAAPA,OAAAA;AAAQ,eAAC,CAAC,CAAA,CAAAqC,IAAA,CAAA,UAAAc,KAAA,EAAA;AAAA,gBAAA,IAAjG0G,WAAW,GAAA1G,KAAA,CAAjBc,IAAI;kBAAe0D,OAAO,GAAAxE,KAAA,CAAPwE,OAAO,CAAA;gBAElC,IAAI0B,IAAI,KAAK,UAAU,EAAE;AACvB,kBAAA,OAAA;AACF,iBAAA;AAEA1B,gBAAAA,OAAO,CAACW,OAAO,GAAG,UAAAE,KAAK,EAAI;AACzBsB,kBAAAA,UAAU,CAAC;AAAE5J,oBAAAA,SAAS,EAATA,SAAS;oBAAE6J,cAAc,EAAEF,WAAW,CAAC5G,OAAO;AAAEuF,oBAAAA,KAAK,EAALA,KAAAA;AAAM,mBAAC,CAAC,CAAA;kBACrE,IAAIqB,WAAW,CAACzB,OAAO,EAAE;AACvBI,oBAAAA,KAAK,CAACJ,OAAO,CAACyB,WAAW,CAACzB,OAAO,CAAC,CAAA;AACpC,mBAAA;iBACD,CAAA;AACD,gBAAA,IAAIyB,WAAW,CAACG,KAAK,EAAE,EACvB;AACAf,gBAAAA,QAAQ,CAACS,IAAI,CAAC/B,OAAO,CAAC,CAAA;AAAA,eAAA,CAAA,CAAA;AAAA,aAAA,CAAA,CAAA;AAExB,WAAC,QAAAjI,CAAA,EAAA;AAAA,YAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,WAAA;SAAC,CAAA,CAAC,EAAA2C,IAAA,CAAA,YAAA;AAAA,UAAA,OAAA9C,OAAA,CAAAC,OAAA,CAEGD,OAAO,CAAC6J,GAAG,CAACJ,UAAU,CAACrC,GAAG,CAAA,UAAO0C,IAAI,EAAA;YAAA,IAAI;AAC7C,cAAA,IAAMC,MAAM,GAAMxB,IAAI,GAAA,GAAA,GAAIuB,IAAM,CAAA;AAAA,cAAA,OAAA9J,OAAA,CAAAC,OAAA,CACbuF,sBAAE,CAACC,QAAQ,CAACuE,IAAI,CAACD,MAAM,CAAC,CAAAjH,CAAAA,IAAA,WAArCkH,IAAI,EAAA;gBACV,IAAI,CAACA,IAAI,IAAIA,IAAI,CAACC,WAAW,EAAE,EAAE;AAC/B,kBAAA,OAAO,IAAI,CAAA;AACb,iBAAA;gBAEA,IAAIH,IAAI,KAAK,UAAU,EAAE;AACvB,kBAAA,OAAA;AACF,iBAAA;AAAC,gBAAA,OAAA9J,OAAA,CAAAC,OAAA,CAE4CmK,YAAY,CAAC;AAAE7B,kBAAAA,IAAI,EAAEwB,MAAM;AAAEpJ,kBAAAA,SAAS,EAATA,SAAS;AAAE0J,kBAAAA,QAAQ,EAAEP,IAAI;AAAErJ,kBAAAA,OAAO,EAAPA,OAAAA;AAAQ,iBAAC,CAAC,CAAA,CAAAqC,IAAA,CAAA,UAAAkD,KAAA,EAAA;AAAA,kBAAA,IAAjGsE,WAAW,GAAAtE,KAAA,CAAjBtB,IAAI;oBAAe0D,OAAO,GAAApC,KAAA,CAAPoC,OAAO,CAAA;kBAElC,IAAI,CAACmB,IAAI,EAAE;AACTnB,oBAAAA,OAAO,CAACW,OAAO,GAAG,UAAAE,KAAK,EAAI;AACzBsB,sBAAAA,UAAU,CAAC;AAAE5J,wBAAAA,SAAS,EAATA,SAAS;wBAAE6J,cAAc,EAAEF,WAAW,CAAC5G,OAAO;AAAEuF,wBAAAA,KAAK,EAALA,KAAAA;AAAM,uBAAC,CAAC,CAAA;AACrE;sBACA,IAAIqB,WAAW,CAACzB,OAAO,EAAE;AACvBI,wBAAAA,KAAK,CAACJ,OAAO,CAACyB,WAAW,CAACzB,OAAO,CAAC,CAAA;AACpC,uBAAA;AACAa,sBAAAA,QAAQ,CAACgB,OAAO,CAAC,UAAAR,UAAU,EAAI;AAC7BjB,wBAAAA,KAAK,CAACb,OAAO,CAAC8B,UAAU,CAAC,CAAA;AAC3B,uBAAC,CAAC,CAAA;AACFN,sBAAAA,WAAW,CAACc,OAAO,CAAC,UAAAR,UAAU,EAAI;AAChCjB,wBAAAA,KAAK,CAACb,OAAO,CAAC8B,UAAU,CAACP,KAAK,CAAC,CAAA;AACjC,uBAAC,CAAC,CAAA;qBACH,CAAA;AACH,mBAAC,MACI;AACHC,oBAAAA,WAAW,CAACc,OAAO,CAAC,UAAAR,UAAU,EAAI;AAChCjB,sBAAAA,KAAK,CAACb,OAAO,CAAC8B,UAAU,CAACP,KAAK,CAAC,CAAA;AACjC,qBAAC,CAAC,CAAA;AACJ,mBAAA;AAGAA,kBAAAA,KAAK,GAAGvB,OAAO,CAAA;AAAA,iBAAA,CAAA,CAAA;AAAA,eAAA,CAAA,CAAA;AACjB,aAAC,QAAAjI,CAAA,EAAA;AAAA,cAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,aAAA;WAAC,CAAA,CAAC,EAAA2C,IAAA,CAAA,YAAA;YAEH,OAAO;AAAE6G,cAAAA,KAAK,EAALA,KAAK;AAAED,cAAAA,QAAQ,EAARA,QAAAA;aAAU,CAAA;AAAA,WAAA,CAAA,CAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAC5B,GAAC,QAAAvJ,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA,CAAA;AAOD,IAAMoK,UAAU,GAAG,SAAbA,UAAUA,CAAAI,KAAA,EAA6C;AAAA,EAAA,IAAvChK,SAAS,GAAAgK,KAAA,CAAThK,SAAS;IAAE6J,cAAc,GAAAG,KAAA,CAAdH,cAAc;IAAEvB,KAAK,GAAA0B,KAAA,CAAL1B,KAAK,CAAA;AACpD,EAAA,IAAI2B,UAAU,GAAGC,6BAAS,CAACC,OAAO,CAAC9B,IAAI,CAAC,CAAA;EACxC,OAAO4B,UAAU,CAAC,IAAI,CAAC,CAAA;EACvB,OAAOA,UAAU,CAAC,GAAG,CAAC,CAAA;EACtBG,MAAM,CAACC,IAAI,CAACJ,UAAU,CAAC,CAACF,OAAO,CAAC,UAAAO,CAAC,EAAI;IACnCtK,SAAS,CAACF,OAAO,CAACwK,CAAC,CAAC,GAAGL,UAAU,CAACK,CAAC,CAAC,CAAA;AACtC,GAAC,CAAC,CAAA;EAEF,IAAMC,QAAQ,GAAIV,cAAc,IAAIA,cAAc,CAACtK,MAAM,GACrDsK,cAAc,GACd,EAAE,CAAA;EACN,IAAM9G,OAAO,GAAGwH,QAAQ,CAAC9D,GAAG,CAAC,UAAAC,MAAM,EAAI;AACrC,IAAA,IAAMlG,KAAK,GAAGyJ,UAAU,CAACvD,MAAM,CAACvG,IAAI,CAAC,CAAA;IACrC,OAAAiB,QAAA,KACKsF,MAAM,EAAA;AACTlG,MAAAA,KAAK,EAALA,KAAAA;AAAK,KAAA,CAAA,CAAA;AAET,GAAC,CAAC,CAAA;AACFR,EAAAA,SAAS,CAACoH,YAAY,CAACrE,OAAO,CAAC,CAAA;AAC/B/C,EAAAA,SAAS,CAAC+C,OAAO,CAACgH,OAAO,CAAC,UAAArD,MAAM,EAAA;AAAA,IAAA,OAAI8D,oBAAoB,CAAC;AAAE9D,MAAAA,MAAM,EAANA,MAAM;AAAE4B,MAAAA,KAAK,EAALA,KAAAA;AAAM,KAAC,CAAC,CAAA;GAAC,CAAA,CAAA;AAC9E,CAAC;;ACnHD,uBAAA,CAAA,UAAAnJ,IAAA,EAAA;AAAA,EAAA,IAAwByI,IAAI,GAAAzI,IAAA,CAAJyI,IAAI;IAAEU,KAAK,GAAAnJ,IAAA,CAALmJ,KAAK;IAAEvF,OAAO,GAAA5D,IAAA,CAAP4D,OAAO,CAAA;EAAA,IAAO;IAEjD,IAAM0H,YAAY,GAAM7C,IAAI,GAAW,WAAA,CAAA;IACvC,IAAM9H,OAAO,GAAG,EAAE,CAAA;IAClB,IAAME,SAAS,GAAG0K,cAAc,CAAC;AAAE5K,MAAAA,OAAO,EAAPA,OAAO;AAAEiD,MAAAA,OAAO,EAAPA,OAAO;AAAEuF,MAAAA,KAAK,EAALA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAA,IAAA,OAAAjJ,OAAA,CAAAC,OAAA,CAC3BqL,SAAQ,CAAC;AAAE/C,MAAAA,IAAI,EAAE6C,YAAY;AAAEzK,MAAAA,SAAS,EAATA,SAAS;AAAEsI,MAAAA,KAAK,EAALA,KAAK;AAAEM,MAAAA,IAAI,EAAE,IAAI;AAAE9I,MAAAA,OAAO,EAAPA,OAAAA;AAAQ,KAAC,CAAC,CAAA,CAAAqC,IAAA,CAAA,UAAAc,KAAA,EAAA;AAAA,MAAA,IAAjG+F,KAAK,GAAA/F,KAAA,CAAL+F,KAAK;QAAED,QAAQ,GAAA9F,KAAA,CAAR8F,QAAQ,CAAA;AACvBA,MAAAA,QAAQ,CAACgB,OAAO,CAAC,UAAAtC,OAAO,EAAI;AAC1Ba,QAAAA,KAAK,CAACb,OAAO,CAACA,OAAO,CAAC,CAAA;AACxB,OAAC,CAAC,CAAA;AAEFa,MAAAA,KAAK,CAACD,IAAI,CAAA;AACV,MAAA,OAAOU,QAAQ,CAAA;AAAA,KAAA,CAAA,CAAA;AACjB,GAAC,QAAAvJ,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA;;ACdD,sBAAA,CAAA,UAAsBoL,IAAI,EAAA;EAAA,IAAK;IAC3B,OAAAvL,OAAA,CAAAC,OAAA,CAAOuF,sBAAE,CAACC,QAAQ,CAAC+F,MAAM,CAACD,IAAI,EAAE/F,sBAAE,CAACiG,SAAS,CAACC,IAAI,CAAC,CAC7C5I,IAAI,CAAC,YAAA;AAAA,MAAA,OAAM,IAAI,CAAA;AAAA,KAAA,CAAC,SACX,CAAC,YAAA;AAAA,MAAA,OAAM,KAAK,CAAA;KAAC,CAAA,CAAA,CAAA;AAC3B,GAAC,QAAA3C,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA;;ACDD;;AA8iBO,SAASwL,MAAMA,CAACC,IAAI,EAAEC,OAAO,EAAE;EACrC,IAAI;AACH,IAAA,IAAItI,MAAM,GAAGqI,IAAI,EAAE,CAAA;GACnB,CAAC,OAAMzL,CAAC,EAAE;IACV,OAAO0L,OAAO,CAAC1L,CAAC,CAAC,CAAA;AAClB,GAAA;AACA,EAAA,IAAIoD,MAAM,IAAIA,MAAM,CAACT,IAAI,EAAE;IAC1B,OAAOS,MAAM,CAACT,IAAI,CAAC,KAAK,CAAC,EAAE+I,OAAO,CAAC,CAAA;AACpC,GAAA;AACA,EAAA,OAAOtI,MAAM,CAAA;AACd,CAAA;AArjBA,IAAMuI,OAAO,GAAA,SAAPA,OAAOA,CAAAhM,IAAA,EAAA;AAAA,EAAA,IAAYyI,IAAI,GAAAzI,IAAA,CAAJyI,IAAI,CAAA;IAAAwD,gBAAA,GAAAjM,IAAA,CAC3BkM,WAAW,CAAA;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,gBAAA,CAAA;IACGE,qBAAA,GAAAnM,IAAA,CACtBoM,iBAAiB,CAAA;IAAjBA,iBAAiB,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,GAAAA,sBAAA;EAAA,IACvC;AAAA,IAAA,IAAA1J,KAAA,CAAA;AAAA,IAAA,OAAAvC,OAAA,CAAAC,OAAA,CAAA0L,MAAA,CACA,YAAA;AAAA,MAAA,IAAAQ,MAAA,CAAA;MAAA,OAAAnM,OAAA,CAAAC,OAAA,CACUmM,eAAe,CAAC7D,IAAI,CAAC,CAAA,CAAAzF,IAAA,CAAA,UAAAuJ,gBAAA,EAAA;QAAjC,IAAI,CAAAA,gBAA8B,EAAE;UAAA,IAAAxJ,KAAA,GAC3B,IAAI,CAAA;UAAAN,KAAA,GAAA,CAAA,CAAA;AAAA,UAAA,OAAAM,KAAA,CAAA;AACb,SAAA;AAAC,QAAA,OAAA7C,OAAA,CAAAC,OAAA,CAEmBuF,sBAAE,CAACC,QAAQ,CAAC6G,OAAO,CAAC/D,IAAI,CAAC,CAAAzF,CAAAA,IAAA,WAAvCW,KAAK,EAAA;UAAA,OAEP,CAACA,KAAK,IAAI,CAACA,KAAK,CAACvD,MAAM,GAClB,IAAI,GAAAF,OAAA,CAAAC,OAAA,CAGQD,OAAO,CAAC6J,GAAG,CAACpG,KAAK,CAAC2D,GAAG,CAAA,UAAO0C,IAAI,EAAA;YAAA,IAAI;cAGvD,IAAMC,MAAM,GAAGzD,yBAAK,CAACiG,IAAI,CAAChE,IAAI,EAAEuB,IAAI,CAAC,CAAA;AAAA,cAAA,OAAA9J,OAAA,CAAAC,OAAA,CAEjBuF,sBAAE,CAACC,QAAQ,CAACuE,IAAI,CAACD,MAAM,CAAC,CAAAjH,CAAAA,IAAA,WAAtC0J,KAAK,EAAA;AAAA,gBAAA,IAAAC,MAAA,CAAA;gBACX,IAAI,CAACD,KAAK,EAAE;AACV,kBAAA,OAAO,IAAI,CAAA;AACb,iBAAA;AAEA,gBAAA,IAAME,KAAK,GAAGF,KAAK,CAACvC,WAAW,EAAE,CAAA;gBAAA,OAC7ByC,KAAK,GACAZ,OAAO,CAAC;AAAEvD,kBAAAA,IAAI,EAAEwB,MAAAA;AAAO,iBAAC,CAAC,GAAA/J,OAAA,CAAAC,OAAA,CAGtBmM,eAAe,CAACrC,MAAM,CAAC,CAAAjH,CAAAA,IAAA,WAAA6J,iBAAA,EAAA;kBAAnC,IAAI,CAAAA,iBAAgC,EAAE;oBAAA,IAAAtK,MAAA,GAC7B,IAAI,CAAA;oBAAAoK,MAAA,GAAA,CAAA,CAAA;AAAA,oBAAA,OAAApK,MAAA,CAAA;AACb,mBAAA;AAEA,kBAAA,IAAIyH,IAAI,CAAC8C,QAAQ,CAAC,SAAS,CAAC,EAAE;AAC5B,oBAAA,OAAO,IAAI,CAAA;AACb,mBAAA;AACA,kBAAA,IAAMC,SAAS,GAAGC,YAAY,CAAChD,IAAI,CAAC,CAAA;AACpC,kBAAA,IAAI,CAACoC,iBAAiB,CAACU,QAAQ,CAACC,SAAS,CAAC,EAAE;AAC1C,oBAAA,OAAO,IAAI,CAAA;AACb,mBAAA;AAAC,kBAAA,IAEGb,WAAW,EAAA;AACb,oBAAA,IAAMe,MAAM,GAAGC,UAAU,CAACjD,MAAM,CAAC,CAAA;oBAAA,OAAA/J,OAAA,CAAAC,OAAA,CACX,sHAAO8J,MAAM,CAAC,CAAA,CAAAjH,IAAA,CAAA,UAA9BmK,OAAO,EAAA;sBACb,IAAMC,EAAE,GAAMH,MAAM,GAAK,KAAA,CAAA;sBACzB,IAAII,aAAa,GAAG,IAAI,CAAA;sBAAA,OAAAnN,OAAA,CAAAC,OAAA,CACbmM,eAAe,CAACc,EAAE,CAAC,CAAA,CAAApK,IAAA,CAAA,UAAAsK,iBAAA,EAAA;AAAA,wBAAA,SAAAC,MAAA,GAAA;AAI9B,0BAAA,OAAO,CAAC;AACNtJ,4BAAAA,MAAM,EAAEkJ,OAAO;AACf1E,4BAAAA,IAAI,EAAEwB,MAAM;AACZoD,4BAAAA,aAAa,EAAbA,aAAAA;AACF,2BAAC,CAAC,CAAA;AAAA,yBAAA;AAAA,wBAAA,IAAAG,MAAA,GAAA,YAAA;AAAA,0BAAA,IAAAF,iBAAA,EAAA;AAAA,4BAAA,OAAApN,OAAA,CAAAC,OAAA,CAPsBuF,sBAAE,CAACC,QAAQ,CAACG,QAAQ,CAACsH,EAAE,EAAE,MAAM,CAAC,CAAApK,CAAAA,IAAA,WAAAyK,qBAAA,EAAA;AAAtDJ,8BAAAA,aAAa,GAAAI,qBAAyC,CAAA;AAAA,6BAAA,CAAA,CAAA;AAAA,2BAAA;AAAA,yBAAA,EAAA,CAAA;AAAA,wBAAA,OAAAD,MAAA,IAAAA,MAAA,CAAAxK,IAAA,GAAAwK,MAAA,CAAAxK,IAAA,CAAAuK,MAAA,CAAAA,GAAAA,MAAA,CAAAC,MAAA,CAAA,CAAA;AAAA,uBAAA,CAAA,CAAA;AAAA,qBAAA,CAAA,CAAA;AAAA,mBAAA,MAAA;oBAAA,OAAAtN,OAAA,CAAAC,OAAA,CASzC,sHAAO8J,MAAM,CAAC,CAAA,CAAAjH,IAAA,CAAA,UAAA0F,OAAA,EAAA;sBAA7B,OAAO,CAAAA,OAAA,CAAwB,CAAA;AAAA,qBAAA,CAAA,CAAA;AAAA,mBAAA;AAAA,iBAAA,CAAA,CAAA;AAAA,eAAA,CAAA,CAAA;AAEnC,aAAC,QAAArI,CAAA,EAAA;AAAA,cAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,aAAA;AAAA,WAAA,CAAC,CAAC,CAAA,CAAA2C,IAAA,CAAA,UAAA0K,YAAA,EAAA;AA5CH,YAAA,IAAIC,OAAO,GAAGD,YAAA,CA4CT7J,MAAM,CAAC,UAAAtD,CAAC,EAAA;AAAA,cAAA,OAAIA,CAAC,CAAA;aAAC,CAAA,CAAA;AAEnBoN,YAAAA,OAAO,GAAGjG,qBAAC,CAACkG,OAAO,CAACD,OAAO,CAAC,CAAA;AAC5B,YAAA,OAAOA,OAAO,CAAA;AAAA,WAAA,CAAA,CAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;KACf,EAAA,UACMtN,CAAC,EAAE;AACR2H,MAAAA,OAAO,CAACjD,KAAK,CAAC1E,CAAC,CAAC,CAAA;AAChB,MAAA,OAAO,IAAI,CAAA;KACZ,CAAA,CAAA,CAAA;AACH,GAAC,QAAAA,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA,CAAA;AAED,IAAM2M,YAAY,GAAG,SAAfA,YAAYA,CAAGa,GAAG,EAAA;EAAA,OAAIA,GAAG,CAACC,KAAK,CAACD,GAAG,CAACE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAC3D,IAAMb,UAAU,GAAG,SAAbA,UAAUA,CAAGW,GAAG,EAAA;AAAA,EAAA,OAAIA,GAAG,CAAC3I,KAAK,CAAC,GAAG,CAAC,CAAC4I,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAACrB,IAAI,CAAC,GAAG,CAAC,CAAA;AAAA,CAAA;;AC7E/D,kBAAA,CAAA,UAAAzM,IAAA,EAAA;AAAA,EAAA,IAAwByI,IAAI,GAAAzI,IAAA,CAAJyI,IAAI,CAAQ;EAAA,IAAQ;IAC1C,IAAMuF,WAAW,GAAMvF,IAAI,GAAU,UAAA,CAAA;AAAA,IAAA,OAAAvI,OAAA,CAAAC,OAAA,CACnB8N,OAAuB,CAAC;AACxCxF,MAAAA,IAAI,EAAEuF,WAAW;AACjB9B,MAAAA,WAAW,EAAE,KAAA;AACf,KAAC,CAAC,CAAA,CAAAlJ,IAAA,CAAA,UAHEkL,KAAK,EAAA;MAITA,KAAK,GAAGA,KAAK,GAAGA,KAAK,CAAC5G,GAAG,CAAC,UAAA3E,CAAC,EAAA;AAAA,QAAA,OAAIA,CAAC,CAAQ,SAAA,CAAA,CAAA;AAAA,OAAA,CAAC,GAAG,EAAE,CAAA;AAC9C,MAAA,OAAOuL,KAAK,CAAA;AAAA,KAAA,CAAA,CAAA;AACd,GAAC,QAAA7N,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA;;ACVD;AAuBA,aAAA,CAAA,UAAA0C,KAAA,EAAA;AAAA,EAAA,IAAA/C,IAAA,GAAA+C,KAAA,cAAqD,EAAE,GAAAA,KAAA;IAA/B0F,IAAI,GAAAzI,IAAA,CAAJyI,IAAI;IAAE0F,UAAU,GAAAnO,IAAA,CAAVmO,UAAU;IAAEC,MAAM,GAAApO,IAAA,CAANoO,MAAM,CAAA;EAAA,IAAY;AAE1D;IACA,IAAIC,YAAY,GAAG5F,IAAI,CAAA;IACvB,IAAI,CAAC4F,YAAY,EAAE;AACjB,MAAA,IAAMC,EAAE,GAAG/H,gBAAgB,EAAE,CAAA;AAC7B8H,MAAAA,YAAY,GAAG7H,yBAAK,CAACC,OAAO,CAAC6H,EAAE,CAAC,CAAA;MAChCD,YAAY,GAAGA,YAAY,CAAC3H,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;AACpD,KAAA;IAGA,IAAI6H,kBAAkB,GAAGJ,UAAU,CAAA;IACnC,IAAI,CAACI,kBAAkB,EAAE;MACvB,IAAMC,GAAG,GAAGhI,yBAAK,CAACrG,OAAO,CAACkO,YAAY,EAAE,iBAAiB,CAAC,CAAA;AAC1D,MAAA,IAAI3I,sBAAE,CAAC+I,UAAU,CAACD,GAAG,CAAC,EAAE;AACtBD,QAAAA,kBAAkB,GAAGG,IAAI,CAACC,KAAK,CAACjJ,sBAAE,CAACkJ,YAAY,CAACJ,GAAG,CAAC,CAACK,QAAQ,EAAE,CAAC,CAAA;AAClE,OAAA;AACF,KAAA;IACA,IAAI,CAACN,kBAAkB,EAAE;AACvBA,MAAAA,kBAAkB,GAAG;AAAEO,QAAAA,OAAO,EAAE,OAAA;OAAS,CAAA;AAC3C,KAAA;IAEA,IAAIC,cAAc,GAAGX,MAAM,CAAA;IAC3B,IAAI,CAACW,cAAc,EAAE;MACnB,IAAMP,EAAG,GAAGhI,yBAAK,CAACrG,OAAO,CAACkO,YAAY,EAAE,oBAAoB,CAAC,CAAA;AAC7D,MAAA,IAAI3I,sBAAE,CAAC+I,UAAU,CAACD,EAAG,CAAC,EAAE;AACtBO,QAAAA,cAAc,GAAGL,IAAI,CAACC,KAAK,CAACjJ,sBAAE,CAACkJ,YAAY,CAACJ,EAAG,CAAC,CAACK,QAAQ,EAAE,CAAC,CAAA;AAC9D,OAAA;AACF,KAAA;IACA,IAAI,CAACE,cAAc,EAAE;MACnBA,cAAc,GAAG,EAAE,CAAA;AACrB,KAAA;AACA;;IAIA,IAAM5F,KAAK,GAAG6F,0BAAM,CAACC,eAAO,CAACjE,OAAO,CAAC9B,IAAI,CAAC,CAAC,CAAA;AAG3CC,IAAAA,KAAAA;AACE;AAAA,KACCwB,KAAK,CAAC,2BAA2B,CAAC,CAClCuE,aAAa,CAAC,CAAC,CAAC,CAChBC,IAAI,CAACC,IAAI,CAACC,GAAG,CAAClG,KAAK,CAACmG,aAAa,EAAE,EAAE,GAAG,CAAC,CAAC,CAC1CC,IAAI,CAAC,MAAM,CAAC,CACZjO,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAClBwN,OAAO,CAACP,kBAAkB,CAACO,OAAO,CAAC,CACnCxN,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CACrBkO,IAAI,CAAC,MAAM,CAAC,CACZA,IAAI,CAAC,SAAS,CAAC,CACfC,MAAM,CAAC,mBAAmB,CAAC,CAAA;AAAA,IAAA,OAAAvP,OAAA,CAAAC,OAAA,CAERuP,WAAW,CAAC;AAAEjH,MAAAA,IAAI,EAAE4F,YAAY;AAAED,MAAAA,MAAM,EAAEW,cAAAA;AAAe,KAAC,CAAC,CAAA,CAAA/L,IAAA,CAAA,UAA3EY,OAAO,EAAA;AAAA,MAAA,OAAA1D,OAAA,CAAAC,OAAA,CACPwP,gBAAgB,CAAC;AAAElH,QAAAA,IAAI,EAAE4F,YAAY;AAAElF,QAAAA,KAAK,EAALA,KAAK;AAAEiF,QAAAA,MAAM,EAAEW,cAAc;AAAEnL,QAAAA,OAAO,EAAPA,OAAAA;OAAS,CAAC,EAAAZ,IAAA,CAAA,YAAA,EAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAExF,GAAC,QAAA3C,CAAA,EAAA;AAAA,IAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,CAAA;;;;"}