diff --git a/dist/npm-to-yarn.mjs b/dist/npm-to-yarn.mjs index 0a95662..0942024 100644 --- a/dist/npm-to-yarn.mjs +++ b/dist/npm-to-yarn.mjs @@ -1,3 +1,58 @@ +import { codeToHtml } from 'shiki'; + +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ + +function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} + +function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +} + var unchangedCLICommands = [ 'test', 'login', @@ -632,6 +687,27 @@ function convert(str, to) { return str.replace(/npm(?: +([^&\n\r]*))?/gm, npmToYarn); } } +/** + * Returns highlighted html string + */ +function highlight(command, theme) { + if (theme === void 0) { theme = 'light'; } + return __awaiter(this, void 0, void 0, function () { + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, codeToHtml(command, { + lang: 'shell', + theme: "github-".concat(theme) + }).then(function (html) { + console.log(html); + })]; + case 1: + _a.sent(); + return [2 /*return*/]; + } + }); + }); +} -export { convert as default }; +export { convert, highlight }; //# sourceMappingURL=npm-to-yarn.mjs.map diff --git a/dist/npm-to-yarn.mjs.map b/dist/npm-to-yarn.mjs.map index 17e709e..d352649 100644 --- a/dist/npm-to-yarn.mjs.map +++ b/dist/npm-to-yarn.mjs.map @@ -1 +1 @@ -{"version":3,"file":"npm-to-yarn.mjs","sources":["../src/utils.ts","../src/command.ts","../src/yarnToNpm.ts","../src/npmToYarn.ts","../src/npmToPnpm.ts","../src/npmToBun.ts","../src/index.ts"],"sourcesContent":["export const unchangedCLICommands = [\n 'test',\n 'login',\n 'logout',\n 'link',\n 'unlink',\n 'publish',\n 'cache',\n 'start',\n 'stop',\n 'test'\n]\n\nexport const yarnCLICommands = [\n 'init',\n 'run',\n 'add',\n 'audit',\n 'autoclean',\n 'bin',\n 'check',\n 'config',\n 'create',\n 'dedupe',\n 'generate-lock-entry',\n 'global',\n 'help',\n 'import',\n 'info',\n 'install',\n 'licenses',\n 'list',\n 'lockfile',\n 'outdated',\n 'owner',\n 'pack',\n 'policies',\n 'prune',\n 'remove',\n 'self-update',\n 'tag',\n 'team',\n 'upgrade',\n 'upgrade-interactive',\n 'version',\n 'versions',\n 'why',\n 'workspace',\n 'workspaces'\n]\n\nexport const npmCLICommands = [\n 'init',\n 'run',\n 'access',\n 'adduser',\n 'audit',\n 'bin',\n 'bugs',\n 'build',\n 'bundle',\n 'ci',\n 'completion',\n 'config',\n 'dedupe',\n 'deprecate',\n 'dist-tag',\n 'docs',\n 'doctor',\n 'edit',\n 'explore',\n 'exec',\n 'fund',\n 'help-search',\n 'help',\n 'hook',\n 'install-ci-test',\n 'install-test',\n 'install',\n 'ls',\n 'list',\n 'npm',\n 'org',\n 'outdated',\n 'owner',\n 'pack',\n 'ping',\n 'prefix',\n 'profile',\n 'prune',\n 'rebuild',\n 'repo',\n 'restart',\n 'root',\n 'run-script',\n 'search',\n 'shrinkwrap',\n 'star',\n 'stars',\n 'start',\n 'stop',\n 'team',\n 'token',\n 'uninstall',\n 'unpublish',\n 'update',\n 'version',\n 'view',\n 'whoami'\n]\n","export function parse (command: string) {\n const args: string[] = []\n let lastQuote: string | false = false\n let escaped = false\n let part = ''\n for (let i = 0; i < command.length; ++i) {\n const char = command.charAt(i)\n if (char === '\\\\') {\n part += char\n escaped = true\n } else {\n if (char === ' ' && !lastQuote) {\n args.push(part)\n part = ''\n } else if (!escaped && (char === '\"' || char === \"'\")) {\n part += char\n if (char === lastQuote) {\n lastQuote = false\n } else if (!lastQuote) {\n lastQuote = char\n }\n } else {\n part += char\n }\n escaped = false\n }\n }\n args.push(part)\n return args\n}\n","import { unchangedCLICommands, yarnCLICommands } from './utils'\nimport { parse } from './command'\n\nfunction convertAddRemoveArgs (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--no-lockfile':\n return '--no-package-lock'\n case '--production':\n return '--save-prod'\n case '--dev':\n return '--save-dev'\n case '--optional':\n return '--save-optional'\n case '--exact':\n return '--save-exact'\n default:\n return item\n }\n })\n}\n\nconst yarnToNpmTable = {\n add (args: string[]) {\n if (args.length === 2 && args[1] === '--force') {\n return ['rebuild']\n }\n args[0] = 'install'\n return convertAddRemoveArgs(args)\n },\n remove (args: string[]) {\n args[0] = 'uninstall'\n return convertAddRemoveArgs(args)\n },\n version (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--major':\n return 'major'\n case '--minor':\n return 'minor'\n case '--patch':\n return 'patch'\n default:\n return item\n }\n })\n },\n install: 'install',\n list (args: string[]) {\n args[0] = 'ls'\n const patternIndex = args.findIndex(item => item === '--pattern')\n if (patternIndex >= 0 && args[patternIndex + 1]) {\n const packages = args[patternIndex + 1].replace(/[\"']([^\"']+)[\"']/, '$1').split('|')\n args.splice(patternIndex, 2, packages.join(' '))\n }\n return args\n },\n init: 'init',\n create: 'init',\n outdated: 'outdated',\n run: 'run',\n global (args: string[]) {\n switch (args[1]) {\n case 'add':\n args.shift()\n args = yarnToNpmTable.add(args)\n args.push('--global')\n return args\n case 'remove':\n args.shift()\n args = yarnToNpmTable.remove(args)\n args.push('--global')\n return args\n case 'list':\n args.shift()\n args = yarnToNpmTable.list(args)\n args.push('--global')\n return args\n // case 'bin':\n // case 'upgrade':\n default:\n args.push(\"\\n# couldn't auto-convert command\")\n return args\n }\n },\n pack (args: string[]) {\n return args.map(item => {\n if (item === '--filename') {\n return '--pack-destination'\n }\n return item\n })\n }\n}\n\nexport function yarnToNPM (_m: string, command: string): string {\n command = (command || '').trim()\n if (command === '') {\n return 'npm install'\n }\n let args = parse(command)\n const firstCommand = (/\\w+/.exec(command) || [''])[0]\n\n if (unchangedCLICommands.includes(args[0])) {\n return 'npm ' + command\n } else if (args[0] in yarnToNpmTable) {\n const converter = yarnToNpmTable[args[0] as keyof typeof yarnToNpmTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'npm ' + args.filter(Boolean).join(' ')\n } else if (!yarnCLICommands.includes(firstCommand)) {\n // i.e., yarn grunt -> npm run grunt\n return 'npm run ' + command\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { unchangedCLICommands, yarnCLICommands } from './utils'\nimport { parse } from './command'\n\nfunction convertInstallArgs (args: string[]) {\n if (args.includes('--global') || args.includes('-g')) {\n args.unshift('global')\n }\n\n return args.map(item => {\n switch (item) {\n case '--save-dev':\n case '-D':\n return '--dev'\n case '--save-prod':\n case '-P':\n return '--production'\n case '--no-package-lock':\n return '--no-lockfile'\n case '--save-optional':\n case '-O':\n return '--optional'\n case '--save-exact':\n case '-E':\n return '--exact'\n case '--save':\n case '-S':\n case '--global':\n case '-g':\n return ''\n default:\n return item\n }\n })\n}\n\nconst npmToYarnTable = {\n install (args: string[]) {\n if (args.length === 1) {\n return ['install']\n }\n args[0] = 'add'\n\n return convertInstallArgs(args)\n },\n i (args: string[]) {\n return npmToYarnTable.install(args)\n },\n uninstall (args: string[]) {\n args[0] = 'remove'\n\n return convertInstallArgs(args)\n },\n un (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n remove (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n r (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n rm (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n version (args: string[]) {\n return args.map(item => {\n switch (item) {\n case 'major':\n return '--major'\n case 'minor':\n return '--minor'\n case 'patch':\n return '--patch'\n default:\n return item\n }\n })\n },\n rb (args: string[]) {\n return npmToYarnTable.rebuild(args)\n },\n rebuild (args: string[]) {\n args[0] = 'add'\n args.push('--force')\n return args\n },\n run (args: string[]) {\n if (args[1] && !unchangedCLICommands.includes(args[1]) && !yarnCLICommands.includes(args[1])) {\n args.splice(0, 1)\n }\n return args\n },\n exec (args: string[]) {\n args[0] = 'run'\n return npmToYarnTable.run(args)\n },\n ls (args: string[]) {\n args[0] = 'list'\n\n let ended = false\n const packages = args.filter((item, id) => {\n if (id > 0 && !ended) {\n ended = item.startsWith('-')\n return !ended\n }\n return false\n })\n if (packages.length > 0) {\n args.splice(1, packages.length, '--pattern', '\"' + packages.join('|') + '\"')\n }\n return args\n },\n list (args: string[]) {\n return npmToYarnTable.ls(args)\n },\n init (args: string[]) {\n if (args[1] && !args[1].startsWith('-')) {\n args[0] = 'create'\n }\n return args.filter(item => item !== '--scope')\n },\n ln: 'link',\n t: 'test',\n tst: 'test',\n outdated: 'outdated',\n pack (args: string[]) {\n return args.map(item => {\n if (item.startsWith('--pack-destination')) {\n return item.replace(/^--pack-destination[\\s=]/, '--filename ')\n }\n return item\n })\n }\n}\n\nexport function npmToYarn (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n if (unchangedCLICommands.includes(args[0])) {\n return 'yarn ' + args.filter(Boolean).join(' ')\n } else if (args[0] in npmToYarnTable) {\n const converter = npmToYarnTable[args[0] as keyof typeof npmToYarnTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'yarn ' + args.filter(Boolean).join(' ')\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { parse } from './command'\n\nfunction convertPnpmInstallArgs (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--save':\n case '-S':\n return ''\n case '--no-package-lock':\n return '--frozen-lockfile'\n // case '--save-dev':\n // case '-D':\n // case '--save-prod':\n // case '-P':\n // case '--save-optional':\n // case '-O':\n // case '--save-exact':\n // case '-E':\n // case '--global':\n // case '-g':\n default:\n return item\n }\n })\n}\n\nfunction convertFilterArg (args: string[]) {\n if (args.length > 1) {\n const filter = args.filter((item, index) => index !== 0 && !item.startsWith('-'))\n if (filter.length > 0) {\n args = args.filter((item, index) => index === 0 || item.startsWith('-'))\n args.push('--filter')\n args.push(filter.join(' '))\n }\n }\n\n return args\n}\n\nconst npmToPnpmTable = {\n // ------------------------------\n install (args: string[]) {\n if (args.length > 1 && args.filter(item => !item.startsWith('-')).length > 1) {\n args[0] = 'add'\n }\n return convertPnpmInstallArgs(args)\n },\n i (args: string[]) {\n return npmToPnpmTable.install(args)\n },\n // ------------------------------\n uninstall (args: string[]) {\n args[0] = 'remove'\n\n return convertPnpmInstallArgs(args)\n },\n un (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n remove (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n r (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n rm (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n // ------------------------------\n rb (args: string[]) {\n return npmToPnpmTable.rebuild(args)\n },\n rebuild (args: string[]) {\n args[0] = 'rebuild'\n return convertFilterArg(args)\n },\n run: 'run',\n exec: 'exec',\n ls (args: string[]) {\n return npmToPnpmTable.list(args)\n },\n list (args: string[]) {\n return args.map(item => {\n if (item.startsWith('--depth=')) {\n return `--depth ${item.split('=')[1]}`\n }\n switch (item) {\n case '--production':\n return '--prod'\n case '--development':\n return '--dev'\n default:\n return item\n }\n })\n },\n init (args: string[]) {\n if (args[1] && !args[1].startsWith('-')) {\n args[0] = 'create'\n }\n return args.filter(item => item !== '--scope')\n },\n ln: 'link',\n t: 'test',\n test: 'test',\n tst: 'test',\n start: 'start',\n link: 'link',\n unlink (args: string[]) {\n return convertFilterArg(args)\n },\n outdated: 'outdated',\n pack: (args: string[]) => {\n return args.map(item => {\n if (item.startsWith('--pack-destination')) {\n return item.replace(/^--pack-destination[\\s=]/, '--pack-destination ')\n }\n return item\n })\n }\n}\n\nexport function npmToPnpm (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n if (args[0] in npmToPnpmTable) {\n const converter = npmToPnpmTable[args[0] as keyof typeof npmToPnpmTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'pnpm ' + args.filter(Boolean).join(' ')\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { parse } from './command'\n\nfunction convertInstallArgs (args: string[]) {\n // bun uses -g and --global flags\n // bun mostly conforms to Yarn's CLI\n return args.map(item => {\n switch (item) {\n case '--save-dev':\n case '--development':\n case '-D':\n return '--dev'\n case '--save-prod':\n case '-P':\n return '--production'\n case '--no-package-lock':\n return '--no-save'\n case '--save-optional':\n case '-O':\n return '--optional'\n case '--save-exact':\n case '-E':\n return '--exact'\n case '--save':\n case '-S':\n // this is default in bun\n return ''\n case '--global':\n case '-g':\n return '--global'\n default:\n return item\n }\n })\n}\n\nexport const bunCLICommands = [\n 'init',\n 'run',\n 'add',\n 'pm',\n 'help',\n 'install',\n 'remove',\n 'upgrade',\n 'version'\n] as const\ntype bunCLICommands = typeof bunCLICommands[number]\n\nexport function npmToBun (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n let cmd = 'bun'\n switch (args[0]) {\n case 'install':\n case 'i':\n if (args.length === 1) {\n args = ['install']\n } else {\n args[0] = 'add'\n }\n args = convertInstallArgs(args)\n break\n case 'uninstall':\n case 'un':\n case 'remove':\n case 'r':\n case 'rm':\n args[0] = 'remove'\n args = convertInstallArgs(args)\n break\n case 'cache':\n if (args[1] === 'clean') {\n args = ['pm', 'cache', 'rm'].concat(args.slice(2))\n } else {\n cmd = 'npm'\n }\n break\n case 'rebuild':\n case 'rb':\n args[0] = 'add'\n args.push('--force')\n break\n case 'run':\n break\n case 'list':\n case 'ls':\n // 'npm ls' => 'bun pm ls'\n args = convertInstallArgs(args)\n args[0] = 'ls'\n args.unshift('pm')\n break\n case 'init':\n case 'create':\n if (args[1]) {\n if (args[1].startsWith('@')) {\n cmd = 'bunx'\n\n args[1] = args[1].replace('/', '/create-')\n args = args.slice(1)\n } else if (!args[1].startsWith('-')) {\n cmd = 'bunx'\n args[1] = `create-${args[1]}`\n args = args.slice(1)\n } else {\n args[0] = 'init'\n }\n }\n break\n\n case 'link':\n case 'ln':\n args = convertInstallArgs(args)\n args[0] = 'link'\n break\n case 'stop':\n case 'start':\n case 'unlink':\n break\n case 'test':\n case 't':\n case 'tst':\n args[0] = 'test'\n args.unshift('run')\n break\n case 'exec':\n cmd = 'bunx'\n args.splice(0, 1)\n break\n default:\n // null == keep `npm` command\n cmd = 'npm'\n break\n }\n\n const filtered = args.filter(Boolean).filter(arg => arg !== '--')\n return `${cmd} ${filtered.join(' ')}${\n cmd === 'npm' ? \"\\n# couldn't auto-convert command\" : ''\n }`.replace('=', ' ')\n}\n","import { yarnToNPM } from './yarnToNpm'\nimport { npmToYarn } from './npmToYarn'\nimport { npmToPnpm } from './npmToPnpm'\nimport { npmToBun } from './npmToBun'\n\n/**\n * Converts between npm and yarn command\n */\nexport default function convert (str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun'): string {\n if (to === 'npm') {\n return str.replace(/yarn(?: +([^&\\n\\r]*))?/gm, yarnToNPM)\n } else if (to === 'pnpm') {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToPnpm)\n } else if (to === 'bun') {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToBun)\n } else {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToYarn)\n }\n}\n"],"names":["convertInstallArgs"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"npm-to-yarn.mjs","sources":["../node_modules/tslib/tslib.es6.js","../src/utils.ts","../src/command.ts","../src/yarnToNpm.ts","../src/npmToYarn.ts","../src/npmToPnpm.ts","../src/npmToBun.ts","../src/index.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","export const unchangedCLICommands = [\n 'test',\n 'login',\n 'logout',\n 'link',\n 'unlink',\n 'publish',\n 'cache',\n 'start',\n 'stop',\n 'test'\n]\n\nexport const yarnCLICommands = [\n 'init',\n 'run',\n 'add',\n 'audit',\n 'autoclean',\n 'bin',\n 'check',\n 'config',\n 'create',\n 'dedupe',\n 'generate-lock-entry',\n 'global',\n 'help',\n 'import',\n 'info',\n 'install',\n 'licenses',\n 'list',\n 'lockfile',\n 'outdated',\n 'owner',\n 'pack',\n 'policies',\n 'prune',\n 'remove',\n 'self-update',\n 'tag',\n 'team',\n 'upgrade',\n 'upgrade-interactive',\n 'version',\n 'versions',\n 'why',\n 'workspace',\n 'workspaces'\n]\n\nexport const npmCLICommands = [\n 'init',\n 'run',\n 'access',\n 'adduser',\n 'audit',\n 'bin',\n 'bugs',\n 'build',\n 'bundle',\n 'ci',\n 'completion',\n 'config',\n 'dedupe',\n 'deprecate',\n 'dist-tag',\n 'docs',\n 'doctor',\n 'edit',\n 'explore',\n 'exec',\n 'fund',\n 'help-search',\n 'help',\n 'hook',\n 'install-ci-test',\n 'install-test',\n 'install',\n 'ls',\n 'list',\n 'npm',\n 'org',\n 'outdated',\n 'owner',\n 'pack',\n 'ping',\n 'prefix',\n 'profile',\n 'prune',\n 'rebuild',\n 'repo',\n 'restart',\n 'root',\n 'run-script',\n 'search',\n 'shrinkwrap',\n 'star',\n 'stars',\n 'start',\n 'stop',\n 'team',\n 'token',\n 'uninstall',\n 'unpublish',\n 'update',\n 'version',\n 'view',\n 'whoami'\n]\n","export function parse (command: string) {\n const args: string[] = []\n let lastQuote: string | false = false\n let escaped = false\n let part = ''\n for (let i = 0; i < command.length; ++i) {\n const char = command.charAt(i)\n if (char === '\\\\') {\n part += char\n escaped = true\n } else {\n if (char === ' ' && !lastQuote) {\n args.push(part)\n part = ''\n } else if (!escaped && (char === '\"' || char === \"'\")) {\n part += char\n if (char === lastQuote) {\n lastQuote = false\n } else if (!lastQuote) {\n lastQuote = char\n }\n } else {\n part += char\n }\n escaped = false\n }\n }\n args.push(part)\n return args\n}\n","import { unchangedCLICommands, yarnCLICommands } from './utils'\nimport { parse } from './command'\n\nfunction convertAddRemoveArgs (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--no-lockfile':\n return '--no-package-lock'\n case '--production':\n return '--save-prod'\n case '--dev':\n return '--save-dev'\n case '--optional':\n return '--save-optional'\n case '--exact':\n return '--save-exact'\n default:\n return item\n }\n })\n}\n\nconst yarnToNpmTable = {\n add (args: string[]) {\n if (args.length === 2 && args[1] === '--force') {\n return ['rebuild']\n }\n args[0] = 'install'\n return convertAddRemoveArgs(args)\n },\n remove (args: string[]) {\n args[0] = 'uninstall'\n return convertAddRemoveArgs(args)\n },\n version (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--major':\n return 'major'\n case '--minor':\n return 'minor'\n case '--patch':\n return 'patch'\n default:\n return item\n }\n })\n },\n install: 'install',\n list (args: string[]) {\n args[0] = 'ls'\n const patternIndex = args.findIndex(item => item === '--pattern')\n if (patternIndex >= 0 && args[patternIndex + 1]) {\n const packages = args[patternIndex + 1].replace(/[\"']([^\"']+)[\"']/, '$1').split('|')\n args.splice(patternIndex, 2, packages.join(' '))\n }\n return args\n },\n init: 'init',\n create: 'init',\n outdated: 'outdated',\n run: 'run',\n global (args: string[]) {\n switch (args[1]) {\n case 'add':\n args.shift()\n args = yarnToNpmTable.add(args)\n args.push('--global')\n return args\n case 'remove':\n args.shift()\n args = yarnToNpmTable.remove(args)\n args.push('--global')\n return args\n case 'list':\n args.shift()\n args = yarnToNpmTable.list(args)\n args.push('--global')\n return args\n // case 'bin':\n // case 'upgrade':\n default:\n args.push(\"\\n# couldn't auto-convert command\")\n return args\n }\n },\n pack (args: string[]) {\n return args.map(item => {\n if (item === '--filename') {\n return '--pack-destination'\n }\n return item\n })\n }\n}\n\nexport function yarnToNPM (_m: string, command: string): string {\n command = (command || '').trim()\n if (command === '') {\n return 'npm install'\n }\n let args = parse(command)\n const firstCommand = (/\\w+/.exec(command) || [''])[0]\n\n if (unchangedCLICommands.includes(args[0])) {\n return 'npm ' + command\n } else if (args[0] in yarnToNpmTable) {\n const converter = yarnToNpmTable[args[0] as keyof typeof yarnToNpmTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'npm ' + args.filter(Boolean).join(' ')\n } else if (!yarnCLICommands.includes(firstCommand)) {\n // i.e., yarn grunt -> npm run grunt\n return 'npm run ' + command\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { unchangedCLICommands, yarnCLICommands } from './utils'\nimport { parse } from './command'\n\nfunction convertInstallArgs (args: string[]) {\n if (args.includes('--global') || args.includes('-g')) {\n args.unshift('global')\n }\n\n return args.map(item => {\n switch (item) {\n case '--save-dev':\n case '-D':\n return '--dev'\n case '--save-prod':\n case '-P':\n return '--production'\n case '--no-package-lock':\n return '--no-lockfile'\n case '--save-optional':\n case '-O':\n return '--optional'\n case '--save-exact':\n case '-E':\n return '--exact'\n case '--save':\n case '-S':\n case '--global':\n case '-g':\n return ''\n default:\n return item\n }\n })\n}\n\nconst npmToYarnTable = {\n install (args: string[]) {\n if (args.length === 1) {\n return ['install']\n }\n args[0] = 'add'\n\n return convertInstallArgs(args)\n },\n i (args: string[]) {\n return npmToYarnTable.install(args)\n },\n uninstall (args: string[]) {\n args[0] = 'remove'\n\n return convertInstallArgs(args)\n },\n un (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n remove (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n r (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n rm (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n version (args: string[]) {\n return args.map(item => {\n switch (item) {\n case 'major':\n return '--major'\n case 'minor':\n return '--minor'\n case 'patch':\n return '--patch'\n default:\n return item\n }\n })\n },\n rb (args: string[]) {\n return npmToYarnTable.rebuild(args)\n },\n rebuild (args: string[]) {\n args[0] = 'add'\n args.push('--force')\n return args\n },\n run (args: string[]) {\n if (args[1] && !unchangedCLICommands.includes(args[1]) && !yarnCLICommands.includes(args[1])) {\n args.splice(0, 1)\n }\n return args\n },\n exec (args: string[]) {\n args[0] = 'run'\n return npmToYarnTable.run(args)\n },\n ls (args: string[]) {\n args[0] = 'list'\n\n let ended = false\n const packages = args.filter((item, id) => {\n if (id > 0 && !ended) {\n ended = item.startsWith('-')\n return !ended\n }\n return false\n })\n if (packages.length > 0) {\n args.splice(1, packages.length, '--pattern', '\"' + packages.join('|') + '\"')\n }\n return args\n },\n list (args: string[]) {\n return npmToYarnTable.ls(args)\n },\n init (args: string[]) {\n if (args[1] && !args[1].startsWith('-')) {\n args[0] = 'create'\n }\n return args.filter(item => item !== '--scope')\n },\n ln: 'link',\n t: 'test',\n tst: 'test',\n outdated: 'outdated',\n pack (args: string[]) {\n return args.map(item => {\n if (item.startsWith('--pack-destination')) {\n return item.replace(/^--pack-destination[\\s=]/, '--filename ')\n }\n return item\n })\n }\n}\n\nexport function npmToYarn (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n if (unchangedCLICommands.includes(args[0])) {\n return 'yarn ' + args.filter(Boolean).join(' ')\n } else if (args[0] in npmToYarnTable) {\n const converter = npmToYarnTable[args[0] as keyof typeof npmToYarnTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'yarn ' + args.filter(Boolean).join(' ')\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { parse } from './command'\n\nfunction convertPnpmInstallArgs (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--save':\n case '-S':\n return ''\n case '--no-package-lock':\n return '--frozen-lockfile'\n // case '--save-dev':\n // case '-D':\n // case '--save-prod':\n // case '-P':\n // case '--save-optional':\n // case '-O':\n // case '--save-exact':\n // case '-E':\n // case '--global':\n // case '-g':\n default:\n return item\n }\n })\n}\n\nfunction convertFilterArg (args: string[]) {\n if (args.length > 1) {\n const filter = args.filter((item, index) => index !== 0 && !item.startsWith('-'))\n if (filter.length > 0) {\n args = args.filter((item, index) => index === 0 || item.startsWith('-'))\n args.push('--filter')\n args.push(filter.join(' '))\n }\n }\n\n return args\n}\n\nconst npmToPnpmTable = {\n // ------------------------------\n install (args: string[]) {\n if (args.length > 1 && args.filter(item => !item.startsWith('-')).length > 1) {\n args[0] = 'add'\n }\n return convertPnpmInstallArgs(args)\n },\n i (args: string[]) {\n return npmToPnpmTable.install(args)\n },\n // ------------------------------\n uninstall (args: string[]) {\n args[0] = 'remove'\n\n return convertPnpmInstallArgs(args)\n },\n un (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n remove (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n r (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n rm (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n // ------------------------------\n rb (args: string[]) {\n return npmToPnpmTable.rebuild(args)\n },\n rebuild (args: string[]) {\n args[0] = 'rebuild'\n return convertFilterArg(args)\n },\n run: 'run',\n exec: 'exec',\n ls (args: string[]) {\n return npmToPnpmTable.list(args)\n },\n list (args: string[]) {\n return args.map(item => {\n if (item.startsWith('--depth=')) {\n return `--depth ${item.split('=')[1]}`\n }\n switch (item) {\n case '--production':\n return '--prod'\n case '--development':\n return '--dev'\n default:\n return item\n }\n })\n },\n init (args: string[]) {\n if (args[1] && !args[1].startsWith('-')) {\n args[0] = 'create'\n }\n return args.filter(item => item !== '--scope')\n },\n ln: 'link',\n t: 'test',\n test: 'test',\n tst: 'test',\n start: 'start',\n link: 'link',\n unlink (args: string[]) {\n return convertFilterArg(args)\n },\n outdated: 'outdated',\n pack: (args: string[]) => {\n return args.map(item => {\n if (item.startsWith('--pack-destination')) {\n return item.replace(/^--pack-destination[\\s=]/, '--pack-destination ')\n }\n return item\n })\n }\n}\n\nexport function npmToPnpm (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n if (args[0] in npmToPnpmTable) {\n const converter = npmToPnpmTable[args[0] as keyof typeof npmToPnpmTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'pnpm ' + args.filter(Boolean).join(' ')\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { parse } from './command'\n\nfunction convertInstallArgs (args: string[]) {\n // bun uses -g and --global flags\n // bun mostly conforms to Yarn's CLI\n return args.map(item => {\n switch (item) {\n case '--save-dev':\n case '--development':\n case '-D':\n return '--dev'\n case '--save-prod':\n case '-P':\n return '--production'\n case '--no-package-lock':\n return '--no-save'\n case '--save-optional':\n case '-O':\n return '--optional'\n case '--save-exact':\n case '-E':\n return '--exact'\n case '--save':\n case '-S':\n // this is default in bun\n return ''\n case '--global':\n case '-g':\n return '--global'\n default:\n return item\n }\n })\n}\n\nexport const bunCLICommands = [\n 'init',\n 'run',\n 'add',\n 'pm',\n 'help',\n 'install',\n 'remove',\n 'upgrade',\n 'version'\n] as const\ntype bunCLICommands = typeof bunCLICommands[number]\n\nexport function npmToBun (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n let cmd = 'bun'\n switch (args[0]) {\n case 'install':\n case 'i':\n if (args.length === 1) {\n args = ['install']\n } else {\n args[0] = 'add'\n }\n args = convertInstallArgs(args)\n break\n case 'uninstall':\n case 'un':\n case 'remove':\n case 'r':\n case 'rm':\n args[0] = 'remove'\n args = convertInstallArgs(args)\n break\n case 'cache':\n if (args[1] === 'clean') {\n args = ['pm', 'cache', 'rm'].concat(args.slice(2))\n } else {\n cmd = 'npm'\n }\n break\n case 'rebuild':\n case 'rb':\n args[0] = 'add'\n args.push('--force')\n break\n case 'run':\n break\n case 'list':\n case 'ls':\n // 'npm ls' => 'bun pm ls'\n args = convertInstallArgs(args)\n args[0] = 'ls'\n args.unshift('pm')\n break\n case 'init':\n case 'create':\n if (args[1]) {\n if (args[1].startsWith('@')) {\n cmd = 'bunx'\n\n args[1] = args[1].replace('/', '/create-')\n args = args.slice(1)\n } else if (!args[1].startsWith('-')) {\n cmd = 'bunx'\n args[1] = `create-${args[1]}`\n args = args.slice(1)\n } else {\n args[0] = 'init'\n }\n }\n break\n\n case 'link':\n case 'ln':\n args = convertInstallArgs(args)\n args[0] = 'link'\n break\n case 'stop':\n case 'start':\n case 'unlink':\n break\n case 'test':\n case 't':\n case 'tst':\n args[0] = 'test'\n args.unshift('run')\n break\n case 'exec':\n cmd = 'bunx'\n args.splice(0, 1)\n break\n default:\n // null == keep `npm` command\n cmd = 'npm'\n break\n }\n\n const filtered = args.filter(Boolean).filter(arg => arg !== '--')\n return `${cmd} ${filtered.join(' ')}${\n cmd === 'npm' ? \"\\n# couldn't auto-convert command\" : ''\n }`.replace('=', ' ')\n}\n","import { yarnToNPM } from './yarnToNpm'\nimport { npmToYarn } from './npmToYarn'\nimport { npmToPnpm } from './npmToPnpm'\nimport { npmToBun } from './npmToBun'\n\nimport { codeToHtml } from 'shiki'\n\n/**\n * Converts between npm and yarn command\n */\nexport function convert (str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun'): string {\n if (to === 'npm') {\n return str.replace(/yarn(?: +([^&\\n\\r]*))?/gm, yarnToNPM)\n } else if (to === 'pnpm') {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToPnpm)\n } else if (to === 'bun') {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToBun)\n } else {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToYarn)\n }\n}\n\n/**\n * Returns highlighted html string\n */\nexport async function highlight (command: string, theme: 'light' | 'dark' = 'light') {\n await codeToHtml(command, {\n lang: 'shell',\n theme: `github-${theme}`\n }).then((html) => {\n console.log(html)\n })\n}"],"names":["convertInstallArgs"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAqDA;AACO,SAAS,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;AAC7D,IAAI,SAAS,KAAK,CAAC,KAAK,EAAE,EAAE,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;AAChH,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM,EAAE;AAC/D,QAAQ,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;AACnG,QAAQ,SAAS,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;AACtG,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;AACtH,QAAQ,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9E,KAAK,CAAC,CAAC;AACP,CAAC;AACD;AACO,SAAS,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE;AAC3C,IAAI,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACrH,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC7J,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;AACtE,IAAI,SAAS,IAAI,CAAC,EAAE,EAAE;AACtB,QAAQ,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;AACtE,QAAQ,OAAO,CAAC,EAAE,IAAI;AACtB,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AACzK,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AACpD,YAAY,QAAQ,EAAE,CAAC,CAAC,CAAC;AACzB,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM;AAC9C,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACxE,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;AACjE,gBAAgB,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;AACjE,gBAAgB;AAChB,oBAAoB,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;AAChI,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;AAC1G,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;AACzF,oBAAoB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;AACvF,oBAAoB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AAC1C,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;AAC3C,aAAa;AACb,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AACvC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;AAClE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACzF,KAAK;AACL;;ACvGO,IAAM,oBAAoB,GAAG;IAClC,MAAM;IACN,OAAO;IACP,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;CACP,CAAA;AAEM,IAAM,eAAe,GAAG;IAC7B,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,WAAW;IACX,KAAK;IACL,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,qBAAqB;IACrB,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,MAAM;IACN,SAAS;IACT,UAAU;IACV,MAAM;IACN,UAAU;IACV,UAAU;IACV,OAAO;IACP,MAAM;IACN,UAAU;IACV,OAAO;IACP,QAAQ;IACR,aAAa;IACb,KAAK;IACL,MAAM;IACN,SAAS;IACT,qBAAqB;IACrB,SAAS;IACT,UAAU;IACV,KAAK;IACL,WAAW;IACX,YAAY;CACb;;ACjDK,SAAU,KAAK,CAAE,OAAe,EAAA;IACpC,IAAM,IAAI,GAAa,EAAE,CAAA;IACzB,IAAI,SAAS,GAAmB,KAAK,CAAA;IACrC,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,IAAI,GAAG,EAAE,CAAA;AACb,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;QACvC,IAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC9B,IAAI,IAAI,KAAK,IAAI,EAAE;YACjB,IAAI,IAAI,IAAI,CAAA;YACZ,OAAO,GAAG,IAAI,CAAA;AACf,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE;AAC9B,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACf,IAAI,GAAG,EAAE,CAAA;AACV,aAAA;AAAM,iBAAA,IAAI,CAAC,OAAO,KAAK,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,EAAE;gBACrD,IAAI,IAAI,IAAI,CAAA;gBACZ,IAAI,IAAI,KAAK,SAAS,EAAE;oBACtB,SAAS,GAAG,KAAK,CAAA;AAClB,iBAAA;qBAAM,IAAI,CAAC,SAAS,EAAE;oBACrB,SAAS,GAAG,IAAI,CAAA;AACjB,iBAAA;AACF,aAAA;AAAM,iBAAA;gBACL,IAAI,IAAI,IAAI,CAAA;AACb,aAAA;YACD,OAAO,GAAG,KAAK,CAAA;AAChB,SAAA;AACF,KAAA;AACD,IAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACf,IAAA,OAAO,IAAI,CAAA;AACb;;AC1BA,SAAS,oBAAoB,CAAE,IAAc,EAAA;AAC3C,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,QAAA,QAAQ,IAAI;AACV,YAAA,KAAK,eAAe;AAClB,gBAAA,OAAO,mBAAmB,CAAA;AAC5B,YAAA,KAAK,cAAc;AACjB,gBAAA,OAAO,aAAa,CAAA;AACtB,YAAA,KAAK,OAAO;AACV,gBAAA,OAAO,YAAY,CAAA;AACrB,YAAA,KAAK,YAAY;AACf,gBAAA,OAAO,iBAAiB,CAAA;AAC1B,YAAA,KAAK,SAAS;AACZ,gBAAA,OAAO,cAAc,CAAA;AACvB,YAAA;AACE,gBAAA,OAAO,IAAI,CAAA;AACd,SAAA;AACH,KAAC,CAAC,CAAA;AACJ,CAAC;AAED,IAAM,cAAc,GAAG;AACrB,IAAA,GAAG,YAAE,IAAc,EAAA;AACjB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;YAC9C,OAAO,CAAC,SAAS,CAAC,CAAA;AACnB,SAAA;AACD,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;AACnB,QAAA,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAA;KAClC;AACD,IAAA,MAAM,YAAE,IAAc,EAAA;AACpB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;AACrB,QAAA,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAA;KAClC;AACD,IAAA,OAAO,YAAE,IAAc,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,YAAA,QAAQ,IAAI;AACV,gBAAA,KAAK,SAAS;AACZ,oBAAA,OAAO,OAAO,CAAA;AAChB,gBAAA,KAAK,SAAS;AACZ,oBAAA,OAAO,OAAO,CAAA;AAChB,gBAAA,KAAK,SAAS;AACZ,oBAAA,OAAO,OAAO,CAAA;AAChB,gBAAA;AACE,oBAAA,OAAO,IAAI,CAAA;AACd,aAAA;AACH,SAAC,CAAC,CAAA;KACH;AACD,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,IAAI,YAAE,IAAc,EAAA;AAClB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;AACd,QAAA,IAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,UAAA,IAAI,EAAI,EAAA,OAAA,IAAI,KAAK,WAAW,CAApB,EAAoB,CAAC,CAAA;QACjE,IAAI,YAAY,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,EAAE;YAC/C,IAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACpF,YAAA,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACjD,SAAA;AACD,QAAA,OAAO,IAAI,CAAA;KACZ;AACD,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,MAAM,EAAE,MAAM;AACd,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,MAAM,YAAE,IAAc,EAAA;AACpB,QAAA,QAAQ,IAAI,CAAC,CAAC,CAAC;AACb,YAAA,KAAK,KAAK;gBACR,IAAI,CAAC,KAAK,EAAE,CAAA;AACZ,gBAAA,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AAC/B,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AACrB,gBAAA,OAAO,IAAI,CAAA;AACb,YAAA,KAAK,QAAQ;gBACX,IAAI,CAAC,KAAK,EAAE,CAAA;AACZ,gBAAA,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AAClC,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AACrB,gBAAA,OAAO,IAAI,CAAA;AACb,YAAA,KAAK,MAAM;gBACT,IAAI,CAAC,KAAK,EAAE,CAAA;AACZ,gBAAA,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAChC,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AACrB,gBAAA,OAAO,IAAI,CAAA;;;AAGb,YAAA;AACE,gBAAA,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;AAC9C,gBAAA,OAAO,IAAI,CAAA;AACd,SAAA;KACF;AACD,IAAA,IAAI,YAAE,IAAc,EAAA;AAClB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;YAClB,IAAI,IAAI,KAAK,YAAY,EAAE;AACzB,gBAAA,OAAO,oBAAoB,CAAA;AAC5B,aAAA;AACD,YAAA,OAAO,IAAI,CAAA;AACb,SAAC,CAAC,CAAA;KACH;CACF,CAAA;AAEe,SAAA,SAAS,CAAE,EAAU,EAAE,OAAe,EAAA;IACpD,OAAO,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAA;IAChC,IAAI,OAAO,KAAK,EAAE,EAAE;AAClB,QAAA,OAAO,aAAa,CAAA;AACrB,KAAA;AACD,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;AACzB,IAAA,IAAM,YAAY,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAErD,IAAI,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;QAC1C,OAAO,MAAM,GAAG,OAAO,CAAA;AACxB,KAAA;AAAM,SAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE;QACpC,IAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAgC,CAAC,CAAA;AAExE,QAAA,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;AACnC,YAAA,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;AACvB,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;AACpB,SAAA;AAED,QAAA,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC/C,KAAA;AAAM,SAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;;QAElD,OAAO,UAAU,GAAG,OAAO,CAAA;AAC5B,KAAA;AAAM,SAAA;AACL,QAAA,OAAO,MAAM,GAAG,OAAO,GAAG,mCAAmC,CAAA;AAC9D,KAAA;AACH;;ACvHA,SAASA,oBAAkB,CAAE,IAAc,EAAA;AACzC,IAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AACpD,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;AACvB,KAAA;AAED,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,QAAA,QAAQ,IAAI;AACV,YAAA,KAAK,YAAY,CAAC;AAClB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,OAAO,CAAA;AAChB,YAAA,KAAK,aAAa,CAAC;AACnB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,cAAc,CAAA;AACvB,YAAA,KAAK,mBAAmB;AACtB,gBAAA,OAAO,eAAe,CAAA;AACxB,YAAA,KAAK,iBAAiB,CAAC;AACvB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,YAAY,CAAA;AACrB,YAAA,KAAK,cAAc,CAAC;AACpB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,SAAS,CAAA;AAClB,YAAA,KAAK,QAAQ,CAAC;AACd,YAAA,KAAK,IAAI,CAAC;AACV,YAAA,KAAK,UAAU,CAAC;AAChB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,EAAE,CAAA;AACX,YAAA;AACE,gBAAA,OAAO,IAAI,CAAA;AACd,SAAA;AACH,KAAC,CAAC,CAAA;AACJ,CAAC;AAED,IAAM,cAAc,GAAG;AACrB,IAAA,OAAO,YAAE,IAAc,EAAA;AACrB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,CAAC,SAAS,CAAC,CAAA;AACnB,SAAA;AACD,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;AAEf,QAAA,OAAOA,oBAAkB,CAAC,IAAI,CAAC,CAAA;KAChC;AACD,IAAA,CAAC,YAAE,IAAc,EAAA;AACf,QAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;KACpC;AACD,IAAA,SAAS,YAAE,IAAc,EAAA;AACvB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;AAElB,QAAA,OAAOA,oBAAkB,CAAC,IAAI,CAAC,CAAA;KAChC;AACD,IAAA,EAAE,YAAE,IAAc,EAAA;AAChB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;KACtC;AACD,IAAA,MAAM,YAAE,IAAc,EAAA;AACpB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;KACtC;AACD,IAAA,CAAC,YAAE,IAAc,EAAA;AACf,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;KACtC;AACD,IAAA,EAAE,YAAE,IAAc,EAAA;AAChB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;KACtC;AACD,IAAA,OAAO,YAAE,IAAc,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,YAAA,QAAQ,IAAI;AACV,gBAAA,KAAK,OAAO;AACV,oBAAA,OAAO,SAAS,CAAA;AAClB,gBAAA,KAAK,OAAO;AACV,oBAAA,OAAO,SAAS,CAAA;AAClB,gBAAA,KAAK,OAAO;AACV,oBAAA,OAAO,SAAS,CAAA;AAClB,gBAAA;AACE,oBAAA,OAAO,IAAI,CAAA;AACd,aAAA;AACH,SAAC,CAAC,CAAA;KACH;AACD,IAAA,EAAE,YAAE,IAAc,EAAA;AAChB,QAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;KACpC;AACD,IAAA,OAAO,YAAE,IAAc,EAAA;AACrB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;AACf,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACpB,QAAA,OAAO,IAAI,CAAA;KACZ;AACD,IAAA,GAAG,YAAE,IAAc,EAAA;QACjB,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;AAC5F,YAAA,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAClB,SAAA;AACD,QAAA,OAAO,IAAI,CAAA;KACZ;AACD,IAAA,IAAI,YAAE,IAAc,EAAA;AAClB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;AACf,QAAA,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;KAChC;AACD,IAAA,EAAE,YAAE,IAAc,EAAA;AAChB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;QAEhB,IAAI,KAAK,GAAG,KAAK,CAAA;QACjB,IAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,EAAE,EAAA;AACpC,YAAA,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE;AACpB,gBAAA,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;gBAC5B,OAAO,CAAC,KAAK,CAAA;AACd,aAAA;AACD,YAAA,OAAO,KAAK,CAAA;AACd,SAAC,CAAC,CAAA;AACF,QAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAA;AAC7E,SAAA;AACD,QAAA,OAAO,IAAI,CAAA;KACZ;AACD,IAAA,IAAI,YAAE,IAAc,EAAA;AAClB,QAAA,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;KAC/B;AACD,IAAA,IAAI,YAAE,IAAc,EAAA;AAClB,QAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AACvC,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;AACnB,SAAA;AACD,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,UAAA,IAAI,EAAA,EAAI,OAAA,IAAI,KAAK,SAAS,CAAlB,EAAkB,CAAC,CAAA;KAC/C;AACD,IAAA,EAAE,EAAE,MAAM;AACV,IAAA,CAAC,EAAE,MAAM;AACT,IAAA,GAAG,EAAE,MAAM;AACX,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,IAAI,YAAE,IAAc,EAAA;AAClB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE;gBACzC,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAA;AAC/D,aAAA;AACD,YAAA,OAAO,IAAI,CAAA;AACb,SAAC,CAAC,CAAA;KACH;CACF,CAAA;AAEe,SAAA,SAAS,CAAE,EAAU,EAAE,OAAe,EAAA;AACpD,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AAExC,IAAA,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAA,CAAC,EAAI,EAAA,OAAA,CAAC,KAAK,IAAI,CAAV,EAAU,CAAC,CAAA;IAC7C,IAAI,KAAK,IAAI,CAAC,EAAE;AACd,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;AACtB,KAAA;IAED,IAAI,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;AAC1C,QAAA,OAAO,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAChD,KAAA;AAAM,SAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE;QACpC,IAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAgC,CAAC,CAAA;AAExE,QAAA,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;AACnC,YAAA,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;AACvB,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;AACpB,SAAA;AAED,QAAA,OAAO,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAChD,KAAA;AAAM,SAAA;AACL,QAAA,OAAO,MAAM,GAAG,OAAO,GAAG,mCAAmC,CAAA;AAC9D,KAAA;AACH;;AC5JA,SAAS,sBAAsB,CAAE,IAAc,EAAA;AAC7C,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,QAAA,QAAQ,IAAI;AACV,YAAA,KAAK,QAAQ,CAAC;AACd,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,EAAE,CAAA;AACX,YAAA,KAAK,mBAAmB;AACtB,gBAAA,OAAO,mBAAmB,CAAA;;;;;;;;;;;AAW5B,YAAA;AACE,gBAAA,OAAO,IAAI,CAAA;AACd,SAAA;AACH,KAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAE,IAAc,EAAA;AACvC,IAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACnB,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,KAAK,EAAA,EAAK,OAAA,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,EAAA,CAAC,CAAA;AACjF,QAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,KAAK,EAAA,EAAK,OAAA,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,EAAA,CAAC,CAAA;AACxE,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC5B,SAAA;AACF,KAAA;AAED,IAAA,OAAO,IAAI,CAAA;AACb,CAAC;AAED,IAAM,cAAc,GAAG;;AAErB,IAAA,OAAO,YAAE,IAAc,EAAA;AACrB,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAA,IAAI,EAAI,EAAA,OAAA,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,EAAA,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;AAC5E,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;AAChB,SAAA;AACD,QAAA,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAA;KACpC;AACD,IAAA,CAAC,YAAE,IAAc,EAAA;AACf,QAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;KACpC;;AAED,IAAA,SAAS,YAAE,IAAc,EAAA;AACvB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;AAElB,QAAA,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAA;KACpC;AACD,IAAA,EAAE,YAAE,IAAc,EAAA;AAChB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;KACtC;AACD,IAAA,MAAM,YAAE,IAAc,EAAA;AACpB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;KACtC;AACD,IAAA,CAAC,YAAE,IAAc,EAAA;AACf,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;KACtC;AACD,IAAA,EAAE,YAAE,IAAc,EAAA;AAChB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;KACtC;;AAED,IAAA,EAAE,YAAE,IAAc,EAAA;AAChB,QAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;KACpC;AACD,IAAA,OAAO,YAAE,IAAc,EAAA;AACrB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;AACnB,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAA;KAC9B;AACD,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,EAAE,YAAE,IAAc,EAAA;AAChB,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KACjC;AACD,IAAA,IAAI,YAAE,IAAc,EAAA;AAClB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;gBAC/B,OAAO,UAAA,CAAA,MAAA,CAAW,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAAA;AACvC,aAAA;AACD,YAAA,QAAQ,IAAI;AACV,gBAAA,KAAK,cAAc;AACjB,oBAAA,OAAO,QAAQ,CAAA;AACjB,gBAAA,KAAK,eAAe;AAClB,oBAAA,OAAO,OAAO,CAAA;AAChB,gBAAA;AACE,oBAAA,OAAO,IAAI,CAAA;AACd,aAAA;AACH,SAAC,CAAC,CAAA;KACH;AACD,IAAA,IAAI,YAAE,IAAc,EAAA;AAClB,QAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AACvC,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;AACnB,SAAA;AACD,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,UAAA,IAAI,EAAA,EAAI,OAAA,IAAI,KAAK,SAAS,CAAlB,EAAkB,CAAC,CAAA;KAC/C;AACD,IAAA,EAAE,EAAE,MAAM;AACV,IAAA,CAAC,EAAE,MAAM;AACT,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,GAAG,EAAE,MAAM;AACX,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,MAAM,YAAE,IAAc,EAAA;AACpB,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAA;KAC9B;AACD,IAAA,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,UAAC,IAAc,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE;gBACzC,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,qBAAqB,CAAC,CAAA;AACvE,aAAA;AACD,YAAA,OAAO,IAAI,CAAA;AACb,SAAC,CAAC,CAAA;KACH;CACF,CAAA;AAEe,SAAA,SAAS,CAAE,EAAU,EAAE,OAAe,EAAA;AACpD,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AAExC,IAAA,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAA,CAAC,EAAI,EAAA,OAAA,CAAC,KAAK,IAAI,CAAV,EAAU,CAAC,CAAA;IAC7C,IAAI,KAAK,IAAI,CAAC,EAAE;AACd,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;AACtB,KAAA;AAED,IAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE;QAC7B,IAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAgC,CAAC,CAAA;AAExE,QAAA,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;AACnC,YAAA,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;AACvB,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;AACpB,SAAA;AAED,QAAA,OAAO,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAChD,KAAA;AAAM,SAAA;AACL,QAAA,OAAO,MAAM,GAAG,OAAO,GAAG,mCAAmC,CAAA;AAC9D,KAAA;AACH;;AC7IA,SAAS,kBAAkB,CAAE,IAAc,EAAA;;;AAGzC,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;AAClB,QAAA,QAAQ,IAAI;AACV,YAAA,KAAK,YAAY,CAAC;AAClB,YAAA,KAAK,eAAe,CAAC;AACrB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,OAAO,CAAA;AAChB,YAAA,KAAK,aAAa,CAAC;AACnB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,cAAc,CAAA;AACvB,YAAA,KAAK,mBAAmB;AACtB,gBAAA,OAAO,WAAW,CAAA;AACpB,YAAA,KAAK,iBAAiB,CAAC;AACvB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,YAAY,CAAA;AACrB,YAAA,KAAK,cAAc,CAAC;AACpB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,SAAS,CAAA;AAClB,YAAA,KAAK,QAAQ,CAAC;AACd,YAAA,KAAK,IAAI;;AAEP,gBAAA,OAAO,EAAE,CAAA;AACX,YAAA,KAAK,UAAU,CAAC;AAChB,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,UAAU,CAAA;AACnB,YAAA;AACE,gBAAA,OAAO,IAAI,CAAA;AACd,SAAA;AACH,KAAC,CAAC,CAAA;AACJ,CAAC;AAee,SAAA,QAAQ,CAAE,EAAU,EAAE,OAAe,EAAA;AACnD,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AAExC,IAAA,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAA,CAAC,EAAI,EAAA,OAAA,CAAC,KAAK,IAAI,CAAV,EAAU,CAAC,CAAA;IAC7C,IAAI,KAAK,IAAI,CAAC,EAAE;AACd,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;AACtB,KAAA;IAED,IAAI,GAAG,GAAG,KAAK,CAAA;AACf,IAAA,QAAQ,IAAI,CAAC,CAAC,CAAC;AACb,QAAA,KAAK,SAAS,CAAC;AACf,QAAA,KAAK,GAAG;AACN,YAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AACrB,gBAAA,IAAI,GAAG,CAAC,SAAS,CAAC,CAAA;AACnB,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;AAChB,aAAA;AACD,YAAA,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAK;AACP,QAAA,KAAK,WAAW,CAAC;AACjB,QAAA,KAAK,IAAI,CAAC;AACV,QAAA,KAAK,QAAQ,CAAC;AACd,QAAA,KAAK,GAAG,CAAC;AACT,QAAA,KAAK,IAAI;AACP,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;AAClB,YAAA,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAK;AACP,QAAA,KAAK,OAAO;AACV,YAAA,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE;AACvB,gBAAA,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACnD,aAAA;AAAM,iBAAA;gBACL,GAAG,GAAG,KAAK,CAAA;AACZ,aAAA;YACD,MAAK;AACP,QAAA,KAAK,SAAS,CAAC;AACf,QAAA,KAAK,IAAI;AACP,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;AACf,YAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACpB,MAAK;AACP,QAAA,KAAK,KAAK;YACR,MAAK;AACP,QAAA,KAAK,MAAM,CAAC;AACZ,QAAA,KAAK,IAAI;;AAEP,YAAA,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;AAC/B,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;AACd,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YAClB,MAAK;AACP,QAAA,KAAK,MAAM,CAAC;AACZ,QAAA,KAAK,QAAQ;AACX,YAAA,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE;gBACX,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;oBAC3B,GAAG,GAAG,MAAM,CAAA;AAEZ,oBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;AAC1C,oBAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AACrB,iBAAA;qBAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;oBACnC,GAAG,GAAG,MAAM,CAAA;oBACZ,IAAI,CAAC,CAAC,CAAC,GAAG,SAAA,CAAA,MAAA,CAAU,IAAI,CAAC,CAAC,CAAC,CAAE,CAAA;AAC7B,oBAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AACrB,iBAAA;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;AACjB,iBAAA;AACF,aAAA;YACD,MAAK;AAEP,QAAA,KAAK,MAAM,CAAC;AACZ,QAAA,KAAK,IAAI;AACP,YAAA,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;AAC/B,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;YAChB,MAAK;AACP,QAAA,KAAK,MAAM,CAAC;AACZ,QAAA,KAAK,OAAO,CAAC;AACb,QAAA,KAAK,QAAQ;YACX,MAAK;AACP,QAAA,KAAK,MAAM,CAAC;AACZ,QAAA,KAAK,GAAG,CAAC;AACT,QAAA,KAAK,KAAK;AACR,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;AAChB,YAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACnB,MAAK;AACP,QAAA,KAAK,MAAM;YACT,GAAG,GAAG,MAAM,CAAA;AACZ,YAAA,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YACjB,MAAK;AACP,QAAA;;YAEE,GAAG,GAAG,KAAK,CAAA;YACX,MAAK;AACR,KAAA;IAED,IAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,KAAK,IAAI,CAAA,EAAA,CAAC,CAAA;AACjE,IAAA,OAAO,EAAG,CAAA,MAAA,CAAA,GAAG,EAAI,GAAA,CAAA,CAAA,MAAA,CAAA,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAA,MAAA,CACjC,GAAG,KAAK,KAAK,GAAG,mCAAmC,GAAG,EAAE,CACxD,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AACtB;;ACxIA;;AAEG;AACa,SAAA,OAAO,CAAE,GAAW,EAAE,EAAmC,EAAA;IACvE,IAAI,EAAE,KAAK,KAAK,EAAE;QAChB,OAAO,GAAG,CAAC,OAAO,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAA;AAC1D,KAAA;SAAM,IAAI,EAAE,KAAK,MAAM,EAAE;QACxB,OAAO,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAA;AACzD,KAAA;SAAM,IAAI,EAAE,KAAK,KAAK,EAAE;QACvB,OAAO,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAA;AACxD,KAAA;AAAM,SAAA;QACL,OAAO,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAA;AACzD,KAAA;AACH,CAAC;AAED;;AAEG;AACmB,SAAA,SAAS,CAAE,OAAe,EAAE,KAAiC,EAAA;AAAjC,IAAA,IAAA,KAAA,KAAA,KAAA,CAAA,EAAA,EAAA,KAAiC,GAAA,OAAA,CAAA,EAAA;;;;wBAC/E,OAAM,CAAA,CAAA,YAAA,UAAU,CAAC,OAAO,EAAE;AAC1B,wBAAA,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,SAAU,CAAA,MAAA,CAAA,KAAK,CAAE;AACzB,qBAAA,CAAC,CAAC,IAAI,CAAC,UAAC,IAAI,EAAA;AACX,wBAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACnB,qBAAC,CAAC,CAAA,CAAA;;AALA,oBAAA,EAAA,CAAA,IAAA,EAKA,CAAA;;;;;AACH;;;;","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/npm-to-yarn.umd.js b/dist/npm-to-yarn.umd.js index 91d4ce9..2c1b607 100644 --- a/dist/npm-to-yarn.umd.js +++ b/dist/npm-to-yarn.umd.js @@ -1,8 +1,61 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : - typeof define === 'function' && define.amd ? define(factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.n2y = factory()); -})(this, (function () { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('shiki')) : + typeof define === 'function' && define.amd ? define(['exports', 'shiki'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.n2y = {}, global.shiki)); +})(this, (function (exports, shiki) { 'use strict'; + + /*! ***************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + + function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + } + + function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } + } var unchangedCLICommands = [ 'test', @@ -638,8 +691,30 @@ return str.replace(/npm(?: +([^&\n\r]*))?/gm, npmToYarn); } } + /** + * Returns highlighted html string + */ + function highlight(command, theme) { + if (theme === void 0) { theme = 'light'; } + return __awaiter(this, void 0, void 0, function () { + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, shiki.codeToHtml(command, { + lang: 'shell', + theme: "github-".concat(theme) + }).then(function (html) { + console.log(html); + })]; + case 1: + _a.sent(); + return [2 /*return*/]; + } + }); + }); + } - return convert; + exports.convert = convert; + exports.highlight = highlight; })); //# sourceMappingURL=npm-to-yarn.umd.js.map diff --git a/dist/npm-to-yarn.umd.js.map b/dist/npm-to-yarn.umd.js.map index c40a85e..9c5e235 100644 --- a/dist/npm-to-yarn.umd.js.map +++ b/dist/npm-to-yarn.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"npm-to-yarn.umd.js","sources":["../src/utils.ts","../src/command.ts","../src/yarnToNpm.ts","../src/npmToYarn.ts","../src/npmToPnpm.ts","../src/npmToBun.ts","../src/index.ts"],"sourcesContent":["export const unchangedCLICommands = [\n 'test',\n 'login',\n 'logout',\n 'link',\n 'unlink',\n 'publish',\n 'cache',\n 'start',\n 'stop',\n 'test'\n]\n\nexport const yarnCLICommands = [\n 'init',\n 'run',\n 'add',\n 'audit',\n 'autoclean',\n 'bin',\n 'check',\n 'config',\n 'create',\n 'dedupe',\n 'generate-lock-entry',\n 'global',\n 'help',\n 'import',\n 'info',\n 'install',\n 'licenses',\n 'list',\n 'lockfile',\n 'outdated',\n 'owner',\n 'pack',\n 'policies',\n 'prune',\n 'remove',\n 'self-update',\n 'tag',\n 'team',\n 'upgrade',\n 'upgrade-interactive',\n 'version',\n 'versions',\n 'why',\n 'workspace',\n 'workspaces'\n]\n\nexport const npmCLICommands = [\n 'init',\n 'run',\n 'access',\n 'adduser',\n 'audit',\n 'bin',\n 'bugs',\n 'build',\n 'bundle',\n 'ci',\n 'completion',\n 'config',\n 'dedupe',\n 'deprecate',\n 'dist-tag',\n 'docs',\n 'doctor',\n 'edit',\n 'explore',\n 'exec',\n 'fund',\n 'help-search',\n 'help',\n 'hook',\n 'install-ci-test',\n 'install-test',\n 'install',\n 'ls',\n 'list',\n 'npm',\n 'org',\n 'outdated',\n 'owner',\n 'pack',\n 'ping',\n 'prefix',\n 'profile',\n 'prune',\n 'rebuild',\n 'repo',\n 'restart',\n 'root',\n 'run-script',\n 'search',\n 'shrinkwrap',\n 'star',\n 'stars',\n 'start',\n 'stop',\n 'team',\n 'token',\n 'uninstall',\n 'unpublish',\n 'update',\n 'version',\n 'view',\n 'whoami'\n]\n","export function parse (command: string) {\n const args: string[] = []\n let lastQuote: string | false = false\n let escaped = false\n let part = ''\n for (let i = 0; i < command.length; ++i) {\n const char = command.charAt(i)\n if (char === '\\\\') {\n part += char\n escaped = true\n } else {\n if (char === ' ' && !lastQuote) {\n args.push(part)\n part = ''\n } else if (!escaped && (char === '\"' || char === \"'\")) {\n part += char\n if (char === lastQuote) {\n lastQuote = false\n } else if (!lastQuote) {\n lastQuote = char\n }\n } else {\n part += char\n }\n escaped = false\n }\n }\n args.push(part)\n return args\n}\n","import { unchangedCLICommands, yarnCLICommands } from './utils'\nimport { parse } from './command'\n\nfunction convertAddRemoveArgs (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--no-lockfile':\n return '--no-package-lock'\n case '--production':\n return '--save-prod'\n case '--dev':\n return '--save-dev'\n case '--optional':\n return '--save-optional'\n case '--exact':\n return '--save-exact'\n default:\n return item\n }\n })\n}\n\nconst yarnToNpmTable = {\n add (args: string[]) {\n if (args.length === 2 && args[1] === '--force') {\n return ['rebuild']\n }\n args[0] = 'install'\n return convertAddRemoveArgs(args)\n },\n remove (args: string[]) {\n args[0] = 'uninstall'\n return convertAddRemoveArgs(args)\n },\n version (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--major':\n return 'major'\n case '--minor':\n return 'minor'\n case '--patch':\n return 'patch'\n default:\n return item\n }\n })\n },\n install: 'install',\n list (args: string[]) {\n args[0] = 'ls'\n const patternIndex = args.findIndex(item => item === '--pattern')\n if (patternIndex >= 0 && args[patternIndex + 1]) {\n const packages = args[patternIndex + 1].replace(/[\"']([^\"']+)[\"']/, '$1').split('|')\n args.splice(patternIndex, 2, packages.join(' '))\n }\n return args\n },\n init: 'init',\n create: 'init',\n outdated: 'outdated',\n run: 'run',\n global (args: string[]) {\n switch (args[1]) {\n case 'add':\n args.shift()\n args = yarnToNpmTable.add(args)\n args.push('--global')\n return args\n case 'remove':\n args.shift()\n args = yarnToNpmTable.remove(args)\n args.push('--global')\n return args\n case 'list':\n args.shift()\n args = yarnToNpmTable.list(args)\n args.push('--global')\n return args\n // case 'bin':\n // case 'upgrade':\n default:\n args.push(\"\\n# couldn't auto-convert command\")\n return args\n }\n },\n pack (args: string[]) {\n return args.map(item => {\n if (item === '--filename') {\n return '--pack-destination'\n }\n return item\n })\n }\n}\n\nexport function yarnToNPM (_m: string, command: string): string {\n command = (command || '').trim()\n if (command === '') {\n return 'npm install'\n }\n let args = parse(command)\n const firstCommand = (/\\w+/.exec(command) || [''])[0]\n\n if (unchangedCLICommands.includes(args[0])) {\n return 'npm ' + command\n } else if (args[0] in yarnToNpmTable) {\n const converter = yarnToNpmTable[args[0] as keyof typeof yarnToNpmTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'npm ' + args.filter(Boolean).join(' ')\n } else if (!yarnCLICommands.includes(firstCommand)) {\n // i.e., yarn grunt -> npm run grunt\n return 'npm run ' + command\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { unchangedCLICommands, yarnCLICommands } from './utils'\nimport { parse } from './command'\n\nfunction convertInstallArgs (args: string[]) {\n if (args.includes('--global') || args.includes('-g')) {\n args.unshift('global')\n }\n\n return args.map(item => {\n switch (item) {\n case '--save-dev':\n case '-D':\n return '--dev'\n case '--save-prod':\n case '-P':\n return '--production'\n case '--no-package-lock':\n return '--no-lockfile'\n case '--save-optional':\n case '-O':\n return '--optional'\n case '--save-exact':\n case '-E':\n return '--exact'\n case '--save':\n case '-S':\n case '--global':\n case '-g':\n return ''\n default:\n return item\n }\n })\n}\n\nconst npmToYarnTable = {\n install (args: string[]) {\n if (args.length === 1) {\n return ['install']\n }\n args[0] = 'add'\n\n return convertInstallArgs(args)\n },\n i (args: string[]) {\n return npmToYarnTable.install(args)\n },\n uninstall (args: string[]) {\n args[0] = 'remove'\n\n return convertInstallArgs(args)\n },\n un (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n remove (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n r (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n rm (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n version (args: string[]) {\n return args.map(item => {\n switch (item) {\n case 'major':\n return '--major'\n case 'minor':\n return '--minor'\n case 'patch':\n return '--patch'\n default:\n return item\n }\n })\n },\n rb (args: string[]) {\n return npmToYarnTable.rebuild(args)\n },\n rebuild (args: string[]) {\n args[0] = 'add'\n args.push('--force')\n return args\n },\n run (args: string[]) {\n if (args[1] && !unchangedCLICommands.includes(args[1]) && !yarnCLICommands.includes(args[1])) {\n args.splice(0, 1)\n }\n return args\n },\n exec (args: string[]) {\n args[0] = 'run'\n return npmToYarnTable.run(args)\n },\n ls (args: string[]) {\n args[0] = 'list'\n\n let ended = false\n const packages = args.filter((item, id) => {\n if (id > 0 && !ended) {\n ended = item.startsWith('-')\n return !ended\n }\n return false\n })\n if (packages.length > 0) {\n args.splice(1, packages.length, '--pattern', '\"' + packages.join('|') + '\"')\n }\n return args\n },\n list (args: string[]) {\n return npmToYarnTable.ls(args)\n },\n init (args: string[]) {\n if (args[1] && !args[1].startsWith('-')) {\n args[0] = 'create'\n }\n return args.filter(item => item !== '--scope')\n },\n ln: 'link',\n t: 'test',\n tst: 'test',\n outdated: 'outdated',\n pack (args: string[]) {\n return args.map(item => {\n if (item.startsWith('--pack-destination')) {\n return item.replace(/^--pack-destination[\\s=]/, '--filename ')\n }\n return item\n })\n }\n}\n\nexport function npmToYarn (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n if (unchangedCLICommands.includes(args[0])) {\n return 'yarn ' + args.filter(Boolean).join(' ')\n } else if (args[0] in npmToYarnTable) {\n const converter = npmToYarnTable[args[0] as keyof typeof npmToYarnTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'yarn ' + args.filter(Boolean).join(' ')\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { parse } from './command'\n\nfunction convertPnpmInstallArgs (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--save':\n case '-S':\n return ''\n case '--no-package-lock':\n return '--frozen-lockfile'\n // case '--save-dev':\n // case '-D':\n // case '--save-prod':\n // case '-P':\n // case '--save-optional':\n // case '-O':\n // case '--save-exact':\n // case '-E':\n // case '--global':\n // case '-g':\n default:\n return item\n }\n })\n}\n\nfunction convertFilterArg (args: string[]) {\n if (args.length > 1) {\n const filter = args.filter((item, index) => index !== 0 && !item.startsWith('-'))\n if (filter.length > 0) {\n args = args.filter((item, index) => index === 0 || item.startsWith('-'))\n args.push('--filter')\n args.push(filter.join(' '))\n }\n }\n\n return args\n}\n\nconst npmToPnpmTable = {\n // ------------------------------\n install (args: string[]) {\n if (args.length > 1 && args.filter(item => !item.startsWith('-')).length > 1) {\n args[0] = 'add'\n }\n return convertPnpmInstallArgs(args)\n },\n i (args: string[]) {\n return npmToPnpmTable.install(args)\n },\n // ------------------------------\n uninstall (args: string[]) {\n args[0] = 'remove'\n\n return convertPnpmInstallArgs(args)\n },\n un (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n remove (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n r (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n rm (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n // ------------------------------\n rb (args: string[]) {\n return npmToPnpmTable.rebuild(args)\n },\n rebuild (args: string[]) {\n args[0] = 'rebuild'\n return convertFilterArg(args)\n },\n run: 'run',\n exec: 'exec',\n ls (args: string[]) {\n return npmToPnpmTable.list(args)\n },\n list (args: string[]) {\n return args.map(item => {\n if (item.startsWith('--depth=')) {\n return `--depth ${item.split('=')[1]}`\n }\n switch (item) {\n case '--production':\n return '--prod'\n case '--development':\n return '--dev'\n default:\n return item\n }\n })\n },\n init (args: string[]) {\n if (args[1] && !args[1].startsWith('-')) {\n args[0] = 'create'\n }\n return args.filter(item => item !== '--scope')\n },\n ln: 'link',\n t: 'test',\n test: 'test',\n tst: 'test',\n start: 'start',\n link: 'link',\n unlink (args: string[]) {\n return convertFilterArg(args)\n },\n outdated: 'outdated',\n pack: (args: string[]) => {\n return args.map(item => {\n if (item.startsWith('--pack-destination')) {\n return item.replace(/^--pack-destination[\\s=]/, '--pack-destination ')\n }\n return item\n })\n }\n}\n\nexport function npmToPnpm (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n if (args[0] in npmToPnpmTable) {\n const converter = npmToPnpmTable[args[0] as keyof typeof npmToPnpmTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'pnpm ' + args.filter(Boolean).join(' ')\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { parse } from './command'\n\nfunction convertInstallArgs (args: string[]) {\n // bun uses -g and --global flags\n // bun mostly conforms to Yarn's CLI\n return args.map(item => {\n switch (item) {\n case '--save-dev':\n case '--development':\n case '-D':\n return '--dev'\n case '--save-prod':\n case '-P':\n return '--production'\n case '--no-package-lock':\n return '--no-save'\n case '--save-optional':\n case '-O':\n return '--optional'\n case '--save-exact':\n case '-E':\n return '--exact'\n case '--save':\n case '-S':\n // this is default in bun\n return ''\n case '--global':\n case '-g':\n return '--global'\n default:\n return item\n }\n })\n}\n\nexport const bunCLICommands = [\n 'init',\n 'run',\n 'add',\n 'pm',\n 'help',\n 'install',\n 'remove',\n 'upgrade',\n 'version'\n] as const\ntype bunCLICommands = typeof bunCLICommands[number]\n\nexport function npmToBun (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n let cmd = 'bun'\n switch (args[0]) {\n case 'install':\n case 'i':\n if (args.length === 1) {\n args = ['install']\n } else {\n args[0] = 'add'\n }\n args = convertInstallArgs(args)\n break\n case 'uninstall':\n case 'un':\n case 'remove':\n case 'r':\n case 'rm':\n args[0] = 'remove'\n args = convertInstallArgs(args)\n break\n case 'cache':\n if (args[1] === 'clean') {\n args = ['pm', 'cache', 'rm'].concat(args.slice(2))\n } else {\n cmd = 'npm'\n }\n break\n case 'rebuild':\n case 'rb':\n args[0] = 'add'\n args.push('--force')\n break\n case 'run':\n break\n case 'list':\n case 'ls':\n // 'npm ls' => 'bun pm ls'\n args = convertInstallArgs(args)\n args[0] = 'ls'\n args.unshift('pm')\n break\n case 'init':\n case 'create':\n if (args[1]) {\n if (args[1].startsWith('@')) {\n cmd = 'bunx'\n\n args[1] = args[1].replace('/', '/create-')\n args = args.slice(1)\n } else if (!args[1].startsWith('-')) {\n cmd = 'bunx'\n args[1] = `create-${args[1]}`\n args = args.slice(1)\n } else {\n args[0] = 'init'\n }\n }\n break\n\n case 'link':\n case 'ln':\n args = convertInstallArgs(args)\n args[0] = 'link'\n break\n case 'stop':\n case 'start':\n case 'unlink':\n break\n case 'test':\n case 't':\n case 'tst':\n args[0] = 'test'\n args.unshift('run')\n break\n case 'exec':\n cmd = 'bunx'\n args.splice(0, 1)\n break\n default:\n // null == keep `npm` command\n cmd = 'npm'\n break\n }\n\n const filtered = args.filter(Boolean).filter(arg => arg !== '--')\n return `${cmd} ${filtered.join(' ')}${\n cmd === 'npm' ? \"\\n# couldn't auto-convert command\" : ''\n }`.replace('=', ' ')\n}\n","import { yarnToNPM } from './yarnToNpm'\nimport { npmToYarn } from './npmToYarn'\nimport { npmToPnpm } from './npmToPnpm'\nimport { npmToBun } from './npmToBun'\n\n/**\n * Converts between npm and yarn command\n */\nexport default function convert (str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun'): string {\n if (to === 'npm') {\n return str.replace(/yarn(?: +([^&\\n\\r]*))?/gm, yarnToNPM)\n } else if (to === 'pnpm') {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToPnpm)\n } else if (to === 'bun') {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToBun)\n } else {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToYarn)\n }\n}\n"],"names":["convertInstallArgs"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"npm-to-yarn.umd.js","sources":["../node_modules/tslib/tslib.es6.js","../src/utils.ts","../src/command.ts","../src/yarnToNpm.ts","../src/npmToYarn.ts","../src/npmToPnpm.ts","../src/npmToBun.ts","../src/index.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","export const unchangedCLICommands = [\n 'test',\n 'login',\n 'logout',\n 'link',\n 'unlink',\n 'publish',\n 'cache',\n 'start',\n 'stop',\n 'test'\n]\n\nexport const yarnCLICommands = [\n 'init',\n 'run',\n 'add',\n 'audit',\n 'autoclean',\n 'bin',\n 'check',\n 'config',\n 'create',\n 'dedupe',\n 'generate-lock-entry',\n 'global',\n 'help',\n 'import',\n 'info',\n 'install',\n 'licenses',\n 'list',\n 'lockfile',\n 'outdated',\n 'owner',\n 'pack',\n 'policies',\n 'prune',\n 'remove',\n 'self-update',\n 'tag',\n 'team',\n 'upgrade',\n 'upgrade-interactive',\n 'version',\n 'versions',\n 'why',\n 'workspace',\n 'workspaces'\n]\n\nexport const npmCLICommands = [\n 'init',\n 'run',\n 'access',\n 'adduser',\n 'audit',\n 'bin',\n 'bugs',\n 'build',\n 'bundle',\n 'ci',\n 'completion',\n 'config',\n 'dedupe',\n 'deprecate',\n 'dist-tag',\n 'docs',\n 'doctor',\n 'edit',\n 'explore',\n 'exec',\n 'fund',\n 'help-search',\n 'help',\n 'hook',\n 'install-ci-test',\n 'install-test',\n 'install',\n 'ls',\n 'list',\n 'npm',\n 'org',\n 'outdated',\n 'owner',\n 'pack',\n 'ping',\n 'prefix',\n 'profile',\n 'prune',\n 'rebuild',\n 'repo',\n 'restart',\n 'root',\n 'run-script',\n 'search',\n 'shrinkwrap',\n 'star',\n 'stars',\n 'start',\n 'stop',\n 'team',\n 'token',\n 'uninstall',\n 'unpublish',\n 'update',\n 'version',\n 'view',\n 'whoami'\n]\n","export function parse (command: string) {\n const args: string[] = []\n let lastQuote: string | false = false\n let escaped = false\n let part = ''\n for (let i = 0; i < command.length; ++i) {\n const char = command.charAt(i)\n if (char === '\\\\') {\n part += char\n escaped = true\n } else {\n if (char === ' ' && !lastQuote) {\n args.push(part)\n part = ''\n } else if (!escaped && (char === '\"' || char === \"'\")) {\n part += char\n if (char === lastQuote) {\n lastQuote = false\n } else if (!lastQuote) {\n lastQuote = char\n }\n } else {\n part += char\n }\n escaped = false\n }\n }\n args.push(part)\n return args\n}\n","import { unchangedCLICommands, yarnCLICommands } from './utils'\nimport { parse } from './command'\n\nfunction convertAddRemoveArgs (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--no-lockfile':\n return '--no-package-lock'\n case '--production':\n return '--save-prod'\n case '--dev':\n return '--save-dev'\n case '--optional':\n return '--save-optional'\n case '--exact':\n return '--save-exact'\n default:\n return item\n }\n })\n}\n\nconst yarnToNpmTable = {\n add (args: string[]) {\n if (args.length === 2 && args[1] === '--force') {\n return ['rebuild']\n }\n args[0] = 'install'\n return convertAddRemoveArgs(args)\n },\n remove (args: string[]) {\n args[0] = 'uninstall'\n return convertAddRemoveArgs(args)\n },\n version (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--major':\n return 'major'\n case '--minor':\n return 'minor'\n case '--patch':\n return 'patch'\n default:\n return item\n }\n })\n },\n install: 'install',\n list (args: string[]) {\n args[0] = 'ls'\n const patternIndex = args.findIndex(item => item === '--pattern')\n if (patternIndex >= 0 && args[patternIndex + 1]) {\n const packages = args[patternIndex + 1].replace(/[\"']([^\"']+)[\"']/, '$1').split('|')\n args.splice(patternIndex, 2, packages.join(' '))\n }\n return args\n },\n init: 'init',\n create: 'init',\n outdated: 'outdated',\n run: 'run',\n global (args: string[]) {\n switch (args[1]) {\n case 'add':\n args.shift()\n args = yarnToNpmTable.add(args)\n args.push('--global')\n return args\n case 'remove':\n args.shift()\n args = yarnToNpmTable.remove(args)\n args.push('--global')\n return args\n case 'list':\n args.shift()\n args = yarnToNpmTable.list(args)\n args.push('--global')\n return args\n // case 'bin':\n // case 'upgrade':\n default:\n args.push(\"\\n# couldn't auto-convert command\")\n return args\n }\n },\n pack (args: string[]) {\n return args.map(item => {\n if (item === '--filename') {\n return '--pack-destination'\n }\n return item\n })\n }\n}\n\nexport function yarnToNPM (_m: string, command: string): string {\n command = (command || '').trim()\n if (command === '') {\n return 'npm install'\n }\n let args = parse(command)\n const firstCommand = (/\\w+/.exec(command) || [''])[0]\n\n if (unchangedCLICommands.includes(args[0])) {\n return 'npm ' + command\n } else if (args[0] in yarnToNpmTable) {\n const converter = yarnToNpmTable[args[0] as keyof typeof yarnToNpmTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'npm ' + args.filter(Boolean).join(' ')\n } else if (!yarnCLICommands.includes(firstCommand)) {\n // i.e., yarn grunt -> npm run grunt\n return 'npm run ' + command\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { unchangedCLICommands, yarnCLICommands } from './utils'\nimport { parse } from './command'\n\nfunction convertInstallArgs (args: string[]) {\n if (args.includes('--global') || args.includes('-g')) {\n args.unshift('global')\n }\n\n return args.map(item => {\n switch (item) {\n case '--save-dev':\n case '-D':\n return '--dev'\n case '--save-prod':\n case '-P':\n return '--production'\n case '--no-package-lock':\n return '--no-lockfile'\n case '--save-optional':\n case '-O':\n return '--optional'\n case '--save-exact':\n case '-E':\n return '--exact'\n case '--save':\n case '-S':\n case '--global':\n case '-g':\n return ''\n default:\n return item\n }\n })\n}\n\nconst npmToYarnTable = {\n install (args: string[]) {\n if (args.length === 1) {\n return ['install']\n }\n args[0] = 'add'\n\n return convertInstallArgs(args)\n },\n i (args: string[]) {\n return npmToYarnTable.install(args)\n },\n uninstall (args: string[]) {\n args[0] = 'remove'\n\n return convertInstallArgs(args)\n },\n un (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n remove (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n r (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n rm (args: string[]) {\n return npmToYarnTable.uninstall(args)\n },\n version (args: string[]) {\n return args.map(item => {\n switch (item) {\n case 'major':\n return '--major'\n case 'minor':\n return '--minor'\n case 'patch':\n return '--patch'\n default:\n return item\n }\n })\n },\n rb (args: string[]) {\n return npmToYarnTable.rebuild(args)\n },\n rebuild (args: string[]) {\n args[0] = 'add'\n args.push('--force')\n return args\n },\n run (args: string[]) {\n if (args[1] && !unchangedCLICommands.includes(args[1]) && !yarnCLICommands.includes(args[1])) {\n args.splice(0, 1)\n }\n return args\n },\n exec (args: string[]) {\n args[0] = 'run'\n return npmToYarnTable.run(args)\n },\n ls (args: string[]) {\n args[0] = 'list'\n\n let ended = false\n const packages = args.filter((item, id) => {\n if (id > 0 && !ended) {\n ended = item.startsWith('-')\n return !ended\n }\n return false\n })\n if (packages.length > 0) {\n args.splice(1, packages.length, '--pattern', '\"' + packages.join('|') + '\"')\n }\n return args\n },\n list (args: string[]) {\n return npmToYarnTable.ls(args)\n },\n init (args: string[]) {\n if (args[1] && !args[1].startsWith('-')) {\n args[0] = 'create'\n }\n return args.filter(item => item !== '--scope')\n },\n ln: 'link',\n t: 'test',\n tst: 'test',\n outdated: 'outdated',\n pack (args: string[]) {\n return args.map(item => {\n if (item.startsWith('--pack-destination')) {\n return item.replace(/^--pack-destination[\\s=]/, '--filename ')\n }\n return item\n })\n }\n}\n\nexport function npmToYarn (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n if (unchangedCLICommands.includes(args[0])) {\n return 'yarn ' + args.filter(Boolean).join(' ')\n } else if (args[0] in npmToYarnTable) {\n const converter = npmToYarnTable[args[0] as keyof typeof npmToYarnTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'yarn ' + args.filter(Boolean).join(' ')\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { parse } from './command'\n\nfunction convertPnpmInstallArgs (args: string[]) {\n return args.map(item => {\n switch (item) {\n case '--save':\n case '-S':\n return ''\n case '--no-package-lock':\n return '--frozen-lockfile'\n // case '--save-dev':\n // case '-D':\n // case '--save-prod':\n // case '-P':\n // case '--save-optional':\n // case '-O':\n // case '--save-exact':\n // case '-E':\n // case '--global':\n // case '-g':\n default:\n return item\n }\n })\n}\n\nfunction convertFilterArg (args: string[]) {\n if (args.length > 1) {\n const filter = args.filter((item, index) => index !== 0 && !item.startsWith('-'))\n if (filter.length > 0) {\n args = args.filter((item, index) => index === 0 || item.startsWith('-'))\n args.push('--filter')\n args.push(filter.join(' '))\n }\n }\n\n return args\n}\n\nconst npmToPnpmTable = {\n // ------------------------------\n install (args: string[]) {\n if (args.length > 1 && args.filter(item => !item.startsWith('-')).length > 1) {\n args[0] = 'add'\n }\n return convertPnpmInstallArgs(args)\n },\n i (args: string[]) {\n return npmToPnpmTable.install(args)\n },\n // ------------------------------\n uninstall (args: string[]) {\n args[0] = 'remove'\n\n return convertPnpmInstallArgs(args)\n },\n un (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n remove (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n r (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n rm (args: string[]) {\n return npmToPnpmTable.uninstall(args)\n },\n // ------------------------------\n rb (args: string[]) {\n return npmToPnpmTable.rebuild(args)\n },\n rebuild (args: string[]) {\n args[0] = 'rebuild'\n return convertFilterArg(args)\n },\n run: 'run',\n exec: 'exec',\n ls (args: string[]) {\n return npmToPnpmTable.list(args)\n },\n list (args: string[]) {\n return args.map(item => {\n if (item.startsWith('--depth=')) {\n return `--depth ${item.split('=')[1]}`\n }\n switch (item) {\n case '--production':\n return '--prod'\n case '--development':\n return '--dev'\n default:\n return item\n }\n })\n },\n init (args: string[]) {\n if (args[1] && !args[1].startsWith('-')) {\n args[0] = 'create'\n }\n return args.filter(item => item !== '--scope')\n },\n ln: 'link',\n t: 'test',\n test: 'test',\n tst: 'test',\n start: 'start',\n link: 'link',\n unlink (args: string[]) {\n return convertFilterArg(args)\n },\n outdated: 'outdated',\n pack: (args: string[]) => {\n return args.map(item => {\n if (item.startsWith('--pack-destination')) {\n return item.replace(/^--pack-destination[\\s=]/, '--pack-destination ')\n }\n return item\n })\n }\n}\n\nexport function npmToPnpm (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n if (args[0] in npmToPnpmTable) {\n const converter = npmToPnpmTable[args[0] as keyof typeof npmToPnpmTable]\n\n if (typeof converter === 'function') {\n args = converter(args)\n } else {\n args[0] = converter\n }\n\n return 'pnpm ' + args.filter(Boolean).join(' ')\n } else {\n return 'npm ' + command + \"\\n# couldn't auto-convert command\"\n }\n}\n","import { parse } from './command'\n\nfunction convertInstallArgs (args: string[]) {\n // bun uses -g and --global flags\n // bun mostly conforms to Yarn's CLI\n return args.map(item => {\n switch (item) {\n case '--save-dev':\n case '--development':\n case '-D':\n return '--dev'\n case '--save-prod':\n case '-P':\n return '--production'\n case '--no-package-lock':\n return '--no-save'\n case '--save-optional':\n case '-O':\n return '--optional'\n case '--save-exact':\n case '-E':\n return '--exact'\n case '--save':\n case '-S':\n // this is default in bun\n return ''\n case '--global':\n case '-g':\n return '--global'\n default:\n return item\n }\n })\n}\n\nexport const bunCLICommands = [\n 'init',\n 'run',\n 'add',\n 'pm',\n 'help',\n 'install',\n 'remove',\n 'upgrade',\n 'version'\n] as const\ntype bunCLICommands = typeof bunCLICommands[number]\n\nexport function npmToBun (_m: string, command: string): string {\n let args = parse((command || '').trim())\n\n const index = args.findIndex(a => a === '--')\n if (index >= 0) {\n args.splice(index, 1)\n }\n\n let cmd = 'bun'\n switch (args[0]) {\n case 'install':\n case 'i':\n if (args.length === 1) {\n args = ['install']\n } else {\n args[0] = 'add'\n }\n args = convertInstallArgs(args)\n break\n case 'uninstall':\n case 'un':\n case 'remove':\n case 'r':\n case 'rm':\n args[0] = 'remove'\n args = convertInstallArgs(args)\n break\n case 'cache':\n if (args[1] === 'clean') {\n args = ['pm', 'cache', 'rm'].concat(args.slice(2))\n } else {\n cmd = 'npm'\n }\n break\n case 'rebuild':\n case 'rb':\n args[0] = 'add'\n args.push('--force')\n break\n case 'run':\n break\n case 'list':\n case 'ls':\n // 'npm ls' => 'bun pm ls'\n args = convertInstallArgs(args)\n args[0] = 'ls'\n args.unshift('pm')\n break\n case 'init':\n case 'create':\n if (args[1]) {\n if (args[1].startsWith('@')) {\n cmd = 'bunx'\n\n args[1] = args[1].replace('/', '/create-')\n args = args.slice(1)\n } else if (!args[1].startsWith('-')) {\n cmd = 'bunx'\n args[1] = `create-${args[1]}`\n args = args.slice(1)\n } else {\n args[0] = 'init'\n }\n }\n break\n\n case 'link':\n case 'ln':\n args = convertInstallArgs(args)\n args[0] = 'link'\n break\n case 'stop':\n case 'start':\n case 'unlink':\n break\n case 'test':\n case 't':\n case 'tst':\n args[0] = 'test'\n args.unshift('run')\n break\n case 'exec':\n cmd = 'bunx'\n args.splice(0, 1)\n break\n default:\n // null == keep `npm` command\n cmd = 'npm'\n break\n }\n\n const filtered = args.filter(Boolean).filter(arg => arg !== '--')\n return `${cmd} ${filtered.join(' ')}${\n cmd === 'npm' ? \"\\n# couldn't auto-convert command\" : ''\n }`.replace('=', ' ')\n}\n","import { yarnToNPM } from './yarnToNpm'\nimport { npmToYarn } from './npmToYarn'\nimport { npmToPnpm } from './npmToPnpm'\nimport { npmToBun } from './npmToBun'\n\nimport { codeToHtml } from 'shiki'\n\n/**\n * Converts between npm and yarn command\n */\nexport function convert (str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun'): string {\n if (to === 'npm') {\n return str.replace(/yarn(?: +([^&\\n\\r]*))?/gm, yarnToNPM)\n } else if (to === 'pnpm') {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToPnpm)\n } else if (to === 'bun') {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToBun)\n } else {\n return str.replace(/npm(?: +([^&\\n\\r]*))?/gm, npmToYarn)\n }\n}\n\n/**\n * Returns highlighted html string\n */\nexport async function highlight (command: string, theme: 'light' | 'dark' = 'light') {\n await codeToHtml(command, {\n lang: 'shell',\n theme: `github-${theme}`\n }).then((html) => {\n console.log(html)\n })\n}"],"names":["convertInstallArgs","codeToHtml"],"mappings":";;;;;;IAAA;IACA;AACA;IACA;IACA;AACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;AAqDA;IACO,SAAS,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;IAC7D,IAAI,SAAS,KAAK,CAAC,KAAK,EAAE,EAAE,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;IAChH,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM,EAAE;IAC/D,QAAQ,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;IACnG,QAAQ,SAAS,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;IACtG,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;IACtH,QAAQ,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9E,KAAK,CAAC,CAAC;IACP,CAAC;AACD;IACO,SAAS,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE;IAC3C,IAAI,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACrH,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7J,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACtE,IAAI,SAAS,IAAI,CAAC,EAAE,EAAE;IACtB,QAAQ,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;IACtE,QAAQ,OAAO,CAAC,EAAE,IAAI;IACtB,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzK,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IACpD,YAAY,QAAQ,EAAE,CAAC,CAAC,CAAC;IACzB,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM;IAC9C,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACxE,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;IACjE,gBAAgB,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;IACjE,gBAAgB;IAChB,oBAAoB,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;IAChI,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;IAC1G,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACzF,oBAAoB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;IACvF,oBAAoB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAC1C,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;IAC3C,aAAa;IACb,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACvC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;IAClE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACzF,KAAK;IACL;;ICvGO,IAAM,oBAAoB,GAAG;QAClC,MAAM;QACN,OAAO;QACP,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,SAAS;QACT,OAAO;QACP,OAAO;QACP,MAAM;QACN,MAAM;KACP,CAAA;IAEM,IAAM,eAAe,GAAG;QAC7B,MAAM;QACN,KAAK;QACL,KAAK;QACL,OAAO;QACP,WAAW;QACX,KAAK;QACL,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,qBAAqB;QACrB,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,MAAM;QACN,SAAS;QACT,UAAU;QACV,MAAM;QACN,UAAU;QACV,UAAU;QACV,OAAO;QACP,MAAM;QACN,UAAU;QACV,OAAO;QACP,QAAQ;QACR,aAAa;QACb,KAAK;QACL,MAAM;QACN,SAAS;QACT,qBAAqB;QACrB,SAAS;QACT,UAAU;QACV,KAAK;QACL,WAAW;QACX,YAAY;KACb;;ICjDK,SAAU,KAAK,CAAE,OAAe,EAAA;QACpC,IAAM,IAAI,GAAa,EAAE,CAAA;QACzB,IAAI,SAAS,GAAmB,KAAK,CAAA;QACrC,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;YACvC,IAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAC9B,IAAI,IAAI,KAAK,IAAI,EAAE;gBACjB,IAAI,IAAI,IAAI,CAAA;gBACZ,OAAO,GAAG,IAAI,CAAA;IACf,SAAA;IAAM,aAAA;IACL,YAAA,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE;IAC9B,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBACf,IAAI,GAAG,EAAE,CAAA;IACV,aAAA;IAAM,iBAAA,IAAI,CAAC,OAAO,KAAK,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,EAAE;oBACrD,IAAI,IAAI,IAAI,CAAA;oBACZ,IAAI,IAAI,KAAK,SAAS,EAAE;wBACtB,SAAS,GAAG,KAAK,CAAA;IAClB,iBAAA;yBAAM,IAAI,CAAC,SAAS,EAAE;wBACrB,SAAS,GAAG,IAAI,CAAA;IACjB,iBAAA;IACF,aAAA;IAAM,iBAAA;oBACL,IAAI,IAAI,IAAI,CAAA;IACb,aAAA;gBACD,OAAO,GAAG,KAAK,CAAA;IAChB,SAAA;IACF,KAAA;IACD,IAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACf,IAAA,OAAO,IAAI,CAAA;IACb;;IC1BA,SAAS,oBAAoB,CAAE,IAAc,EAAA;IAC3C,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,QAAA,QAAQ,IAAI;IACV,YAAA,KAAK,eAAe;IAClB,gBAAA,OAAO,mBAAmB,CAAA;IAC5B,YAAA,KAAK,cAAc;IACjB,gBAAA,OAAO,aAAa,CAAA;IACtB,YAAA,KAAK,OAAO;IACV,gBAAA,OAAO,YAAY,CAAA;IACrB,YAAA,KAAK,YAAY;IACf,gBAAA,OAAO,iBAAiB,CAAA;IAC1B,YAAA,KAAK,SAAS;IACZ,gBAAA,OAAO,cAAc,CAAA;IACvB,YAAA;IACE,gBAAA,OAAO,IAAI,CAAA;IACd,SAAA;IACH,KAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAM,cAAc,GAAG;IACrB,IAAA,GAAG,YAAE,IAAc,EAAA;IACjB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;gBAC9C,OAAO,CAAC,SAAS,CAAC,CAAA;IACnB,SAAA;IACD,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;IACnB,QAAA,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAA;SAClC;IACD,IAAA,MAAM,YAAE,IAAc,EAAA;IACpB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;IACrB,QAAA,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAA;SAClC;IACD,IAAA,OAAO,YAAE,IAAc,EAAA;IACrB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,YAAA,QAAQ,IAAI;IACV,gBAAA,KAAK,SAAS;IACZ,oBAAA,OAAO,OAAO,CAAA;IAChB,gBAAA,KAAK,SAAS;IACZ,oBAAA,OAAO,OAAO,CAAA;IAChB,gBAAA,KAAK,SAAS;IACZ,oBAAA,OAAO,OAAO,CAAA;IAChB,gBAAA;IACE,oBAAA,OAAO,IAAI,CAAA;IACd,aAAA;IACH,SAAC,CAAC,CAAA;SACH;IACD,IAAA,OAAO,EAAE,SAAS;IAClB,IAAA,IAAI,YAAE,IAAc,EAAA;IAClB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IACd,QAAA,IAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,UAAA,IAAI,EAAI,EAAA,OAAA,IAAI,KAAK,WAAW,CAApB,EAAoB,CAAC,CAAA;YACjE,IAAI,YAAY,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,EAAE;gBAC/C,IAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACpF,YAAA,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACjD,SAAA;IACD,QAAA,OAAO,IAAI,CAAA;SACZ;IACD,IAAA,IAAI,EAAE,MAAM;IACZ,IAAA,MAAM,EAAE,MAAM;IACd,IAAA,QAAQ,EAAE,UAAU;IACpB,IAAA,GAAG,EAAE,KAAK;IACV,IAAA,MAAM,YAAE,IAAc,EAAA;IACpB,QAAA,QAAQ,IAAI,CAAC,CAAC,CAAC;IACb,YAAA,KAAK,KAAK;oBACR,IAAI,CAAC,KAAK,EAAE,CAAA;IACZ,gBAAA,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC/B,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACrB,gBAAA,OAAO,IAAI,CAAA;IACb,YAAA,KAAK,QAAQ;oBACX,IAAI,CAAC,KAAK,EAAE,CAAA;IACZ,gBAAA,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAClC,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACrB,gBAAA,OAAO,IAAI,CAAA;IACb,YAAA,KAAK,MAAM;oBACT,IAAI,CAAC,KAAK,EAAE,CAAA;IACZ,gBAAA,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChC,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACrB,gBAAA,OAAO,IAAI,CAAA;;;IAGb,YAAA;IACE,gBAAA,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;IAC9C,gBAAA,OAAO,IAAI,CAAA;IACd,SAAA;SACF;IACD,IAAA,IAAI,YAAE,IAAc,EAAA;IAClB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;gBAClB,IAAI,IAAI,KAAK,YAAY,EAAE;IACzB,gBAAA,OAAO,oBAAoB,CAAA;IAC5B,aAAA;IACD,YAAA,OAAO,IAAI,CAAA;IACb,SAAC,CAAC,CAAA;SACH;KACF,CAAA;IAEe,SAAA,SAAS,CAAE,EAAU,EAAE,OAAe,EAAA;QACpD,OAAO,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAA;QAChC,IAAI,OAAO,KAAK,EAAE,EAAE;IAClB,QAAA,OAAO,aAAa,CAAA;IACrB,KAAA;IACD,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;IACzB,IAAA,IAAM,YAAY,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAErD,IAAI,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;YAC1C,OAAO,MAAM,GAAG,OAAO,CAAA;IACxB,KAAA;IAAM,SAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE;YACpC,IAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAgC,CAAC,CAAA;IAExE,QAAA,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;IACnC,YAAA,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IACvB,SAAA;IAAM,aAAA;IACL,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;IACpB,SAAA;IAED,QAAA,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC/C,KAAA;IAAM,SAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;;YAElD,OAAO,UAAU,GAAG,OAAO,CAAA;IAC5B,KAAA;IAAM,SAAA;IACL,QAAA,OAAO,MAAM,GAAG,OAAO,GAAG,mCAAmC,CAAA;IAC9D,KAAA;IACH;;ICvHA,SAASA,oBAAkB,CAAE,IAAc,EAAA;IACzC,IAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;IACpD,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACvB,KAAA;IAED,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,QAAA,QAAQ,IAAI;IACV,YAAA,KAAK,YAAY,CAAC;IAClB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,OAAO,CAAA;IAChB,YAAA,KAAK,aAAa,CAAC;IACnB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,cAAc,CAAA;IACvB,YAAA,KAAK,mBAAmB;IACtB,gBAAA,OAAO,eAAe,CAAA;IACxB,YAAA,KAAK,iBAAiB,CAAC;IACvB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,YAAY,CAAA;IACrB,YAAA,KAAK,cAAc,CAAC;IACpB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,SAAS,CAAA;IAClB,YAAA,KAAK,QAAQ,CAAC;IACd,YAAA,KAAK,IAAI,CAAC;IACV,YAAA,KAAK,UAAU,CAAC;IAChB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,EAAE,CAAA;IACX,YAAA;IACE,gBAAA,OAAO,IAAI,CAAA;IACd,SAAA;IACH,KAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAM,cAAc,GAAG;IACrB,IAAA,OAAO,YAAE,IAAc,EAAA;IACrB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;gBACrB,OAAO,CAAC,SAAS,CAAC,CAAA;IACnB,SAAA;IACD,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;IAEf,QAAA,OAAOA,oBAAkB,CAAC,IAAI,CAAC,CAAA;SAChC;IACD,IAAA,CAAC,YAAE,IAAc,EAAA;IACf,QAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SACpC;IACD,IAAA,SAAS,YAAE,IAAc,EAAA;IACvB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;IAElB,QAAA,OAAOA,oBAAkB,CAAC,IAAI,CAAC,CAAA;SAChC;IACD,IAAA,EAAE,YAAE,IAAc,EAAA;IAChB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;SACtC;IACD,IAAA,MAAM,YAAE,IAAc,EAAA;IACpB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;SACtC;IACD,IAAA,CAAC,YAAE,IAAc,EAAA;IACf,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;SACtC;IACD,IAAA,EAAE,YAAE,IAAc,EAAA;IAChB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;SACtC;IACD,IAAA,OAAO,YAAE,IAAc,EAAA;IACrB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,YAAA,QAAQ,IAAI;IACV,gBAAA,KAAK,OAAO;IACV,oBAAA,OAAO,SAAS,CAAA;IAClB,gBAAA,KAAK,OAAO;IACV,oBAAA,OAAO,SAAS,CAAA;IAClB,gBAAA,KAAK,OAAO;IACV,oBAAA,OAAO,SAAS,CAAA;IAClB,gBAAA;IACE,oBAAA,OAAO,IAAI,CAAA;IACd,aAAA;IACH,SAAC,CAAC,CAAA;SACH;IACD,IAAA,EAAE,YAAE,IAAc,EAAA;IAChB,QAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SACpC;IACD,IAAA,OAAO,YAAE,IAAc,EAAA;IACrB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;IACf,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACpB,QAAA,OAAO,IAAI,CAAA;SACZ;IACD,IAAA,GAAG,YAAE,IAAc,EAAA;YACjB,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;IAC5F,YAAA,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAClB,SAAA;IACD,QAAA,OAAO,IAAI,CAAA;SACZ;IACD,IAAA,IAAI,YAAE,IAAc,EAAA;IAClB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;IACf,QAAA,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;SAChC;IACD,IAAA,EAAE,YAAE,IAAc,EAAA;IAChB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;YAEhB,IAAI,KAAK,GAAG,KAAK,CAAA;YACjB,IAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,EAAE,EAAA;IACpC,YAAA,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE;IACpB,gBAAA,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;oBAC5B,OAAO,CAAC,KAAK,CAAA;IACd,aAAA;IACD,YAAA,OAAO,KAAK,CAAA;IACd,SAAC,CAAC,CAAA;IACF,QAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACvB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAA;IAC7E,SAAA;IACD,QAAA,OAAO,IAAI,CAAA;SACZ;IACD,IAAA,IAAI,YAAE,IAAc,EAAA;IAClB,QAAA,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;SAC/B;IACD,IAAA,IAAI,YAAE,IAAc,EAAA;IAClB,QAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;IACvC,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;IACnB,SAAA;IACD,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,UAAA,IAAI,EAAA,EAAI,OAAA,IAAI,KAAK,SAAS,CAAlB,EAAkB,CAAC,CAAA;SAC/C;IACD,IAAA,EAAE,EAAE,MAAM;IACV,IAAA,CAAC,EAAE,MAAM;IACT,IAAA,GAAG,EAAE,MAAM;IACX,IAAA,QAAQ,EAAE,UAAU;IACpB,IAAA,IAAI,YAAE,IAAc,EAAA;IAClB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE;oBACzC,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAA;IAC/D,aAAA;IACD,YAAA,OAAO,IAAI,CAAA;IACb,SAAC,CAAC,CAAA;SACH;KACF,CAAA;IAEe,SAAA,SAAS,CAAE,EAAU,EAAE,OAAe,EAAA;IACpD,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IAExC,IAAA,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAA,CAAC,EAAI,EAAA,OAAA,CAAC,KAAK,IAAI,CAAV,EAAU,CAAC,CAAA;QAC7C,IAAI,KAAK,IAAI,CAAC,EAAE;IACd,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IACtB,KAAA;QAED,IAAI,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;IAC1C,QAAA,OAAO,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChD,KAAA;IAAM,SAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE;YACpC,IAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAgC,CAAC,CAAA;IAExE,QAAA,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;IACnC,YAAA,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IACvB,SAAA;IAAM,aAAA;IACL,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;IACpB,SAAA;IAED,QAAA,OAAO,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChD,KAAA;IAAM,SAAA;IACL,QAAA,OAAO,MAAM,GAAG,OAAO,GAAG,mCAAmC,CAAA;IAC9D,KAAA;IACH;;IC5JA,SAAS,sBAAsB,CAAE,IAAc,EAAA;IAC7C,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,QAAA,QAAQ,IAAI;IACV,YAAA,KAAK,QAAQ,CAAC;IACd,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,EAAE,CAAA;IACX,YAAA,KAAK,mBAAmB;IACtB,gBAAA,OAAO,mBAAmB,CAAA;;;;;;;;;;;IAW5B,YAAA;IACE,gBAAA,OAAO,IAAI,CAAA;IACd,SAAA;IACH,KAAC,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,gBAAgB,CAAE,IAAc,EAAA;IACvC,IAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,KAAK,EAAA,EAAK,OAAA,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,EAAA,CAAC,CAAA;IACjF,QAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBACrB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,KAAK,EAAA,EAAK,OAAA,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,EAAA,CAAC,CAAA;IACxE,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5B,SAAA;IACF,KAAA;IAED,IAAA,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAM,cAAc,GAAG;;IAErB,IAAA,OAAO,YAAE,IAAc,EAAA;IACrB,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAA,IAAI,EAAI,EAAA,OAAA,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,EAAA,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;IAC5E,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;IAChB,SAAA;IACD,QAAA,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAA;SACpC;IACD,IAAA,CAAC,YAAE,IAAc,EAAA;IACf,QAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SACpC;;IAED,IAAA,SAAS,YAAE,IAAc,EAAA;IACvB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;IAElB,QAAA,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAA;SACpC;IACD,IAAA,EAAE,YAAE,IAAc,EAAA;IAChB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;SACtC;IACD,IAAA,MAAM,YAAE,IAAc,EAAA;IACpB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;SACtC;IACD,IAAA,CAAC,YAAE,IAAc,EAAA;IACf,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;SACtC;IACD,IAAA,EAAE,YAAE,IAAc,EAAA;IAChB,QAAA,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;SACtC;;IAED,IAAA,EAAE,YAAE,IAAc,EAAA;IAChB,QAAA,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SACpC;IACD,IAAA,OAAO,YAAE,IAAc,EAAA;IACrB,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;IACnB,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAA;SAC9B;IACD,IAAA,GAAG,EAAE,KAAK;IACV,IAAA,IAAI,EAAE,MAAM;IACZ,IAAA,EAAE,YAAE,IAAc,EAAA;IAChB,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SACjC;IACD,IAAA,IAAI,YAAE,IAAc,EAAA;IAClB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;oBAC/B,OAAO,UAAA,CAAA,MAAA,CAAW,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAAA;IACvC,aAAA;IACD,YAAA,QAAQ,IAAI;IACV,gBAAA,KAAK,cAAc;IACjB,oBAAA,OAAO,QAAQ,CAAA;IACjB,gBAAA,KAAK,eAAe;IAClB,oBAAA,OAAO,OAAO,CAAA;IAChB,gBAAA;IACE,oBAAA,OAAO,IAAI,CAAA;IACd,aAAA;IACH,SAAC,CAAC,CAAA;SACH;IACD,IAAA,IAAI,YAAE,IAAc,EAAA;IAClB,QAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;IACvC,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;IACnB,SAAA;IACD,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,UAAA,IAAI,EAAA,EAAI,OAAA,IAAI,KAAK,SAAS,CAAlB,EAAkB,CAAC,CAAA;SAC/C;IACD,IAAA,EAAE,EAAE,MAAM;IACV,IAAA,CAAC,EAAE,MAAM;IACT,IAAA,IAAI,EAAE,MAAM;IACZ,IAAA,GAAG,EAAE,MAAM;IACX,IAAA,KAAK,EAAE,OAAO;IACd,IAAA,IAAI,EAAE,MAAM;IACZ,IAAA,MAAM,YAAE,IAAc,EAAA;IACpB,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAA;SAC9B;IACD,IAAA,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,UAAC,IAAc,EAAA;IACnB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE;oBACzC,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,qBAAqB,CAAC,CAAA;IACvE,aAAA;IACD,YAAA,OAAO,IAAI,CAAA;IACb,SAAC,CAAC,CAAA;SACH;KACF,CAAA;IAEe,SAAA,SAAS,CAAE,EAAU,EAAE,OAAe,EAAA;IACpD,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IAExC,IAAA,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAA,CAAC,EAAI,EAAA,OAAA,CAAC,KAAK,IAAI,CAAV,EAAU,CAAC,CAAA;QAC7C,IAAI,KAAK,IAAI,CAAC,EAAE;IACd,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IACtB,KAAA;IAED,IAAA,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE;YAC7B,IAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAgC,CAAC,CAAA;IAExE,QAAA,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;IACnC,YAAA,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IACvB,SAAA;IAAM,aAAA;IACL,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;IACpB,SAAA;IAED,QAAA,OAAO,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChD,KAAA;IAAM,SAAA;IACL,QAAA,OAAO,MAAM,GAAG,OAAO,GAAG,mCAAmC,CAAA;IAC9D,KAAA;IACH;;IC7IA,SAAS,kBAAkB,CAAE,IAAc,EAAA;;;IAGzC,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,IAAI,EAAA;IAClB,QAAA,QAAQ,IAAI;IACV,YAAA,KAAK,YAAY,CAAC;IAClB,YAAA,KAAK,eAAe,CAAC;IACrB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,OAAO,CAAA;IAChB,YAAA,KAAK,aAAa,CAAC;IACnB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,cAAc,CAAA;IACvB,YAAA,KAAK,mBAAmB;IACtB,gBAAA,OAAO,WAAW,CAAA;IACpB,YAAA,KAAK,iBAAiB,CAAC;IACvB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,YAAY,CAAA;IACrB,YAAA,KAAK,cAAc,CAAC;IACpB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,SAAS,CAAA;IAClB,YAAA,KAAK,QAAQ,CAAC;IACd,YAAA,KAAK,IAAI;;IAEP,gBAAA,OAAO,EAAE,CAAA;IACX,YAAA,KAAK,UAAU,CAAC;IAChB,YAAA,KAAK,IAAI;IACP,gBAAA,OAAO,UAAU,CAAA;IACnB,YAAA;IACE,gBAAA,OAAO,IAAI,CAAA;IACd,SAAA;IACH,KAAC,CAAC,CAAA;IACJ,CAAC;IAee,SAAA,QAAQ,CAAE,EAAU,EAAE,OAAe,EAAA;IACnD,IAAA,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IAExC,IAAA,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAA,CAAC,EAAI,EAAA,OAAA,CAAC,KAAK,IAAI,CAAV,EAAU,CAAC,CAAA;QAC7C,IAAI,KAAK,IAAI,CAAC,EAAE;IACd,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IACtB,KAAA;QAED,IAAI,GAAG,GAAG,KAAK,CAAA;IACf,IAAA,QAAQ,IAAI,CAAC,CAAC,CAAC;IACb,QAAA,KAAK,SAAS,CAAC;IACf,QAAA,KAAK,GAAG;IACN,YAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;IACrB,gBAAA,IAAI,GAAG,CAAC,SAAS,CAAC,CAAA;IACnB,aAAA;IAAM,iBAAA;IACL,gBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;IAChB,aAAA;IACD,YAAA,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;gBAC/B,MAAK;IACP,QAAA,KAAK,WAAW,CAAC;IACjB,QAAA,KAAK,IAAI,CAAC;IACV,QAAA,KAAK,QAAQ,CAAC;IACd,QAAA,KAAK,GAAG,CAAC;IACT,QAAA,KAAK,IAAI;IACP,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAA;IAClB,YAAA,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;gBAC/B,MAAK;IACP,QAAA,KAAK,OAAO;IACV,YAAA,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE;IACvB,gBAAA,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACnD,aAAA;IAAM,iBAAA;oBACL,GAAG,GAAG,KAAK,CAAA;IACZ,aAAA;gBACD,MAAK;IACP,QAAA,KAAK,SAAS,CAAC;IACf,QAAA,KAAK,IAAI;IACP,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;IACf,YAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBACpB,MAAK;IACP,QAAA,KAAK,KAAK;gBACR,MAAK;IACP,QAAA,KAAK,MAAM,CAAC;IACZ,QAAA,KAAK,IAAI;;IAEP,YAAA,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC/B,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IACd,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBAClB,MAAK;IACP,QAAA,KAAK,MAAM,CAAC;IACZ,QAAA,KAAK,QAAQ;IACX,YAAA,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE;oBACX,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;wBAC3B,GAAG,GAAG,MAAM,CAAA;IAEZ,oBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;IAC1C,oBAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACrB,iBAAA;yBAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;wBACnC,GAAG,GAAG,MAAM,CAAA;wBACZ,IAAI,CAAC,CAAC,CAAC,GAAG,SAAA,CAAA,MAAA,CAAU,IAAI,CAAC,CAAC,CAAC,CAAE,CAAA;IAC7B,oBAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACrB,iBAAA;IAAM,qBAAA;IACL,oBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;IACjB,iBAAA;IACF,aAAA;gBACD,MAAK;IAEP,QAAA,KAAK,MAAM,CAAC;IACZ,QAAA,KAAK,IAAI;IACP,YAAA,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC/B,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;gBAChB,MAAK;IACP,QAAA,KAAK,MAAM,CAAC;IACZ,QAAA,KAAK,OAAO,CAAC;IACb,QAAA,KAAK,QAAQ;gBACX,MAAK;IACP,QAAA,KAAK,MAAM,CAAC;IACZ,QAAA,KAAK,GAAG,CAAC;IACT,QAAA,KAAK,KAAK;IACR,YAAA,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;IAChB,YAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACnB,MAAK;IACP,QAAA,KAAK,MAAM;gBACT,GAAG,GAAG,MAAM,CAAA;IACZ,YAAA,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;gBACjB,MAAK;IACP,QAAA;;gBAEE,GAAG,GAAG,KAAK,CAAA;gBACX,MAAK;IACR,KAAA;QAED,IAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,KAAK,IAAI,CAAA,EAAA,CAAC,CAAA;IACjE,IAAA,OAAO,EAAG,CAAA,MAAA,CAAA,GAAG,EAAI,GAAA,CAAA,CAAA,MAAA,CAAA,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAA,MAAA,CACjC,GAAG,KAAK,KAAK,GAAG,mCAAmC,GAAG,EAAE,CACxD,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACtB;;ICxIA;;IAEG;IACa,SAAA,OAAO,CAAE,GAAW,EAAE,EAAmC,EAAA;QACvE,IAAI,EAAE,KAAK,KAAK,EAAE;YAChB,OAAO,GAAG,CAAC,OAAO,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAA;IAC1D,KAAA;aAAM,IAAI,EAAE,KAAK,MAAM,EAAE;YACxB,OAAO,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAA;IACzD,KAAA;aAAM,IAAI,EAAE,KAAK,KAAK,EAAE;YACvB,OAAO,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAA;IACxD,KAAA;IAAM,SAAA;YACL,OAAO,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAA;IACzD,KAAA;IACH,CAAC;IAED;;IAEG;IACmB,SAAA,SAAS,CAAE,OAAe,EAAE,KAAiC,EAAA;IAAjC,IAAA,IAAA,KAAA,KAAA,KAAA,CAAA,EAAA,EAAA,KAAiC,GAAA,OAAA,CAAA,EAAA;;;;4BAC/E,OAAM,CAAA,CAAA,YAAAC,gBAAU,CAAC,OAAO,EAAE;IAC1B,wBAAA,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,SAAU,CAAA,MAAA,CAAA,KAAK,CAAE;IACzB,qBAAA,CAAC,CAAC,IAAI,CAAC,UAAC,IAAI,EAAA;IACX,wBAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACnB,qBAAC,CAAC,CAAA,CAAA;;IALA,oBAAA,EAAA,CAAA,IAAA,EAKA,CAAA;;;;;IACH;;;;;;;;;","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/types/index.d.ts b/dist/types/index.d.ts index bd5009a..f2db8d4 100644 --- a/dist/types/index.d.ts +++ b/dist/types/index.d.ts @@ -1,4 +1,8 @@ /** * Converts between npm and yarn command */ -export default function convert(str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun'): string; +export declare function convert(str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun'): string; +/** + * Returns highlighted html string + */ +export declare function highlight(command: string, theme?: 'light' | 'dark'): Promise; diff --git a/package-lock.json b/package-lock.json index c2633ac..635d8b3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "prettier-standard": "^16.4.1", "rimraf": "^3.0.2", "rollup": "^3.18.0", + "shiki": "^1.12.1", "ts-jest": "^29.0.5", "typescript": "^4.9.4" }, @@ -1289,6 +1290,15 @@ } } }, + "node_modules/@shikijs/core": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.12.1.tgz", + "integrity": "sha512-biCz/mnkMktImI6hMfMX3H9kOeqsInxWEyCHbSlL8C/2TR1FqfmGxTLRNwYCKsyCyxWLbB8rEqXRVZuyxuLFmA==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.4" + } + }, "node_modules/@sinclair/typebox": { "version": "0.24.51", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz", @@ -1411,6 +1421,15 @@ "@types/node": "*" } }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dev": true, + "dependencies": { + "@types/unist": "*" + } + }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", @@ -8055,6 +8074,16 @@ "node": ">=8" } }, + "node_modules/shiki": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.12.1.tgz", + "integrity": "sha512-nwmjbHKnOYYAe1aaQyEBHvQymJgfm86ZSS7fT8OaPRr4sbAcBNz7PbfAikMEFSDQ6se2j2zobkXvVKcBOm0ysg==", + "dev": true, + "dependencies": { + "@shikijs/core": "1.12.1", + "@types/hast": "^3.0.4" + } + }, "node_modules/sigmund": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", @@ -10250,6 +10279,15 @@ "any-observable": "^0.3.0" } }, + "@shikijs/core": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.12.1.tgz", + "integrity": "sha512-biCz/mnkMktImI6hMfMX3H9kOeqsInxWEyCHbSlL8C/2TR1FqfmGxTLRNwYCKsyCyxWLbB8rEqXRVZuyxuLFmA==", + "dev": true, + "requires": { + "@types/hast": "^3.0.4" + } + }, "@sinclair/typebox": { "version": "0.24.51", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz", @@ -10372,6 +10410,15 @@ "@types/node": "*" } }, + "@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dev": true, + "requires": { + "@types/unist": "*" + } + }, "@types/istanbul-lib-coverage": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", @@ -15337,6 +15384,16 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, + "shiki": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.12.1.tgz", + "integrity": "sha512-nwmjbHKnOYYAe1aaQyEBHvQymJgfm86ZSS7fT8OaPRr4sbAcBNz7PbfAikMEFSDQ6se2j2zobkXvVKcBOm0ysg==", + "dev": true, + "requires": { + "@shikijs/core": "1.12.1", + "@types/hast": "^3.0.4" + } + }, "sigmund": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", diff --git a/package.json b/package.json index ad072d6..501ab50 100644 --- a/package.json +++ b/package.json @@ -65,6 +65,7 @@ "prettier-standard": "^16.4.1", "rimraf": "^3.0.2", "rollup": "^3.18.0", + "shiki": "^1.12.1", "ts-jest": "^29.0.5", "typescript": "^4.9.4" } diff --git a/rollup.config.mjs b/rollup.config.mjs index b0fd164..3c0cdcc 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -8,13 +8,19 @@ export default [ file: 'dist/npm-to-yarn.mjs', format: 'es', name: 'n2y', - sourcemap: true + sourcemap: true, + globals: { + shiki: 'shiki' + } }, { file: 'dist/npm-to-yarn.umd.js', format: 'umd', name: 'n2y', - sourcemap: true + sourcemap: true, + globals: { + shiki: 'shiki' + } } ], plugins: [ @@ -28,7 +34,9 @@ export default [ }) ], // Indicate here external modules you don't wanna include in your bundle (i.e.: 'lodash') - external: [], + external: [ + 'shiki', + ], watch: { include: 'src/**' } diff --git a/src/index.ts b/src/index.ts index d1ede35..eba3cd8 100644 --- a/src/index.ts +++ b/src/index.ts @@ -3,10 +3,12 @@ import { npmToYarn } from './npmToYarn' import { npmToPnpm } from './npmToPnpm' import { npmToBun } from './npmToBun' +import { codeToHtml } from 'shiki' + /** * Converts between npm and yarn command */ -export default function convert (str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun'): string { +export function convert (str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun'): string { if (to === 'npm') { return str.replace(/yarn(?: +([^&\n\r]*))?/gm, yarnToNPM) } else if (to === 'pnpm') { @@ -17,3 +19,15 @@ export default function convert (str: string, to: 'npm' | 'yarn' | 'pnpm' | 'bun return str.replace(/npm(?: +([^&\n\r]*))?/gm, npmToYarn) } } + +/** + * Returns highlighted html string + */ +export async function highlight (command: string, theme: 'light' | 'dark' = 'light') { + await codeToHtml(command, { + lang: 'shell', + theme: `github-${theme}` + }).then((html) => { + console.log(html) + }) +} \ No newline at end of file diff --git a/test/index.spec.ts b/test/index.spec.ts index 3463e53..a83c2d7 100644 --- a/test/index.spec.ts +++ b/test/index.spec.ts @@ -1,6 +1,6 @@ /* global it, expect, describe */ -import convert from '../src' +import { convert } from '../src' describe('NPM tests', () => { const tests: [npm: string, yarn: string, pnpm: string, bun: string][] = [