eslint-config-sukka 6.5.0 → 6.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>Promise.resolve(require(e));var r,s=require("@eslint-sukka/shared"),t=require("node:fs"),n=require("node:process"),o=require("node:path");require("node:fs/promises");var i=require("node:url"),a=require("@eslint-community/eslint-plugin-eslint-comments"),l=require("eslint-plugin-sukka"),c=require("eslint-plugin-promise"),p=require("eslint-plugin-regexp"),u=require("@eslint/js"),f=require("@stylistic/eslint-plugin-js"),m=require("@stylistic/eslint-plugin-plus"),y=require("eslint-plugin-unused-imports"),d=require("eslint-plugin-import-x"),g=require("eslint-plugin-autofix"),k=require("eslint-plugin-jsonc"),w=require("jsonc-eslint-parser"),b=require("typescript-eslint"),h=require("@stylistic/eslint-plugin-ts"),j=require("local-pkg"),x=require("picocolors"),v=require("defu"),E=require("ci-info"),P="undefined"!=typeof document?document.currentScript:null,S=(r=Object.create(null),p&&Object.keys(p).forEach(function(e){if("default"!==e){var s=Object.getOwnPropertyDescriptor(p,e);Object.defineProperty(r,e,s.get?s:{enumerable:!0,get:function(){return p[e]}})}}),r.default=p,Object.freeze(r));const C=e=>e instanceof URL?i.fileURLToPath(e):e;var T=function(e){let r=e.startsWith("!"),s=r?"!":"",t=(r?e.slice(1):e).trimEnd();if(["","**","/**","**/"].includes(t))return`${s}${t}`;let n=t.indexOf("/"),o=n<0||n===t.length-1?"**/":"",i=(0===n?t.slice(1):t).replaceAll(/(?=((?:\\.|[^{(])*))\1([{(])/guy,"$1\\$2"),a=t.endsWith("/**")?"/*":"";return`${s}${o}${i}${a}`};const L=".gitignore";function O(e={}){let r=[],{root:s=!1,files:i=s?L:function(e,{cwd:r=n.cwd(),type:s="file",stopAt:i}={}){let a=o.resolve(C(r)??""),{root:l}=o.parse(a);for(i=o.resolve(a,C(i)??l);a&&a!==i&&a!==l;){let r=o.isAbsolute(e)?e:o.join(a,e);try{let e=t.statSync(r,{throwIfNoEntry:!1});if("file"===s&&e?.isFile()||"directory"===s&&e?.isDirectory())return r}catch{}a=o.dirname(a)}}(L)||[],strict:a=!0,cwd:l=n.cwd()}=e,c=Array.isArray(i)?i:[i];for(let e of c){let s="";try{s=t.readFileSync(e,"utf8")}catch(e){if(a)throw e;continue}let n=o.relative(l,o.dirname(e)).replaceAll("\\","/"),i=s.split(/\r?\n/u).filter(e=>e&&!e.startsWith("#")).map(e=>T(e)).map(e=>(function(e,r,s){if(["",".","/"].includes(r))return e;let t=e.startsWith("!")?"!":"",n=t?e.slice(1):e;if(r.endsWith("/")||(r=`${r}/`),!r.startsWith(".."))return`${t}${r}${n}`;if(!r.match(/^(\.\.\/)+$/))throw Error("The ignore file location should be either a parent or child directory");if(n.startsWith("**"))return e;let i=o.relative(o.resolve(s,r),s).split(/[/\\]/);for(;i.length&&n.startsWith(`${i[0]}/`);)n=n.slice(i[0].length+1),i.shift();return n.startsWith("**")||0===i.length?`${t}${n}`:null})(e,n,l)).filter(e=>null!==e);r.push(...i)}if(a&&0===c.length)throw Error("No .gitignore file found");return{name:e.name||"gitignore",ignores:r}}const q=(e={})=>{let{customGlobs:r=null,gitignore:t=[".gitignore"]}=e,n=[],o=[];return!1===r||null===r?o=s.constants.GLOB_EXCLUDE:"function"==typeof r?o=r(s.constants.GLOB_EXCLUDE):"string"==typeof r?o.push(...s.constants.GLOB_EXCLUDE,r):Array.isArray(r)&&o.push(...s.constants.GLOB_EXCLUDE,...r),n.push({ignores:o}),!1===t||null===t||(!0===t?n.push(O({files:[".gitignore"],strict:!1})):("string"==typeof t||Array.isArray(t))&&n.push(O({files:t,strict:!1}))),n},R=()=>[{name:"sukka/eslint-comments",plugins:{"@eslint-community/eslint-comments":a,sukka:s.memo(l,"eslint-plugin-sukka")},rules:{"sukka/ban-eslint-disable":["error","allow-with-description"],"@eslint-community/eslint-comments/disable-enable-pair":["error",{allowWholeFile:!0}],"@eslint-community/eslint-comments/no-aggregating-enable":"error","@eslint-community/eslint-comments/no-duplicate-disable":"error","@eslint-community/eslint-comments/no-unlimited-disable":"error","@eslint-community/eslint-comments/no-unused-disable":"error","@eslint-community/eslint-comments/no-unused-enable":"error"}}],_=({typescript:e})=>[{name:"sukka/promise",plugins:{promise:c},rules:{"promise/always-return":e?"off":["error",{ignoreLastCallback:!0}],"promise/no-return-wrap":"error","promise/param-names":"error","promise/catch-or-return":["error",{allowFinally:!0,terminationMethod:["catch","asCallback","finally"]}],"promise/no-native":"off","promise/no-nesting":"warn","promise/no-promise-in-callback":"warn","promise/no-callback-in-promise":"warn","promise/avoid-new":"off","promise/no-new-statics":"error","promise/no-return-in-finally":"warn","promise/valid-params":"warn"}}],I=()=>[{name:"sukka/regexp",plugins:{sukka:s.memo(l,"eslint-plugin-sukka"),regexp:s.memo(S,"eslint-plugin-regexp")},rules:{"sukka/unicorn/better-regex":"error",...p.configs["flat/recommended"].rules,"regexp/strict":"off"}}],D=[".js",".jsx",".mjs",".cjs"],A=(e={})=>{let{files:r,disableNoConsoleInCLI:t=!0,env:n={}}=e,{browser:o=!0,webextensions:i=!1,greasemonkey:a=!1,customGlobals:c={}}=n,p=e.module??s.getPackageJson()?.type==="module",k=[{linterOptions:{reportUnusedDisableDirectives:!0}},{name:"@eslint/js recommended",...u.configs.recommended},{name:"@eslint-sukka/js base",...r?{files:r}:{},languageOptions:{ecmaVersion:"latest",sourceType:p?"module":"commonjs",parserOptions:{ecmaVersion:"latest",sourceType:p?"module":"commonjs",ecmaFeatures:{jsx:!0}},globals:{...s.globals.es2025,...o&&s.globals.browser,...i&&s.globals.webextensions,...a&&s.globals.greasemonkey,...c}},settings:{"import-x/parsers":{espree:D},"import-x/extensions":D},plugins:{"unused-imports":s.memo(y,"eslint-plugin-unused-imports"),"@stylistic/js":s.memo(f,"@stylistic/eslint-plugin-js"),"@stylistic/plus":s.memo(m,"@stylistic/eslint-plugin-plus"),sukka:s.memo(l,"eslint-plugin-sukka"),"import-x":s.memo(d,"eslint-plugin-import-x"),autofix:g},rules:{...d.configs.recommended.rules,"import-x/newline-after-import":["error",{considerComments:!1}],"import-x/no-absolute-path":"error","import-x/no-empty-named-blocks":"error","import-x/no-mutable-exports":"error","import-x/no-useless-path-segments":"warn","import-x/no-webpack-loader-syntax":"error","accessor-pairs":"off","array-callback-return":["error",{allowImplicit:!0}],"block-scoped-var":"error","class-methods-use-this":["error",{exceptMethods:[]}],curly:["error","multi-line"],"default-case":["error",{commentPattern:"^no default$"}],"default-case-last":"error","default-param-last":"error","dot-notation":["error",{allowKeywords:!0}],"@stylistic/js/dot-location":["error","property"],eqeqeq:["error","always",{null:"ignore"}],"grouped-accessor-pairs":"error","guard-for-in":"error","no-alert":"warn","no-caller":"off","autofix/no-caller":"error","no-constructor-return":"error","no-else-return":["error",{allowElseIf:!1}],"no-empty-pattern":"error","no-empty-static-block":"error","no-eval":"error","no-extend-native":"error","no-extra-bind":"error","no-extra-label":"error","no-implicit-coercion":["off",{boolean:!1,number:!0,string:!0,allow:[]}],"no-implicit-globals":"off","no-implied-eval":"error","no-invalid-this":"off","no-labels":["error",{allowLoop:!1,allowSwitch:!1}],"no-lone-blocks":"error","no-loop-func":"error","@stylistic/js/no-multi-spaces":["error",{ignoreEOLComments:!1}],"no-multi-str":"error","no-new":"error","no-new-func":"error","no-new-wrappers":"error","no-octal-escape":"error","no-proto":"off","autofix/no-proto":"error","no-restricted-properties":["error",...[["isFinite","Number.isFinite"],["isNaN","Number.isNaN"]].flatMap(([e,r])=>["global","globalThis","window","self"].map(s=>({object:s,property:e,message:`Please use ${r} instead`}))),{object:"arguments",property:"callee",message:"arguments.callee is deprecated"},{property:"__defineGetter__",message:"Please use Object.defineProperty instead."},{property:"__defineSetter__",message:"Please use Object.defineProperty instead."},{object:"Math",property:"pow",message:"Use the exponentiation operator (**) instead."}],"no-return-assign":["error","always"],"no-return-await":"off","sukka/no-return-await":"error","no-self-compare":"off","no-sequences":"error","no-unmodified-loop-condition":"off","no-unused-expressions":["error",{allowShortCircuit:!1,allowTernary:!1,allowTaggedTemplates:!1}],"no-useless-call":"off","no-useless-catch":"off","autofix/no-useless-catch":"error","no-useless-concat":"off","autofix/no-useless-concat":"error","no-useless-escape":"error","no-useless-return":"error","no-void":["error",{allowAsStatement:!0}],"no-with":"error","prefer-promise-reject-errors":["error",{allowEmptyReject:!0}],"prefer-object-has-own":"error","prefer-regex-literals":["error",{disallowRedundantWrapping:!0}],radix:"off","autofix/radix":"error","require-await":"error","require-yield":"error","require-unicode-regexp":"off","vars-on-top":"error","@stylistic/js/wrap-iife":["error","outside",{functionPrototypeMethods:!1}],yoda:"error","no-await-in-loop":"warn","no-console":"warn","no-constant-condition":"warn","no-empty-function":"error","no-empty":["error",{allowEmptyCatch:!0}],"no-constant-binary-expression":"error","@stylistic/js/no-extra-parens":["off","all",{conditionalAssign:!0,nestedBinaryExpressions:!1,returnAssign:!1,ignoreJSX:"all",enforceForArrowConditionals:!1}],"no-loss-of-precision":"warn","no-promise-executor-return":"error","no-template-curly-in-string":"error","no-unreachable-loop":["error",{ignore:[]}],"no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"unused-imports/no-unused-vars":"off","unused-imports/no-unused-imports":"off","no-unused-private-class-members":"error","no-useless-backreference":"error","no-negated-in-lhs":"off","require-atomic-updates":"off","use-isnan":["error",{enforceForIndexOf:!0}],"valid-typeof":"off","autofix/valid-typeof":["error",{requireStringLiterals:!0}],"no-new-native-nonconstructor":"off","autofix/no-new-native-nonconstructor":"error","@stylistic/js/arrow-spacing":["error",{before:!0,after:!0}],"@stylistic/js/generator-star-spacing":["error",{before:!0,after:!1}],"@stylistic/js/no-confusing-arrow":["error",{allowParens:!0}],"no-duplicate-imports":"off","no-restricted-exports":["error",{restrictedNamedExports:["then"]}],"no-useless-constructor":"error","no-useless-rename":["error",{ignoreDestructuring:!1,ignoreImport:!1,ignoreExport:!1}],"no-var":"warn","object-shorthand":["error","always",{ignoreConstructors:!1,avoidQuotes:!0,avoidExplicitReturnArrows:!0}],"prefer-arrow-callback":["error",{allowNamedFunctions:!1,allowUnboundThis:!0}],"prefer-const":["error",{ignoreReadBeforeAssign:!0}],"prefer-numeric-literals":"error","prefer-rest-params":"error","prefer-template":"off","symbol-description":"error","@stylistic/js/template-curly-spacing":["error","never"],"@stylistic/js/yield-star-spacing":["error","before"],"@stylistic/js/array-bracket-newline":["off","consistent"],"@stylistic/js/array-bracket-spacing":["error","never"],"@stylistic/js/array-element-newline":["off",{multiline:!0,minItems:5}],"@stylistic/js/block-spacing":["error","always"],"@stylistic/js/brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:["warn",{properties:"never",ignoreDestructuring:!1,ignoreImports:!0,ignoreGlobals:!0,allow:["^UNSAFE_","^experimental_","^__DEV__"]}],"@stylistic/js/comma-dangle":["error","never"],"@stylistic/js/comma-spacing":["error",{before:!1,after:!0}],"@stylistic/js/comma-style":["error","last",{exceptions:{ArrayExpression:!1,ArrayPattern:!1,ArrowFunctionExpression:!1,CallExpression:!1,FunctionDeclaration:!1,FunctionExpression:!1,ImportDeclaration:!1,ObjectExpression:!1,ObjectPattern:!1,VariableDeclaration:!1,NewExpression:!1}}],"@stylistic/js/computed-property-spacing":["error","never"],"consistent-this":"off","@stylistic/js/eol-last":["error","always"],"@stylistic/js/func-call-spacing":["error","never"],"@stylistic/js/function-call-argument-newline":["off","consistent"],"@stylistic/js/function-paren-newline":["error","consistent"],"@stylistic/js/implicit-arrow-linebreak":["error","beside"],"@stylistic/js/indent":["error",2,{SwitchCase:1}],"@stylistic/plus/indent-binary-ops":["error",2],"@stylistic/js/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"@stylistic/js/keyword-spacing":["error",{before:!0,after:!0,overrides:{return:{after:!0},throw:{after:!0},case:{after:!0}}}],"@stylistic/js/linebreak-style":"error","@stylistic/js/lines-around-comment":"off","@stylistic/js/lines-around-directive":"off","@stylistic/js/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"@stylistic/js/multiline-ternary":"off","new-cap":["error",{newIsCap:!0,newIsCapExceptions:[],capIsNew:!1,capIsNewExceptions:["Immutable.Map","Immutable.Set","Immutable.List"]}],"@stylistic/js/newline-per-chained-call":["error",{ignoreChainWithDepth:6}],"@stylistic/js/new-parens":"error","no-bitwise":"off","no-lonely-if":"error","sukka/unicorn/no-lonely-if":"error","@stylistic/js/no-mixed-operators":["error",{groups:[["**","+"],["**","-"],["**","*"],["**","/"],["%","+"],["%","-"],["%","*"],["%","/"],["%","**"],["==","!=","===","!==",">",">=","<","<="],["&&","||"],["in","instanceof"]],allowSamePrecedence:!0}],"@stylistic/js/no-mixed-spaces-and-tabs":"error","no-multi-assign":"error","@stylistic/js/no-multiple-empty-lines":["error",{max:1,maxBOF:0,maxEOF:0}],"no-negated-condition":"off","sukka/unicorn/no-negated-condition":"warn","no-nested-ternary":"off","sukka/unicorn/no-nested-ternary":"warn","no-new-object":"off","no-object-constructor":"error","no-array-constructor":"error","@stylistic/js/no-spaced-func":"off","@stylistic/js/no-tabs":"error","no-ternary":"off","@stylistic/js/no-trailing-spaces":"error","no-unneeded-ternary":"error","@stylistic/js/no-whitespace-before-property":"error","@stylistic/js/nonblock-statement-body-position":"error","@stylistic/js/object-curly-newline":"off","@stylistic/js/object-curly-spacing":["error","always"],"@stylistic/js/object-property-newline":"off","@stylistic/js/one-var-declaration-per-line":"off","prefer-exponentiation-operator":"error","@stylistic/js/operator-linebreak":["error","before"],"@stylistic/js/padded-blocks":["error","never"],"@stylistic/js/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"}],"@stylistic/js/quotes":["error","single"],"@stylistic/js/quote-props":["error","as-needed",{keywords:!1,unnecessary:!0,numbers:!1}],"@stylistic/js/jsx-quotes":["error","prefer-double"],"@stylistic/js/rest-spread-spacing":["error","never"],"@stylistic/js/semi":["error","always"],"@stylistic/js/semi-spacing":["error",{before:!1,after:!0}],"@stylistic/js/semi-style":["error","last"],"@stylistic/js/space-before-blocks":"error","@stylistic/js/space-before-function-paren":["error",{anonymous:"always",named:"never",asyncArrow:"always"}],"@stylistic/js/space-in-parens":["error","never"],"@stylistic/js/space-infix-ops":"error","@stylistic/js/space-unary-ops":["error",{words:!0,nonwords:!1,overrides:{}}],"@stylistic/js/spaced-comment":["error","always",{line:{exceptions:["-","+"],markers:["=","!","/"]},block:{exceptions:["-","+"],markers:["=","!",":","::"],balanced:!0}}],"@stylistic/js/switch-colon-spacing":["error",{after:!0,before:!1}],"@stylistic/js/template-tag-spacing":["error","never"],"unicode-bom":["error","never"],"@stylistic/js/wrap-regex":"off","no-label-var":"error","no-use-before-define":["error",{functions:!1,classes:!0,variables:!0}],"no-restricted-globals":["error",{name:"isFinite",message:"Use Number.isFinite instead https://github.com/airbnb/javascript#standard-library--isfinite"},{name:"isNaN",message:"Use Number.isNaN instead https://github.com/airbnb/javascript#standard-library--isnan"}],"no-undef-init":"error","sukka/no-expression-empty-lines":"error","sukka/array/no-unneeded-flat-map":"error","sukka/browser/prefer-location-assign":"warn","sukka/jsx/no-template-literal":"error","sukka/jsx/no-unneeded-nested":"error","sukka/string/no-locale-case":"warn","sukka/string/no-simple-template-literal":"error","sukka/type/no-instanceof-wrapper":"error","sukka/unicode/no-bidi":"warn","sukka/unicode/no-invisible":"warn","sukka/no-redundant-variable":"error","sukka/no-single-return":"error","sukka/prefer-early-return":["error",{maximumStatements:16}],"sukka/prefer-fetch":"error","sukka/prefer-timer-id":"warn","sukka/unicorn/catch-error-name":["error",{ignore:[/^(?:e|err|error|\w+Err|\w+Error)[\d_]?$/]}],"sukka/unicorn/custom-error-definition":"error","sukka/unicorn/require-array-join-separator":"warn","sukka/unicorn/no-thenable":"error","sukka/unicorn/no-invalid-remove-event-listener":"error","sukka/unicorn/consistent-function-scoping":"warn","sukka/unicorn/prefer-event-target":"warn","sukka/unicorn/prefer-keyboard-event-key":"warn","sukka/unicorn/prefer-text-content":"warn","sukka/unicorn/no-console-spaces":"warn","sukka/unicorn/no-empty-file":"warn","sukka/unicorn/no-useless-fallback-in-spread":"warn","sukka/unicorn/no-useless-length-check":"warn","sukka/unicorn/no-useless-promise-resolve-reject":"warn","sukka/unicorn/no-zero-fractions":"warn","sukka/unicorn/prefer-export-from":["warn",{ignoreUsedVariables:!0}],"sukka/unicorn/prefer-native-coercion-functions":"warn","sukka/unicorn/prefer-negative-index":"warn","sukka/unicorn/no-document-cookie":"error","sukka/unicorn/prefer-add-event-listener":"warn","sukka/unicorn/prefer-array-index-of":"warn","sukka/unicorn/prefer-blob-reading-methods":"warn","sukka/unicorn/prefer-date-now":"warn","sukka/unicorn/prefer-dom-node-dataset":"warn","sukka/unicorn/prefer-modern-math-apis":"warn","sukka/unicorn/number-literal-case":"error","sukka/unicorn/prefer-number-properties":["warn",{checkInfinity:!1}],"sukka/unicorn/prefer-reflect-apply":"warn","sukka/unicorn/prefer-set-size":"warn","sukka/unicorn/prefer-string-replace-all":"warn","sukka/unicorn/prefer-string-slice":"warn","sukka/unicorn/prefer-string-trim-start-end":"warn","sukka/unicorn/no-unreadable-iife":"warn","sukka/unicorn/throw-new-error":"warn","sukka/unicorn/escape-case":"warn","sukka/unicorn/no-hex-escape":"warn","sukka/unicorn/prefer-prototype-methods":"warn","sukka/unicorn/error-message":"error","sukka/unicorn/no-instanceof-array":"error","sukka/unicorn/prefer-type-error":"error","sukka/unicorn/consistent-destructuring":"warn","sukka/unicorn/new-for-builtins":"warn","sukka/unicorn/no-array-push-push":"warn","sukka/unicorn/no-static-only-class":"warn","sukka/unicorn/no-unreadable-array-destructuring":"error","sukka/unicorn/no-useless-spread":"error","sukka/unicorn/no-useless-switch-case":"warn","sukka/unicorn/no-useless-undefined":["error",{checkArguments:!1}],"sukka/unicorn/numeric-separators-style":["warn",{onlyIfContainsSeparator:!1,number:{minimumDigits:7,groupLength:3},binary:{minimumDigits:9,groupLength:4},octal:{minimumDigits:9,groupLength:4},hexadecimal:{minimumDigits:5,groupLength:2}}],"sukka/unicorn/prefer-array-find":"warn","sukka/unicorn/prefer-array-flat-map":"warn","sukka/unicorn/prefer-array-flat":"warn","sukka/unicorn/prefer-array-some":"warn","sukka/unicorn/prefer-code-point":"warn","sukka/unicorn/prefer-default-parameters":"warn","sukka/unicorn/prefer-logical-operator-over-ternary":"warn","sukka/unicorn/prefer-optional-catch-binding":"error","sukka/unicorn/prefer-regexp-test":"warn","sukka/unicorn/prefer-set-has":"error","sukka/unicorn/prefer-switch":"warn","sukka/unicorn/require-number-to-fixed-digits-argument":"warn","sukka/import-dedupe":"error","sukka/unicorn/prefer-string-raw":"warn","sukka/unicorn/no-single-promise-in-promise-methods":"error","sukka/unicorn/no-await-in-promise-methods":"error","sukka/unicorn/no-magic-array-flat-depth":"error","sukka/unicorn/no-object-as-default-parameter":"error","sukka/unicorn/template-indent":["warn",{tags:["outdent","dedent","gql","sql","html","styled","css"],functions:["dedent","stripIndent","strip_indent","stripTags","striptags","strip_tags","stripHtml","stripHTML","strip_html"],selectors:[],comments:["HTML","html","CSS","css","indent"]}],"sukka/unicorn/no-negation-in-equality-check":"error","sukka/unicorn/no-length-as-slice-end":"error","no-restricted-imports":["error",{paths:s.RESTRICTED_IMPORT_JS}],"no-prototype-builtins":"off","autofix/no-prototype-builtins":"error"}}];if(!1!==t){let e="boolean"==typeof t?null:Array.isArray(t)?t:[t];k.push({name:"@eslint-sukka/js cli specific",files:e??[`**/scripts/${s.constants.GLOB_SRC}`,`**/cli/${s.constants.GLOB_SRC}`,`**/cli.${s.constants.GLOB_SRC_EXT}`],rules:{"no-console":"off"}})}return k},U={plugins:{jsonc:s.memo(k,"eslint-plugin-jsonc")},languageOptions:{parser:w}},F={"jsonc/array-bracket-spacing":["error","never"],"jsonc/comma-dangle":["error","never"],"jsonc/comma-style":["error","last"],"jsonc/indent":["error",2],"jsonc/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"jsonc/object-curly-newline":"off","jsonc/object-curly-spacing":["error","always"],"jsonc/object-property-newline":["error",{allowMultiplePropertiesPerLine:!0}],"jsonc/quote-props":"error","jsonc/quotes":"error"},N=()=>[...k.configs["flat/base"],{name:"@eslint-sukka/json json",files:[s.constants.GLOB_JSON],rules:{...k.configs["flat/recommended-with-json"].reduce((e,r)=>({...e,...r.rules}),{}),...F}},{name:"@eslint-sukka/json json5",...U,files:[s.constants.GLOB_JSON5],rules:{...k.configs["flat/recommended-with-json5"].reduce((e,r)=>({...e,...r.rules}),{}),...F}},{name:"@eslint-sukka/json jsonc",...U,files:[s.constants.GLOB_JSONC],rules:{...k.configs["flat/recommended-with-jsonc"].reduce((e,r)=>({...e,...r.rules}),{}),...F}},{name:"@eslint-sukka/json package.json",...U,files:["**/package.json"],rules:{"jsonc/sort-array-values":["error",{order:{type:"asc"},pathPattern:"^files$"}],"jsonc/sort-keys":["error",{order:["$schema","publisher","name","displayName","version","private","description","funding","homepage","repository","bugs","categories","type","main","module","types","typesVersions","bin","files","exports","icon","unpkg","jsdelivr","sideEffects","activationEvents","contributes","scripts","keywords","author","license","dependencies","devDependencies","peerDependencies","peerDependenciesMeta","optionalDependencies","packageManager","engines","pnpm","overrides","resolutions","husky","simple-git-hooks","lint-staged","eslintConfig"],pathPattern:"^$"},{order:{type:"asc"},pathPattern:"^(?:dev|peer|optional|bundled)?[Dd]ependencies(Meta)?$"},{order:["types","import","module","require","default"],pathPattern:"^exports.*$"}]}},{name:"@eslint-sukka/json tsconfig.json",...U,files:["**/tsconfig.json","**/tsconfig.*.json","**/tsconfig-*.json","**/jsconfig.json","**/jsconfig.*.json","**/jsconfig-*.json"],rules:{"jsonc/sort-keys":["error",{order:["$schema","extends","compilerOptions","references","files","include","exclude"],pathPattern:"^$"},{order:["incremental","composite","tsBuildInfoFile","disableSourceOfProjectReferenceRedirect","disableSolutionSearching","disableReferencedProjectLoad","target","lib","jsx","experimentalDecorators","emitDecoratorMetadata","jsxFactory","jsxFragmentFactory","jsxImportSource","reactNamespace","noLib","useDefineForClassFields","moduleDetection","module","rootDir","moduleResolution","baseUrl","paths","rootDirs","typeRoots","types","allowUmdGlobalAccess","moduleSuffixes","allowImportingTsExtensions","resolvePackageJsonExports","resolvePackageJsonImports","customConditions","resolveJsonModule","allowArbitraryExtensions","noResolve","allowJs","checkJs","maxNodeModuleJsDepth","declaration","declarationMap","emitDeclarationOnly","sourceMap","inlineSourceMap","outFile","outDir","removeComments","noEmit","importHelpers","importsNotUsedAsValues","downlevelIteration","sourceRoot","mapRoot","inlineSources","emitBOM","newLine","stripInternal","noEmitHelpers","noEmitOnError","preserveConstEnums","declarationDir","preserveValueImports","isolatedModules","verbatimModuleSyntax","allowSyntheticDefaultImports","esModuleInterop","preserveSymlinks","forceConsistentCasingInFileNames","strict","strictBindCallApply","strictFunctionTypes","strictNullChecks","strictPropertyInitialization","allowUnreachableCode","allowUnusedLabels","alwaysStrict","exactOptionalPropertyTypes","noFallthroughCasesInSwitch","noImplicitAny","noImplicitOverride","noImplicitReturns","noImplicitThis","noPropertyAccessFromIndexSignature","noUncheckedIndexedAccess","noUnusedLocals","noUnusedParameters","useUnknownInCatchVariables","skipDefaultLibCheck","skipLibCheck"],pathPattern:"^compilerOptions$"}]}}],$={"no-dupe-class-members":"off","@typescript-eslint/no-dupe-class-members":"off","no-redeclare":"off","@typescript-eslint/no-redeclare":"off","no-unused-vars":"off","@typescript-eslint/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"class-methods-use-this":"off","@typescript-eslint/class-methods-use-this":["error",{exceptMethods:[]}],"default-param-last":"off","@typescript-eslint/default-param-last":"error","dot-notation":"off","@typescript-eslint/dot-notation":["error",{allowKeywords:!0}],"no-implied-eval":"off","@typescript-eslint/no-implied-eval":"error","no-invalid-this":"off","@typescript-eslint/no-invalid-this":"off","no-loop-func":"off","@typescript-eslint/no-loop-func":"error","no-return-await":"off","@typescript-eslint/return-await":"error","sukka/no-return-await":"off","no-unused-expressions":"off","@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!1,allowTernary:!1,allowTaggedTemplates:!1}],"prefer-promise-reject-errors":"off","@typescript-eslint/prefer-promise-reject-errors":["error",{allowEmptyReject:!0}],"require-await":"off","@typescript-eslint/require-await":"error","no-empty-function":"off","@typescript-eslint/no-empty-function":"error","@stylistic/js/no-extra-parens":"off","@stylistic/ts/no-extra-parens":["off","all",{conditionalAssign:!0,nestedBinaryExpressions:!1,returnAssign:!1,ignoreJSX:"all",enforceForArrowConditionals:!1}],"no-useless-constructor":"off","@typescript-eslint/no-useless-constructor":"error","@stylistic/js/block-spacing":"off","@stylistic/ts/block-spacing":["error","always"],"@stylistic/js/brace-style":"off","@stylistic/ts/brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:"off","@stylistic/js/comma-dangle":"off","@stylistic/ts/comma-dangle":["error","never"],"@stylistic/js/comma-spacing":"off","@stylistic/ts/comma-spacing":["error",{before:!1,after:!0}],"@stylistic/js/func-call-spacing":"off","@stylistic/ts/func-call-spacing":["error","never"],"@stylistic/js/indent":"off","@stylistic/ts/indent":["error",2,{SwitchCase:1}],"@stylistic/js/key-spacing":"off","@stylistic/ts/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"@stylistic/js/keyword-spacing":"off","@stylistic/ts/keyword-spacing":["error",{before:!0,after:!0,overrides:{return:{after:!0},throw:{after:!0},case:{after:!0}}}],"@stylistic/js/lines-around-comment":"off","@stylistic/ts/lines-around-comment":"off","@stylistic/js/lines-between-class-members":"off","@stylistic/ts/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"no-array-constructor":"off","@typescript-eslint/no-array-constructor":"error","@stylistic/js/object-curly-newline":"off","@stylistic/ts/object-curly-newline":"off","@stylistic/js/object-curly-spacing":"off","@stylistic/ts/object-curly-spacing":["error","always"],"@stylistic/js/object-property-newline":"off","@stylistic/ts/object-property-newline":"off","@stylistic/js/padding-line-between-statements":"off","@stylistic/ts/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"}],"@stylistic/js/quotes":"off","@stylistic/ts/quotes":["error","single"],"@stylistic/js/quote-props":"off","@stylistic/ts/quote-props":["error","as-needed",{keywords:!1,unnecessary:!0,numbers:!1}],"@stylistic/js/semi":"off","@stylistic/ts/semi":["error","always"],"@stylistic/js/space-before-blocks":"off","@stylistic/ts/space-before-blocks":"error","@stylistic/js/space-before-function-paren":"off","@stylistic/ts/space-before-function-paren":["error",{anonymous:"always",named:"never",asyncArrow:"always"}],"@stylistic/js/space-infix-ops":"off","@stylistic/ts/space-infix-ops":"error","no-use-before-define":"off","@typescript-eslint/no-use-before-define":["error",{functions:!1,classes:!0,variables:!0}],"no-restricted-imports":"off"},M=[".js",".jsx",".mjs",".cjs"],B=[".ts",".cts",".mts",".tsx",".d.ts"],W=[...B,...M],G=[".ts",".cts",".mts",".tsx",...M],V=(e={})=>{let{tsconfigPath:r=!0,tsconfigRootDir:t=n.cwd(),componentExtentions:o=[]}=e,a="string"==typeof __dirname?i.pathToFileURL(__dirname).href:"undefined"==typeof document?require("url").pathToFileURL(__filename).href:P&&P.src||new URL("index.cjs",document.baseURI).href,l=i.fileURLToPath(s.importMetaResolve("@typescript-eslint/parser",a)),c=i.fileURLToPath(s.importMetaResolve("eslint-import-resolver-ts-bundled",a));return[{name:"@eslint-sukka/ts base",files:[s.constants.GLOB_TS,s.constants.GLOB_TSX,...o.map(e=>`**/*.${e}`)],plugins:{...b.configs.base.plugins,"@stylistic/ts":s.memo(h,"@stylistic/eslint-plugin-ts"),"@stylistic/plus":s.memo(m,"@stylistic/eslint-plugin-plus"),"import-x":s.memo(d,"eslint-plugin-import-x")},languageOptions:{parser:b.configs.base.languageOptions.parser,sourceType:"module",parserOptions:{sourceType:"module",ecmaVersion:"latest",...!0===r?{projectService:!0,allowDefaultProject:[]}:{project:r},tsconfigRootDir:t,ecmaFeatures:{jsx:!0},jsxPragma:void 0,warnOnUnsupportedTypeScriptVersion:!0}},settings:{"import-x/extensions":W,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/resolver":{node:{extensions:G},[c]:{alwaysTryTypes:!0,...!0===r?{}:{project:r}}},"import-x/parsers":{espree:M,[l]:B}},rules:{...b.configs.base.rules,...b.configs.recommendedTypeChecked.reduce((e,r)=>({...e,...r.rules}),{}),...b.configs.stylisticTypeChecked.reduce((e,r)=>({...e,...r.rules}),{}),...d.configs.typescript.rules,...$,"@typescript-eslint/ban-ts-comment":["error",{"ts-expect-error":"allow-with-description","ts-ignore":!0,"ts-nocheck":!0,"ts-check":!1,minimumDescriptionLength:10}],"@typescript-eslint/naming-convention":["warn",{selector:"variable",format:["camelCase","PascalCase","UPPER_CASE","snake_case"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"},{selector:"function",format:["camelCase","PascalCase"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"},{selector:"typeLike",format:["PascalCase"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"}],"@typescript-eslint/consistent-type-assertions":["error",{assertionStyle:"as",objectLiteralTypeAssertions:"allow"}],"@typescript-eslint/require-await":"error","@typescript-eslint/await-thenable":"error","@typescript-eslint/no-for-in-array":"error","@typescript-eslint/no-misused-promises":["error",{checksVoidReturn:!1}],"@typescript-eslint/no-unnecessary-type-assertion":"error","@typescript-eslint/restrict-template-expressions":["error",{allowNumber:!0,allowAny:!0,allowBoolean:!0,allowNever:!0}],"@typescript-eslint/unbound-method":"error","@typescript-eslint/consistent-type-imports":["warn",{prefer:"type-imports",disallowTypeAnnotations:!1,fixStyle:"separate-type-imports"}],"@typescript-eslint/no-import-type-side-effects":"warn","@typescript-eslint/consistent-type-exports":["warn",{fixMixedExportsWithInlineTypeSpecifier:!1}],"@typescript-eslint/consistent-type-definitions":"warn","@typescript-eslint/consistent-generic-constructors":["error","constructor"],"@typescript-eslint/no-base-to-string":["error",{ignoredTypeNames:["Error","RegExp","URL","URLSearchParams"]}],"@typescript-eslint/no-confusing-non-null-assertion":"error","@typescript-eslint/no-dynamic-delete":"warn","@typescript-eslint/no-extraneous-class":["warn",{allowConstructorOnly:!0,allowEmpty:!0,allowWithDecorator:!0}],"@typescript-eslint/no-invalid-void-type":["off",{allowInGenericTypeArguments:!0,allowAsThisParameter:!0}],"@typescript-eslint/no-non-null-asserted-nullish-coalescing":"error","@typescript-eslint/no-unnecessary-boolean-literal-compare":"error","@typescript-eslint/no-unnecessary-condition":["warn",{allowConstantLoopConditions:!0}],"@typescript-eslint/no-unnecessary-type-arguments":"error","@typescript-eslint/no-unsafe-declaration-merging":"error","@typescript-eslint/non-nullable-type-assertion-style":"error","@typescript-eslint/prefer-includes":"error","@typescript-eslint/prefer-literal-enum-member":["error",{allowBitwiseExpressions:!0}],"@typescript-eslint/prefer-nullish-coalescing":"off","@typescript-eslint/prefer-return-this-type":"error","@typescript-eslint/prefer-optional-chain":"error","@typescript-eslint/prefer-reduce-type-parameter":"error","@typescript-eslint/unified-signatures":["error",{ignoreDifferentlyNamedParameters:!0}],"@typescript-eslint/prefer-for-of":"off","@typescript-eslint/prefer-function-type":"off","@typescript-eslint/consistent-indexed-object-style":"off","@typescript-eslint/prefer-enum-initializers":"warn","@typescript-eslint/no-duplicate-enum-values":"error","@typescript-eslint/no-extra-non-null-assertion":"error","@typescript-eslint/no-meaningless-void-operator":"warn","@typescript-eslint/no-unnecessary-qualifier":"warn","@typescript-eslint/array-type":["warn",{default:"array-simple"}],"@typescript-eslint/no-restricted-imports":["error",{paths:s.RESTRICTED_IMPORT_TS}],"@typescript-eslint/no-empty-object-type":["error",{allowInterfaces:"with-single-extends",allowObjectTypes:"never",allowWithName:"Props$"}],"@typescript-eslint/no-unsafe-function-type":"warn","@typescript-eslint/no-restricted-types":["error",{types:{FC:{message:"To declare a component, you don't have to use FC to annotate it. To type something that accepts/is a React Component, use ComponentType<T>.",fixWith:"ComponentType"},"React.FC":{message:"To declare a component, you don't have to use React.FC to annotate it. To type something that accepts/is a React Component, use React.ComponentType<T>.",fixWith:"React.ComponentType"},ReactElement:{message:"In most cases, you want ReactNode. Only ignore this rule when you want to use cloneElement.",fixWith:"ReactNode"},"React.ReactElement":{message:"In most cases, you want React.ReactNode. Only ignore this rule when you want to use cloneElement.",fixWith:"React.ReactNode"}}}],"@typescript-eslint/no-unsafe-assignment":"off","@typescript-eslint/no-unsafe-argument":"off","@typescript-eslint/no-explicit-any":"warn","@typescript-eslint/no-loop-func":"warn","@typescript-eslint/no-redundant-type-constituents":"off","@typescript-eslint/no-floating-promises":"off","@typescript-eslint/no-unsafe-call":"off","@typescript-eslint/no-unsafe-member-access":"off","@typescript-eslint/no-unsafe-return":"off","@typescript-eslint/no-unsafe-enum-comparison":"warn","@typescript-eslint/prefer-regexp-exec":"warn","@typescript-eslint/no-deprecated":"warn","@typescript-eslint/no-unnecessary-template-expression":"warn","no-restricted-syntax":["error",{message:'Unnecessary "as const"',selector:"VariableDeclarator > TSAsExpression[expression.properties.length=0] > TSTypeReference > Identifier[name=const]"},{message:'Unnecessary "as const"',selector:"VariableDeclarator[id.typeAnnotation] > TSAsExpression > TSTypeReference > Identifier[name=const]"},{message:'Static class methods requires "this: void"',selector:'MethodDefinition[static=true][kind!="get"][kind!="set"] > FunctionExpression:not([params.0.name=this][params.0.typeAnnotation.typeAnnotation.type=TSVoidKeyword])'}],"@stylistic/ts/member-delimiter-style":["error",{multiline:{delimiter:"comma",requireLast:!1},singleline:{delimiter:"comma",requireLast:!1}}],"@stylistic/ts/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0,exceptAfterOverload:!0}],"@stylistic/ts/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"},{blankLine:"any",prev:["interface","type"],next:["interface","type"]}],"@stylistic/ts/type-annotation-spacing":["error",{before:!1,after:!0,overrides:{arrow:{before:!0,after:!0}}}],"@typescript-eslint/no-namespace":"off","@typescript-eslint/prefer-string-starts-ends-with":"off","sukka/string/prefer-string-starts-ends-with":"error","@typescript-eslint/switch-exhaustiveness-check":"error","sukka/string/no-unneeded-to-string":"error","sukka/type/no-force-cast-via-top-type":"error","sukka/type/no-wrapper-type-reference":"error","sukka/no-default-error":"off","sukka/no-export-const-enum":"error","@stylistic/plus/type-generic-spacing":"error","@stylistic/plus/type-named-tuple-spacing":"error","@typescript-eslint/no-unused-vars":"off","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"unused-imports/no-unused-imports":"error","import-x/consistent-type-specifier-style":["error","prefer-top-level"],"import-x/named":"off","import-x/no-duplicates":"off","import-x/namespace":"off","import-x/default":"off","import-x/no-named-as-default-member":"off","import/no-deprecated":"off"}},{name:"@eslint-sukka/ts dts",files:["**/*.d.ts"],plugins:{"import-x":s.memo(d,"eslint-plugin-import-x")},rules:{"import-x/no-duplicates":"off","unused-imports/no-unused-vars":"off"}},{name:"@eslint-sukka/ts jest/mocha",files:["**/*.{test,spec}.ts?(x)"],rules:{"no-unused-expressions":"off"}},{name:"@eslint-sukka/ts commonjs",files:["**/*.js","**/*.cjs"],plugins:b.configs.base.plugins,rules:{"@typescript-eslint/no-require-imports":"off","@typescript-eslint/no-var-requires":"off"}}]},J=(e={})=>[{name:"@eslint-sukka/legacy base",...e.files?{files:e.files}:{},plugins:{sukka:s.memo(l,"eslint-plugin-sukka")},rules:{"prefer-numeric-literals":"off","no-restricted-properties":["error",{object:"arguments",property:"callee",message:"arguments.callee is deprecated"},{property:"__defineGetter__",message:"Please use Object.defineProperty instead."},{property:"__defineSetter__",message:"Please use Object.defineProperty instead."}],"no-var":"off","prefer-object-spread":"off",strict:["error","safe"],"sukka/unicorn/prefer-default-parameters":"off","sukka/unicorn/prefer-logical-operator-over-ternary":"off","sukka/unicorn/prefer-optional-catch-binding":"off"},languageOptions:{globals:{...e.browser??!0?s.globals.browser:{},...e.node?s.globals.node:{}}}}],X=async r=>{if(!E.isCI&&n.stdout.isTTY&&!j.isPackageExists(r)){let{confirm:e}=await Promise.resolve().then(function(){return require("./vendor-DekA__rQ.cjs")}).then(function(e){return e.i});await e({message:`Package is required for this config: ${r}. Do you want to install it?`})&&await Promise.resolve().then(function(){return require("./vendor-DekA__rQ.cjs")}).then(function(e){return e.a}).then(e=>e.installPackage(r,{dev:!0}))}return e(r)};function z(e,r=!1){return"boolean"==typeof e?e:void 0===e?r:!!e.enable||r}function H(e,...r){if("boolean"==typeof e||void 0===e)return;let{enable:s,...t}=e;return r.length?v.defu(t,...r):t}function K(e){j.isPackageExists(e)&&console.error(x.yellow(`[eslint-config-sukka] "${e}" is deprecated and you should uninstall it`))}const Q=async(e,...r)=>{let s=[];K("@eslint-sukka/js"),K("@eslint-sukka/json"),K("@eslint-sukka/ts"),K("@eslint-sukka/legacy");let t=z(e?.ts,j.isPackageExists("typescript"));s.push(q(e?.ignores),R()),z(e?.js,!0)&&s.push(A(H(e?.js)),_({typescript:t}),I()),z(e?.json,!0)&&s.push(N()),t&&s.push(V(H(e?.ts)));let n=j.isPackageExists("next"),o=z(e?.react,n||j.isPackageExists("react")||j.isPackageExists("@types/react"));if(o){if(t){let r=await X("@eslint-sukka/react"),t=j.isPackageExists("@remix-run/node")||j.isPackageExists("@remix-run/react")||j.isPackageExists("@remix-run/serve")||j.isPackageExists("@remix-run/dev");s.push(r.react(H(e?.react,{nextjs:n,remix:t,reactRefresh:{allowConstantExport:j.isPackageExists("vite")},reactCompiler:j.isPackageExists("babel-plugin-react-compiler")||j.isPackageExists("react-compiler-webpack")?"error":"off"}))),z(e?.next,n)&&s.push(r.next()),z(e?.stylex,j.isPackageExists("@stylexjs/stylex")||j.isPackageExists("stylex-webpack"))&&s.push(r.stylex(H(e?.stylex)))}else console.warn("[eslint-config-sukka] React preset will not be enabled when TypeScript is missing.")}return z(e?.node,j.isPackageExists("@types/node")||j.isPackageExists("@types/bun"))&&s.push((await X("@eslint-sukka/node")).node({...H(e?.node),hasTypeScript:t,hasReact:o})),z(e?.legacy)&&s.push(J(H(e?.legacy))),s.push(r),s.flat()};Object.defineProperty(exports,"constants",{enumerable:!0,get:function(){return s.constants}}),exports.ignores=q,exports.sukka=Q;
1
+ "use strict";const e=e=>Promise.resolve(require(e));var r,s=require("@eslint-sukka/shared"),t=require("node:fs"),n=require("node:process"),o=require("node:path");require("node:fs/promises");var i=require("node:url"),a=require("./vendor-DnzSN8ZK.cjs"),l=require("@eslint-community/eslint-plugin-eslint-comments"),c=require("eslint-plugin-sukka"),p=require("eslint-plugin-promise"),u=require("eslint-plugin-regexp"),f=require("@eslint/js"),m=require("@stylistic/eslint-plugin-js"),y=require("@stylistic/eslint-plugin-plus"),d=require("eslint-plugin-unused-imports"),g=require("eslint-plugin-import-x"),k=require("eslint-plugin-autofix"),w=require("eslint-plugin-jsonc"),b=require("jsonc-eslint-parser"),h=require("typescript-eslint"),j=require("@stylistic/eslint-plugin-ts"),x=require("picocolors"),v=require("defu"),T=require("ci-info"),S="undefined"!=typeof document?document.currentScript:null;function C(e){var r=Object.create(null);return e&&Object.keys(e).forEach(function(s){if("default"!==s){var t=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(r,s,t.get?t:{enumerable:!0,get:function(){return e[s]}})}}),r.default=e,Object.freeze(r)}var E=/*#__PURE__*/C(t),P=/*#__PURE__*/C(o),O=/*#__PURE__*/C(u);const I=e=>e instanceof URL?i.fileURLToPath(e):e;var L={},R=/*@__PURE__*/a.g(E),A=/*@__PURE__*/a.g(P),_=function(){if(r)return L;r=1;let e=new Map([["getSource","getText"],["getSourceLines","getLines"],["getAllComments","getAllComments"],["getDeclaredVariables","getDeclaredVariables"],["getNodeByRangeIndex","getNodeByRangeIndex"],["getCommentsBefore","getCommentsBefore"],["getCommentsAfter","getCommentsAfter"],["getCommentsInside","getCommentsInside"],["getJSDocComment","getJSDocComment"],["getFirstToken","getFirstToken"],["getFirstTokens","getFirstTokens"],["getLastToken","getLastToken"],["getLastTokens","getLastTokens"],["getTokenAfter","getTokenAfter"],["getTokenBefore","getTokenBefore"],["getTokenByRangeStart","getTokenByRangeStart"],["getTokens","getTokens"],["getTokensAfter","getTokensAfter"],["getTokensBefore","getTokensBefore"],["getTokensBetween","getTokensBetween"]]),s=new WeakMap,t=new WeakSet,n=new WeakMap,o=new WeakSet;function i(r){if(s.has(r))return s.get(r);let n="function"==typeof r;if(!n&&t.has(r))return r;let o=n?r:r.create.bind(r),i={...n?void 0:r,create:function(r){if("getScope"in r)return o(r);let s=r.sourceCode,t=s.ast,n=Object.assign(Object.create(r),{parserServices:s.parserServices,getScope:()=>s.getScope(t),getAncestors:()=>s.getAncestors(t),markVariableAsUsed(e){s.markVariableAsUsed(e,t)}});for(let[r,t]of e)n[r]=s[t].bind(s);Object.freeze(n);let i=o(n);for(let[e,r]of Object.entries(i)){if(e.startsWith("on")){i[e]=(...s)=>(t=s["onCodePathSegmentLoop"===e?2:1],r.call(i,...s));continue}i[e]=(...e)=>(t=e[0],r.call(i,...e))}return i}};return s.set(r,i),t.add(i),i}function a(e){if(n.has(e))return n.get(e);if(o.has(e)||!e.rules)return e;let r={...e,rules:Object.fromEntries(Object.entries(e.rules).map(([e,r])=>[e,i(r)]))};return n.set(e,r),o.add(r),r}function l(e){let r=e.startsWith("!"),s=r?"!":"",t=(r?e.slice(1):e).trimEnd();if(["","**","/**","**/"].includes(t))return`${s}${t}`;let n=t.indexOf("/"),o=n<0||n===t.length-1?"**/":"",i=(0===n?t.slice(1):t).replaceAll(/(?=((?:\\.|[^{(])*))\1([{(])/guy,"$1\\$2"),a=t.endsWith("/**")?"/*":"";return`${s}${o}${i}${a}`}return L.convertIgnorePatternToMinimatch=l,L.fixupConfigRules=function(e){return(Array.isArray(e)?e:[e]).map(e=>{if(!e.plugins)return e;let r=Object.fromEntries(Object.entries(e.plugins).map(([e,r])=>[e,a(r)]));return{...e,plugins:r}})},L.fixupPluginRules=a,L.fixupRule=i,L.includeIgnoreFile=function(e){if(!A.isAbsolute(e))throw Error("The ignore file location must be an absolute path.");return{name:"Imported .gitignore patterns",ignores:R.readFileSync(e,"utf8").split(/\r?\n/u).map(e=>e.trim()).filter(e=>e&&!e.startsWith("#")).map(l)}},L}();const q=".gitignore";function D(e={}){let r=[],{root:s=!1,files:i=s?q:function(e,{cwd:r=n.cwd(),type:s="file",stopAt:i}={}){let a=o.resolve(I(r)??""),{root:l}=o.parse(a);for(i=o.resolve(a,I(i)??l);a&&a!==i&&a!==l;){let r=o.isAbsolute(e)?e:o.join(a,e);try{let e=t.statSync(r,{throwIfNoEntry:!1});if("file"===s&&e?.isFile()||"directory"===s&&e?.isDirectory())return r}catch{}a=o.dirname(a)}}(q)||[],strict:a=!0,cwd:l=n.cwd()}=e,c=Array.isArray(i)?i:[i];for(let e of c){let s="";try{s=t.readFileSync(e,"utf8")}catch(e){if(a)throw e;continue}let n=o.relative(l,o.dirname(e)).replaceAll("\\","/"),i=s.split(/\r?\n/u).filter(e=>e&&!e.startsWith("#")).map(e=>_.convertIgnorePatternToMinimatch(e)).map(e=>(function(e,r,s){if(["",".","/"].includes(r))return e;let t=e.startsWith("!")?"!":"",n=t?e.slice(1):e;if(r.endsWith("/")||(r=`${r}/`),!r.startsWith(".."))return`${t}${r}${n}`;if(!r.match(/^(\.\.\/)+$/))throw Error("The ignore file location should be either a parent or child directory");if(n.startsWith("**"))return e;let i=o.relative(o.resolve(s,r),s).split(/[/\\]/);for(;i.length&&n.startsWith(`${i[0]}/`);)n=n.slice(i[0].length+1),i.shift();return n.startsWith("**")||0===i.length?`${t}${n}`:null})(e,n,l)).filter(e=>null!==e);r.push(...i)}if(a&&0===c.length)throw Error("No .gitignore file found");return{name:e.name||"gitignore",ignores:r}}const F=(e={})=>{let{customGlobs:r=null,gitignore:t=[".gitignore"]}=e,n=[],o=[];return!1===r||null===r?o=s.constants.GLOB_EXCLUDE:"function"==typeof r?o=r(s.constants.GLOB_EXCLUDE):"string"==typeof r?o.push(...s.constants.GLOB_EXCLUDE,r):Array.isArray(r)&&o.push(...s.constants.GLOB_EXCLUDE,...r),n.push({ignores:o}),!1===t||null===t||(!0===t?n.push(D({files:[".gitignore"],strict:!1})):("string"==typeof t||Array.isArray(t))&&n.push(D({files:t,strict:!1}))),n},N=()=>[{name:"sukka/eslint-comments",plugins:{"@eslint-community/eslint-comments":l,sukka:s.memo(c,"eslint-plugin-sukka")},rules:{"sukka/ban-eslint-disable":["error","allow-with-description"],"@eslint-community/eslint-comments/disable-enable-pair":["error",{allowWholeFile:!0}],"@eslint-community/eslint-comments/no-aggregating-enable":"error","@eslint-community/eslint-comments/no-duplicate-disable":"error","@eslint-community/eslint-comments/no-unlimited-disable":"error","@eslint-community/eslint-comments/no-unused-disable":"error","@eslint-community/eslint-comments/no-unused-enable":"error"}}],U=({typescript:e})=>[{name:"sukka/promise",plugins:{promise:p},rules:{"promise/always-return":e?"off":["error",{ignoreLastCallback:!0}],"promise/no-return-wrap":"error","promise/param-names":"error","promise/catch-or-return":["error",{allowFinally:!0,terminationMethod:["catch","asCallback","finally"]}],"promise/no-native":"off","promise/no-nesting":"warn","promise/no-promise-in-callback":"warn","promise/no-callback-in-promise":"warn","promise/avoid-new":"off","promise/no-new-statics":"error","promise/no-return-in-finally":"warn","promise/valid-params":"warn"}}],M=()=>[{name:"sukka/regexp",plugins:{sukka:s.memo(c,"eslint-plugin-sukka"),regexp:s.memo(O,"eslint-plugin-regexp")},rules:{"sukka/unicorn/better-regex":"error",...u.configs["flat/recommended"].rules,"regexp/strict":"off"}}],B=[".js",".jsx",".mjs",".cjs"],$=(e={})=>{let{files:r,disableNoConsoleInCLI:t=!0,env:n={}}=e,{browser:o=!0,webextensions:i=!1,greasemonkey:a=!1,customGlobals:l={}}=n,p=e.module??s.getPackageJson()?.type==="module",u=[{linterOptions:{reportUnusedDisableDirectives:!0}},{name:"@eslint/js recommended",...f.configs.recommended},{name:"@eslint-sukka/js base",...r?{files:r}:{},languageOptions:{ecmaVersion:"latest",sourceType:p?"module":"commonjs",parserOptions:{ecmaVersion:"latest",sourceType:p?"module":"commonjs",ecmaFeatures:{jsx:!0}},globals:{...s.globals.es2025,...o&&s.globals.browser,...i&&s.globals.webextensions,...a&&s.globals.greasemonkey,...l}},settings:{"import-x/extensions":B},plugins:{"unused-imports":s.memo(d,"eslint-plugin-unused-imports"),"@stylistic/js":s.memo(m,"@stylistic/eslint-plugin-js"),"@stylistic/plus":s.memo(y,"@stylistic/eslint-plugin-plus"),sukka:s.memo(c,"eslint-plugin-sukka"),"import-x":s.memo(g,"eslint-plugin-import-x"),autofix:k},rules:{...g.configs.recommended.rules,"import-x/newline-after-import":["error",{considerComments:!1}],"import-x/no-absolute-path":"error","import-x/no-empty-named-blocks":"error","import-x/no-mutable-exports":"error","import-x/no-useless-path-segments":"warn","import-x/no-webpack-loader-syntax":"error","accessor-pairs":"off","array-callback-return":["error",{allowImplicit:!0}],"arrow-body-style":["error","as-needed",{requireReturnForObjectLiteral:!1}],"block-scoped-var":"error","class-methods-use-this":["error",{exceptMethods:[]}],curly:["error","multi-line"],"default-case":["error",{commentPattern:"^no default$"}],"default-case-last":"error","default-param-last":"error","dot-notation":["error",{allowKeywords:!0}],"@stylistic/js/dot-location":["error","property"],eqeqeq:["error","always",{null:"ignore"}],"grouped-accessor-pairs":"error","guard-for-in":"error","no-alert":"warn","no-caller":"off","autofix/no-caller":"error","no-constructor-return":"error","no-else-return":["error",{allowElseIf:!1}],"no-empty-pattern":"error","no-empty-static-block":"error","no-eval":"error","no-extend-native":"error","no-extra-bind":"error","no-extra-label":"error","no-implicit-coercion":["off",{boolean:!1,number:!0,string:!0,allow:[]}],"no-implicit-globals":"off","no-implied-eval":"error","no-invalid-this":"off","no-labels":["error",{allowLoop:!1,allowSwitch:!1}],"no-lone-blocks":"error","no-loop-func":"error","@stylistic/js/no-multi-spaces":["error",{ignoreEOLComments:!1}],"no-multi-str":"error","no-new":"error","no-new-func":"error","no-new-wrappers":"error","no-octal-escape":"error","no-proto":"off","autofix/no-proto":"error","no-restricted-properties":["error",...[["isFinite","Number.isFinite"],["isNaN","Number.isNaN"]].flatMap(([e,r])=>["global","globalThis","window","self"].map(s=>({object:s,property:e,message:`Please use ${r} instead`}))),{object:"arguments",property:"callee",message:"arguments.callee is deprecated"},{property:"__defineGetter__",message:"Please use Object.defineProperty instead."},{property:"__defineSetter__",message:"Please use Object.defineProperty instead."},{object:"Math",property:"pow",message:"Use the exponentiation operator (**) instead."}],"no-return-assign":["error","always"],"no-return-await":"off","sukka/no-return-await":"error","no-self-compare":"off","no-sequences":"error","no-unmodified-loop-condition":"off","no-unused-expressions":["error",{allowShortCircuit:!1,allowTernary:!1,allowTaggedTemplates:!1}],"no-useless-call":"off","no-useless-catch":"off","autofix/no-useless-catch":"error","no-useless-concat":"off","autofix/no-useless-concat":"error","no-useless-escape":"error","no-useless-return":"error","no-void":["error",{allowAsStatement:!0}],"no-with":"error","prefer-promise-reject-errors":["error",{allowEmptyReject:!0}],"prefer-object-has-own":"error","prefer-regex-literals":["error",{disallowRedundantWrapping:!0}],radix:"off","autofix/radix":"error","require-await":"error","require-yield":"error","require-unicode-regexp":"off","vars-on-top":"error","@stylistic/js/wrap-iife":["error","outside",{functionPrototypeMethods:!1}],yoda:"error","no-await-in-loop":"warn","no-console":"warn","no-constant-condition":"warn","no-empty-function":"error","no-empty":["error",{allowEmptyCatch:!0}],"no-constant-binary-expression":"error","@stylistic/js/no-extra-parens":["off","all",{conditionalAssign:!0,nestedBinaryExpressions:!1,returnAssign:!1,ignoreJSX:"all",enforceForArrowConditionals:!1}],"no-loss-of-precision":"warn","no-promise-executor-return":"error","no-template-curly-in-string":"error","no-unreachable-loop":["error",{ignore:[]}],"no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"unused-imports/no-unused-vars":"off","unused-imports/no-unused-imports":"off","no-unused-private-class-members":"error","no-useless-backreference":"error","no-negated-in-lhs":"off","require-atomic-updates":"off","use-isnan":["error",{enforceForIndexOf:!0}],"valid-typeof":"off","autofix/valid-typeof":["error",{requireStringLiterals:!0}],"no-new-native-nonconstructor":"off","autofix/no-new-native-nonconstructor":"error","@stylistic/js/arrow-spacing":["error",{before:!0,after:!0}],"@stylistic/js/generator-star-spacing":["error",{before:!0,after:!1}],"@stylistic/js/no-confusing-arrow":["error",{allowParens:!0}],"no-duplicate-imports":"off","no-restricted-exports":["error",{restrictedNamedExports:["then"]}],"no-useless-constructor":"error","no-useless-rename":["error",{ignoreDestructuring:!1,ignoreImport:!1,ignoreExport:!1}],"no-var":"warn","object-shorthand":["error","always",{ignoreConstructors:!1,avoidQuotes:!0,avoidExplicitReturnArrows:!0}],"prefer-arrow-callback":["error",{allowNamedFunctions:!1,allowUnboundThis:!0}],"prefer-const":["error",{ignoreReadBeforeAssign:!0}],"prefer-numeric-literals":"error","prefer-rest-params":"error","prefer-template":"off","symbol-description":"error","@stylistic/js/template-curly-spacing":["error","never"],"@stylistic/js/yield-star-spacing":["error","before"],"@stylistic/js/array-bracket-newline":["off","consistent"],"@stylistic/js/array-bracket-spacing":["error","never"],"@stylistic/js/array-element-newline":["off",{multiline:!0,minItems:5}],"@stylistic/js/block-spacing":["error","always"],"@stylistic/js/brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:["warn",{properties:"never",ignoreDestructuring:!1,ignoreImports:!0,ignoreGlobals:!0,allow:["^UNSAFE_","^experimental_","^__DEV__"]}],"@stylistic/js/comma-dangle":["error","never"],"@stylistic/js/comma-spacing":["error",{before:!1,after:!0}],"@stylistic/js/comma-style":["error","last",{exceptions:{ArrayExpression:!1,ArrayPattern:!1,ArrowFunctionExpression:!1,CallExpression:!1,FunctionDeclaration:!1,FunctionExpression:!1,ImportDeclaration:!1,ObjectExpression:!1,ObjectPattern:!1,VariableDeclaration:!1,NewExpression:!1}}],"@stylistic/js/computed-property-spacing":["error","never"],"consistent-this":"off","@stylistic/js/eol-last":["error","always"],"@stylistic/js/func-call-spacing":["error","never"],"@stylistic/js/function-call-argument-newline":["off","consistent"],"@stylistic/js/function-paren-newline":["error","consistent"],"@stylistic/js/implicit-arrow-linebreak":["error","beside"],"@stylistic/js/indent":["error",2,{SwitchCase:1}],"@stylistic/plus/indent-binary-ops":["error",2],"@stylistic/js/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"@stylistic/js/keyword-spacing":["error",{before:!0,after:!0,overrides:{return:{after:!0},throw:{after:!0},case:{after:!0}}}],"@stylistic/js/linebreak-style":"error","@stylistic/js/lines-around-comment":"off","@stylistic/js/lines-around-directive":"off","@stylistic/js/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"@stylistic/js/multiline-ternary":"off","new-cap":["error",{newIsCap:!0,newIsCapExceptions:[],capIsNew:!1,capIsNewExceptions:["Immutable.Map","Immutable.Set","Immutable.List"]}],"@stylistic/js/newline-per-chained-call":["error",{ignoreChainWithDepth:6}],"@stylistic/js/new-parens":"error","no-bitwise":"off","no-lonely-if":"error","sukka/unicorn/no-lonely-if":"error","@stylistic/js/no-mixed-operators":["error",{groups:[["**","+"],["**","-"],["**","*"],["**","/"],["%","+"],["%","-"],["%","*"],["%","/"],["%","**"],["==","!=","===","!==",">",">=","<","<="],["&&","||"],["in","instanceof"]],allowSamePrecedence:!0}],"@stylistic/js/no-mixed-spaces-and-tabs":"error","no-multi-assign":"error","@stylistic/js/no-multiple-empty-lines":["error",{max:1,maxBOF:0,maxEOF:0}],"no-negated-condition":"off","sukka/unicorn/no-negated-condition":"warn","no-nested-ternary":"off","sukka/unicorn/no-nested-ternary":"warn","no-new-object":"off","no-object-constructor":"error","no-array-constructor":"error","@stylistic/js/no-spaced-func":"off","@stylistic/js/no-tabs":"error","no-ternary":"off","@stylistic/js/no-trailing-spaces":"error","no-unneeded-ternary":"error","@stylistic/js/no-whitespace-before-property":"error","@stylistic/js/nonblock-statement-body-position":"error","@stylistic/js/object-curly-newline":"off","@stylistic/js/object-curly-spacing":["error","always"],"@stylistic/js/object-property-newline":"off","@stylistic/js/one-var-declaration-per-line":"off","prefer-exponentiation-operator":"error","@stylistic/js/operator-linebreak":["error","before"],"@stylistic/js/padded-blocks":["error","never"],"@stylistic/js/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"}],"@stylistic/js/quotes":["error","single"],"@stylistic/js/quote-props":["error","as-needed",{keywords:!1,unnecessary:!0,numbers:!1}],"@stylistic/js/jsx-quotes":["error","prefer-double"],"@stylistic/js/rest-spread-spacing":["error","never"],"@stylistic/js/semi":["error","always"],"@stylistic/js/semi-spacing":["error",{before:!1,after:!0}],"@stylistic/js/semi-style":["error","last"],"@stylistic/js/space-before-blocks":"error","@stylistic/js/space-before-function-paren":["error",{anonymous:"always",named:"never",asyncArrow:"always"}],"@stylistic/js/space-in-parens":["error","never"],"@stylistic/js/space-infix-ops":"error","@stylistic/js/space-unary-ops":["error",{words:!0,nonwords:!1,overrides:{}}],"@stylistic/js/spaced-comment":["error","always",{line:{exceptions:["-","+"],markers:["=","!","/"]},block:{exceptions:["-","+"],markers:["=","!",":","::"],balanced:!0}}],"@stylistic/js/switch-colon-spacing":["error",{after:!0,before:!1}],"@stylistic/js/template-tag-spacing":["error","never"],"unicode-bom":["error","never"],"@stylistic/js/wrap-regex":"off","no-label-var":"error","no-use-before-define":["error",{functions:!1,classes:!0,variables:!0}],"no-restricted-globals":["error",{name:"isFinite",message:"Use Number.isFinite instead https://github.com/airbnb/javascript#standard-library--isfinite"},{name:"isNaN",message:"Use Number.isNaN instead https://github.com/airbnb/javascript#standard-library--isnan"}],"no-undef-init":"error","sukka/no-expression-empty-lines":"error","sukka/prefer-single-boolean-return":"error","sukka/no-all-duplicated-branches":"error","sukka/no-duplicated-branches":"error","sukka/bool-param-default":"error","sukka/call-argument-line":"error","sukka/class-prototype":"warn","sukka/comma-or-logical-or-case":"error","sukka/track-todo-fixme-comment":"warn","sukka/no-element-overwrite":"warn","sukka/no-empty-collection":"warn","sukka/no-equals-in-for-termination":"error","sukka/no-top-level-this":"error","sukka/no-invariant-returns":"error","sukka/no-redundant-assignments":"warn","sukka/no-same-line-conditional":"error","sukka/no-small-switch":"error","sukka/array/no-unneeded-flat-map":"error","sukka/browser/prefer-location-assign":"warn","sukka/jsx/no-template-literal":"error","sukka/jsx/no-unneeded-nested":"error","sukka/string/no-locale-case":"warn","sukka/string/no-simple-template-literal":"error","sukka/type/no-instanceof-wrapper":"error","sukka/unicode/no-bidi":"warn","sukka/unicode/no-invisible":"warn","sukka/no-redundant-variable":"error","sukka/no-single-return":"error","sukka/prefer-early-return":["error",{maximumStatements:16}],"sukka/prefer-fetch":"error","sukka/prefer-timer-id":"warn","sukka/no-useless-plusplus":"error","sukka/unicorn/catch-error-name":["error",{ignore:[/^(?:e|err|error|\w+Err|\w+Error)[\d_]?$/]}],"sukka/unicorn/custom-error-definition":"error","sukka/unicorn/require-array-join-separator":"warn","sukka/unicorn/no-thenable":"error","sukka/unicorn/no-invalid-remove-event-listener":"error","sukka/unicorn/consistent-function-scoping":"warn","sukka/unicorn/prefer-event-target":"warn","sukka/unicorn/prefer-keyboard-event-key":"warn","sukka/unicorn/prefer-text-content":"warn","sukka/unicorn/no-console-spaces":"warn","sukka/unicorn/no-empty-file":"warn","sukka/unicorn/no-useless-fallback-in-spread":"warn","sukka/unicorn/no-useless-length-check":"warn","sukka/unicorn/no-useless-promise-resolve-reject":"warn","sukka/unicorn/no-zero-fractions":"warn","sukka/unicorn/prefer-export-from":["warn",{ignoreUsedVariables:!0}],"sukka/unicorn/prefer-native-coercion-functions":"warn","sukka/unicorn/prefer-negative-index":"warn","sukka/unicorn/no-document-cookie":"error","sukka/unicorn/prefer-add-event-listener":"warn","sukka/unicorn/prefer-array-index-of":"warn","sukka/unicorn/prefer-blob-reading-methods":"warn","sukka/unicorn/prefer-date-now":"warn","sukka/unicorn/prefer-dom-node-dataset":"warn","sukka/unicorn/prefer-modern-math-apis":"warn","sukka/unicorn/number-literal-case":"error","sukka/unicorn/prefer-number-properties":["warn",{checkInfinity:!1}],"sukka/unicorn/prefer-reflect-apply":"warn","sukka/unicorn/prefer-set-size":"warn","sukka/unicorn/prefer-string-replace-all":"warn","sukka/unicorn/prefer-string-slice":"warn","sukka/unicorn/prefer-string-trim-start-end":"warn","sukka/unicorn/no-unreadable-iife":"warn","sukka/unicorn/throw-new-error":"warn","sukka/unicorn/escape-case":"warn","sukka/unicorn/no-hex-escape":"warn","sukka/unicorn/prefer-prototype-methods":"warn","sukka/unicorn/error-message":"error","sukka/unicorn/no-instanceof-array":"error","sukka/unicorn/prefer-type-error":"error","sukka/unicorn/consistent-destructuring":"warn","sukka/unicorn/new-for-builtins":"warn","sukka/unicorn/no-array-push-push":"warn","sukka/unicorn/no-static-only-class":"warn","sukka/unicorn/no-unreadable-array-destructuring":"error","sukka/unicorn/no-useless-spread":"error","sukka/unicorn/no-useless-switch-case":"warn","sukka/unicorn/no-useless-undefined":["error",{checkArguments:!1}],"sukka/unicorn/numeric-separators-style":["warn",{onlyIfContainsSeparator:!1,number:{minimumDigits:7,groupLength:3},binary:{minimumDigits:9,groupLength:4},octal:{minimumDigits:9,groupLength:4},hexadecimal:{minimumDigits:5,groupLength:2}}],"sukka/unicorn/prefer-array-find":"warn","sukka/unicorn/prefer-array-flat-map":"warn","sukka/unicorn/prefer-array-flat":"warn","sukka/unicorn/prefer-array-some":"warn","sukka/unicorn/prefer-code-point":"warn","sukka/unicorn/prefer-default-parameters":"warn","sukka/unicorn/prefer-logical-operator-over-ternary":"warn","sukka/unicorn/prefer-optional-catch-binding":"error","sukka/unicorn/prefer-regexp-test":"warn","sukka/unicorn/prefer-set-has":"error","sukka/unicorn/prefer-switch":"warn","sukka/unicorn/require-number-to-fixed-digits-argument":"warn","sukka/import-dedupe":"error","sukka/unicorn/prefer-string-raw":"warn","sukka/unicorn/no-single-promise-in-promise-methods":"error","sukka/unicorn/no-await-in-promise-methods":"error","sukka/unicorn/no-magic-array-flat-depth":"error","sukka/unicorn/no-object-as-default-parameter":"error","sukka/unicorn/template-indent":["warn",{tags:["outdent","dedent","gql","sql","html","styled","css"],functions:["dedent","stripIndent","strip_indent","stripTags","striptags","strip_tags","stripHtml","stripHTML","strip_html"],selectors:[],comments:["HTML","html","CSS","css","indent"]}],"sukka/unicorn/no-negation-in-equality-check":"error","sukka/unicorn/no-length-as-slice-end":"error","no-restricted-imports":["error",{paths:s.RESTRICTED_IMPORT_JS}],"no-prototype-builtins":"off","autofix/no-prototype-builtins":"error"}}];if(!1!==t){let e="boolean"==typeof t?null:Array.isArray(t)?t:[t];u.push({name:"@eslint-sukka/js cli specific",files:e??[`**/scripts/${s.constants.GLOB_SRC}`,`**/cli/${s.constants.GLOB_SRC}`,`**/cli.${s.constants.GLOB_SRC_EXT}`],rules:{"no-console":"off"}})}return u},W={plugins:{jsonc:s.memo(w,"eslint-plugin-jsonc")},languageOptions:{parser:b}},V={"jsonc/array-bracket-spacing":["error","never"],"jsonc/comma-dangle":["error","never"],"jsonc/comma-style":["error","last"],"jsonc/indent":["error",2],"jsonc/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"jsonc/object-curly-newline":"off","jsonc/object-curly-spacing":["error","always"],"jsonc/object-property-newline":["error",{allowMultiplePropertiesPerLine:!0}],"jsonc/quote-props":"error","jsonc/quotes":"error"},G=()=>[...w.configs["flat/base"],{name:"@eslint-sukka/json json",files:[s.constants.GLOB_JSON],rules:{...w.configs["flat/recommended-with-json"].reduce((e,r)=>({...e,...r.rules}),{}),...V}},{name:"@eslint-sukka/json json5",...W,files:[s.constants.GLOB_JSON5],rules:{...w.configs["flat/recommended-with-json5"].reduce((e,r)=>({...e,...r.rules}),{}),...V}},{name:"@eslint-sukka/json jsonc",...W,files:[s.constants.GLOB_JSONC],rules:{...w.configs["flat/recommended-with-jsonc"].reduce((e,r)=>({...e,...r.rules}),{}),...V}},{name:"@eslint-sukka/json package.json",...W,files:["**/package.json"],rules:{"jsonc/sort-array-values":["error",{order:{type:"asc"},pathPattern:"^files$"}],"jsonc/sort-keys":["error",{order:["$schema","publisher","name","displayName","version","private","description","funding","homepage","repository","bugs","categories","type","main","module","types","typesVersions","bin","files","exports","icon","unpkg","jsdelivr","sideEffects","activationEvents","contributes","scripts","keywords","author","license","dependencies","devDependencies","peerDependencies","peerDependenciesMeta","optionalDependencies","packageManager","engines","pnpm","overrides","resolutions","husky","simple-git-hooks","lint-staged","eslintConfig"],pathPattern:"^$"},{order:{type:"asc"},pathPattern:"^(?:dev|peer|optional|bundled)?[Dd]ependencies(Meta)?$"},{order:["types","import","module","require","default"],pathPattern:"^exports.*$"}]}},{name:"@eslint-sukka/json tsconfig.json",...W,files:["**/tsconfig.json","**/tsconfig.*.json","**/tsconfig-*.json","**/jsconfig.json","**/jsconfig.*.json","**/jsconfig-*.json"],rules:{"jsonc/sort-keys":["error",{order:["$schema","extends","compilerOptions","references","files","include","exclude"],pathPattern:"^$"},{order:["incremental","composite","tsBuildInfoFile","disableSourceOfProjectReferenceRedirect","disableSolutionSearching","disableReferencedProjectLoad","target","lib","jsx","experimentalDecorators","emitDecoratorMetadata","jsxFactory","jsxFragmentFactory","jsxImportSource","reactNamespace","noLib","useDefineForClassFields","moduleDetection","module","rootDir","moduleResolution","baseUrl","paths","rootDirs","typeRoots","types","allowUmdGlobalAccess","moduleSuffixes","allowImportingTsExtensions","resolvePackageJsonExports","resolvePackageJsonImports","customConditions","resolveJsonModule","allowArbitraryExtensions","noResolve","allowJs","checkJs","maxNodeModuleJsDepth","declaration","declarationMap","emitDeclarationOnly","sourceMap","inlineSourceMap","outFile","outDir","removeComments","noEmit","importHelpers","importsNotUsedAsValues","downlevelIteration","sourceRoot","mapRoot","inlineSources","emitBOM","newLine","stripInternal","noEmitHelpers","noEmitOnError","preserveConstEnums","declarationDir","preserveValueImports","isolatedModules","verbatimModuleSyntax","allowSyntheticDefaultImports","esModuleInterop","preserveSymlinks","forceConsistentCasingInFileNames","strict","strictBindCallApply","strictFunctionTypes","strictNullChecks","strictPropertyInitialization","allowUnreachableCode","allowUnusedLabels","alwaysStrict","exactOptionalPropertyTypes","noFallthroughCasesInSwitch","noImplicitAny","noImplicitOverride","noImplicitReturns","noImplicitThis","noPropertyAccessFromIndexSignature","noUncheckedIndexedAccess","noUnusedLocals","noUnusedParameters","useUnknownInCatchVariables","skipDefaultLibCheck","skipLibCheck"],pathPattern:"^compilerOptions$"}]}}],J={"no-dupe-class-members":"off","@typescript-eslint/no-dupe-class-members":"off","no-redeclare":"off","@typescript-eslint/no-redeclare":"off","no-unused-vars":"off","@typescript-eslint/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"class-methods-use-this":"off","@typescript-eslint/class-methods-use-this":["error",{exceptMethods:[]}],"default-param-last":"off","@typescript-eslint/default-param-last":"error","dot-notation":"off","@typescript-eslint/dot-notation":["error",{allowKeywords:!0}],"no-implied-eval":"off","@typescript-eslint/no-implied-eval":"error","no-invalid-this":"off","@typescript-eslint/no-invalid-this":"off","no-loop-func":"off","@typescript-eslint/no-loop-func":"error","no-return-await":"off","@typescript-eslint/return-await":"error","sukka/no-return-await":"off","no-unused-expressions":"off","@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!1,allowTernary:!1,allowTaggedTemplates:!1}],"prefer-promise-reject-errors":"off","@typescript-eslint/prefer-promise-reject-errors":["error",{allowEmptyReject:!0}],"require-await":"off","@typescript-eslint/require-await":"error","no-empty-function":"off","@typescript-eslint/no-empty-function":"error","@stylistic/js/no-extra-parens":"off","@stylistic/ts/no-extra-parens":["off","all",{conditionalAssign:!0,nestedBinaryExpressions:!1,returnAssign:!1,ignoreJSX:"all",enforceForArrowConditionals:!1}],"no-useless-constructor":"off","@typescript-eslint/no-useless-constructor":"error","@stylistic/js/block-spacing":"off","@stylistic/ts/block-spacing":["error","always"],"@stylistic/js/brace-style":"off","@stylistic/ts/brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:"off","@stylistic/js/comma-dangle":"off","@stylistic/ts/comma-dangle":["error","never"],"@stylistic/js/comma-spacing":"off","@stylistic/ts/comma-spacing":["error",{before:!1,after:!0}],"@stylistic/js/func-call-spacing":"off","@stylistic/ts/func-call-spacing":["error","never"],"@stylistic/js/indent":"off","@stylistic/ts/indent":["error",2,{SwitchCase:1}],"@stylistic/js/key-spacing":"off","@stylistic/ts/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"@stylistic/js/keyword-spacing":"off","@stylistic/ts/keyword-spacing":["error",{before:!0,after:!0,overrides:{return:{after:!0},throw:{after:!0},case:{after:!0}}}],"@stylistic/js/lines-around-comment":"off","@stylistic/ts/lines-around-comment":"off","@stylistic/js/lines-between-class-members":"off","@stylistic/ts/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"no-array-constructor":"off","@typescript-eslint/no-array-constructor":"error","@stylistic/js/object-curly-newline":"off","@stylistic/ts/object-curly-newline":"off","@stylistic/js/object-curly-spacing":"off","@stylistic/ts/object-curly-spacing":["error","always"],"@stylistic/js/object-property-newline":"off","@stylistic/ts/object-property-newline":"off","@stylistic/js/padding-line-between-statements":"off","@stylistic/ts/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"}],"@stylistic/js/quotes":"off","@stylistic/ts/quotes":["error","single"],"@stylistic/js/quote-props":"off","@stylistic/ts/quote-props":["error","as-needed",{keywords:!1,unnecessary:!0,numbers:!1}],"@stylistic/js/semi":"off","@stylistic/ts/semi":["error","always"],"@stylistic/js/space-before-blocks":"off","@stylistic/ts/space-before-blocks":"error","@stylistic/js/space-before-function-paren":"off","@stylistic/ts/space-before-function-paren":["error",{anonymous:"always",named:"never",asyncArrow:"always"}],"@stylistic/js/space-infix-ops":"off","@stylistic/ts/space-infix-ops":"error","no-use-before-define":"off","@typescript-eslint/no-use-before-define":["error",{functions:!1,classes:!0,variables:!0}],"no-restricted-imports":"off"},X=[".js",".jsx",".mjs",".cjs"],z=[".ts",".cts",".mts",".tsx",".d.ts"],H=[...z,...X],K=[".ts",".cts",".mts",".tsx",...X],Q=(e={})=>{let{tsconfigPath:r=!0,tsconfigRootDir:t=n.cwd(),componentExtentions:o=[],isInEditor:a=!1}=e,l="string"==typeof __dirname?i.pathToFileURL(__dirname).href:"undefined"==typeof document?require("url").pathToFileURL(__filename).href:S&&"SCRIPT"===S.tagName.toUpperCase()&&S.src||new URL("index.cjs",document.baseURI).href,c=i.fileURLToPath(s.importMetaResolve("@typescript-eslint/parser",l)),p=i.fileURLToPath(s.importMetaResolve("eslint-import-resolver-ts-bundled",l));return[{name:"@eslint-sukka/ts base",files:[s.constants.GLOB_TS,s.constants.GLOB_TSX,...o.map(e=>`**/*.${e}`)],plugins:{...h.configs.base.plugins,"@stylistic/ts":s.memo(j,"@stylistic/eslint-plugin-ts"),"@stylistic/plus":s.memo(y,"@stylistic/eslint-plugin-plus"),"import-x":s.memo(g,"eslint-plugin-import-x")},languageOptions:{parser:h.configs.base.languageOptions.parser,sourceType:"module",parserOptions:{sourceType:"module",ecmaVersion:"latest",...!0===r?{projectService:!0,allowDefaultProject:[]}:{project:r},tsconfigRootDir:t,ecmaFeatures:{jsx:!0},jsxPragma:void 0,warnOnUnsupportedTypeScriptVersion:!0}},settings:{"import-x/extensions":H,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/resolver":{node:{extensions:K},[p]:{alwaysTryTypes:!0,...!0===r?{}:{project:r}}},"import-x/parsers":{[c]:z}},rules:{...h.configs.base.rules,...h.configs.recommendedTypeChecked.reduce((e,r)=>({...e,...r.rules}),{}),...h.configs.stylisticTypeChecked.reduce((e,r)=>({...e,...r.rules}),{}),...g.configs.typescript.rules,...J,"@typescript-eslint/ban-ts-comment":["error",{"ts-expect-error":"allow-with-description","ts-ignore":!0,"ts-nocheck":!0,"ts-check":!1,minimumDescriptionLength:10}],"@typescript-eslint/naming-convention":["warn",{selector:"variable",format:["camelCase","PascalCase","UPPER_CASE","snake_case"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"},{selector:"function",format:["camelCase","PascalCase"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"},{selector:"typeLike",format:["PascalCase"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"}],"@typescript-eslint/consistent-type-assertions":["error",{assertionStyle:"as",objectLiteralTypeAssertions:"allow"}],"@typescript-eslint/require-await":"error","@typescript-eslint/await-thenable":"error","@typescript-eslint/no-for-in-array":"error","@typescript-eslint/no-misused-promises":["error",{checksVoidReturn:!1}],"@typescript-eslint/no-unnecessary-type-assertion":"error","@typescript-eslint/restrict-template-expressions":["error",{allowNumber:!0,allowAny:!0,allowBoolean:!0,allowNever:!0}],"@typescript-eslint/unbound-method":"error","@typescript-eslint/consistent-type-imports":["warn",{prefer:"type-imports",disallowTypeAnnotations:!1,fixStyle:"separate-type-imports"}],"@typescript-eslint/no-import-type-side-effects":"warn","@typescript-eslint/consistent-type-exports":["warn",{fixMixedExportsWithInlineTypeSpecifier:!0}],"@typescript-eslint/consistent-type-definitions":"warn","@typescript-eslint/consistent-generic-constructors":["error","constructor"],"@typescript-eslint/no-base-to-string":["error",{ignoredTypeNames:["Error","RegExp","URL","URLSearchParams"]}],"@typescript-eslint/no-confusing-non-null-assertion":"error","@typescript-eslint/no-dynamic-delete":"warn","@typescript-eslint/no-extraneous-class":["warn",{allowConstructorOnly:!0,allowEmpty:!0,allowWithDecorator:!0}],"@typescript-eslint/no-invalid-void-type":["off",{allowInGenericTypeArguments:!0,allowAsThisParameter:!0}],"@typescript-eslint/no-non-null-asserted-nullish-coalescing":"error","@typescript-eslint/no-unnecessary-boolean-literal-compare":"error","@typescript-eslint/no-unnecessary-condition":["warn",{allowConstantLoopConditions:!0}],"@typescript-eslint/no-unnecessary-type-arguments":"error","@typescript-eslint/no-unsafe-declaration-merging":"error","@typescript-eslint/non-nullable-type-assertion-style":"error","@typescript-eslint/prefer-includes":"error","@typescript-eslint/prefer-literal-enum-member":["error",{allowBitwiseExpressions:!0}],"@typescript-eslint/prefer-nullish-coalescing":"off","@typescript-eslint/prefer-return-this-type":"error","@typescript-eslint/prefer-optional-chain":"error","@typescript-eslint/prefer-reduce-type-parameter":"error","@typescript-eslint/unified-signatures":["error",{ignoreDifferentlyNamedParameters:!0}],"@typescript-eslint/prefer-for-of":"off","@typescript-eslint/prefer-function-type":"off","@typescript-eslint/consistent-indexed-object-style":"off","@typescript-eslint/prefer-enum-initializers":"warn","@typescript-eslint/no-duplicate-enum-values":"error","@typescript-eslint/no-extra-non-null-assertion":"error","@typescript-eslint/no-meaningless-void-operator":"warn","@typescript-eslint/no-unnecessary-qualifier":"warn","@typescript-eslint/array-type":["warn",{default:"array-simple"}],"@typescript-eslint/no-restricted-imports":["error",{paths:s.RESTRICTED_IMPORT_TS}],"@typescript-eslint/no-empty-object-type":["error",{allowInterfaces:"with-single-extends",allowObjectTypes:"never",allowWithName:"Props$"}],"@typescript-eslint/no-unsafe-function-type":"warn","@typescript-eslint/no-restricted-types":["error",{types:{FC:{message:"To declare a component, you don't have to use FC to annotate it. To type something that accepts/is a React Component, use ComponentType<T>.",fixWith:"ComponentType"},"React.FC":{message:"To declare a component, you don't have to use React.FC to annotate it. To type something that accepts/is a React Component, use React.ComponentType<T>.",fixWith:"React.ComponentType"},ReactElement:{message:"In most cases, you want ReactNode. Only ignore this rule when you want to use cloneElement.",fixWith:"ReactNode"},"React.ReactElement":{message:"In most cases, you want React.ReactNode. Only ignore this rule when you want to use cloneElement.",fixWith:"React.ReactNode"}}}],"@typescript-eslint/no-unsafe-assignment":"off","@typescript-eslint/no-unsafe-argument":"off","@typescript-eslint/no-explicit-any":"warn","@typescript-eslint/no-loop-func":"warn","@typescript-eslint/no-redundant-type-constituents":"off","@typescript-eslint/no-floating-promises":"off","@typescript-eslint/no-unsafe-call":"off","@typescript-eslint/no-unsafe-member-access":"off","@typescript-eslint/no-unsafe-return":"off","@typescript-eslint/no-unsafe-enum-comparison":"warn","@typescript-eslint/prefer-regexp-exec":"warn","@typescript-eslint/no-deprecated":"warn","@typescript-eslint/no-unnecessary-template-expression":"warn","no-restricted-syntax":["error",{message:'Unnecessary "as const"',selector:"VariableDeclarator > TSAsExpression[expression.properties.length=0] > TSTypeReference > Identifier[name=const]"},{message:'Unnecessary "as const"',selector:"VariableDeclarator[id.typeAnnotation] > TSAsExpression > TSTypeReference > Identifier[name=const]"},{message:'Static class methods requires "this: void", or change to arrow function',selector:'MethodDefinition[static=true][kind!="get"][kind!="set"] > FunctionExpression:not([params.0.name=this][params.0.typeAnnotation.typeAnnotation.type=TSVoidKeyword])'},{message:'Public "static" fields should be read-only',selector:'PropertyDefinition[readonly!=true][static=true][accessibility!="private"][accessibility!="protected"]'}],"@stylistic/ts/member-delimiter-style":["error",{multiline:{delimiter:"comma",requireLast:!1},singleline:{delimiter:"comma",requireLast:!1}}],"@stylistic/ts/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0,exceptAfterOverload:!0}],"@stylistic/ts/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"},{blankLine:"any",prev:["interface","type"],next:["interface","type"]}],"@stylistic/ts/type-annotation-spacing":["error",{before:!1,after:!0,overrides:{arrow:{before:!0,after:!0}}}],"@typescript-eslint/no-namespace":"off","@typescript-eslint/prefer-string-starts-ends-with":"off","sukka/string/prefer-string-starts-ends-with":"error","@typescript-eslint/switch-exhaustiveness-check":"error","@typescript-eslint/parameter-properties":["warn",{prefer:"parameter-property"}],"sukka/string/no-unneeded-to-string":"error","sukka/type/no-force-cast-via-top-type":"error","sukka/type/no-wrapper-type-reference":"error","sukka/no-default-error":"off","sukka/no-export-const-enum":"error","sukka/no-for-in-iterable":"error","sukka/only-await-thenable":"error","sukka/no-undefined-optional-parameters":"warn","sukka/no-try-promise":"error","sukka/no-useless-string-operation":"warn","@stylistic/plus/type-generic-spacing":"error","@stylistic/plus/type-named-tuple-spacing":"error","@typescript-eslint/no-unused-vars":"off","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"unused-imports/no-unused-imports":a?"error":"off","import-x/consistent-type-specifier-style":["error","prefer-top-level"],"import-x/named":"off","import-x/namespace":"off","import-x/default":"off","import-x/no-duplicates":"off","import-x/no-named-as-default-member":"off","import-x/no-deprecated":"off"}},{name:"@eslint-sukka/ts dts",files:["**/*.d.ts"],plugins:{"import-x":s.memo(g,"eslint-plugin-import-x")},rules:{"import-x/no-duplicates":"off","unused-imports/no-unused-vars":"off"}},{name:"@eslint-sukka/ts jest/mocha",files:["**/*.{test,spec}.ts?(x)"],rules:{"no-unused-expressions":"off"}},{name:"@eslint-sukka/ts commonjs",files:["**/*.js","**/*.cjs"],plugins:h.configs.base.plugins,rules:{"@typescript-eslint/no-require-imports":"off","@typescript-eslint/no-var-requires":"off"}}]},Y=(e={})=>[{name:"@eslint-sukka/legacy base",...e.files?{files:e.files}:{},plugins:{sukka:s.memo(c,"eslint-plugin-sukka")},rules:{"prefer-numeric-literals":"off","no-restricted-properties":["error",{object:"arguments",property:"callee",message:"arguments.callee is deprecated"},{property:"__defineGetter__",message:"Please use Object.defineProperty instead."},{property:"__defineSetter__",message:"Please use Object.defineProperty instead."}],"no-var":"off","prefer-object-spread":"off",strict:["error","safe"],"sukka/unicorn/prefer-default-parameters":"off","sukka/unicorn/prefer-logical-operator-over-ternary":"off","sukka/unicorn/prefer-optional-catch-binding":"off"},languageOptions:{globals:{...e.browser??!0?s.globals.browser:{},...e.node?s.globals.node:{}}}}],Z=async r=>{if(!T.isCI&&n.stdout.isTTY&&!s.isPackageExists(r)){let{confirm:e}=await Promise.resolve().then(function(){return require("./vendor-DnzSN8ZK.cjs")}).then(function(e){return e.i});await e({message:`Package is required for this config: ${r}. Do you want to install it?`})&&await Promise.resolve().then(function(){return require("./vendor-DnzSN8ZK.cjs")}).then(function(e){return e.a}).then(e=>e.installPackage(r,{dev:!0}))}return e(r)};function ee(e,r=!1){return"boolean"==typeof e?e:void 0===e?r:!!e.enable||r}function er(e,...r){if("boolean"==typeof e||void 0===e)return;let{enable:s,...t}=e;return r.length?v.defu(t,...r):t}function es(e){s.isPackageExists(e)&&console.error(x.yellow(`[eslint-config-sukka] "${e}" is deprecated and you should uninstall it`))}const et=async(e,...r)=>{let t=[];es("@eslint-sukka/js"),es("@eslint-sukka/json"),es("@eslint-sukka/ts"),es("@eslint-sukka/legacy");let n=ee(e?.ts,s.isPackageExists("typescript"));if(t.push(F(e?.ignores),N()),ee(e?.js,!0)&&t.push($(er(e?.js)),U({typescript:n}),M()),ee(e?.json,!0)&&t.push(G()),n){let r=e?.isInEditor??(!(process.env.CI||T.isCI||process.env.GIT_PARAMS||process.env.VSCODE_GIT_COMMAND||process.env.npm_lifecycle_script?.startsWith("lint-staged"))&&!!(process.env.VSCODE_PID||process.env.VSCODE_CWD||process.env.JETBRAINS_IDE||process.env.VIM||process.env.NVIM));t.push(Q({isInEditor:r,...er(e?.ts)}))}let o=s.isPackageExists("next"),i=ee(e?.react,o||s.isPackageExists("react")||s.isPackageExists("@types/react"));if(i){if(n){let r=await Z("@eslint-sukka/react"),n=s.isPackageExists("@remix-run/node")||s.isPackageExists("@remix-run/react")||s.isPackageExists("@remix-run/serve")||s.isPackageExists("@remix-run/dev");t.push(r.react(er(e?.react,{nextjs:o,remix:n,reactRefresh:{allowConstantExport:s.isPackageExists("vite")},reactCompiler:s.isPackageExists("babel-plugin-react-compiler")||s.isPackageExists("react-compiler-webpack")?"error":"off"}))),ee(e?.next,o)&&t.push(r.next()),ee(e?.stylex,s.isPackageExists("@stylexjs/stylex")||s.isPackageExists("stylex-webpack"))&&t.push(r.stylex(er(e?.stylex)))}else console.warn("[eslint-config-sukka] React preset will not be enabled when TypeScript is missing.")}return ee(e?.node,s.isPackageExists("@types/node")||s.isPackageExists("@types/bun"))&&t.push((await Z("@eslint-sukka/node")).node({...er(e?.node),hasTypeScript:n,hasReact:i})),ee(e?.legacy)&&t.push(Y(er(e?.legacy))),t.push(r),t.flat()};Object.defineProperty(exports,"constants",{enumerable:!0,get:function(){return s.constants}}),exports.ignores=F,exports.sukka=et;
package/dist/index.d.ts CHANGED
@@ -64,6 +64,7 @@ interface OptionsJavaScript {
64
64
  }
65
65
 
66
66
  interface OptionsTypeScript {
67
+ isInEditor?: boolean;
67
68
  tsconfigPath?: string | string[] | true;
68
69
  tsconfigRootDir?: string;
69
70
  componentExtentions?: string[];
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- let e=e=>import(e);import{constants as r,memo as s,getPackageJson as t,globals as n,RESTRICTED_IMPORT_JS as o,importMetaResolve as i,RESTRICTED_IMPORT_TS as a}from"@eslint-sukka/shared";export{constants}from"@eslint-sukka/shared";import l from"node:fs";import c from"node:process";import p from"node:path";import"node:fs/promises";import{fileURLToPath as u,pathToFileURL as f}from"node:url";import m from"@eslint-community/eslint-plugin-eslint-comments";import y from"eslint-plugin-sukka";import d from"eslint-plugin-promise";import*as g from"eslint-plugin-regexp";import{configs as k}from"eslint-plugin-regexp";import w from"@eslint/js";import b from"@stylistic/eslint-plugin-js";import h from"@stylistic/eslint-plugin-plus";import j from"eslint-plugin-unused-imports";import x from"eslint-plugin-import-x";import v from"eslint-plugin-autofix";import S from"eslint-plugin-jsonc";import C from"jsonc-eslint-parser";import{configs as E}from"typescript-eslint";import L from"@stylistic/eslint-plugin-ts";import{isPackageExists as T}from"local-pkg";import O from"picocolors";import{defu as _}from"defu";import{isCI as I}from"ci-info";let P=e=>e instanceof URL?u(e):e;var A=function(e){let r=e.startsWith("!"),s=r?"!":"",t=(r?e.slice(1):e).trimEnd();if(["","**","/**","**/"].includes(t))return`${s}${t}`;let n=t.indexOf("/"),o=n<0||n===t.length-1?"**/":"",i=(0===n?t.slice(1):t).replaceAll(/(?=((?:\\.|[^{(])*))\1([{(])/guy,"$1\\$2"),a=t.endsWith("/**")?"/*":"";return`${s}${o}${i}${a}`};let D=".gitignore";function R(e={}){let r=[],{root:s=!1,files:t=s?D:function(e,{cwd:r=c.cwd(),type:s="file",stopAt:t}={}){let n=p.resolve(P(r)??""),{root:o}=p.parse(n);for(t=p.resolve(n,P(t)??o);n&&n!==t&&n!==o;){let r=p.isAbsolute(e)?e:p.join(n,e);try{let e=l.statSync(r,{throwIfNoEntry:!1});if("file"===s&&e?.isFile()||"directory"===s&&e?.isDirectory())return r}catch{}n=p.dirname(n)}}(D)||[],strict:n=!0,cwd:o=c.cwd()}=e,i=Array.isArray(t)?t:[t];for(let e of i){let s="";try{s=l.readFileSync(e,"utf8")}catch(e){if(n)throw e;continue}let t=p.relative(o,p.dirname(e)).replaceAll("\\","/"),i=s.split(/\r?\n/u).filter(e=>e&&!e.startsWith("#")).map(e=>A(e)).map(e=>(function(e,r,s){if(["",".","/"].includes(r))return e;let t=e.startsWith("!")?"!":"",n=t?e.slice(1):e;if(r.endsWith("/")||(r=`${r}/`),!r.startsWith(".."))return`${t}${r}${n}`;if(!r.match(/^(\.\.\/)+$/))throw Error("The ignore file location should be either a parent or child directory");if(n.startsWith("**"))return e;let o=p.relative(p.resolve(s,r),s).split(/[/\\]/);for(;o.length&&n.startsWith(`${o[0]}/`);)n=n.slice(o[0].length+1),o.shift();return n.startsWith("**")||0===o.length?`${t}${n}`:null})(e,t,o)).filter(e=>null!==e);r.push(...i)}if(n&&0===i.length)throw Error("No .gitignore file found");return{name:e.name||"gitignore",ignores:r}}let N=(e={})=>{let{customGlobs:s=null,gitignore:t=[".gitignore"]}=e,n=[],o=[];return!1===s||null===s?o=r.GLOB_EXCLUDE:"function"==typeof s?o=s(r.GLOB_EXCLUDE):"string"==typeof s?o.push(...r.GLOB_EXCLUDE,s):Array.isArray(s)&&o.push(...r.GLOB_EXCLUDE,...s),n.push({ignores:o}),!1===t||null===t||(!0===t?n.push(R({files:[".gitignore"],strict:!1})):("string"==typeof t||Array.isArray(t))&&n.push(R({files:t,strict:!1}))),n},F=()=>[{name:"sukka/eslint-comments",plugins:{"@eslint-community/eslint-comments":m,sukka:s(y,"eslint-plugin-sukka")},rules:{"sukka/ban-eslint-disable":["error","allow-with-description"],"@eslint-community/eslint-comments/disable-enable-pair":["error",{allowWholeFile:!0}],"@eslint-community/eslint-comments/no-aggregating-enable":"error","@eslint-community/eslint-comments/no-duplicate-disable":"error","@eslint-community/eslint-comments/no-unlimited-disable":"error","@eslint-community/eslint-comments/no-unused-disable":"error","@eslint-community/eslint-comments/no-unused-enable":"error"}}],q=({typescript:e})=>[{name:"sukka/promise",plugins:{promise:d},rules:{"promise/always-return":e?"off":["error",{ignoreLastCallback:!0}],"promise/no-return-wrap":"error","promise/param-names":"error","promise/catch-or-return":["error",{allowFinally:!0,terminationMethod:["catch","asCallback","finally"]}],"promise/no-native":"off","promise/no-nesting":"warn","promise/no-promise-in-callback":"warn","promise/no-callback-in-promise":"warn","promise/avoid-new":"off","promise/no-new-statics":"error","promise/no-return-in-finally":"warn","promise/valid-params":"warn"}}],$=()=>[{name:"sukka/regexp",plugins:{sukka:s(y,"eslint-plugin-sukka"),regexp:s(g,"eslint-plugin-regexp")},rules:{"sukka/unicorn/better-regex":"error",...k["flat/recommended"].rules,"regexp/strict":"off"}}],U=[".js",".jsx",".mjs",".cjs"],M=(e={})=>{let{files:i,disableNoConsoleInCLI:a=!0,env:l={}}=e,{browser:c=!0,webextensions:p=!1,greasemonkey:u=!1,customGlobals:f={}}=l,m=e.module??t()?.type==="module",d=[{linterOptions:{reportUnusedDisableDirectives:!0}},{name:"@eslint/js recommended",...w.configs.recommended},{name:"@eslint-sukka/js base",...i?{files:i}:{},languageOptions:{ecmaVersion:"latest",sourceType:m?"module":"commonjs",parserOptions:{ecmaVersion:"latest",sourceType:m?"module":"commonjs",ecmaFeatures:{jsx:!0}},globals:{...n.es2025,...c&&n.browser,...p&&n.webextensions,...u&&n.greasemonkey,...f}},settings:{"import-x/parsers":{espree:U},"import-x/extensions":U},plugins:{"unused-imports":s(j,"eslint-plugin-unused-imports"),"@stylistic/js":s(b,"@stylistic/eslint-plugin-js"),"@stylistic/plus":s(h,"@stylistic/eslint-plugin-plus"),sukka:s(y,"eslint-plugin-sukka"),"import-x":s(x,"eslint-plugin-import-x"),autofix:v},rules:{...x.configs.recommended.rules,"import-x/newline-after-import":["error",{considerComments:!1}],"import-x/no-absolute-path":"error","import-x/no-empty-named-blocks":"error","import-x/no-mutable-exports":"error","import-x/no-useless-path-segments":"warn","import-x/no-webpack-loader-syntax":"error","accessor-pairs":"off","array-callback-return":["error",{allowImplicit:!0}],"block-scoped-var":"error","class-methods-use-this":["error",{exceptMethods:[]}],curly:["error","multi-line"],"default-case":["error",{commentPattern:"^no default$"}],"default-case-last":"error","default-param-last":"error","dot-notation":["error",{allowKeywords:!0}],"@stylistic/js/dot-location":["error","property"],eqeqeq:["error","always",{null:"ignore"}],"grouped-accessor-pairs":"error","guard-for-in":"error","no-alert":"warn","no-caller":"off","autofix/no-caller":"error","no-constructor-return":"error","no-else-return":["error",{allowElseIf:!1}],"no-empty-pattern":"error","no-empty-static-block":"error","no-eval":"error","no-extend-native":"error","no-extra-bind":"error","no-extra-label":"error","no-implicit-coercion":["off",{boolean:!1,number:!0,string:!0,allow:[]}],"no-implicit-globals":"off","no-implied-eval":"error","no-invalid-this":"off","no-labels":["error",{allowLoop:!1,allowSwitch:!1}],"no-lone-blocks":"error","no-loop-func":"error","@stylistic/js/no-multi-spaces":["error",{ignoreEOLComments:!1}],"no-multi-str":"error","no-new":"error","no-new-func":"error","no-new-wrappers":"error","no-octal-escape":"error","no-proto":"off","autofix/no-proto":"error","no-restricted-properties":["error",...[["isFinite","Number.isFinite"],["isNaN","Number.isNaN"]].flatMap(([e,r])=>["global","globalThis","window","self"].map(s=>({object:s,property:e,message:`Please use ${r} instead`}))),{object:"arguments",property:"callee",message:"arguments.callee is deprecated"},{property:"__defineGetter__",message:"Please use Object.defineProperty instead."},{property:"__defineSetter__",message:"Please use Object.defineProperty instead."},{object:"Math",property:"pow",message:"Use the exponentiation operator (**) instead."}],"no-return-assign":["error","always"],"no-return-await":"off","sukka/no-return-await":"error","no-self-compare":"off","no-sequences":"error","no-unmodified-loop-condition":"off","no-unused-expressions":["error",{allowShortCircuit:!1,allowTernary:!1,allowTaggedTemplates:!1}],"no-useless-call":"off","no-useless-catch":"off","autofix/no-useless-catch":"error","no-useless-concat":"off","autofix/no-useless-concat":"error","no-useless-escape":"error","no-useless-return":"error","no-void":["error",{allowAsStatement:!0}],"no-with":"error","prefer-promise-reject-errors":["error",{allowEmptyReject:!0}],"prefer-object-has-own":"error","prefer-regex-literals":["error",{disallowRedundantWrapping:!0}],radix:"off","autofix/radix":"error","require-await":"error","require-yield":"error","require-unicode-regexp":"off","vars-on-top":"error","@stylistic/js/wrap-iife":["error","outside",{functionPrototypeMethods:!1}],yoda:"error","no-await-in-loop":"warn","no-console":"warn","no-constant-condition":"warn","no-empty-function":"error","no-empty":["error",{allowEmptyCatch:!0}],"no-constant-binary-expression":"error","@stylistic/js/no-extra-parens":["off","all",{conditionalAssign:!0,nestedBinaryExpressions:!1,returnAssign:!1,ignoreJSX:"all",enforceForArrowConditionals:!1}],"no-loss-of-precision":"warn","no-promise-executor-return":"error","no-template-curly-in-string":"error","no-unreachable-loop":["error",{ignore:[]}],"no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"unused-imports/no-unused-vars":"off","unused-imports/no-unused-imports":"off","no-unused-private-class-members":"error","no-useless-backreference":"error","no-negated-in-lhs":"off","require-atomic-updates":"off","use-isnan":["error",{enforceForIndexOf:!0}],"valid-typeof":"off","autofix/valid-typeof":["error",{requireStringLiterals:!0}],"no-new-native-nonconstructor":"off","autofix/no-new-native-nonconstructor":"error","@stylistic/js/arrow-spacing":["error",{before:!0,after:!0}],"@stylistic/js/generator-star-spacing":["error",{before:!0,after:!1}],"@stylistic/js/no-confusing-arrow":["error",{allowParens:!0}],"no-duplicate-imports":"off","no-restricted-exports":["error",{restrictedNamedExports:["then"]}],"no-useless-constructor":"error","no-useless-rename":["error",{ignoreDestructuring:!1,ignoreImport:!1,ignoreExport:!1}],"no-var":"warn","object-shorthand":["error","always",{ignoreConstructors:!1,avoidQuotes:!0,avoidExplicitReturnArrows:!0}],"prefer-arrow-callback":["error",{allowNamedFunctions:!1,allowUnboundThis:!0}],"prefer-const":["error",{ignoreReadBeforeAssign:!0}],"prefer-numeric-literals":"error","prefer-rest-params":"error","prefer-template":"off","symbol-description":"error","@stylistic/js/template-curly-spacing":["error","never"],"@stylistic/js/yield-star-spacing":["error","before"],"@stylistic/js/array-bracket-newline":["off","consistent"],"@stylistic/js/array-bracket-spacing":["error","never"],"@stylistic/js/array-element-newline":["off",{multiline:!0,minItems:5}],"@stylistic/js/block-spacing":["error","always"],"@stylistic/js/brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:["warn",{properties:"never",ignoreDestructuring:!1,ignoreImports:!0,ignoreGlobals:!0,allow:["^UNSAFE_","^experimental_","^__DEV__"]}],"@stylistic/js/comma-dangle":["error","never"],"@stylistic/js/comma-spacing":["error",{before:!1,after:!0}],"@stylistic/js/comma-style":["error","last",{exceptions:{ArrayExpression:!1,ArrayPattern:!1,ArrowFunctionExpression:!1,CallExpression:!1,FunctionDeclaration:!1,FunctionExpression:!1,ImportDeclaration:!1,ObjectExpression:!1,ObjectPattern:!1,VariableDeclaration:!1,NewExpression:!1}}],"@stylistic/js/computed-property-spacing":["error","never"],"consistent-this":"off","@stylistic/js/eol-last":["error","always"],"@stylistic/js/func-call-spacing":["error","never"],"@stylistic/js/function-call-argument-newline":["off","consistent"],"@stylistic/js/function-paren-newline":["error","consistent"],"@stylistic/js/implicit-arrow-linebreak":["error","beside"],"@stylistic/js/indent":["error",2,{SwitchCase:1}],"@stylistic/plus/indent-binary-ops":["error",2],"@stylistic/js/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"@stylistic/js/keyword-spacing":["error",{before:!0,after:!0,overrides:{return:{after:!0},throw:{after:!0},case:{after:!0}}}],"@stylistic/js/linebreak-style":"error","@stylistic/js/lines-around-comment":"off","@stylistic/js/lines-around-directive":"off","@stylistic/js/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"@stylistic/js/multiline-ternary":"off","new-cap":["error",{newIsCap:!0,newIsCapExceptions:[],capIsNew:!1,capIsNewExceptions:["Immutable.Map","Immutable.Set","Immutable.List"]}],"@stylistic/js/newline-per-chained-call":["error",{ignoreChainWithDepth:6}],"@stylistic/js/new-parens":"error","no-bitwise":"off","no-lonely-if":"error","sukka/unicorn/no-lonely-if":"error","@stylistic/js/no-mixed-operators":["error",{groups:[["**","+"],["**","-"],["**","*"],["**","/"],["%","+"],["%","-"],["%","*"],["%","/"],["%","**"],["==","!=","===","!==",">",">=","<","<="],["&&","||"],["in","instanceof"]],allowSamePrecedence:!0}],"@stylistic/js/no-mixed-spaces-and-tabs":"error","no-multi-assign":"error","@stylistic/js/no-multiple-empty-lines":["error",{max:1,maxBOF:0,maxEOF:0}],"no-negated-condition":"off","sukka/unicorn/no-negated-condition":"warn","no-nested-ternary":"off","sukka/unicorn/no-nested-ternary":"warn","no-new-object":"off","no-object-constructor":"error","no-array-constructor":"error","@stylistic/js/no-spaced-func":"off","@stylistic/js/no-tabs":"error","no-ternary":"off","@stylistic/js/no-trailing-spaces":"error","no-unneeded-ternary":"error","@stylistic/js/no-whitespace-before-property":"error","@stylistic/js/nonblock-statement-body-position":"error","@stylistic/js/object-curly-newline":"off","@stylistic/js/object-curly-spacing":["error","always"],"@stylistic/js/object-property-newline":"off","@stylistic/js/one-var-declaration-per-line":"off","prefer-exponentiation-operator":"error","@stylistic/js/operator-linebreak":["error","before"],"@stylistic/js/padded-blocks":["error","never"],"@stylistic/js/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"}],"@stylistic/js/quotes":["error","single"],"@stylistic/js/quote-props":["error","as-needed",{keywords:!1,unnecessary:!0,numbers:!1}],"@stylistic/js/jsx-quotes":["error","prefer-double"],"@stylistic/js/rest-spread-spacing":["error","never"],"@stylistic/js/semi":["error","always"],"@stylistic/js/semi-spacing":["error",{before:!1,after:!0}],"@stylistic/js/semi-style":["error","last"],"@stylistic/js/space-before-blocks":"error","@stylistic/js/space-before-function-paren":["error",{anonymous:"always",named:"never",asyncArrow:"always"}],"@stylistic/js/space-in-parens":["error","never"],"@stylistic/js/space-infix-ops":"error","@stylistic/js/space-unary-ops":["error",{words:!0,nonwords:!1,overrides:{}}],"@stylistic/js/spaced-comment":["error","always",{line:{exceptions:["-","+"],markers:["=","!","/"]},block:{exceptions:["-","+"],markers:["=","!",":","::"],balanced:!0}}],"@stylistic/js/switch-colon-spacing":["error",{after:!0,before:!1}],"@stylistic/js/template-tag-spacing":["error","never"],"unicode-bom":["error","never"],"@stylistic/js/wrap-regex":"off","no-label-var":"error","no-use-before-define":["error",{functions:!1,classes:!0,variables:!0}],"no-restricted-globals":["error",{name:"isFinite",message:"Use Number.isFinite instead https://github.com/airbnb/javascript#standard-library--isfinite"},{name:"isNaN",message:"Use Number.isNaN instead https://github.com/airbnb/javascript#standard-library--isnan"}],"no-undef-init":"error","sukka/no-expression-empty-lines":"error","sukka/array/no-unneeded-flat-map":"error","sukka/browser/prefer-location-assign":"warn","sukka/jsx/no-template-literal":"error","sukka/jsx/no-unneeded-nested":"error","sukka/string/no-locale-case":"warn","sukka/string/no-simple-template-literal":"error","sukka/type/no-instanceof-wrapper":"error","sukka/unicode/no-bidi":"warn","sukka/unicode/no-invisible":"warn","sukka/no-redundant-variable":"error","sukka/no-single-return":"error","sukka/prefer-early-return":["error",{maximumStatements:16}],"sukka/prefer-fetch":"error","sukka/prefer-timer-id":"warn","sukka/unicorn/catch-error-name":["error",{ignore:[/^(?:e|err|error|\w+Err|\w+Error)[\d_]?$/]}],"sukka/unicorn/custom-error-definition":"error","sukka/unicorn/require-array-join-separator":"warn","sukka/unicorn/no-thenable":"error","sukka/unicorn/no-invalid-remove-event-listener":"error","sukka/unicorn/consistent-function-scoping":"warn","sukka/unicorn/prefer-event-target":"warn","sukka/unicorn/prefer-keyboard-event-key":"warn","sukka/unicorn/prefer-text-content":"warn","sukka/unicorn/no-console-spaces":"warn","sukka/unicorn/no-empty-file":"warn","sukka/unicorn/no-useless-fallback-in-spread":"warn","sukka/unicorn/no-useless-length-check":"warn","sukka/unicorn/no-useless-promise-resolve-reject":"warn","sukka/unicorn/no-zero-fractions":"warn","sukka/unicorn/prefer-export-from":["warn",{ignoreUsedVariables:!0}],"sukka/unicorn/prefer-native-coercion-functions":"warn","sukka/unicorn/prefer-negative-index":"warn","sukka/unicorn/no-document-cookie":"error","sukka/unicorn/prefer-add-event-listener":"warn","sukka/unicorn/prefer-array-index-of":"warn","sukka/unicorn/prefer-blob-reading-methods":"warn","sukka/unicorn/prefer-date-now":"warn","sukka/unicorn/prefer-dom-node-dataset":"warn","sukka/unicorn/prefer-modern-math-apis":"warn","sukka/unicorn/number-literal-case":"error","sukka/unicorn/prefer-number-properties":["warn",{checkInfinity:!1}],"sukka/unicorn/prefer-reflect-apply":"warn","sukka/unicorn/prefer-set-size":"warn","sukka/unicorn/prefer-string-replace-all":"warn","sukka/unicorn/prefer-string-slice":"warn","sukka/unicorn/prefer-string-trim-start-end":"warn","sukka/unicorn/no-unreadable-iife":"warn","sukka/unicorn/throw-new-error":"warn","sukka/unicorn/escape-case":"warn","sukka/unicorn/no-hex-escape":"warn","sukka/unicorn/prefer-prototype-methods":"warn","sukka/unicorn/error-message":"error","sukka/unicorn/no-instanceof-array":"error","sukka/unicorn/prefer-type-error":"error","sukka/unicorn/consistent-destructuring":"warn","sukka/unicorn/new-for-builtins":"warn","sukka/unicorn/no-array-push-push":"warn","sukka/unicorn/no-static-only-class":"warn","sukka/unicorn/no-unreadable-array-destructuring":"error","sukka/unicorn/no-useless-spread":"error","sukka/unicorn/no-useless-switch-case":"warn","sukka/unicorn/no-useless-undefined":["error",{checkArguments:!1}],"sukka/unicorn/numeric-separators-style":["warn",{onlyIfContainsSeparator:!1,number:{minimumDigits:7,groupLength:3},binary:{minimumDigits:9,groupLength:4},octal:{minimumDigits:9,groupLength:4},hexadecimal:{minimumDigits:5,groupLength:2}}],"sukka/unicorn/prefer-array-find":"warn","sukka/unicorn/prefer-array-flat-map":"warn","sukka/unicorn/prefer-array-flat":"warn","sukka/unicorn/prefer-array-some":"warn","sukka/unicorn/prefer-code-point":"warn","sukka/unicorn/prefer-default-parameters":"warn","sukka/unicorn/prefer-logical-operator-over-ternary":"warn","sukka/unicorn/prefer-optional-catch-binding":"error","sukka/unicorn/prefer-regexp-test":"warn","sukka/unicorn/prefer-set-has":"error","sukka/unicorn/prefer-switch":"warn","sukka/unicorn/require-number-to-fixed-digits-argument":"warn","sukka/import-dedupe":"error","sukka/unicorn/prefer-string-raw":"warn","sukka/unicorn/no-single-promise-in-promise-methods":"error","sukka/unicorn/no-await-in-promise-methods":"error","sukka/unicorn/no-magic-array-flat-depth":"error","sukka/unicorn/no-object-as-default-parameter":"error","sukka/unicorn/template-indent":["warn",{tags:["outdent","dedent","gql","sql","html","styled","css"],functions:["dedent","stripIndent","strip_indent","stripTags","striptags","strip_tags","stripHtml","stripHTML","strip_html"],selectors:[],comments:["HTML","html","CSS","css","indent"]}],"sukka/unicorn/no-negation-in-equality-check":"error","sukka/unicorn/no-length-as-slice-end":"error","no-restricted-imports":["error",{paths:o}],"no-prototype-builtins":"off","autofix/no-prototype-builtins":"error"}}];if(!1!==a){let e="boolean"==typeof a?null:Array.isArray(a)?a:[a];d.push({name:"@eslint-sukka/js cli specific",files:e??[`**/scripts/${r.GLOB_SRC}`,`**/cli/${r.GLOB_SRC}`,`**/cli.${r.GLOB_SRC_EXT}`],rules:{"no-console":"off"}})}return d},B={plugins:{jsonc:s(S,"eslint-plugin-jsonc")},languageOptions:{parser:C}},W={"jsonc/array-bracket-spacing":["error","never"],"jsonc/comma-dangle":["error","never"],"jsonc/comma-style":["error","last"],"jsonc/indent":["error",2],"jsonc/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"jsonc/object-curly-newline":"off","jsonc/object-curly-spacing":["error","always"],"jsonc/object-property-newline":["error",{allowMultiplePropertiesPerLine:!0}],"jsonc/quote-props":"error","jsonc/quotes":"error"},G=()=>[...S.configs["flat/base"],{name:"@eslint-sukka/json json",files:[r.GLOB_JSON],rules:{...S.configs["flat/recommended-with-json"].reduce((e,r)=>({...e,...r.rules}),{}),...W}},{name:"@eslint-sukka/json json5",...B,files:[r.GLOB_JSON5],rules:{...S.configs["flat/recommended-with-json5"].reduce((e,r)=>({...e,...r.rules}),{}),...W}},{name:"@eslint-sukka/json jsonc",...B,files:[r.GLOB_JSONC],rules:{...S.configs["flat/recommended-with-jsonc"].reduce((e,r)=>({...e,...r.rules}),{}),...W}},{name:"@eslint-sukka/json package.json",...B,files:["**/package.json"],rules:{"jsonc/sort-array-values":["error",{order:{type:"asc"},pathPattern:"^files$"}],"jsonc/sort-keys":["error",{order:["$schema","publisher","name","displayName","version","private","description","funding","homepage","repository","bugs","categories","type","main","module","types","typesVersions","bin","files","exports","icon","unpkg","jsdelivr","sideEffects","activationEvents","contributes","scripts","keywords","author","license","dependencies","devDependencies","peerDependencies","peerDependenciesMeta","optionalDependencies","packageManager","engines","pnpm","overrides","resolutions","husky","simple-git-hooks","lint-staged","eslintConfig"],pathPattern:"^$"},{order:{type:"asc"},pathPattern:"^(?:dev|peer|optional|bundled)?[Dd]ependencies(Meta)?$"},{order:["types","import","module","require","default"],pathPattern:"^exports.*$"}]}},{name:"@eslint-sukka/json tsconfig.json",...B,files:["**/tsconfig.json","**/tsconfig.*.json","**/tsconfig-*.json","**/jsconfig.json","**/jsconfig.*.json","**/jsconfig-*.json"],rules:{"jsonc/sort-keys":["error",{order:["$schema","extends","compilerOptions","references","files","include","exclude"],pathPattern:"^$"},{order:["incremental","composite","tsBuildInfoFile","disableSourceOfProjectReferenceRedirect","disableSolutionSearching","disableReferencedProjectLoad","target","lib","jsx","experimentalDecorators","emitDecoratorMetadata","jsxFactory","jsxFragmentFactory","jsxImportSource","reactNamespace","noLib","useDefineForClassFields","moduleDetection","module","rootDir","moduleResolution","baseUrl","paths","rootDirs","typeRoots","types","allowUmdGlobalAccess","moduleSuffixes","allowImportingTsExtensions","resolvePackageJsonExports","resolvePackageJsonImports","customConditions","resolveJsonModule","allowArbitraryExtensions","noResolve","allowJs","checkJs","maxNodeModuleJsDepth","declaration","declarationMap","emitDeclarationOnly","sourceMap","inlineSourceMap","outFile","outDir","removeComments","noEmit","importHelpers","importsNotUsedAsValues","downlevelIteration","sourceRoot","mapRoot","inlineSources","emitBOM","newLine","stripInternal","noEmitHelpers","noEmitOnError","preserveConstEnums","declarationDir","preserveValueImports","isolatedModules","verbatimModuleSyntax","allowSyntheticDefaultImports","esModuleInterop","preserveSymlinks","forceConsistentCasingInFileNames","strict","strictBindCallApply","strictFunctionTypes","strictNullChecks","strictPropertyInitialization","allowUnreachableCode","allowUnusedLabels","alwaysStrict","exactOptionalPropertyTypes","noFallthroughCasesInSwitch","noImplicitAny","noImplicitOverride","noImplicitReturns","noImplicitThis","noPropertyAccessFromIndexSignature","noUncheckedIndexedAccess","noUnusedLocals","noUnusedParameters","useUnknownInCatchVariables","skipDefaultLibCheck","skipLibCheck"],pathPattern:"^compilerOptions$"}]}}],V={"no-dupe-class-members":"off","@typescript-eslint/no-dupe-class-members":"off","no-redeclare":"off","@typescript-eslint/no-redeclare":"off","no-unused-vars":"off","@typescript-eslint/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"class-methods-use-this":"off","@typescript-eslint/class-methods-use-this":["error",{exceptMethods:[]}],"default-param-last":"off","@typescript-eslint/default-param-last":"error","dot-notation":"off","@typescript-eslint/dot-notation":["error",{allowKeywords:!0}],"no-implied-eval":"off","@typescript-eslint/no-implied-eval":"error","no-invalid-this":"off","@typescript-eslint/no-invalid-this":"off","no-loop-func":"off","@typescript-eslint/no-loop-func":"error","no-return-await":"off","@typescript-eslint/return-await":"error","sukka/no-return-await":"off","no-unused-expressions":"off","@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!1,allowTernary:!1,allowTaggedTemplates:!1}],"prefer-promise-reject-errors":"off","@typescript-eslint/prefer-promise-reject-errors":["error",{allowEmptyReject:!0}],"require-await":"off","@typescript-eslint/require-await":"error","no-empty-function":"off","@typescript-eslint/no-empty-function":"error","@stylistic/js/no-extra-parens":"off","@stylistic/ts/no-extra-parens":["off","all",{conditionalAssign:!0,nestedBinaryExpressions:!1,returnAssign:!1,ignoreJSX:"all",enforceForArrowConditionals:!1}],"no-useless-constructor":"off","@typescript-eslint/no-useless-constructor":"error","@stylistic/js/block-spacing":"off","@stylistic/ts/block-spacing":["error","always"],"@stylistic/js/brace-style":"off","@stylistic/ts/brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:"off","@stylistic/js/comma-dangle":"off","@stylistic/ts/comma-dangle":["error","never"],"@stylistic/js/comma-spacing":"off","@stylistic/ts/comma-spacing":["error",{before:!1,after:!0}],"@stylistic/js/func-call-spacing":"off","@stylistic/ts/func-call-spacing":["error","never"],"@stylistic/js/indent":"off","@stylistic/ts/indent":["error",2,{SwitchCase:1}],"@stylistic/js/key-spacing":"off","@stylistic/ts/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"@stylistic/js/keyword-spacing":"off","@stylistic/ts/keyword-spacing":["error",{before:!0,after:!0,overrides:{return:{after:!0},throw:{after:!0},case:{after:!0}}}],"@stylistic/js/lines-around-comment":"off","@stylistic/ts/lines-around-comment":"off","@stylistic/js/lines-between-class-members":"off","@stylistic/ts/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"no-array-constructor":"off","@typescript-eslint/no-array-constructor":"error","@stylistic/js/object-curly-newline":"off","@stylistic/ts/object-curly-newline":"off","@stylistic/js/object-curly-spacing":"off","@stylistic/ts/object-curly-spacing":["error","always"],"@stylistic/js/object-property-newline":"off","@stylistic/ts/object-property-newline":"off","@stylistic/js/padding-line-between-statements":"off","@stylistic/ts/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"}],"@stylistic/js/quotes":"off","@stylistic/ts/quotes":["error","single"],"@stylistic/js/quote-props":"off","@stylistic/ts/quote-props":["error","as-needed",{keywords:!1,unnecessary:!0,numbers:!1}],"@stylistic/js/semi":"off","@stylistic/ts/semi":["error","always"],"@stylistic/js/space-before-blocks":"off","@stylistic/ts/space-before-blocks":"error","@stylistic/js/space-before-function-paren":"off","@stylistic/ts/space-before-function-paren":["error",{anonymous:"always",named:"never",asyncArrow:"always"}],"@stylistic/js/space-infix-ops":"off","@stylistic/ts/space-infix-ops":"error","no-use-before-define":"off","@typescript-eslint/no-use-before-define":["error",{functions:!1,classes:!0,variables:!0}],"no-restricted-imports":"off"},J=[".js",".jsx",".mjs",".cjs"],X=[".ts",".cts",".mts",".tsx",".d.ts"],H=[...X,...J],z=[".ts",".cts",".mts",".tsx",...J],K=(e={})=>{let{tsconfigPath:t=!0,tsconfigRootDir:n=c.cwd(),componentExtentions:o=[]}=e,l="string"==typeof __dirname?f(__dirname).href:import.meta.url,p=u(i("@typescript-eslint/parser",l)),m=u(i("eslint-import-resolver-ts-bundled",l));return[{name:"@eslint-sukka/ts base",files:[r.GLOB_TS,r.GLOB_TSX,...o.map(e=>`**/*.${e}`)],plugins:{...E.base.plugins,"@stylistic/ts":s(L,"@stylistic/eslint-plugin-ts"),"@stylistic/plus":s(h,"@stylistic/eslint-plugin-plus"),"import-x":s(x,"eslint-plugin-import-x")},languageOptions:{parser:E.base.languageOptions.parser,sourceType:"module",parserOptions:{sourceType:"module",ecmaVersion:"latest",...!0===t?{projectService:!0,allowDefaultProject:[]}:{project:t},tsconfigRootDir:n,ecmaFeatures:{jsx:!0},jsxPragma:void 0,warnOnUnsupportedTypeScriptVersion:!0}},settings:{"import-x/extensions":H,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/resolver":{node:{extensions:z},[m]:{alwaysTryTypes:!0,...!0===t?{}:{project:t}}},"import-x/parsers":{espree:J,[p]:X}},rules:{...E.base.rules,...E.recommendedTypeChecked.reduce((e,r)=>({...e,...r.rules}),{}),...E.stylisticTypeChecked.reduce((e,r)=>({...e,...r.rules}),{}),...x.configs.typescript.rules,...V,"@typescript-eslint/ban-ts-comment":["error",{"ts-expect-error":"allow-with-description","ts-ignore":!0,"ts-nocheck":!0,"ts-check":!1,minimumDescriptionLength:10}],"@typescript-eslint/naming-convention":["warn",{selector:"variable",format:["camelCase","PascalCase","UPPER_CASE","snake_case"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"},{selector:"function",format:["camelCase","PascalCase"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"},{selector:"typeLike",format:["PascalCase"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"}],"@typescript-eslint/consistent-type-assertions":["error",{assertionStyle:"as",objectLiteralTypeAssertions:"allow"}],"@typescript-eslint/require-await":"error","@typescript-eslint/await-thenable":"error","@typescript-eslint/no-for-in-array":"error","@typescript-eslint/no-misused-promises":["error",{checksVoidReturn:!1}],"@typescript-eslint/no-unnecessary-type-assertion":"error","@typescript-eslint/restrict-template-expressions":["error",{allowNumber:!0,allowAny:!0,allowBoolean:!0,allowNever:!0}],"@typescript-eslint/unbound-method":"error","@typescript-eslint/consistent-type-imports":["warn",{prefer:"type-imports",disallowTypeAnnotations:!1,fixStyle:"separate-type-imports"}],"@typescript-eslint/no-import-type-side-effects":"warn","@typescript-eslint/consistent-type-exports":["warn",{fixMixedExportsWithInlineTypeSpecifier:!1}],"@typescript-eslint/consistent-type-definitions":"warn","@typescript-eslint/consistent-generic-constructors":["error","constructor"],"@typescript-eslint/no-base-to-string":["error",{ignoredTypeNames:["Error","RegExp","URL","URLSearchParams"]}],"@typescript-eslint/no-confusing-non-null-assertion":"error","@typescript-eslint/no-dynamic-delete":"warn","@typescript-eslint/no-extraneous-class":["warn",{allowConstructorOnly:!0,allowEmpty:!0,allowWithDecorator:!0}],"@typescript-eslint/no-invalid-void-type":["off",{allowInGenericTypeArguments:!0,allowAsThisParameter:!0}],"@typescript-eslint/no-non-null-asserted-nullish-coalescing":"error","@typescript-eslint/no-unnecessary-boolean-literal-compare":"error","@typescript-eslint/no-unnecessary-condition":["warn",{allowConstantLoopConditions:!0}],"@typescript-eslint/no-unnecessary-type-arguments":"error","@typescript-eslint/no-unsafe-declaration-merging":"error","@typescript-eslint/non-nullable-type-assertion-style":"error","@typescript-eslint/prefer-includes":"error","@typescript-eslint/prefer-literal-enum-member":["error",{allowBitwiseExpressions:!0}],"@typescript-eslint/prefer-nullish-coalescing":"off","@typescript-eslint/prefer-return-this-type":"error","@typescript-eslint/prefer-optional-chain":"error","@typescript-eslint/prefer-reduce-type-parameter":"error","@typescript-eslint/unified-signatures":["error",{ignoreDifferentlyNamedParameters:!0}],"@typescript-eslint/prefer-for-of":"off","@typescript-eslint/prefer-function-type":"off","@typescript-eslint/consistent-indexed-object-style":"off","@typescript-eslint/prefer-enum-initializers":"warn","@typescript-eslint/no-duplicate-enum-values":"error","@typescript-eslint/no-extra-non-null-assertion":"error","@typescript-eslint/no-meaningless-void-operator":"warn","@typescript-eslint/no-unnecessary-qualifier":"warn","@typescript-eslint/array-type":["warn",{default:"array-simple"}],"@typescript-eslint/no-restricted-imports":["error",{paths:a}],"@typescript-eslint/no-empty-object-type":["error",{allowInterfaces:"with-single-extends",allowObjectTypes:"never",allowWithName:"Props$"}],"@typescript-eslint/no-unsafe-function-type":"warn","@typescript-eslint/no-restricted-types":["error",{types:{FC:{message:"To declare a component, you don't have to use FC to annotate it. To type something that accepts/is a React Component, use ComponentType<T>.",fixWith:"ComponentType"},"React.FC":{message:"To declare a component, you don't have to use React.FC to annotate it. To type something that accepts/is a React Component, use React.ComponentType<T>.",fixWith:"React.ComponentType"},ReactElement:{message:"In most cases, you want ReactNode. Only ignore this rule when you want to use cloneElement.",fixWith:"ReactNode"},"React.ReactElement":{message:"In most cases, you want React.ReactNode. Only ignore this rule when you want to use cloneElement.",fixWith:"React.ReactNode"}}}],"@typescript-eslint/no-unsafe-assignment":"off","@typescript-eslint/no-unsafe-argument":"off","@typescript-eslint/no-explicit-any":"warn","@typescript-eslint/no-loop-func":"warn","@typescript-eslint/no-redundant-type-constituents":"off","@typescript-eslint/no-floating-promises":"off","@typescript-eslint/no-unsafe-call":"off","@typescript-eslint/no-unsafe-member-access":"off","@typescript-eslint/no-unsafe-return":"off","@typescript-eslint/no-unsafe-enum-comparison":"warn","@typescript-eslint/prefer-regexp-exec":"warn","@typescript-eslint/no-deprecated":"warn","@typescript-eslint/no-unnecessary-template-expression":"warn","no-restricted-syntax":["error",{message:'Unnecessary "as const"',selector:"VariableDeclarator > TSAsExpression[expression.properties.length=0] > TSTypeReference > Identifier[name=const]"},{message:'Unnecessary "as const"',selector:"VariableDeclarator[id.typeAnnotation] > TSAsExpression > TSTypeReference > Identifier[name=const]"},{message:'Static class methods requires "this: void"',selector:'MethodDefinition[static=true][kind!="get"][kind!="set"] > FunctionExpression:not([params.0.name=this][params.0.typeAnnotation.typeAnnotation.type=TSVoidKeyword])'}],"@stylistic/ts/member-delimiter-style":["error",{multiline:{delimiter:"comma",requireLast:!1},singleline:{delimiter:"comma",requireLast:!1}}],"@stylistic/ts/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0,exceptAfterOverload:!0}],"@stylistic/ts/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"},{blankLine:"any",prev:["interface","type"],next:["interface","type"]}],"@stylistic/ts/type-annotation-spacing":["error",{before:!1,after:!0,overrides:{arrow:{before:!0,after:!0}}}],"@typescript-eslint/no-namespace":"off","@typescript-eslint/prefer-string-starts-ends-with":"off","sukka/string/prefer-string-starts-ends-with":"error","@typescript-eslint/switch-exhaustiveness-check":"error","sukka/string/no-unneeded-to-string":"error","sukka/type/no-force-cast-via-top-type":"error","sukka/type/no-wrapper-type-reference":"error","sukka/no-default-error":"off","sukka/no-export-const-enum":"error","@stylistic/plus/type-generic-spacing":"error","@stylistic/plus/type-named-tuple-spacing":"error","@typescript-eslint/no-unused-vars":"off","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"unused-imports/no-unused-imports":"error","import-x/consistent-type-specifier-style":["error","prefer-top-level"],"import-x/named":"off","import-x/no-duplicates":"off","import-x/namespace":"off","import-x/default":"off","import-x/no-named-as-default-member":"off","import/no-deprecated":"off"}},{name:"@eslint-sukka/ts dts",files:["**/*.d.ts"],plugins:{"import-x":s(x,"eslint-plugin-import-x")},rules:{"import-x/no-duplicates":"off","unused-imports/no-unused-vars":"off"}},{name:"@eslint-sukka/ts jest/mocha",files:["**/*.{test,spec}.ts?(x)"],rules:{"no-unused-expressions":"off"}},{name:"@eslint-sukka/ts commonjs",files:["**/*.js","**/*.cjs"],plugins:E.base.plugins,rules:{"@typescript-eslint/no-require-imports":"off","@typescript-eslint/no-var-requires":"off"}}]},Q=(e={})=>[{name:"@eslint-sukka/legacy base",...e.files?{files:e.files}:{},plugins:{sukka:s(y,"eslint-plugin-sukka")},rules:{"prefer-numeric-literals":"off","no-restricted-properties":["error",{object:"arguments",property:"callee",message:"arguments.callee is deprecated"},{property:"__defineGetter__",message:"Please use Object.defineProperty instead."},{property:"__defineSetter__",message:"Please use Object.defineProperty instead."}],"no-var":"off","prefer-object-spread":"off",strict:["error","safe"],"sukka/unicorn/prefer-default-parameters":"off","sukka/unicorn/prefer-logical-operator-over-ternary":"off","sukka/unicorn/prefer-optional-catch-binding":"off"},languageOptions:{globals:{...e.browser??!0?n.browser:{},...e.node?n.node:{}}}}],Y=async r=>{if(!I&&c.stdout.isTTY&&!T(r)){let{confirm:e}=await import("./vendor-qDvrsjQ2.mjs").then(function(e){return e.i});await e({message:`Package is required for this config: ${r}. Do you want to install it?`})&&await import("./vendor-qDvrsjQ2.mjs").then(function(e){return e.a}).then(e=>e.installPackage(r,{dev:!0}))}return e(r)};function Z(e,r=!1){return"boolean"==typeof e?e:void 0===e?r:!!e.enable||r}function ee(e,...r){if("boolean"==typeof e||void 0===e)return;let{enable:s,...t}=e;return r.length?_(t,...r):t}function er(e){T(e)&&console.error(O.yellow(`[eslint-config-sukka] "${e}" is deprecated and you should uninstall it`))}let es=async(e,...r)=>{let s=[];er("@eslint-sukka/js"),er("@eslint-sukka/json"),er("@eslint-sukka/ts"),er("@eslint-sukka/legacy");let t=Z(e?.ts,T("typescript"));s.push(N(e?.ignores),F()),Z(e?.js,!0)&&s.push(M(ee(e?.js)),q({typescript:t}),$()),Z(e?.json,!0)&&s.push(G()),t&&s.push(K(ee(e?.ts)));let n=T("next"),o=Z(e?.react,n||T("react")||T("@types/react"));if(o){if(t){let r=await Y("@eslint-sukka/react"),t=T("@remix-run/node")||T("@remix-run/react")||T("@remix-run/serve")||T("@remix-run/dev");s.push(r.react(ee(e?.react,{nextjs:n,remix:t,reactRefresh:{allowConstantExport:T("vite")},reactCompiler:T("babel-plugin-react-compiler")||T("react-compiler-webpack")?"error":"off"}))),Z(e?.next,n)&&s.push(r.next()),Z(e?.stylex,T("@stylexjs/stylex")||T("stylex-webpack"))&&s.push(r.stylex(ee(e?.stylex)))}else console.warn("[eslint-config-sukka] React preset will not be enabled when TypeScript is missing.")}return Z(e?.node,T("@types/node")||T("@types/bun"))&&s.push((await Y("@eslint-sukka/node")).node({...ee(e?.node),hasTypeScript:t,hasReact:o})),Z(e?.legacy)&&s.push(Q(ee(e?.legacy))),s.push(r),s.flat()};export{N as ignores,es as sukka};
1
+ let e=e=>import(e);import{constants as r,memo as s,getPackageJson as t,globals as n,RESTRICTED_IMPORT_JS as o,importMetaResolve as i,RESTRICTED_IMPORT_TS as a,isPackageExists as l}from"@eslint-sukka/shared";export{constants}from"@eslint-sukka/shared";import*as c from"node:fs";import p from"node:fs";import u from"node:process";import*as f from"node:path";import m from"node:path";import"node:fs/promises";import{fileURLToPath as y,pathToFileURL as d}from"node:url";import{g as g}from"./vendor-BItwTJu1.mjs";import k from"@eslint-community/eslint-plugin-eslint-comments";import w from"eslint-plugin-sukka";import b from"eslint-plugin-promise";import*as h from"eslint-plugin-regexp";import{configs as j}from"eslint-plugin-regexp";import x from"@eslint/js";import v from"@stylistic/eslint-plugin-js";import S from"@stylistic/eslint-plugin-plus";import C from"eslint-plugin-unused-imports";import T from"eslint-plugin-import-x";import E from"eslint-plugin-autofix";import A from"eslint-plugin-jsonc";import I from"jsonc-eslint-parser";import{configs as L}from"typescript-eslint";import O from"@stylistic/eslint-plugin-ts";import D from"picocolors";import{defu as _}from"defu";import{isCI as P}from"ci-info";let R=e=>e instanceof URL?y(e):e;var F,N={},q=/*@__PURE__*/g(c),M=/*@__PURE__*/g(f),U=function(){if(F)return N;F=1;let e=new Map([["getSource","getText"],["getSourceLines","getLines"],["getAllComments","getAllComments"],["getDeclaredVariables","getDeclaredVariables"],["getNodeByRangeIndex","getNodeByRangeIndex"],["getCommentsBefore","getCommentsBefore"],["getCommentsAfter","getCommentsAfter"],["getCommentsInside","getCommentsInside"],["getJSDocComment","getJSDocComment"],["getFirstToken","getFirstToken"],["getFirstTokens","getFirstTokens"],["getLastToken","getLastToken"],["getLastTokens","getLastTokens"],["getTokenAfter","getTokenAfter"],["getTokenBefore","getTokenBefore"],["getTokenByRangeStart","getTokenByRangeStart"],["getTokens","getTokens"],["getTokensAfter","getTokensAfter"],["getTokensBefore","getTokensBefore"],["getTokensBetween","getTokensBetween"]]),r=new WeakMap,s=new WeakSet,t=new WeakMap,n=new WeakSet;function o(t){if(r.has(t))return r.get(t);let n="function"==typeof t;if(!n&&s.has(t))return t;let o=n?t:t.create.bind(t),i={...n?void 0:t,create:function(r){if("getScope"in r)return o(r);let s=r.sourceCode,t=s.ast,n=Object.assign(Object.create(r),{parserServices:s.parserServices,getScope:()=>s.getScope(t),getAncestors:()=>s.getAncestors(t),markVariableAsUsed(e){s.markVariableAsUsed(e,t)}});for(let[r,t]of e)n[r]=s[t].bind(s);Object.freeze(n);let i=o(n);for(let[e,r]of Object.entries(i)){if(e.startsWith("on")){i[e]=(...s)=>(t=s["onCodePathSegmentLoop"===e?2:1],r.call(i,...s));continue}i[e]=(...e)=>(t=e[0],r.call(i,...e))}return i}};return r.set(t,i),s.add(i),i}function i(e){if(t.has(e))return t.get(e);if(n.has(e)||!e.rules)return e;let r={...e,rules:Object.fromEntries(Object.entries(e.rules).map(([e,r])=>[e,o(r)]))};return t.set(e,r),n.add(r),r}function a(e){let r=e.startsWith("!"),s=r?"!":"",t=(r?e.slice(1):e).trimEnd();if(["","**","/**","**/"].includes(t))return`${s}${t}`;let n=t.indexOf("/"),o=n<0||n===t.length-1?"**/":"",i=(0===n?t.slice(1):t).replaceAll(/(?=((?:\\.|[^{(])*))\1([{(])/guy,"$1\\$2"),a=t.endsWith("/**")?"/*":"";return`${s}${o}${i}${a}`}return N.convertIgnorePatternToMinimatch=a,N.fixupConfigRules=function(e){return(Array.isArray(e)?e:[e]).map(e=>{if(!e.plugins)return e;let r=Object.fromEntries(Object.entries(e.plugins).map(([e,r])=>[e,i(r)]));return{...e,plugins:r}})},N.fixupPluginRules=i,N.fixupRule=o,N.includeIgnoreFile=function(e){if(!M.isAbsolute(e))throw Error("The ignore file location must be an absolute path.");return{name:"Imported .gitignore patterns",ignores:q.readFileSync(e,"utf8").split(/\r?\n/u).map(e=>e.trim()).filter(e=>e&&!e.startsWith("#")).map(a)}},N}();let B=".gitignore";function $(e={}){let r=[],{root:s=!1,files:t=s?B:function(e,{cwd:r=u.cwd(),type:s="file",stopAt:t}={}){let n=m.resolve(R(r)??""),{root:o}=m.parse(n);for(t=m.resolve(n,R(t)??o);n&&n!==t&&n!==o;){let r=m.isAbsolute(e)?e:m.join(n,e);try{let e=p.statSync(r,{throwIfNoEntry:!1});if("file"===s&&e?.isFile()||"directory"===s&&e?.isDirectory())return r}catch{}n=m.dirname(n)}}(B)||[],strict:n=!0,cwd:o=u.cwd()}=e,i=Array.isArray(t)?t:[t];for(let e of i){let s="";try{s=p.readFileSync(e,"utf8")}catch(e){if(n)throw e;continue}let t=m.relative(o,m.dirname(e)).replaceAll("\\","/"),i=s.split(/\r?\n/u).filter(e=>e&&!e.startsWith("#")).map(e=>U.convertIgnorePatternToMinimatch(e)).map(e=>(function(e,r,s){if(["",".","/"].includes(r))return e;let t=e.startsWith("!")?"!":"",n=t?e.slice(1):e;if(r.endsWith("/")||(r=`${r}/`),!r.startsWith(".."))return`${t}${r}${n}`;if(!r.match(/^(\.\.\/)+$/))throw Error("The ignore file location should be either a parent or child directory");if(n.startsWith("**"))return e;let o=m.relative(m.resolve(s,r),s).split(/[/\\]/);for(;o.length&&n.startsWith(`${o[0]}/`);)n=n.slice(o[0].length+1),o.shift();return n.startsWith("**")||0===o.length?`${t}${n}`:null})(e,t,o)).filter(e=>null!==e);r.push(...i)}if(n&&0===i.length)throw Error("No .gitignore file found");return{name:e.name||"gitignore",ignores:r}}let W=(e={})=>{let{customGlobs:s=null,gitignore:t=[".gitignore"]}=e,n=[],o=[];return!1===s||null===s?o=r.GLOB_EXCLUDE:"function"==typeof s?o=s(r.GLOB_EXCLUDE):"string"==typeof s?o.push(...r.GLOB_EXCLUDE,s):Array.isArray(s)&&o.push(...r.GLOB_EXCLUDE,...s),n.push({ignores:o}),!1===t||null===t||(!0===t?n.push($({files:[".gitignore"],strict:!1})):("string"==typeof t||Array.isArray(t))&&n.push($({files:t,strict:!1}))),n},V=()=>[{name:"sukka/eslint-comments",plugins:{"@eslint-community/eslint-comments":k,sukka:s(w,"eslint-plugin-sukka")},rules:{"sukka/ban-eslint-disable":["error","allow-with-description"],"@eslint-community/eslint-comments/disable-enable-pair":["error",{allowWholeFile:!0}],"@eslint-community/eslint-comments/no-aggregating-enable":"error","@eslint-community/eslint-comments/no-duplicate-disable":"error","@eslint-community/eslint-comments/no-unlimited-disable":"error","@eslint-community/eslint-comments/no-unused-disable":"error","@eslint-community/eslint-comments/no-unused-enable":"error"}}],G=({typescript:e})=>[{name:"sukka/promise",plugins:{promise:b},rules:{"promise/always-return":e?"off":["error",{ignoreLastCallback:!0}],"promise/no-return-wrap":"error","promise/param-names":"error","promise/catch-or-return":["error",{allowFinally:!0,terminationMethod:["catch","asCallback","finally"]}],"promise/no-native":"off","promise/no-nesting":"warn","promise/no-promise-in-callback":"warn","promise/no-callback-in-promise":"warn","promise/avoid-new":"off","promise/no-new-statics":"error","promise/no-return-in-finally":"warn","promise/valid-params":"warn"}}],J=()=>[{name:"sukka/regexp",plugins:{sukka:s(w,"eslint-plugin-sukka"),regexp:s(h,"eslint-plugin-regexp")},rules:{"sukka/unicorn/better-regex":"error",...j["flat/recommended"].rules,"regexp/strict":"off"}}],X=[".js",".jsx",".mjs",".cjs"],z=(e={})=>{let{files:i,disableNoConsoleInCLI:a=!0,env:l={}}=e,{browser:c=!0,webextensions:p=!1,greasemonkey:u=!1,customGlobals:f={}}=l,m=e.module??t()?.type==="module",y=[{linterOptions:{reportUnusedDisableDirectives:!0}},{name:"@eslint/js recommended",...x.configs.recommended},{name:"@eslint-sukka/js base",...i?{files:i}:{},languageOptions:{ecmaVersion:"latest",sourceType:m?"module":"commonjs",parserOptions:{ecmaVersion:"latest",sourceType:m?"module":"commonjs",ecmaFeatures:{jsx:!0}},globals:{...n.es2025,...c&&n.browser,...p&&n.webextensions,...u&&n.greasemonkey,...f}},settings:{"import-x/extensions":X},plugins:{"unused-imports":s(C,"eslint-plugin-unused-imports"),"@stylistic/js":s(v,"@stylistic/eslint-plugin-js"),"@stylistic/plus":s(S,"@stylistic/eslint-plugin-plus"),sukka:s(w,"eslint-plugin-sukka"),"import-x":s(T,"eslint-plugin-import-x"),autofix:E},rules:{...T.configs.recommended.rules,"import-x/newline-after-import":["error",{considerComments:!1}],"import-x/no-absolute-path":"error","import-x/no-empty-named-blocks":"error","import-x/no-mutable-exports":"error","import-x/no-useless-path-segments":"warn","import-x/no-webpack-loader-syntax":"error","accessor-pairs":"off","array-callback-return":["error",{allowImplicit:!0}],"arrow-body-style":["error","as-needed",{requireReturnForObjectLiteral:!1}],"block-scoped-var":"error","class-methods-use-this":["error",{exceptMethods:[]}],curly:["error","multi-line"],"default-case":["error",{commentPattern:"^no default$"}],"default-case-last":"error","default-param-last":"error","dot-notation":["error",{allowKeywords:!0}],"@stylistic/js/dot-location":["error","property"],eqeqeq:["error","always",{null:"ignore"}],"grouped-accessor-pairs":"error","guard-for-in":"error","no-alert":"warn","no-caller":"off","autofix/no-caller":"error","no-constructor-return":"error","no-else-return":["error",{allowElseIf:!1}],"no-empty-pattern":"error","no-empty-static-block":"error","no-eval":"error","no-extend-native":"error","no-extra-bind":"error","no-extra-label":"error","no-implicit-coercion":["off",{boolean:!1,number:!0,string:!0,allow:[]}],"no-implicit-globals":"off","no-implied-eval":"error","no-invalid-this":"off","no-labels":["error",{allowLoop:!1,allowSwitch:!1}],"no-lone-blocks":"error","no-loop-func":"error","@stylistic/js/no-multi-spaces":["error",{ignoreEOLComments:!1}],"no-multi-str":"error","no-new":"error","no-new-func":"error","no-new-wrappers":"error","no-octal-escape":"error","no-proto":"off","autofix/no-proto":"error","no-restricted-properties":["error",...[["isFinite","Number.isFinite"],["isNaN","Number.isNaN"]].flatMap(([e,r])=>["global","globalThis","window","self"].map(s=>({object:s,property:e,message:`Please use ${r} instead`}))),{object:"arguments",property:"callee",message:"arguments.callee is deprecated"},{property:"__defineGetter__",message:"Please use Object.defineProperty instead."},{property:"__defineSetter__",message:"Please use Object.defineProperty instead."},{object:"Math",property:"pow",message:"Use the exponentiation operator (**) instead."}],"no-return-assign":["error","always"],"no-return-await":"off","sukka/no-return-await":"error","no-self-compare":"off","no-sequences":"error","no-unmodified-loop-condition":"off","no-unused-expressions":["error",{allowShortCircuit:!1,allowTernary:!1,allowTaggedTemplates:!1}],"no-useless-call":"off","no-useless-catch":"off","autofix/no-useless-catch":"error","no-useless-concat":"off","autofix/no-useless-concat":"error","no-useless-escape":"error","no-useless-return":"error","no-void":["error",{allowAsStatement:!0}],"no-with":"error","prefer-promise-reject-errors":["error",{allowEmptyReject:!0}],"prefer-object-has-own":"error","prefer-regex-literals":["error",{disallowRedundantWrapping:!0}],radix:"off","autofix/radix":"error","require-await":"error","require-yield":"error","require-unicode-regexp":"off","vars-on-top":"error","@stylistic/js/wrap-iife":["error","outside",{functionPrototypeMethods:!1}],yoda:"error","no-await-in-loop":"warn","no-console":"warn","no-constant-condition":"warn","no-empty-function":"error","no-empty":["error",{allowEmptyCatch:!0}],"no-constant-binary-expression":"error","@stylistic/js/no-extra-parens":["off","all",{conditionalAssign:!0,nestedBinaryExpressions:!1,returnAssign:!1,ignoreJSX:"all",enforceForArrowConditionals:!1}],"no-loss-of-precision":"warn","no-promise-executor-return":"error","no-template-curly-in-string":"error","no-unreachable-loop":["error",{ignore:[]}],"no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"unused-imports/no-unused-vars":"off","unused-imports/no-unused-imports":"off","no-unused-private-class-members":"error","no-useless-backreference":"error","no-negated-in-lhs":"off","require-atomic-updates":"off","use-isnan":["error",{enforceForIndexOf:!0}],"valid-typeof":"off","autofix/valid-typeof":["error",{requireStringLiterals:!0}],"no-new-native-nonconstructor":"off","autofix/no-new-native-nonconstructor":"error","@stylistic/js/arrow-spacing":["error",{before:!0,after:!0}],"@stylistic/js/generator-star-spacing":["error",{before:!0,after:!1}],"@stylistic/js/no-confusing-arrow":["error",{allowParens:!0}],"no-duplicate-imports":"off","no-restricted-exports":["error",{restrictedNamedExports:["then"]}],"no-useless-constructor":"error","no-useless-rename":["error",{ignoreDestructuring:!1,ignoreImport:!1,ignoreExport:!1}],"no-var":"warn","object-shorthand":["error","always",{ignoreConstructors:!1,avoidQuotes:!0,avoidExplicitReturnArrows:!0}],"prefer-arrow-callback":["error",{allowNamedFunctions:!1,allowUnboundThis:!0}],"prefer-const":["error",{ignoreReadBeforeAssign:!0}],"prefer-numeric-literals":"error","prefer-rest-params":"error","prefer-template":"off","symbol-description":"error","@stylistic/js/template-curly-spacing":["error","never"],"@stylistic/js/yield-star-spacing":["error","before"],"@stylistic/js/array-bracket-newline":["off","consistent"],"@stylistic/js/array-bracket-spacing":["error","never"],"@stylistic/js/array-element-newline":["off",{multiline:!0,minItems:5}],"@stylistic/js/block-spacing":["error","always"],"@stylistic/js/brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:["warn",{properties:"never",ignoreDestructuring:!1,ignoreImports:!0,ignoreGlobals:!0,allow:["^UNSAFE_","^experimental_","^__DEV__"]}],"@stylistic/js/comma-dangle":["error","never"],"@stylistic/js/comma-spacing":["error",{before:!1,after:!0}],"@stylistic/js/comma-style":["error","last",{exceptions:{ArrayExpression:!1,ArrayPattern:!1,ArrowFunctionExpression:!1,CallExpression:!1,FunctionDeclaration:!1,FunctionExpression:!1,ImportDeclaration:!1,ObjectExpression:!1,ObjectPattern:!1,VariableDeclaration:!1,NewExpression:!1}}],"@stylistic/js/computed-property-spacing":["error","never"],"consistent-this":"off","@stylistic/js/eol-last":["error","always"],"@stylistic/js/func-call-spacing":["error","never"],"@stylistic/js/function-call-argument-newline":["off","consistent"],"@stylistic/js/function-paren-newline":["error","consistent"],"@stylistic/js/implicit-arrow-linebreak":["error","beside"],"@stylistic/js/indent":["error",2,{SwitchCase:1}],"@stylistic/plus/indent-binary-ops":["error",2],"@stylistic/js/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"@stylistic/js/keyword-spacing":["error",{before:!0,after:!0,overrides:{return:{after:!0},throw:{after:!0},case:{after:!0}}}],"@stylistic/js/linebreak-style":"error","@stylistic/js/lines-around-comment":"off","@stylistic/js/lines-around-directive":"off","@stylistic/js/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"@stylistic/js/multiline-ternary":"off","new-cap":["error",{newIsCap:!0,newIsCapExceptions:[],capIsNew:!1,capIsNewExceptions:["Immutable.Map","Immutable.Set","Immutable.List"]}],"@stylistic/js/newline-per-chained-call":["error",{ignoreChainWithDepth:6}],"@stylistic/js/new-parens":"error","no-bitwise":"off","no-lonely-if":"error","sukka/unicorn/no-lonely-if":"error","@stylistic/js/no-mixed-operators":["error",{groups:[["**","+"],["**","-"],["**","*"],["**","/"],["%","+"],["%","-"],["%","*"],["%","/"],["%","**"],["==","!=","===","!==",">",">=","<","<="],["&&","||"],["in","instanceof"]],allowSamePrecedence:!0}],"@stylistic/js/no-mixed-spaces-and-tabs":"error","no-multi-assign":"error","@stylistic/js/no-multiple-empty-lines":["error",{max:1,maxBOF:0,maxEOF:0}],"no-negated-condition":"off","sukka/unicorn/no-negated-condition":"warn","no-nested-ternary":"off","sukka/unicorn/no-nested-ternary":"warn","no-new-object":"off","no-object-constructor":"error","no-array-constructor":"error","@stylistic/js/no-spaced-func":"off","@stylistic/js/no-tabs":"error","no-ternary":"off","@stylistic/js/no-trailing-spaces":"error","no-unneeded-ternary":"error","@stylistic/js/no-whitespace-before-property":"error","@stylistic/js/nonblock-statement-body-position":"error","@stylistic/js/object-curly-newline":"off","@stylistic/js/object-curly-spacing":["error","always"],"@stylistic/js/object-property-newline":"off","@stylistic/js/one-var-declaration-per-line":"off","prefer-exponentiation-operator":"error","@stylistic/js/operator-linebreak":["error","before"],"@stylistic/js/padded-blocks":["error","never"],"@stylistic/js/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"}],"@stylistic/js/quotes":["error","single"],"@stylistic/js/quote-props":["error","as-needed",{keywords:!1,unnecessary:!0,numbers:!1}],"@stylistic/js/jsx-quotes":["error","prefer-double"],"@stylistic/js/rest-spread-spacing":["error","never"],"@stylistic/js/semi":["error","always"],"@stylistic/js/semi-spacing":["error",{before:!1,after:!0}],"@stylistic/js/semi-style":["error","last"],"@stylistic/js/space-before-blocks":"error","@stylistic/js/space-before-function-paren":["error",{anonymous:"always",named:"never",asyncArrow:"always"}],"@stylistic/js/space-in-parens":["error","never"],"@stylistic/js/space-infix-ops":"error","@stylistic/js/space-unary-ops":["error",{words:!0,nonwords:!1,overrides:{}}],"@stylistic/js/spaced-comment":["error","always",{line:{exceptions:["-","+"],markers:["=","!","/"]},block:{exceptions:["-","+"],markers:["=","!",":","::"],balanced:!0}}],"@stylistic/js/switch-colon-spacing":["error",{after:!0,before:!1}],"@stylistic/js/template-tag-spacing":["error","never"],"unicode-bom":["error","never"],"@stylistic/js/wrap-regex":"off","no-label-var":"error","no-use-before-define":["error",{functions:!1,classes:!0,variables:!0}],"no-restricted-globals":["error",{name:"isFinite",message:"Use Number.isFinite instead https://github.com/airbnb/javascript#standard-library--isfinite"},{name:"isNaN",message:"Use Number.isNaN instead https://github.com/airbnb/javascript#standard-library--isnan"}],"no-undef-init":"error","sukka/no-expression-empty-lines":"error","sukka/prefer-single-boolean-return":"error","sukka/no-all-duplicated-branches":"error","sukka/no-duplicated-branches":"error","sukka/bool-param-default":"error","sukka/call-argument-line":"error","sukka/class-prototype":"warn","sukka/comma-or-logical-or-case":"error","sukka/track-todo-fixme-comment":"warn","sukka/no-element-overwrite":"warn","sukka/no-empty-collection":"warn","sukka/no-equals-in-for-termination":"error","sukka/no-top-level-this":"error","sukka/no-invariant-returns":"error","sukka/no-redundant-assignments":"warn","sukka/no-same-line-conditional":"error","sukka/no-small-switch":"error","sukka/array/no-unneeded-flat-map":"error","sukka/browser/prefer-location-assign":"warn","sukka/jsx/no-template-literal":"error","sukka/jsx/no-unneeded-nested":"error","sukka/string/no-locale-case":"warn","sukka/string/no-simple-template-literal":"error","sukka/type/no-instanceof-wrapper":"error","sukka/unicode/no-bidi":"warn","sukka/unicode/no-invisible":"warn","sukka/no-redundant-variable":"error","sukka/no-single-return":"error","sukka/prefer-early-return":["error",{maximumStatements:16}],"sukka/prefer-fetch":"error","sukka/prefer-timer-id":"warn","sukka/no-useless-plusplus":"error","sukka/unicorn/catch-error-name":["error",{ignore:[/^(?:e|err|error|\w+Err|\w+Error)[\d_]?$/]}],"sukka/unicorn/custom-error-definition":"error","sukka/unicorn/require-array-join-separator":"warn","sukka/unicorn/no-thenable":"error","sukka/unicorn/no-invalid-remove-event-listener":"error","sukka/unicorn/consistent-function-scoping":"warn","sukka/unicorn/prefer-event-target":"warn","sukka/unicorn/prefer-keyboard-event-key":"warn","sukka/unicorn/prefer-text-content":"warn","sukka/unicorn/no-console-spaces":"warn","sukka/unicorn/no-empty-file":"warn","sukka/unicorn/no-useless-fallback-in-spread":"warn","sukka/unicorn/no-useless-length-check":"warn","sukka/unicorn/no-useless-promise-resolve-reject":"warn","sukka/unicorn/no-zero-fractions":"warn","sukka/unicorn/prefer-export-from":["warn",{ignoreUsedVariables:!0}],"sukka/unicorn/prefer-native-coercion-functions":"warn","sukka/unicorn/prefer-negative-index":"warn","sukka/unicorn/no-document-cookie":"error","sukka/unicorn/prefer-add-event-listener":"warn","sukka/unicorn/prefer-array-index-of":"warn","sukka/unicorn/prefer-blob-reading-methods":"warn","sukka/unicorn/prefer-date-now":"warn","sukka/unicorn/prefer-dom-node-dataset":"warn","sukka/unicorn/prefer-modern-math-apis":"warn","sukka/unicorn/number-literal-case":"error","sukka/unicorn/prefer-number-properties":["warn",{checkInfinity:!1}],"sukka/unicorn/prefer-reflect-apply":"warn","sukka/unicorn/prefer-set-size":"warn","sukka/unicorn/prefer-string-replace-all":"warn","sukka/unicorn/prefer-string-slice":"warn","sukka/unicorn/prefer-string-trim-start-end":"warn","sukka/unicorn/no-unreadable-iife":"warn","sukka/unicorn/throw-new-error":"warn","sukka/unicorn/escape-case":"warn","sukka/unicorn/no-hex-escape":"warn","sukka/unicorn/prefer-prototype-methods":"warn","sukka/unicorn/error-message":"error","sukka/unicorn/no-instanceof-array":"error","sukka/unicorn/prefer-type-error":"error","sukka/unicorn/consistent-destructuring":"warn","sukka/unicorn/new-for-builtins":"warn","sukka/unicorn/no-array-push-push":"warn","sukka/unicorn/no-static-only-class":"warn","sukka/unicorn/no-unreadable-array-destructuring":"error","sukka/unicorn/no-useless-spread":"error","sukka/unicorn/no-useless-switch-case":"warn","sukka/unicorn/no-useless-undefined":["error",{checkArguments:!1}],"sukka/unicorn/numeric-separators-style":["warn",{onlyIfContainsSeparator:!1,number:{minimumDigits:7,groupLength:3},binary:{minimumDigits:9,groupLength:4},octal:{minimumDigits:9,groupLength:4},hexadecimal:{minimumDigits:5,groupLength:2}}],"sukka/unicorn/prefer-array-find":"warn","sukka/unicorn/prefer-array-flat-map":"warn","sukka/unicorn/prefer-array-flat":"warn","sukka/unicorn/prefer-array-some":"warn","sukka/unicorn/prefer-code-point":"warn","sukka/unicorn/prefer-default-parameters":"warn","sukka/unicorn/prefer-logical-operator-over-ternary":"warn","sukka/unicorn/prefer-optional-catch-binding":"error","sukka/unicorn/prefer-regexp-test":"warn","sukka/unicorn/prefer-set-has":"error","sukka/unicorn/prefer-switch":"warn","sukka/unicorn/require-number-to-fixed-digits-argument":"warn","sukka/import-dedupe":"error","sukka/unicorn/prefer-string-raw":"warn","sukka/unicorn/no-single-promise-in-promise-methods":"error","sukka/unicorn/no-await-in-promise-methods":"error","sukka/unicorn/no-magic-array-flat-depth":"error","sukka/unicorn/no-object-as-default-parameter":"error","sukka/unicorn/template-indent":["warn",{tags:["outdent","dedent","gql","sql","html","styled","css"],functions:["dedent","stripIndent","strip_indent","stripTags","striptags","strip_tags","stripHtml","stripHTML","strip_html"],selectors:[],comments:["HTML","html","CSS","css","indent"]}],"sukka/unicorn/no-negation-in-equality-check":"error","sukka/unicorn/no-length-as-slice-end":"error","no-restricted-imports":["error",{paths:o}],"no-prototype-builtins":"off","autofix/no-prototype-builtins":"error"}}];if(!1!==a){let e="boolean"==typeof a?null:Array.isArray(a)?a:[a];y.push({name:"@eslint-sukka/js cli specific",files:e??[`**/scripts/${r.GLOB_SRC}`,`**/cli/${r.GLOB_SRC}`,`**/cli.${r.GLOB_SRC_EXT}`],rules:{"no-console":"off"}})}return y},H={plugins:{jsonc:s(A,"eslint-plugin-jsonc")},languageOptions:{parser:I}},K={"jsonc/array-bracket-spacing":["error","never"],"jsonc/comma-dangle":["error","never"],"jsonc/comma-style":["error","last"],"jsonc/indent":["error",2],"jsonc/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"jsonc/object-curly-newline":"off","jsonc/object-curly-spacing":["error","always"],"jsonc/object-property-newline":["error",{allowMultiplePropertiesPerLine:!0}],"jsonc/quote-props":"error","jsonc/quotes":"error"},Q=()=>[...A.configs["flat/base"],{name:"@eslint-sukka/json json",files:[r.GLOB_JSON],rules:{...A.configs["flat/recommended-with-json"].reduce((e,r)=>({...e,...r.rules}),{}),...K}},{name:"@eslint-sukka/json json5",...H,files:[r.GLOB_JSON5],rules:{...A.configs["flat/recommended-with-json5"].reduce((e,r)=>({...e,...r.rules}),{}),...K}},{name:"@eslint-sukka/json jsonc",...H,files:[r.GLOB_JSONC],rules:{...A.configs["flat/recommended-with-jsonc"].reduce((e,r)=>({...e,...r.rules}),{}),...K}},{name:"@eslint-sukka/json package.json",...H,files:["**/package.json"],rules:{"jsonc/sort-array-values":["error",{order:{type:"asc"},pathPattern:"^files$"}],"jsonc/sort-keys":["error",{order:["$schema","publisher","name","displayName","version","private","description","funding","homepage","repository","bugs","categories","type","main","module","types","typesVersions","bin","files","exports","icon","unpkg","jsdelivr","sideEffects","activationEvents","contributes","scripts","keywords","author","license","dependencies","devDependencies","peerDependencies","peerDependenciesMeta","optionalDependencies","packageManager","engines","pnpm","overrides","resolutions","husky","simple-git-hooks","lint-staged","eslintConfig"],pathPattern:"^$"},{order:{type:"asc"},pathPattern:"^(?:dev|peer|optional|bundled)?[Dd]ependencies(Meta)?$"},{order:["types","import","module","require","default"],pathPattern:"^exports.*$"}]}},{name:"@eslint-sukka/json tsconfig.json",...H,files:["**/tsconfig.json","**/tsconfig.*.json","**/tsconfig-*.json","**/jsconfig.json","**/jsconfig.*.json","**/jsconfig-*.json"],rules:{"jsonc/sort-keys":["error",{order:["$schema","extends","compilerOptions","references","files","include","exclude"],pathPattern:"^$"},{order:["incremental","composite","tsBuildInfoFile","disableSourceOfProjectReferenceRedirect","disableSolutionSearching","disableReferencedProjectLoad","target","lib","jsx","experimentalDecorators","emitDecoratorMetadata","jsxFactory","jsxFragmentFactory","jsxImportSource","reactNamespace","noLib","useDefineForClassFields","moduleDetection","module","rootDir","moduleResolution","baseUrl","paths","rootDirs","typeRoots","types","allowUmdGlobalAccess","moduleSuffixes","allowImportingTsExtensions","resolvePackageJsonExports","resolvePackageJsonImports","customConditions","resolveJsonModule","allowArbitraryExtensions","noResolve","allowJs","checkJs","maxNodeModuleJsDepth","declaration","declarationMap","emitDeclarationOnly","sourceMap","inlineSourceMap","outFile","outDir","removeComments","noEmit","importHelpers","importsNotUsedAsValues","downlevelIteration","sourceRoot","mapRoot","inlineSources","emitBOM","newLine","stripInternal","noEmitHelpers","noEmitOnError","preserveConstEnums","declarationDir","preserveValueImports","isolatedModules","verbatimModuleSyntax","allowSyntheticDefaultImports","esModuleInterop","preserveSymlinks","forceConsistentCasingInFileNames","strict","strictBindCallApply","strictFunctionTypes","strictNullChecks","strictPropertyInitialization","allowUnreachableCode","allowUnusedLabels","alwaysStrict","exactOptionalPropertyTypes","noFallthroughCasesInSwitch","noImplicitAny","noImplicitOverride","noImplicitReturns","noImplicitThis","noPropertyAccessFromIndexSignature","noUncheckedIndexedAccess","noUnusedLocals","noUnusedParameters","useUnknownInCatchVariables","skipDefaultLibCheck","skipLibCheck"],pathPattern:"^compilerOptions$"}]}}],Y={"no-dupe-class-members":"off","@typescript-eslint/no-dupe-class-members":"off","no-redeclare":"off","@typescript-eslint/no-redeclare":"off","no-unused-vars":"off","@typescript-eslint/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"class-methods-use-this":"off","@typescript-eslint/class-methods-use-this":["error",{exceptMethods:[]}],"default-param-last":"off","@typescript-eslint/default-param-last":"error","dot-notation":"off","@typescript-eslint/dot-notation":["error",{allowKeywords:!0}],"no-implied-eval":"off","@typescript-eslint/no-implied-eval":"error","no-invalid-this":"off","@typescript-eslint/no-invalid-this":"off","no-loop-func":"off","@typescript-eslint/no-loop-func":"error","no-return-await":"off","@typescript-eslint/return-await":"error","sukka/no-return-await":"off","no-unused-expressions":"off","@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!1,allowTernary:!1,allowTaggedTemplates:!1}],"prefer-promise-reject-errors":"off","@typescript-eslint/prefer-promise-reject-errors":["error",{allowEmptyReject:!0}],"require-await":"off","@typescript-eslint/require-await":"error","no-empty-function":"off","@typescript-eslint/no-empty-function":"error","@stylistic/js/no-extra-parens":"off","@stylistic/ts/no-extra-parens":["off","all",{conditionalAssign:!0,nestedBinaryExpressions:!1,returnAssign:!1,ignoreJSX:"all",enforceForArrowConditionals:!1}],"no-useless-constructor":"off","@typescript-eslint/no-useless-constructor":"error","@stylistic/js/block-spacing":"off","@stylistic/ts/block-spacing":["error","always"],"@stylistic/js/brace-style":"off","@stylistic/ts/brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:"off","@stylistic/js/comma-dangle":"off","@stylistic/ts/comma-dangle":["error","never"],"@stylistic/js/comma-spacing":"off","@stylistic/ts/comma-spacing":["error",{before:!1,after:!0}],"@stylistic/js/func-call-spacing":"off","@stylistic/ts/func-call-spacing":["error","never"],"@stylistic/js/indent":"off","@stylistic/ts/indent":["error",2,{SwitchCase:1}],"@stylistic/js/key-spacing":"off","@stylistic/ts/key-spacing":["error",{beforeColon:!1,afterColon:!0}],"@stylistic/js/keyword-spacing":"off","@stylistic/ts/keyword-spacing":["error",{before:!0,after:!0,overrides:{return:{after:!0},throw:{after:!0},case:{after:!0}}}],"@stylistic/js/lines-around-comment":"off","@stylistic/ts/lines-around-comment":"off","@stylistic/js/lines-between-class-members":"off","@stylistic/ts/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"no-array-constructor":"off","@typescript-eslint/no-array-constructor":"error","@stylistic/js/object-curly-newline":"off","@stylistic/ts/object-curly-newline":"off","@stylistic/js/object-curly-spacing":"off","@stylistic/ts/object-curly-spacing":["error","always"],"@stylistic/js/object-property-newline":"off","@stylistic/ts/object-property-newline":"off","@stylistic/js/padding-line-between-statements":"off","@stylistic/ts/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"}],"@stylistic/js/quotes":"off","@stylistic/ts/quotes":["error","single"],"@stylistic/js/quote-props":"off","@stylistic/ts/quote-props":["error","as-needed",{keywords:!1,unnecessary:!0,numbers:!1}],"@stylistic/js/semi":"off","@stylistic/ts/semi":["error","always"],"@stylistic/js/space-before-blocks":"off","@stylistic/ts/space-before-blocks":"error","@stylistic/js/space-before-function-paren":"off","@stylistic/ts/space-before-function-paren":["error",{anonymous:"always",named:"never",asyncArrow:"always"}],"@stylistic/js/space-infix-ops":"off","@stylistic/ts/space-infix-ops":"error","no-use-before-define":"off","@typescript-eslint/no-use-before-define":["error",{functions:!1,classes:!0,variables:!0}],"no-restricted-imports":"off"},Z=[".js",".jsx",".mjs",".cjs"],ee=[".ts",".cts",".mts",".tsx",".d.ts"],er=[...ee,...Z],es=[".ts",".cts",".mts",".tsx",...Z],et=(e={})=>{let{tsconfigPath:t=!0,tsconfigRootDir:n=u.cwd(),componentExtentions:o=[],isInEditor:l=!1}=e,c="string"==typeof __dirname?d(__dirname).href:import.meta.url,p=y(i("@typescript-eslint/parser",c)),f=y(i("eslint-import-resolver-ts-bundled",c));return[{name:"@eslint-sukka/ts base",files:[r.GLOB_TS,r.GLOB_TSX,...o.map(e=>`**/*.${e}`)],plugins:{...L.base.plugins,"@stylistic/ts":s(O,"@stylistic/eslint-plugin-ts"),"@stylistic/plus":s(S,"@stylistic/eslint-plugin-plus"),"import-x":s(T,"eslint-plugin-import-x")},languageOptions:{parser:L.base.languageOptions.parser,sourceType:"module",parserOptions:{sourceType:"module",ecmaVersion:"latest",...!0===t?{projectService:!0,allowDefaultProject:[]}:{project:t},tsconfigRootDir:n,ecmaFeatures:{jsx:!0},jsxPragma:void 0,warnOnUnsupportedTypeScriptVersion:!0}},settings:{"import-x/extensions":er,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/resolver":{node:{extensions:es},[f]:{alwaysTryTypes:!0,...!0===t?{}:{project:t}}},"import-x/parsers":{[p]:ee}},rules:{...L.base.rules,...L.recommendedTypeChecked.reduce((e,r)=>({...e,...r.rules}),{}),...L.stylisticTypeChecked.reduce((e,r)=>({...e,...r.rules}),{}),...T.configs.typescript.rules,...Y,"@typescript-eslint/ban-ts-comment":["error",{"ts-expect-error":"allow-with-description","ts-ignore":!0,"ts-nocheck":!0,"ts-check":!1,minimumDescriptionLength:10}],"@typescript-eslint/naming-convention":["warn",{selector:"variable",format:["camelCase","PascalCase","UPPER_CASE","snake_case"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"},{selector:"function",format:["camelCase","PascalCase"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"},{selector:"typeLike",format:["PascalCase"],leadingUnderscore:"allowSingleOrDouble",trailingUnderscore:"allowSingleOrDouble"}],"@typescript-eslint/consistent-type-assertions":["error",{assertionStyle:"as",objectLiteralTypeAssertions:"allow"}],"@typescript-eslint/require-await":"error","@typescript-eslint/await-thenable":"error","@typescript-eslint/no-for-in-array":"error","@typescript-eslint/no-misused-promises":["error",{checksVoidReturn:!1}],"@typescript-eslint/no-unnecessary-type-assertion":"error","@typescript-eslint/restrict-template-expressions":["error",{allowNumber:!0,allowAny:!0,allowBoolean:!0,allowNever:!0}],"@typescript-eslint/unbound-method":"error","@typescript-eslint/consistent-type-imports":["warn",{prefer:"type-imports",disallowTypeAnnotations:!1,fixStyle:"separate-type-imports"}],"@typescript-eslint/no-import-type-side-effects":"warn","@typescript-eslint/consistent-type-exports":["warn",{fixMixedExportsWithInlineTypeSpecifier:!0}],"@typescript-eslint/consistent-type-definitions":"warn","@typescript-eslint/consistent-generic-constructors":["error","constructor"],"@typescript-eslint/no-base-to-string":["error",{ignoredTypeNames:["Error","RegExp","URL","URLSearchParams"]}],"@typescript-eslint/no-confusing-non-null-assertion":"error","@typescript-eslint/no-dynamic-delete":"warn","@typescript-eslint/no-extraneous-class":["warn",{allowConstructorOnly:!0,allowEmpty:!0,allowWithDecorator:!0}],"@typescript-eslint/no-invalid-void-type":["off",{allowInGenericTypeArguments:!0,allowAsThisParameter:!0}],"@typescript-eslint/no-non-null-asserted-nullish-coalescing":"error","@typescript-eslint/no-unnecessary-boolean-literal-compare":"error","@typescript-eslint/no-unnecessary-condition":["warn",{allowConstantLoopConditions:!0}],"@typescript-eslint/no-unnecessary-type-arguments":"error","@typescript-eslint/no-unsafe-declaration-merging":"error","@typescript-eslint/non-nullable-type-assertion-style":"error","@typescript-eslint/prefer-includes":"error","@typescript-eslint/prefer-literal-enum-member":["error",{allowBitwiseExpressions:!0}],"@typescript-eslint/prefer-nullish-coalescing":"off","@typescript-eslint/prefer-return-this-type":"error","@typescript-eslint/prefer-optional-chain":"error","@typescript-eslint/prefer-reduce-type-parameter":"error","@typescript-eslint/unified-signatures":["error",{ignoreDifferentlyNamedParameters:!0}],"@typescript-eslint/prefer-for-of":"off","@typescript-eslint/prefer-function-type":"off","@typescript-eslint/consistent-indexed-object-style":"off","@typescript-eslint/prefer-enum-initializers":"warn","@typescript-eslint/no-duplicate-enum-values":"error","@typescript-eslint/no-extra-non-null-assertion":"error","@typescript-eslint/no-meaningless-void-operator":"warn","@typescript-eslint/no-unnecessary-qualifier":"warn","@typescript-eslint/array-type":["warn",{default:"array-simple"}],"@typescript-eslint/no-restricted-imports":["error",{paths:a}],"@typescript-eslint/no-empty-object-type":["error",{allowInterfaces:"with-single-extends",allowObjectTypes:"never",allowWithName:"Props$"}],"@typescript-eslint/no-unsafe-function-type":"warn","@typescript-eslint/no-restricted-types":["error",{types:{FC:{message:"To declare a component, you don't have to use FC to annotate it. To type something that accepts/is a React Component, use ComponentType<T>.",fixWith:"ComponentType"},"React.FC":{message:"To declare a component, you don't have to use React.FC to annotate it. To type something that accepts/is a React Component, use React.ComponentType<T>.",fixWith:"React.ComponentType"},ReactElement:{message:"In most cases, you want ReactNode. Only ignore this rule when you want to use cloneElement.",fixWith:"ReactNode"},"React.ReactElement":{message:"In most cases, you want React.ReactNode. Only ignore this rule when you want to use cloneElement.",fixWith:"React.ReactNode"}}}],"@typescript-eslint/no-unsafe-assignment":"off","@typescript-eslint/no-unsafe-argument":"off","@typescript-eslint/no-explicit-any":"warn","@typescript-eslint/no-loop-func":"warn","@typescript-eslint/no-redundant-type-constituents":"off","@typescript-eslint/no-floating-promises":"off","@typescript-eslint/no-unsafe-call":"off","@typescript-eslint/no-unsafe-member-access":"off","@typescript-eslint/no-unsafe-return":"off","@typescript-eslint/no-unsafe-enum-comparison":"warn","@typescript-eslint/prefer-regexp-exec":"warn","@typescript-eslint/no-deprecated":"warn","@typescript-eslint/no-unnecessary-template-expression":"warn","no-restricted-syntax":["error",{message:'Unnecessary "as const"',selector:"VariableDeclarator > TSAsExpression[expression.properties.length=0] > TSTypeReference > Identifier[name=const]"},{message:'Unnecessary "as const"',selector:"VariableDeclarator[id.typeAnnotation] > TSAsExpression > TSTypeReference > Identifier[name=const]"},{message:'Static class methods requires "this: void", or change to arrow function',selector:'MethodDefinition[static=true][kind!="get"][kind!="set"] > FunctionExpression:not([params.0.name=this][params.0.typeAnnotation.typeAnnotation.type=TSVoidKeyword])'},{message:'Public "static" fields should be read-only',selector:'PropertyDefinition[readonly!=true][static=true][accessibility!="private"][accessibility!="protected"]'}],"@stylistic/ts/member-delimiter-style":["error",{multiline:{delimiter:"comma",requireLast:!1},singleline:{delimiter:"comma",requireLast:!1}}],"@stylistic/ts/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0,exceptAfterOverload:!0}],"@stylistic/ts/padding-line-between-statements":["error",{blankLine:"always",prev:"directive",next:"*"},{blankLine:"always",prev:"*",next:["class","with"]},{blankLine:"always",prev:["class","with"],next:"*"},{blankLine:"any",prev:["interface","type"],next:["interface","type"]}],"@stylistic/ts/type-annotation-spacing":["error",{before:!1,after:!0,overrides:{arrow:{before:!0,after:!0}}}],"@typescript-eslint/no-namespace":"off","@typescript-eslint/prefer-string-starts-ends-with":"off","sukka/string/prefer-string-starts-ends-with":"error","@typescript-eslint/switch-exhaustiveness-check":"error","@typescript-eslint/parameter-properties":["warn",{prefer:"parameter-property"}],"sukka/string/no-unneeded-to-string":"error","sukka/type/no-force-cast-via-top-type":"error","sukka/type/no-wrapper-type-reference":"error","sukka/no-default-error":"off","sukka/no-export-const-enum":"error","sukka/no-for-in-iterable":"error","sukka/only-await-thenable":"error","sukka/no-undefined-optional-parameters":"warn","sukka/no-try-promise":"error","sukka/no-useless-string-operation":"warn","@stylistic/plus/type-generic-spacing":"error","@stylistic/plus/type-named-tuple-spacing":"error","@typescript-eslint/no-unused-vars":"off","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_",ignoreRestSiblings:!0}],"unused-imports/no-unused-imports":l?"error":"off","import-x/consistent-type-specifier-style":["error","prefer-top-level"],"import-x/named":"off","import-x/namespace":"off","import-x/default":"off","import-x/no-duplicates":"off","import-x/no-named-as-default-member":"off","import-x/no-deprecated":"off"}},{name:"@eslint-sukka/ts dts",files:["**/*.d.ts"],plugins:{"import-x":s(T,"eslint-plugin-import-x")},rules:{"import-x/no-duplicates":"off","unused-imports/no-unused-vars":"off"}},{name:"@eslint-sukka/ts jest/mocha",files:["**/*.{test,spec}.ts?(x)"],rules:{"no-unused-expressions":"off"}},{name:"@eslint-sukka/ts commonjs",files:["**/*.js","**/*.cjs"],plugins:L.base.plugins,rules:{"@typescript-eslint/no-require-imports":"off","@typescript-eslint/no-var-requires":"off"}}]},en=(e={})=>[{name:"@eslint-sukka/legacy base",...e.files?{files:e.files}:{},plugins:{sukka:s(w,"eslint-plugin-sukka")},rules:{"prefer-numeric-literals":"off","no-restricted-properties":["error",{object:"arguments",property:"callee",message:"arguments.callee is deprecated"},{property:"__defineGetter__",message:"Please use Object.defineProperty instead."},{property:"__defineSetter__",message:"Please use Object.defineProperty instead."}],"no-var":"off","prefer-object-spread":"off",strict:["error","safe"],"sukka/unicorn/prefer-default-parameters":"off","sukka/unicorn/prefer-logical-operator-over-ternary":"off","sukka/unicorn/prefer-optional-catch-binding":"off"},languageOptions:{globals:{...e.browser??!0?n.browser:{},...e.node?n.node:{}}}}],eo=async r=>{if(!P&&u.stdout.isTTY&&!l(r)){let{confirm:e}=await import("./vendor-BItwTJu1.mjs").then(function(e){return e.i});await e({message:`Package is required for this config: ${r}. Do you want to install it?`})&&await import("./vendor-BItwTJu1.mjs").then(function(e){return e.a}).then(e=>e.installPackage(r,{dev:!0}))}return e(r)};function ei(e,r=!1){return"boolean"==typeof e?e:void 0===e?r:!!e.enable||r}function ea(e,...r){if("boolean"==typeof e||void 0===e)return;let{enable:s,...t}=e;return r.length?_(t,...r):t}function el(e){l(e)&&console.error(D.yellow(`[eslint-config-sukka] "${e}" is deprecated and you should uninstall it`))}let ec=async(e,...r)=>{let s=[];el("@eslint-sukka/js"),el("@eslint-sukka/json"),el("@eslint-sukka/ts"),el("@eslint-sukka/legacy");let t=ei(e?.ts,l("typescript"));if(s.push(W(e?.ignores),V()),ei(e?.js,!0)&&s.push(z(ea(e?.js)),G({typescript:t}),J()),ei(e?.json,!0)&&s.push(Q()),t){let r=e?.isInEditor??(!(process.env.CI||P||process.env.GIT_PARAMS||process.env.VSCODE_GIT_COMMAND||process.env.npm_lifecycle_script?.startsWith("lint-staged"))&&!!(process.env.VSCODE_PID||process.env.VSCODE_CWD||process.env.JETBRAINS_IDE||process.env.VIM||process.env.NVIM));s.push(et({isInEditor:r,...ea(e?.ts)}))}let n=l("next"),o=ei(e?.react,n||l("react")||l("@types/react"));if(o){if(t){let r=await eo("@eslint-sukka/react"),t=l("@remix-run/node")||l("@remix-run/react")||l("@remix-run/serve")||l("@remix-run/dev");s.push(r.react(ea(e?.react,{nextjs:n,remix:t,reactRefresh:{allowConstantExport:l("vite")},reactCompiler:l("babel-plugin-react-compiler")||l("react-compiler-webpack")?"error":"off"}))),ei(e?.next,n)&&s.push(r.next()),ei(e?.stylex,l("@stylexjs/stylex")||l("stylex-webpack"))&&s.push(r.stylex(ea(e?.stylex)))}else console.warn("[eslint-config-sukka] React preset will not be enabled when TypeScript is missing.")}return ei(e?.node,l("@types/node")||l("@types/bun"))&&s.push((await eo("@eslint-sukka/node")).node({...ea(e?.node),hasTypeScript:t,hasReact:o})),ei(e?.legacy)&&s.push(en(ea(e?.legacy))),s.push(r),s.flat()};export{W as ignores,ec as sukka};
@@ -0,0 +1,19 @@
1
+ let D,u;import e,{stdin as t,stdout as r}from"node:process";import F from"node:readline";import{WriteStream as i}from"node:tty";import s from"picocolors";import n,{cwd as o}from"process";import C from"node:fs";import E from"node:fs/promises";import a from"node:path";import{existsSync as l}from"fs";import{normalize as c,delimiter as h,resolve as p,dirname as B}from"path";import{createRequire as f}from"node:module";import{spawn as d}from"child_process";import{PassThrough as m}from"stream";import A from"readline";function g(D){if(D.__esModule)return D;var u=D.default;if("function"==typeof u){var e=function D(){return this instanceof D?Reflect.construct(u,arguments,this.constructor):u.apply(this,arguments)};e.prototype=u.prototype}else e={};return Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(D).forEach(function(u){var t=Object.getOwnPropertyDescriptor(D,u);Object.defineProperty(e,u,t.get?t:{enumerable:!0,get:function(){return D[u]}})}),e}var b,v,w=function(){if(v)return b;v=1;let D=`\x1b[`,u={to:(u,e)=>e?`${D}${e+1};${u+1}H`:`${D}${u+1}G`,move(u,e){let t="";return u<0?t+=`${D}${-u}D`:u>0&&(t+=`${D}${u}C`),e<0?t+=`${D}${-e}A`:e>0&&(t+=`${D}${e}B`),t},up:(u=1)=>`${D}${u}A`,down:(u=1)=>`${D}${u}B`,forward:(u=1)=>`${D}${u}C`,backward:(u=1)=>`${D}${u}D`,nextLine:(u=1)=>`${D}E`.repeat(u),prevLine:(u=1)=>`${D}F`.repeat(u),left:`${D}G`,hide:`${D}?25l`,show:`${D}?25h`,save:`\x1b7`,restore:`\x1b8`},e={screen:`${D}2J`,up:(u=1)=>`${D}1J`.repeat(u),down:(u=1)=>`${D}J`.repeat(u),line:`${D}2K`,lineEnd:`${D}K`,lineStart:`${D}1K`,lines(D){let e="";for(let t=0;t<D;t++)e+=this.line+(t<D-1?u.up():"");return D&&(e+=u.left),e}};return b={cursor:u,scroll:{up:(u=1)=>`${D}S`.repeat(u),down:(u=1)=>`${D}T`.repeat(u)},erase:e,beep:"\x07"}}();function y(D){if("string"!=typeof D)throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(function({onlyFirst:D=!1}={}){return RegExp("[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)|(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))",D?void 0:"g")}(),"")}function _(D){return D&&D.__esModule&&Object.prototype.hasOwnProperty.call(D,"default")?D.default:D}var x={exports:{}};!function(D){var u={};function e(D){return D.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}D.exports=u,u.eastAsianWidth=function(D){var u=D.charCodeAt(0),e=2==D.length?D.charCodeAt(1):0,t=u;return 55296<=u&&u<=56319&&56320<=e&&e<=57343&&(u&=1023,e&=1023,t=(u<<10|e)+65536),12288==t||65281<=t&&t<=65376||65504<=t&&t<=65510?"F":8361==t||65377<=t&&t<=65470||65474<=t&&t<=65479||65482<=t&&t<=65487||65490<=t&&t<=65495||65498<=t&&t<=65500||65512<=t&&t<=65518?"H":4352<=t&&t<=4447||4515<=t&&t<=4519||4602<=t&&t<=4607||9001<=t&&t<=9002||11904<=t&&t<=11929||11931<=t&&t<=12019||12032<=t&&t<=12245||12272<=t&&t<=12283||12289<=t&&t<=12350||12353<=t&&t<=12438||12441<=t&&t<=12543||12549<=t&&t<=12589||12593<=t&&t<=12686||12688<=t&&t<=12730||12736<=t&&t<=12771||12784<=t&&t<=12830||12832<=t&&t<=12871||12880<=t&&t<=13054||13056<=t&&t<=19903||19968<=t&&t<=42124||42128<=t&&t<=42182||43360<=t&&t<=43388||44032<=t&&t<=55203||55216<=t&&t<=55238||55243<=t&&t<=55291||63744<=t&&t<=64255||65040<=t&&t<=65049||65072<=t&&t<=65106||65108<=t&&t<=65126||65128<=t&&t<=65131||110592<=t&&t<=110593||127488<=t&&t<=127490||127504<=t&&t<=127546||127552<=t&&t<=127560||127568<=t&&t<=127569||131072<=t&&t<=194367||177984<=t&&t<=196605||196608<=t&&t<=262141?"W":32<=t&&t<=126||162<=t&&t<=163||165<=t&&t<=166||172==t||175==t||10214<=t&&t<=10221||10629<=t&&t<=10630?"Na":161==t||164==t||167<=t&&t<=168||170==t||173<=t&&t<=174||176<=t&&t<=180||182<=t&&t<=186||188<=t&&t<=191||198==t||208==t||215<=t&&t<=216||222<=t&&t<=225||230==t||232<=t&&t<=234||236<=t&&t<=237||240==t||242<=t&&t<=243||247<=t&&t<=250||252==t||254==t||257==t||273==t||275==t||283==t||294<=t&&t<=295||299==t||305<=t&&t<=307||312==t||319<=t&&t<=322||324==t||328<=t&&t<=331||333==t||338<=t&&t<=339||358<=t&&t<=359||363==t||462==t||464==t||466==t||468==t||470==t||472==t||474==t||476==t||593==t||609==t||708==t||711==t||713<=t&&t<=715||717==t||720==t||728<=t&&t<=731||733==t||735==t||768<=t&&t<=879||913<=t&&t<=929||931<=t&&t<=937||945<=t&&t<=961||963<=t&&t<=969||1025==t||1040<=t&&t<=1103||1105==t||8208==t||8211<=t&&t<=8214||8216<=t&&t<=8217||8220<=t&&t<=8221||8224<=t&&t<=8226||8228<=t&&t<=8231||8240==t||8242<=t&&t<=8243||8245==t||8251==t||8254==t||8308==t||8319==t||8321<=t&&t<=8324||8364==t||8451==t||8453==t||8457==t||8467==t||8470==t||8481<=t&&t<=8482||8486==t||8491==t||8531<=t&&t<=8532||8539<=t&&t<=8542||8544<=t&&t<=8555||8560<=t&&t<=8569||8585==t||8592<=t&&t<=8601||8632<=t&&t<=8633||8658==t||8660==t||8679==t||8704==t||8706<=t&&t<=8707||8711<=t&&t<=8712||8715==t||8719==t||8721==t||8725==t||8730==t||8733<=t&&t<=8736||8739==t||8741==t||8743<=t&&t<=8748||8750==t||8756<=t&&t<=8759||8764<=t&&t<=8765||8776==t||8780==t||8786==t||8800<=t&&t<=8801||8804<=t&&t<=8807||8810<=t&&t<=8811||8814<=t&&t<=8815||8834<=t&&t<=8835||8838<=t&&t<=8839||8853==t||8857==t||8869==t||8895==t||8978==t||9312<=t&&t<=9449||9451<=t&&t<=9547||9552<=t&&t<=9587||9600<=t&&t<=9615||9618<=t&&t<=9621||9632<=t&&t<=9633||9635<=t&&t<=9641||9650<=t&&t<=9651||9654<=t&&t<=9655||9660<=t&&t<=9661||9664<=t&&t<=9665||9670<=t&&t<=9672||9675==t||9678<=t&&t<=9681||9698<=t&&t<=9701||9711==t||9733<=t&&t<=9734||9737==t||9742<=t&&t<=9743||9748<=t&&t<=9749||9756==t||9758==t||9792==t||9794==t||9824<=t&&t<=9825||9827<=t&&t<=9829||9831<=t&&t<=9834||9836<=t&&t<=9837||9839==t||9886<=t&&t<=9887||9918<=t&&t<=9919||9924<=t&&t<=9933||9935<=t&&t<=9953||9955==t||9960<=t&&t<=9983||10045==t||10071==t||10102<=t&&t<=10111||11093<=t&&t<=11097||12872<=t&&t<=12879||57344<=t&&t<=63743||65024<=t&&t<=65039||65533==t||127232<=t&&t<=127242||127248<=t&&t<=127277||127280<=t&&t<=127337||127344<=t&&t<=127386||917760<=t&&t<=917999||983040<=t&&t<=1048573||1048576<=t&&t<=1114109?"A":"N"},u.characterLength=function(D){var u=this.eastAsianWidth(D);return"F"==u||"W"==u||"A"==u?2:1},u.length=function(D){for(var u=e(D),t=0,r=0;r<u.length;r++)t+=this.characterLength(u[r]);return t},u.slice=function(D,t,r){textLen=u.length(D),r=r||1,(t=t||0)<0&&(t=textLen+t),r<0&&(r=textLen+r);for(var F="",i=0,s=e(D),n=0;n<s.length;n++){var o=s[n],C=u.length(o);if(i>=t-(2==C?1:0)){if(i+C<=r)F+=o;else break}i+=C}return F}}(x);let $=_(x.exports),O=_(function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g});function k(D,u={}){if("string"!=typeof D||0===D.length||(u={ambiguousIsNarrow:!0,...u},0===(D=y(D)).length))return 0;D=D.replace(O()," ");let e=u.ambiguousIsNarrow?1:2,t=0;for(let u of D){let D=u.codePointAt(0);if(!(D<=31)&&(!(D>=127)||!(D<=159))&&(!(D>=768)||!(D<=879)))switch($.eastAsianWidth(u)){case"F":case"W":t+=2;break;case"A":t+=e;break;default:t+=1}}return t}let T=(D=0)=>u=>`\x1b[${u+D}m`,j=(D=0)=>u=>`\x1b[${38+D};5;${u}m`,S=(D=0)=>(u,e,t)=>`\x1b[${38+D};2;${u};${e};${t}m`,M={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(M.modifier),[...Object.keys(M.color),...Object.keys(M.bgColor)];let P=function(){let D=new Map;for(let[u,e]of Object.entries(M)){for(let[u,t]of Object.entries(e))M[u]={open:`\x1b[${t[0]}m`,close:`\x1b[${t[1]}m`},e[u]=M[u],D.set(t[0],t[1]);Object.defineProperty(M,u,{value:e,enumerable:!1})}return Object.defineProperty(M,"codes",{value:D,enumerable:!1}),M.color.close="\x1b[39m",M.bgColor.close="\x1b[49m",M.color.ansi=T(),M.color.ansi256=j(),M.color.ansi16m=S(),M.bgColor.ansi=T(10),M.bgColor.ansi256=j(10),M.bgColor.ansi16m=S(10),Object.defineProperties(M,{rgbToAnsi256:{value:(D,u,e)=>D===u&&u===e?D<8?16:D>248?231:Math.round((D-8)/247*24)+232:16+36*Math.round(D/255*5)+6*Math.round(u/255*5)+Math.round(e/255*5),enumerable:!1},hexToRgb:{value:D=>{let u=/[a-f\d]{6}|[a-f\d]{3}/i.exec(D.toString(16));if(!u)return[0,0,0];let[e]=u;3===e.length&&(e=[...e].map(D=>D+D).join(""));let t=Number.parseInt(e,16);return[t>>16&255,t>>8&255,255&t]},enumerable:!1},hexToAnsi256:{value:D=>M.rgbToAnsi256(...M.hexToRgb(D)),enumerable:!1},ansi256ToAnsi:{value:D=>{let u,e,t;if(D<8)return 30+D;if(D<16)return 90+(D-8);if(D>=232)e=u=((D-232)*10+8)/255,t=u;else{let r=(D-=16)%36;u=Math.floor(D/36)/5,e=Math.floor(r/6)/5,t=r%6/5}let r=2*Math.max(u,e,t);if(0===r)return 30;let F=30+(Math.round(t)<<2|Math.round(e)<<1|Math.round(u));return 2===r&&(F+=60),F},enumerable:!1},rgbToAnsi:{value:(D,u,e)=>M.ansi256ToAnsi(M.rgbToAnsi256(D,u,e)),enumerable:!1},hexToAnsi:{value:D=>M.ansi256ToAnsi(M.hexToAnsi256(D)),enumerable:!1}}),M}(),N=new Set(["\x1b","\x9b"]),L="]8;;",R=D=>`${N.values().next().value}[${D}m`,I=D=>`${N.values().next().value}${L}${D}\x07`,W=D=>D.split(" ").map(D=>k(D)),z=(D,u,e)=>{let t=[...u],r=!1,F=!1,i=k(y(D[D.length-1]));for(let[u,s]of t.entries()){let n=k(s);if(i+n<=e?D[D.length-1]+=s:(D.push(s),i=0),N.has(s)&&(r=!0,F=t.slice(u+1).join("").startsWith(L)),r){F?"\x07"===s&&(r=!1,F=!1):"m"===s&&(r=!1);continue}(i+=n)===e&&u<t.length-1&&(D.push(""),i=0)}!i&&D[D.length-1].length>0&&D.length>1&&(D[D.length-2]+=D.pop())},G=D=>{let u=D.split(" "),e=u.length;for(;e>0&&!(k(u[e-1])>0);)e--;return e===u.length?D:u.slice(0,e).join(" ")+u.slice(e).join("")},H=(D,u,e={})=>{if(!1!==e.trim&&""===D.trim())return"";let t="",r,F,i=W(D),s=[""];for(let[t,r]of D.split(" ").entries()){!1!==e.trim&&(s[s.length-1]=s[s.length-1].trimStart());let D=k(s[s.length-1]);if(0!==t&&(D>=u&&(!1===e.wordWrap||!1===e.trim)&&(s.push(""),D=0),(D>0||!1===e.trim)&&(s[s.length-1]+=" ",D++)),e.hard&&i[t]>u){let e=u-D,F=1+Math.floor((i[t]-e-1)/u);Math.floor((i[t]-1)/u)<F&&s.push(""),z(s,r,u);continue}if(D+i[t]>u&&D>0&&i[t]>0){if(!1===e.wordWrap&&D<u){z(s,r,u);continue}s.push("")}if(D+i[t]>u&&!1===e.wordWrap){z(s,r,u);continue}s[s.length-1]+=r}!1!==e.trim&&(s=s.map(D=>G(D)));let n=[...s.join(`
2
+ `)];for(let[D,u]of n.entries()){if(t+=u,N.has(u)){let{groups:u}=RegExp(`(?:\\[(?<code>\\d+)m|\\${L}(?<uri>.*)\x07)`).exec(n.slice(D).join(""))||{groups:{}};if(void 0!==u.code){let D=Number.parseFloat(u.code);r=39===D?void 0:D}else void 0!==u.uri&&(F=0===u.uri.length?void 0:u.uri)}let e=P.codes.get(Number(r));n[D+1]===`
3
+ `?(F&&(t+=I("")),r&&e&&(t+=R(e))):u===`
4
+ `&&(r&&e&&(t+=R(r)),F&&(t+=I(F)))}return t};function K(D,u,e){return String(D).normalize().replace(/\r\n/g,`
5
+ `).split(`
6
+ `).map(D=>H(D,u,e)).join(`
7
+ `)}var J=Object.defineProperty,U=(D,u,e)=>u in D?J(D,u,{enumerable:!0,configurable:!0,writable:!0,value:e}):D[u]=e,V=(D,u,e)=>(U(D,"symbol"!=typeof u?u+"":u,e),e);let Y=Symbol("clack:cancel");function Z(D,u){D.isTTY&&D.setRawMode(u)}let X=new Map([["k","up"],["j","down"],["h","left"],["l","right"]]),q=new Set(["up","down","left","right","space","enter"]),Q=class{constructor({render:D,input:u=t,output:e=r,...F},i=!0){V(this,"input"),V(this,"output"),V(this,"rl"),V(this,"opts"),V(this,"_track",!1),V(this,"_render"),V(this,"_cursor",0),V(this,"state","initial"),V(this,"value"),V(this,"error",""),V(this,"subscribers",new Map),V(this,"_prevFrame",""),this.opts=F,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=D.bind(this),this._track=i,this.input=u,this.output=e}prompt(){let D=new i(0);return D._write=(D,u,e)=>{this._track&&(this.value=this.rl.line.replace(/\t/g,""),this._cursor=this.rl.cursor,this.emit("value",this.value)),e()},this.input.pipe(D),this.rl=F.createInterface({input:this.input,output:D,tabSize:2,prompt:"",escapeCodeTimeout:50}),F.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),void 0!==this.opts.initialValue&&this._track&&this.rl.write(this.opts.initialValue),this.input.on("keypress",this.onKeypress),Z(this.input,!0),this.output.on("resize",this.render),this.render(),new Promise((D,u)=>{this.once("submit",()=>{this.output.write(w.cursor.show),this.output.off("resize",this.render),Z(this.input,!1),D(this.value)}),this.once("cancel",()=>{this.output.write(w.cursor.show),this.output.off("resize",this.render),Z(this.input,!1),D(Y)})})}on(D,u){let e=this.subscribers.get(D)??[];e.push({cb:u}),this.subscribers.set(D,e)}once(D,u){let e=this.subscribers.get(D)??[];e.push({cb:u,once:!0}),this.subscribers.set(D,e)}emit(D,...u){let e=this.subscribers.get(D)??[],t=[];for(let D of e)D.cb(...u),D.once&&t.push(()=>e.splice(e.indexOf(D),1));for(let D of t)D()}unsubscribe(){this.subscribers.clear()}onKeypress(D,u){if("error"===this.state&&(this.state="active"),u?.name&&!this._track&&X.has(u.name)&&this.emit("cursor",X.get(u.name)),u?.name&&q.has(u.name)&&this.emit("cursor",u.name),D&&("y"===D.toLowerCase()||"n"===D.toLowerCase())&&this.emit("confirm","y"===D.toLowerCase())," "===D&&this.opts.placeholder&&(this.value||(this.rl.write(this.opts.placeholder),this.emit("value",this.opts.placeholder))),D&&this.emit("key",D.toLowerCase()),u?.name==="return"){if(this.opts.validate){let D=this.opts.validate(this.value);D&&(this.error=D,this.state="error",this.rl.write(this.value))}"error"!==this.state&&(this.state="submit")}"\x03"===D&&(this.state="cancel"),("submit"===this.state||"cancel"===this.state)&&this.emit("finalize"),this.render(),("submit"===this.state||"cancel"===this.state)&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
8
+ `),Z(this.input,!1),this.rl.close(),this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let D=K(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
9
+ `).length-1;this.output.write(w.cursor.move(-999,-1*D))}render(){let D=K(this._render(this)??"",process.stdout.columns,{hard:!0});if(D!==this._prevFrame){if("initial"===this.state)this.output.write(w.cursor.hide);else{let u=function(D,u){if(D===u)return;let e=D.split(`
10
+ `),t=u.split(`
11
+ `),r=[];for(let D=0;D<Math.max(e.length,t.length);D++)e[D]!==t[D]&&r.push(D);return r}(this._prevFrame,D);if(this.restoreCursor(),u&&u?.length===1){let e=u[0];this.output.write(w.cursor.move(0,e)),this.output.write(w.erase.lines(1));let t=D.split(`
12
+ `);this.output.write(t[e]),this._prevFrame=D,this.output.write(w.cursor.move(0,t.length-e-1));return}if(u&&u?.length>1){let e=u[0];this.output.write(w.cursor.move(0,e)),this.output.write(w.erase.down());let t=D.split(`
13
+ `).slice(e);this.output.write(t.join(`
14
+ `)),this._prevFrame=D;return}this.output.write(w.erase.down())}this.output.write(D),"initial"===this.state&&(this.state="active"),this._prevFrame=D}}};class DD extends Q{get cursor(){return this.value?0:1}get _value(){return 0===this.cursor}constructor(D){super(D,!1),this.value=!!D.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",D=>{this.output.write(w.cursor.move(0,-1)),this.value=D,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}globalThis.process.platform.startsWith("win");let Du="win32"!==e.platform?"linux"!==e.env.TERM:!!e.env.CI||!!e.env.WT_SESSION||!!e.env.TERMINUS_SUBLIME||"{cmd::Cmder}"===e.env.ConEmuTask||"Terminus-Sublime"===e.env.TERM_PROGRAM||"vscode"===e.env.TERM_PROGRAM||"xterm-256color"===e.env.TERM||"alacritty"===e.env.TERM||"JetBrains-JediTerm"===e.env.TERMINAL_EMULATOR,De=(D,u)=>Du?D:u,Dt=De("◆","*"),Dr=De("■","x"),DF=De("▲","x"),Di=De("◇","o"),Ds=De("│","|"),Dn=De("└","—"),Do=De("●",">"),DC=De("○"," "),DE=D=>{switch(D){case"initial":case"active":return s.cyan(Dt);case"cancel":return s.red(Dr);case"error":return s.yellow(DF);case"submit":return s.green(Di)}};var Da=/*#__PURE__*/Object.freeze({__proto__:null,confirm:D=>{let u=D.active??"Yes",e=D.inactive??"No";return new DD({active:u,inactive:e,initialValue:D.initialValue??!0,render(){let t=`${s.gray(Ds)}
15
+ ${DE(this.state)} ${D.message}
16
+ `,r=this.value?u:e;switch(this.state){case"submit":return`${t}${s.gray(Ds)} ${s.dim(r)}`;case"cancel":return`${t}${s.gray(Ds)} ${s.strikethrough(s.dim(r))}
17
+ ${s.gray(Ds)}`;default:return`${t}${s.cyan(Ds)} ${this.value?`${s.green(Do)} ${u}`:`${s.dim(DC)} ${s.dim(u)}`} ${s.dim("/")} ${this.value?`${s.dim(DC)} ${s.dim(e)}`:`${s.green(Do)} ${e}`}
18
+ ${s.cyan(Dn)}
19
+ `}}}).prompt()}});let Dl=["npm","yarn","yarn@berry","pnpm","pnpm@6","bun"],Dc={"bun.lockb":"bun","pnpm-lock.yaml":"pnpm","yarn.lock":"yarn","package-lock.json":"npm","npm-shrinkwrap.json":"npm"};async function Dh({cwd:D,onUnknown:u}={}){for(let t of function*(D=e.cwd()){let u=a.resolve(D),{root:t}=a.parse(u);for(;u&&u!==t;)yield u,u=a.dirname(u)}(D)){for(let D of Object.keys(Dc))if(await DB(a.join(t,D))){let e=Dc[D],r=await Dp(a.join(t,"package.json"),u);if(r)return r;return{name:e,agent:e}}let D=await Dp(a.join(t,"package.json"),u);if(D)return D}return null}async function Dp(D,u){if(!D||!await DB(D))return null;try{let e;let t=JSON.parse(C.readFileSync(D,"utf8"));if("string"==typeof t.packageManager){let[D,r]=t.packageManager.replace(/^\^/,"").split("@"),F=r;if("yarn"===D&&Number.parseInt(r)>1)return e="yarn@berry",F="berry",{name:D,agent:e,version:F};if("pnpm"===D&&7>Number.parseInt(r))return e="pnpm@6",{name:D,agent:e,version:F};if(Dl.includes(D))return e=D,{name:D,agent:e,version:F};return u?.(t.packageManager)??null}}catch{}return null}async function DB(D){try{if((await E.stat(D)).isFile())return!0}catch{}return!1}let Df=f(import.meta.url);var Dd=Object.create,Dm=Object.defineProperty,DA=Object.getOwnPropertyDescriptor,Dg=Object.getOwnPropertyNames,Db=Object.getPrototypeOf,Dv=Object.prototype.hasOwnProperty,Dw=(D=function(D){if("u">typeof Df)return Df.apply(this,arguments);throw Error('Dynamic require of "'+D+'" is not supported')},"u">typeof Df?Df:"u">typeof Proxy?new Proxy(D,{get:(D,u)=>("u">typeof Df?Df:D)[u]}):D),Dy=(D,u)=>()=>(u||D((u={exports:{}}).exports,u),u.exports),D_=Dy((D,u)=>{u.exports=r,r.sync=function(D,u){return t(e.statSync(D),D,u)};var e=Dw("fs");function t(D,u,e){return!!(D.isSymbolicLink()||D.isFile())&&function(D,u){var e=void 0!==u.pathExt?u.pathExt:process.env.PATHEXT;if(!e||-1!==(e=e.split(";")).indexOf(""))return!0;for(var t=0;t<e.length;t++){var r=e[t].toLowerCase();if(r&&D.substr(-r.length).toLowerCase()===r)return!0}return!1}(u,e)}function r(D,u,r){e.stat(D,function(e,F){r(e,!e&&t(F,D,u))})}}),Dx=Dy((D,u)=>{u.exports=t,t.sync=function(D,u){return r(e.statSync(D),u)};var e=Dw("fs");function t(D,u,t){e.stat(D,function(D,e){t(D,!D&&r(e,u))})}function r(D,u){var e,t,r,F,i,s,n;return D.isFile()&&(e=D.mode,t=D.uid,r=D.gid,F=void 0!==u.uid?u.uid:process.getuid&&process.getuid(),i=void 0!==u.gid?u.gid:process.getgid&&process.getgid(),s=parseInt("100",8),n=parseInt("010",8),e&parseInt("001",8)||e&n&&r===i||e&s&&t===F||e&(s|n)&&0===F)}}),D$=Dy((D,u)=>{var e;function t(D,u,r){if("function"==typeof u&&(r=u,u={}),!r){if("function"!=typeof Promise)throw TypeError("callback not provided");return new Promise(function(e,r){t(D,u||{},function(D,u){D?r(D):e(u)})})}e(D,u||{},function(D,e){D&&("EACCES"===D.code||u&&u.ignoreErrors)&&(D=null,e=!1),r(D,e)})}Dw("fs"),"win32"===process.platform||global.TESTING_WINDOWS?e=D_():e=Dx(),u.exports=t,t.sync=function(D,u){try{return e.sync(D,u||{})}catch(D){if(u&&u.ignoreErrors||"EACCES"===D.code)return!1;throw D}}}),DO=Dy((D,u)=>{var e="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,t=Dw("path"),r=e?";":":",F=D$(),i=D=>Object.assign(Error(`not found: ${D}`),{code:"ENOENT"}),s=(D,u)=>{let t=u.colon||r,F=D.match(/\//)||e&&D.match(/\\/)?[""]:[...e?[process.cwd()]:[],...(u.path||process.env.PATH||"").split(t)],i=e?u.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=e?i.split(t):[""];return e&&-1!==D.indexOf(".")&&""!==s[0]&&s.unshift(""),{pathEnv:F,pathExt:s,pathExtExe:i}},n=(D,u,e)=>{"function"==typeof u&&(e=u,u={}),u||(u={});let{pathEnv:r,pathExt:n,pathExtExe:o}=s(D,u),C=[],E=e=>new Promise((F,s)=>{if(e===r.length)return u.all&&C.length?F(C):s(i(D));let n=r[e],o=/^".*"$/.test(n)?n.slice(1,-1):n,E=t.join(o,D);F(a(!o&&/^\.[\\\/]/.test(D)?D.slice(0,2)+E:E,e,0))}),a=(D,e,t)=>new Promise((r,i)=>{if(t===n.length)return r(E(e+1));let s=n[t];F(D+s,{pathExt:o},(F,i)=>{if(!F&&i){if(!u.all)return r(D+s);C.push(D+s)}return r(a(D,e,t+1))})});return e?E(0).then(D=>e(null,D),e):E(0)};u.exports=n,n.sync=(D,u)=>{let{pathEnv:e,pathExt:r,pathExtExe:n}=s(D,u=u||{}),o=[];for(let i=0;i<e.length;i++){let s=e[i],C=/^".*"$/.test(s)?s.slice(1,-1):s,E=t.join(C,D),a=!C&&/^\.[\\\/]/.test(D)?D.slice(0,2)+E:E;for(let D=0;D<r.length;D++){let e=a+r[D];try{if(F.sync(e,{pathExt:n})){if(!u.all)return e;o.push(e)}}catch{}}}if(u.all&&o.length)return o;if(u.nothrow)return null;throw i(D)}}),Dk=Dy((D,u)=>{var e=(D={})=>{let u=D.env||process.env;return"win32"!==(D.platform||process.platform)?"PATH":Object.keys(u).reverse().find(D=>"PATH"===D.toUpperCase())||"Path"};u.exports=e,u.exports.default=e}),DT=Dy((D,u)=>{var e=Dw("path"),t=DO(),r=Dk();function F(D,u){let F,i=D.options.env||process.env,s=process.cwd(),n=null!=D.options.cwd,o=n&&void 0!==process.chdir&&!process.chdir.disabled;if(o)try{process.chdir(D.options.cwd)}catch{}try{F=t.sync(D.command,{path:i[r({env:i})],pathExt:u?e.delimiter:void 0})}catch{}finally{o&&process.chdir(s)}return F&&(F=e.resolve(n?D.options.cwd:"",F)),F}u.exports=function(D){return F(D)||F(D,!0)}}),Dj=Dy((D,u)=>{var e=/([()\][%!^"`<>&|;, *?])/g;u.exports.command=function(D){return D=D.replace(e,"^$1")},u.exports.argument=function(D,u){return D=(D=(D=`${D}`).replace(/(\\*)"/g,'$1$1\\"')).replace(/(\\*)$/,"$1$1"),D=(D=`"${D}"`).replace(e,"^$1"),u&&(D=D.replace(e,"^$1")),D}}),DS=Dy((D,u)=>{u.exports=/^#!(.*)/}),DM=Dy((D,u)=>{var e=DS();u.exports=(D="")=>{let u=D.match(e);if(!u)return null;let[t,r]=u[0].replace(/#! ?/,"").split(" "),F=t.split("/").pop();return"env"===F?r:r?`${F} ${r}`:F}}),DP=Dy((D,u)=>{var e=Dw("fs"),t=DM();u.exports=function(D){let u=Buffer.alloc(150),r;try{r=e.openSync(D,"r"),e.readSync(r,u,0,150,0),e.closeSync(r)}catch{}return t(u.toString())}}),DN=Dy((D,u)=>{var e=Dw("path"),t=DT(),r=Dj(),F=DP(),i="win32"===process.platform,s=/\.(?:com|exe)$/i,n=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;u.exports=function(D,u,o){u&&!Array.isArray(u)&&(o=u,u=null);let C={command:D,args:u=u?u.slice(0):[],options:o=Object.assign({},o),file:void 0,original:{command:D,args:u}};return o.shell?C:function(D){let u;if(!i)return D;let o=(D.file=t(D),(u=D.file&&F(D.file))?(D.args.unshift(D.file),D.command=u,t(D)):D.file),C=!s.test(o);if(D.options.forceShell||C){let u=n.test(o);D.command=e.normalize(D.command),D.command=r.command(D.command),D.args=D.args.map(D=>r.argument(D,u));let t=[D.command].concat(D.args).join(" ");D.args=["/d","/s","/c",`"${t}"`],D.command=process.env.comspec||"cmd.exe",D.options.windowsVerbatimArguments=!0}return D}(C)}}),DL=Dy((D,u)=>{var e="win32"===process.platform;function t(D,u){return Object.assign(Error(`${u} ${D.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${u} ${D.command}`,path:D.command,spawnargs:D.args})}function r(D,u){return e&&1===D&&!u.file?t(u.original,"spawn"):null}u.exports={hookChildProcess:function(D,u){if(!e)return;let t=D.emit;D.emit=function(e,F){if("exit"===e){let e=r(F,u);if(e)return t.call(D,"error",e)}return t.apply(D,arguments)}},verifyENOENT:r,verifyENOENTSync:function(D,u){return e&&1===D&&!u.file?t(u.original,"spawnSync"):null},notFoundError:t}}),DR=Dy((D,u)=>{var e=Dw("child_process"),t=DN(),r=DL();function F(D,u,F){let i=t(D,u,F),s=e.spawn(i.command,i.args,i.options);return r.hookChildProcess(s,i),s}u.exports=F,u.exports.spawn=F,u.exports.sync=function(D,u,F){let i=t(D,u,F),s=e.spawnSync(i.command,i.args,i.options);return s.error=s.error||r.verifyENOENTSync(s.status,i),s},u.exports._parse=t,u.exports._enoent=r}),DI=/^path$/i,DW={key:"PATH",value:""},Dz=D=>{let u=D.length,e=new m,t=()=>{0==--u&&e.emit("end")};for(let u of D)u.pipe(e,{end:!1}),u.on("end",t);return e},DG=((D,u,e,t)=>{if(u&&"object"==typeof u||"function"==typeof u)for(let r of Dg(u))Dv.call(D,r)||r===e||Dm(D,r,{get:()=>u[r],enumerable:!(t=DA(u,r))||t.enumerable});return D})(Dm(null!=(u=DR())?Dd(Db(u)):{},"default",{value:u,enumerable:!0}),u),DH=class extends Error{result;output;get exitCode(){if(null!==this.result.exitCode)return this.result.exitCode}constructor(D,u){super(`Process exited with non-zero status (${D.exitCode})`),this.result=D,this.output=u}},DK={timeout:void 0,persist:!1},DJ={windowsHide:!0},DU=class{_process;_aborted=!1;_options;_command;_args;_resolveClose;_processClosed;_thrownError;get process(){return this._process}get pid(){return this._process?.pid}get exitCode(){if(this._process&&null!==this._process.exitCode)return this._process.exitCode}constructor(D,u,e){this._options={...DK,...e},this._command=D,this._args=u??[],this._processClosed=new Promise(D=>{this._resolveClose=D})}kill(D){return this._process?.kill(D)===!0}get aborted(){return this._aborted}get killed(){return this._process?.killed===!0}pipe(D,u,e){return DY(D,u,{...e,stdin:this})}async *[Symbol.asyncIterator](){let D=this._process;if(!D)return;let u=[];this._streamErr&&u.push(this._streamErr),this._streamOut&&u.push(this._streamOut);let e=Dz(u);for await(let D of A.createInterface({input:e}))yield D.toString();if(await this._processClosed,D.removeAllListeners(),this._thrownError)throw this._thrownError;if(this._options?.throwOnError&&0!==this.exitCode&&void 0!==this.exitCode)throw new DH(this)}async _waitForOutput(){let D=this._process;if(!D)throw Error("No process was started");let u="",e="";if(this._streamErr)for await(let D of this._streamErr)u+=D.toString();if(this._streamOut)for await(let D of this._streamOut)e+=D.toString();if(await this._processClosed,this._options?.stdin&&await this._options.stdin,D.removeAllListeners(),this._thrownError)throw this._thrownError;let t={stderr:u,stdout:e};if(this._options.throwOnError&&0!==this.exitCode&&void 0!==this.exitCode)throw new DH(this,t);return t}then(D,u){return this._waitForOutput().then(D,u)}_streamOut;_streamErr;spawn(){var D,u,e;let t,r,F=o(),i=this._options,s={...DJ,...i.nodeOptions},n=[];this._resetState(),void 0!==i.timeout&&n.push(AbortSignal.timeout(i.timeout)),void 0!==i.signal&&n.push(i.signal),!0===i.persist&&(s.detached=!0),n.length>0&&(s.signal=function(D){let u=new AbortController;for(let e of D){if(e.aborted)return u.abort(),e;let D=()=>{u.abort(e.reason)};e.addEventListener("abort",D,{signal:u.signal})}return u.signal}(n)),s.env=(D=s.env,r=function(D,u){let e=u.value.split(h),t=D,r;do e.push(p(t,"node_modules",".bin")),r=t,t=B(t);while(t!==r);return{key:u.key,value:e.join(h)}}(F,function(D){for(let u in D){if(!Object.prototype.hasOwnProperty.call(D,u)||!DI.test(u))continue;let e=D[u];return e?{key:u,value:e}:DW}return DW}(t={...process.env,...D})),t[r.key]=r.value,t);let{command:C,args:E}=(u=this._command,e=this._args,{command:c(u),args:e??[]}),a=(0,DG._parse)(C,E,s),l=d(a.command,a.args,a.options);if(l.stderr&&(this._streamErr=l.stderr),l.stdout&&(this._streamOut=l.stdout),this._process=l,l.once("error",this._onError),l.once("close",this._onClose),void 0!==i.stdin&&l.stdin&&i.stdin.process){let{stdout:D}=i.stdin.process;D&&D.pipe(l.stdin)}}_resetState(){this._aborted=!1,this._processClosed=new Promise(D=>{this._resolveClose=D}),this._thrownError=void 0}_onError=D=>{if("AbortError"===D.name&&(!(D.cause instanceof Error)||"TimeoutError"!==D.cause.name)){this._aborted=!0;return}this._thrownError=D};_onClose=()=>{this._resolveClose&&this._resolveClose()}},DV=(D,u,e)=>{let t=new DU(D,u,e);return t.spawn(),t},DY=DV;async function DZ(D=n.cwd()){let u=await Dh({cwd:D,onUnknown(D){console.warn("[@antfu/install-pkg] Unknown packageManager:",D)}});return u?.agent||null}async function DX(D,u={}){let e=u.packageManager||await DZ(u.cwd)||"npm",[t]=e.split("@");Array.isArray(D)||(D=[D]);let r=u.additionalArgs||[];return u.preferOffline&&("yarn@berry"===e?r.unshift("--cached"):r.unshift("--prefer-offline")),"pnpm"===t&&l(p(u.cwd??n.cwd(),"pnpm-workspace.yaml"))&&r.unshift("-w"),DV(t,["yarn"===t?"add":"install",u.dev?"-D":"",...r,...D].filter(Boolean),{nodeOptions:{stdio:u.silent?"ignore":"inherit",cwd:u.cwd},throwOnError:!0})}var Dq=/*#__PURE__*/Object.freeze({__proto__:null,detectPackageManager:DZ,installPackage:DX});export{Dq as a,g as g,Da as i};
@@ -0,0 +1,19 @@
1
+ "use strict";let u,D;var e,t,r=require("node:process"),F=require("node:readline"),s=require("node:tty"),i=require("picocolors"),n=require("process"),o=require("node:fs"),C=require("node:fs/promises"),E=require("node:path"),a=require("fs"),l=require("path"),c=require("node:module"),h=require("child_process"),p=require("stream"),B=require("readline"),d="undefined"!=typeof document?document.currentScript:null,f=function(){if(t)return e;t=1;let u=`\x1b[`,D={to:(D,e)=>e?`${u}${e+1};${D+1}H`:`${u}${D+1}G`,move(D,e){let t="";return D<0?t+=`${u}${-D}D`:D>0&&(t+=`${u}${D}C`),e<0?t+=`${u}${-e}A`:e>0&&(t+=`${u}${e}B`),t},up:(D=1)=>`${u}${D}A`,down:(D=1)=>`${u}${D}B`,forward:(D=1)=>`${u}${D}C`,backward:(D=1)=>`${u}${D}D`,nextLine:(D=1)=>`${u}E`.repeat(D),prevLine:(D=1)=>`${u}F`.repeat(D),left:`${u}G`,hide:`${u}?25l`,show:`${u}?25h`,save:`\x1b7`,restore:`\x1b8`},r={screen:`${u}2J`,up:(D=1)=>`${u}1J`.repeat(D),down:(D=1)=>`${u}J`.repeat(D),line:`${u}2K`,lineEnd:`${u}K`,lineStart:`${u}1K`,lines(u){let e="";for(let t=0;t<u;t++)e+=this.line+(t<u-1?D.up():"");return u&&(e+=D.left),e}};return e={cursor:D,scroll:{up:(D=1)=>`${u}S`.repeat(D),down:(D=1)=>`${u}T`.repeat(D)},erase:r,beep:"\x07"}}();function m(u){if("string"!=typeof u)throw TypeError(`Expected a \`string\`, got \`${typeof u}\``);return u.replace(function({onlyFirst:u=!1}={}){return RegExp("[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)|(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))",u?void 0:"g")}(),"")}function A(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}var g={exports:{}};!function(u){var D={};function e(u){return u.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}u.exports=D,D.eastAsianWidth=function(u){var D=u.charCodeAt(0),e=2==u.length?u.charCodeAt(1):0,t=D;return 55296<=D&&D<=56319&&56320<=e&&e<=57343&&(D&=1023,e&=1023,t=(D<<10|e)+65536),12288==t||65281<=t&&t<=65376||65504<=t&&t<=65510?"F":8361==t||65377<=t&&t<=65470||65474<=t&&t<=65479||65482<=t&&t<=65487||65490<=t&&t<=65495||65498<=t&&t<=65500||65512<=t&&t<=65518?"H":4352<=t&&t<=4447||4515<=t&&t<=4519||4602<=t&&t<=4607||9001<=t&&t<=9002||11904<=t&&t<=11929||11931<=t&&t<=12019||12032<=t&&t<=12245||12272<=t&&t<=12283||12289<=t&&t<=12350||12353<=t&&t<=12438||12441<=t&&t<=12543||12549<=t&&t<=12589||12593<=t&&t<=12686||12688<=t&&t<=12730||12736<=t&&t<=12771||12784<=t&&t<=12830||12832<=t&&t<=12871||12880<=t&&t<=13054||13056<=t&&t<=19903||19968<=t&&t<=42124||42128<=t&&t<=42182||43360<=t&&t<=43388||44032<=t&&t<=55203||55216<=t&&t<=55238||55243<=t&&t<=55291||63744<=t&&t<=64255||65040<=t&&t<=65049||65072<=t&&t<=65106||65108<=t&&t<=65126||65128<=t&&t<=65131||110592<=t&&t<=110593||127488<=t&&t<=127490||127504<=t&&t<=127546||127552<=t&&t<=127560||127568<=t&&t<=127569||131072<=t&&t<=194367||177984<=t&&t<=196605||196608<=t&&t<=262141?"W":32<=t&&t<=126||162<=t&&t<=163||165<=t&&t<=166||172==t||175==t||10214<=t&&t<=10221||10629<=t&&t<=10630?"Na":161==t||164==t||167<=t&&t<=168||170==t||173<=t&&t<=174||176<=t&&t<=180||182<=t&&t<=186||188<=t&&t<=191||198==t||208==t||215<=t&&t<=216||222<=t&&t<=225||230==t||232<=t&&t<=234||236<=t&&t<=237||240==t||242<=t&&t<=243||247<=t&&t<=250||252==t||254==t||257==t||273==t||275==t||283==t||294<=t&&t<=295||299==t||305<=t&&t<=307||312==t||319<=t&&t<=322||324==t||328<=t&&t<=331||333==t||338<=t&&t<=339||358<=t&&t<=359||363==t||462==t||464==t||466==t||468==t||470==t||472==t||474==t||476==t||593==t||609==t||708==t||711==t||713<=t&&t<=715||717==t||720==t||728<=t&&t<=731||733==t||735==t||768<=t&&t<=879||913<=t&&t<=929||931<=t&&t<=937||945<=t&&t<=961||963<=t&&t<=969||1025==t||1040<=t&&t<=1103||1105==t||8208==t||8211<=t&&t<=8214||8216<=t&&t<=8217||8220<=t&&t<=8221||8224<=t&&t<=8226||8228<=t&&t<=8231||8240==t||8242<=t&&t<=8243||8245==t||8251==t||8254==t||8308==t||8319==t||8321<=t&&t<=8324||8364==t||8451==t||8453==t||8457==t||8467==t||8470==t||8481<=t&&t<=8482||8486==t||8491==t||8531<=t&&t<=8532||8539<=t&&t<=8542||8544<=t&&t<=8555||8560<=t&&t<=8569||8585==t||8592<=t&&t<=8601||8632<=t&&t<=8633||8658==t||8660==t||8679==t||8704==t||8706<=t&&t<=8707||8711<=t&&t<=8712||8715==t||8719==t||8721==t||8725==t||8730==t||8733<=t&&t<=8736||8739==t||8741==t||8743<=t&&t<=8748||8750==t||8756<=t&&t<=8759||8764<=t&&t<=8765||8776==t||8780==t||8786==t||8800<=t&&t<=8801||8804<=t&&t<=8807||8810<=t&&t<=8811||8814<=t&&t<=8815||8834<=t&&t<=8835||8838<=t&&t<=8839||8853==t||8857==t||8869==t||8895==t||8978==t||9312<=t&&t<=9449||9451<=t&&t<=9547||9552<=t&&t<=9587||9600<=t&&t<=9615||9618<=t&&t<=9621||9632<=t&&t<=9633||9635<=t&&t<=9641||9650<=t&&t<=9651||9654<=t&&t<=9655||9660<=t&&t<=9661||9664<=t&&t<=9665||9670<=t&&t<=9672||9675==t||9678<=t&&t<=9681||9698<=t&&t<=9701||9711==t||9733<=t&&t<=9734||9737==t||9742<=t&&t<=9743||9748<=t&&t<=9749||9756==t||9758==t||9792==t||9794==t||9824<=t&&t<=9825||9827<=t&&t<=9829||9831<=t&&t<=9834||9836<=t&&t<=9837||9839==t||9886<=t&&t<=9887||9918<=t&&t<=9919||9924<=t&&t<=9933||9935<=t&&t<=9953||9955==t||9960<=t&&t<=9983||10045==t||10071==t||10102<=t&&t<=10111||11093<=t&&t<=11097||12872<=t&&t<=12879||57344<=t&&t<=63743||65024<=t&&t<=65039||65533==t||127232<=t&&t<=127242||127248<=t&&t<=127277||127280<=t&&t<=127337||127344<=t&&t<=127386||917760<=t&&t<=917999||983040<=t&&t<=1048573||1048576<=t&&t<=1114109?"A":"N"},D.characterLength=function(u){var D=this.eastAsianWidth(u);return"F"==D||"W"==D||"A"==D?2:1},D.length=function(u){for(var D=e(u),t=0,r=0;r<D.length;r++)t+=this.characterLength(D[r]);return t},D.slice=function(u,t,r){textLen=D.length(u),r=r||1,(t=t||0)<0&&(t=textLen+t),r<0&&(r=textLen+r);for(var F="",s=0,i=e(u),n=0;n<i.length;n++){var o=i[n],C=D.length(o);if(s>=t-(2==C?1:0)){if(s+C<=r)F+=o;else break}s+=C}return F}}(g);const b=A(g.exports),v=A(function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g});function w(u,D={}){if("string"!=typeof u||0===u.length||(D={ambiguousIsNarrow:!0,...D},0===(u=m(u)).length))return 0;u=u.replace(v()," ");let e=D.ambiguousIsNarrow?1:2,t=0;for(let D of u){let u=D.codePointAt(0);if(!(u<=31)&&(!(u>=127)||!(u<=159))&&(!(u>=768)||!(u<=879)))switch(b.eastAsianWidth(D)){case"F":case"W":t+=2;break;case"A":t+=e;break;default:t+=1}}return t}const y=(u=0)=>D=>`\x1b[${D+u}m`,_=(u=0)=>D=>`\x1b[${38+u};5;${D}m`,x=(u=0)=>(D,e,t)=>`\x1b[${38+u};2;${D};${e};${t}m`,$={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys($.modifier),[...Object.keys($.color),...Object.keys($.bgColor)];const O=function(){let u=new Map;for(let[D,e]of Object.entries($)){for(let[D,t]of Object.entries(e))$[D]={open:`\x1b[${t[0]}m`,close:`\x1b[${t[1]}m`},e[D]=$[D],u.set(t[0],t[1]);Object.defineProperty($,D,{value:e,enumerable:!1})}return Object.defineProperty($,"codes",{value:u,enumerable:!1}),$.color.close="\x1b[39m",$.bgColor.close="\x1b[49m",$.color.ansi=y(),$.color.ansi256=_(),$.color.ansi16m=x(),$.bgColor.ansi=y(10),$.bgColor.ansi256=_(10),$.bgColor.ansi16m=x(10),Object.defineProperties($,{rgbToAnsi256:{value:(u,D,e)=>u===D&&D===e?u<8?16:u>248?231:Math.round((u-8)/247*24)+232:16+36*Math.round(u/255*5)+6*Math.round(D/255*5)+Math.round(e/255*5),enumerable:!1},hexToRgb:{value:u=>{let D=/[a-f\d]{6}|[a-f\d]{3}/i.exec(u.toString(16));if(!D)return[0,0,0];let[e]=D;3===e.length&&(e=[...e].map(u=>u+u).join(""));let t=Number.parseInt(e,16);return[t>>16&255,t>>8&255,255&t]},enumerable:!1},hexToAnsi256:{value:u=>$.rgbToAnsi256(...$.hexToRgb(u)),enumerable:!1},ansi256ToAnsi:{value:u=>{let D,e,t;if(u<8)return 30+u;if(u<16)return 90+(u-8);if(u>=232)e=D=((u-232)*10+8)/255,t=D;else{let r=(u-=16)%36;D=Math.floor(u/36)/5,e=Math.floor(r/6)/5,t=r%6/5}let r=2*Math.max(D,e,t);if(0===r)return 30;let F=30+(Math.round(t)<<2|Math.round(e)<<1|Math.round(D));return 2===r&&(F+=60),F},enumerable:!1},rgbToAnsi:{value:(u,D,e)=>$.ansi256ToAnsi($.rgbToAnsi256(u,D,e)),enumerable:!1},hexToAnsi:{value:u=>$.ansi256ToAnsi($.hexToAnsi256(u)),enumerable:!1}}),$}(),k=new Set(["\x1b","\x9b"]),T="]8;;",j=u=>`${k.values().next().value}[${u}m`,S=u=>`${k.values().next().value}${T}${u}\x07`,P=u=>u.split(" ").map(u=>w(u)),M=(u,D,e)=>{let t=[...D],r=!1,F=!1,s=w(m(u[u.length-1]));for(let[D,i]of t.entries()){let n=w(i);if(s+n<=e?u[u.length-1]+=i:(u.push(i),s=0),k.has(i)&&(r=!0,F=t.slice(D+1).join("").startsWith(T)),r){F?"\x07"===i&&(r=!1,F=!1):"m"===i&&(r=!1);continue}(s+=n)===e&&D<t.length-1&&(u.push(""),s=0)}!s&&u[u.length-1].length>0&&u.length>1&&(u[u.length-2]+=u.pop())},N=u=>{let D=u.split(" "),e=D.length;for(;e>0&&!(w(D[e-1])>0);)e--;return e===D.length?u:D.slice(0,e).join(" ")+D.slice(e).join("")},R=(u,D,e={})=>{if(!1!==e.trim&&""===u.trim())return"";let t="",r,F,s=P(u),i=[""];for(let[t,r]of u.split(" ").entries()){!1!==e.trim&&(i[i.length-1]=i[i.length-1].trimStart());let u=w(i[i.length-1]);if(0!==t&&(u>=D&&(!1===e.wordWrap||!1===e.trim)&&(i.push(""),u=0),(u>0||!1===e.trim)&&(i[i.length-1]+=" ",u++)),e.hard&&s[t]>D){let e=D-u,F=1+Math.floor((s[t]-e-1)/D);Math.floor((s[t]-1)/D)<F&&i.push(""),M(i,r,D);continue}if(u+s[t]>D&&u>0&&s[t]>0){if(!1===e.wordWrap&&u<D){M(i,r,D);continue}i.push("")}if(u+s[t]>D&&!1===e.wordWrap){M(i,r,D);continue}i[i.length-1]+=r}!1!==e.trim&&(i=i.map(u=>N(u)));let n=[...i.join(`
2
+ `)];for(let[u,D]of n.entries()){if(t+=D,k.has(D)){let{groups:D}=RegExp(`(?:\\[(?<code>\\d+)m|\\${T}(?<uri>.*)\x07)`).exec(n.slice(u).join(""))||{groups:{}};if(void 0!==D.code){let u=Number.parseFloat(D.code);r=39===u?void 0:u}else void 0!==D.uri&&(F=0===D.uri.length?void 0:D.uri)}let e=O.codes.get(Number(r));n[u+1]===`
3
+ `?(F&&(t+=S("")),r&&e&&(t+=j(e))):D===`
4
+ `&&(r&&e&&(t+=j(r)),F&&(t+=S(F)))}return t};function L(u,D,e){return String(u).normalize().replace(/\r\n/g,`
5
+ `).split(`
6
+ `).map(u=>R(u,D,e)).join(`
7
+ `)}var I=Object.defineProperty,q=(u,D,e)=>D in u?I(u,D,{enumerable:!0,configurable:!0,writable:!0,value:e}):u[D]=e,W=(u,D,e)=>(q(u,"symbol"!=typeof D?D+"":D,e),e);const z=Symbol("clack:cancel");function U(u,D){u.isTTY&&u.setRawMode(D)}const G=new Map([["k","up"],["j","down"],["h","left"],["l","right"]]),H=new Set(["up","down","left","right","space","enter"]);let K=class{constructor({render:u,input:D=r.stdin,output:e=r.stdout,...t},F=!0){W(this,"input"),W(this,"output"),W(this,"rl"),W(this,"opts"),W(this,"_track",!1),W(this,"_render"),W(this,"_cursor",0),W(this,"state","initial"),W(this,"value"),W(this,"error",""),W(this,"subscribers",new Map),W(this,"_prevFrame",""),this.opts=t,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=u.bind(this),this._track=F,this.input=D,this.output=e}prompt(){let u=new s.WriteStream(0);return u._write=(u,D,e)=>{this._track&&(this.value=this.rl.line.replace(/\t/g,""),this._cursor=this.rl.cursor,this.emit("value",this.value)),e()},this.input.pipe(u),this.rl=F.createInterface({input:this.input,output:u,tabSize:2,prompt:"",escapeCodeTimeout:50}),F.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),void 0!==this.opts.initialValue&&this._track&&this.rl.write(this.opts.initialValue),this.input.on("keypress",this.onKeypress),U(this.input,!0),this.output.on("resize",this.render),this.render(),new Promise((u,D)=>{this.once("submit",()=>{this.output.write(f.cursor.show),this.output.off("resize",this.render),U(this.input,!1),u(this.value)}),this.once("cancel",()=>{this.output.write(f.cursor.show),this.output.off("resize",this.render),U(this.input,!1),u(z)})})}on(u,D){let e=this.subscribers.get(u)??[];e.push({cb:D}),this.subscribers.set(u,e)}once(u,D){let e=this.subscribers.get(u)??[];e.push({cb:D,once:!0}),this.subscribers.set(u,e)}emit(u,...D){let e=this.subscribers.get(u)??[],t=[];for(let u of e)u.cb(...D),u.once&&t.push(()=>e.splice(e.indexOf(u),1));for(let u of t)u()}unsubscribe(){this.subscribers.clear()}onKeypress(u,D){if("error"===this.state&&(this.state="active"),D?.name&&!this._track&&G.has(D.name)&&this.emit("cursor",G.get(D.name)),D?.name&&H.has(D.name)&&this.emit("cursor",D.name),u&&("y"===u.toLowerCase()||"n"===u.toLowerCase())&&this.emit("confirm","y"===u.toLowerCase())," "===u&&this.opts.placeholder&&(this.value||(this.rl.write(this.opts.placeholder),this.emit("value",this.opts.placeholder))),u&&this.emit("key",u.toLowerCase()),D?.name==="return"){if(this.opts.validate){let u=this.opts.validate(this.value);u&&(this.error=u,this.state="error",this.rl.write(this.value))}"error"!==this.state&&(this.state="submit")}"\x03"===u&&(this.state="cancel"),("submit"===this.state||"cancel"===this.state)&&this.emit("finalize"),this.render(),("submit"===this.state||"cancel"===this.state)&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
8
+ `),U(this.input,!1),this.rl.close(),this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let u=L(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
9
+ `).length-1;this.output.write(f.cursor.move(-999,-1*u))}render(){let u=L(this._render(this)??"",process.stdout.columns,{hard:!0});if(u!==this._prevFrame){if("initial"===this.state)this.output.write(f.cursor.hide);else{let D=function(u,D){if(u===D)return;let e=u.split(`
10
+ `),t=D.split(`
11
+ `),r=[];for(let u=0;u<Math.max(e.length,t.length);u++)e[u]!==t[u]&&r.push(u);return r}(this._prevFrame,u);if(this.restoreCursor(),D&&D?.length===1){let e=D[0];this.output.write(f.cursor.move(0,e)),this.output.write(f.erase.lines(1));let t=u.split(`
12
+ `);this.output.write(t[e]),this._prevFrame=u,this.output.write(f.cursor.move(0,t.length-e-1));return}if(D&&D?.length>1){let e=D[0];this.output.write(f.cursor.move(0,e)),this.output.write(f.erase.down());let t=u.split(`
13
+ `).slice(e);this.output.write(t.join(`
14
+ `)),this._prevFrame=u;return}this.output.write(f.erase.down())}this.output.write(u),"initial"===this.state&&(this.state="active"),this._prevFrame=u}}};class J extends K{get cursor(){return this.value?0:1}get _value(){return 0===this.cursor}constructor(u){super(u,!1),this.value=!!u.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",u=>{this.output.write(f.cursor.move(0,-1)),this.value=u,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}globalThis.process.platform.startsWith("win");const V="win32"!==r.platform?"linux"!==r.env.TERM:!!r.env.CI||!!r.env.WT_SESSION||!!r.env.TERMINUS_SUBLIME||"{cmd::Cmder}"===r.env.ConEmuTask||"Terminus-Sublime"===r.env.TERM_PROGRAM||"vscode"===r.env.TERM_PROGRAM||"xterm-256color"===r.env.TERM||"alacritty"===r.env.TERM||"JetBrains-JediTerm"===r.env.TERMINAL_EMULATOR,Y=(u,D)=>V?u:D,Z=Y("◆","*"),X=Y("■","x"),Q=Y("▲","x"),uu=Y("◇","o"),uD=Y("│","|"),ue=Y("└","—"),ut=Y("●",">"),ur=Y("○"," "),uF=u=>{switch(u){case"initial":case"active":return i.cyan(Z);case"cancel":return i.red(X);case"error":return i.yellow(Q);case"submit":return i.green(uu)}};var us=/*#__PURE__*/Object.freeze({__proto__:null,confirm:u=>{let D=u.active??"Yes",e=u.inactive??"No";return new J({active:D,inactive:e,initialValue:u.initialValue??!0,render(){let t=`${i.gray(uD)}
15
+ ${uF(this.state)} ${u.message}
16
+ `,r=this.value?D:e;switch(this.state){case"submit":return`${t}${i.gray(uD)} ${i.dim(r)}`;case"cancel":return`${t}${i.gray(uD)} ${i.strikethrough(i.dim(r))}
17
+ ${i.gray(uD)}`;default:return`${t}${i.cyan(uD)} ${this.value?`${i.green(ut)} ${D}`:`${i.dim(ur)} ${i.dim(D)}`} ${i.dim("/")} ${this.value?`${i.dim(ur)} ${i.dim(e)}`:`${i.green(ut)} ${e}`}
18
+ ${i.cyan(ue)}
19
+ `}}}).prompt()}});const ui=["npm","yarn","yarn@berry","pnpm","pnpm@6","bun"],un={"bun.lockb":"bun","pnpm-lock.yaml":"pnpm","yarn.lock":"yarn","package-lock.json":"npm","npm-shrinkwrap.json":"npm"};async function uo({cwd:u,onUnknown:D}={}){for(let e of function*(u=r.cwd()){let D=E.resolve(u),{root:e}=E.parse(D);for(;D&&D!==e;)yield D,D=E.dirname(D)}(u)){for(let u of Object.keys(un))if(await uE(E.join(e,u))){let t=un[u],r=await uC(E.join(e,"package.json"),D);if(r)return r;return{name:t,agent:t}}let u=await uC(E.join(e,"package.json"),D);if(u)return u}return null}async function uC(u,D){if(!u||!await uE(u))return null;try{let e;let t=JSON.parse(o.readFileSync(u,"utf8"));if("string"==typeof t.packageManager){let[u,r]=t.packageManager.replace(/^\^/,"").split("@"),F=r;if("yarn"===u&&Number.parseInt(r)>1)return e="yarn@berry",F="berry",{name:u,agent:e,version:F};if("pnpm"===u&&7>Number.parseInt(r))return e="pnpm@6",{name:u,agent:e,version:F};if(ui.includes(u))return e=u,{name:u,agent:e,version:F};return D?.(t.packageManager)??null}}catch{}return null}async function uE(u){try{if((await C.stat(u)).isFile())return!0}catch{}return!1}const ua=c.createRequire("undefined"==typeof document?require("url").pathToFileURL(__filename).href:d&&"SCRIPT"===d.tagName.toUpperCase()&&d.src||new URL("vendor-DnzSN8ZK.cjs",document.baseURI).href);var ul=Object.create,uc=Object.defineProperty,uh=Object.getOwnPropertyDescriptor,up=Object.getOwnPropertyNames,uB=Object.getPrototypeOf,ud=Object.prototype.hasOwnProperty,uf=(u=function(u){if("u">typeof ua)return ua.apply(this,arguments);throw Error('Dynamic require of "'+u+'" is not supported')},"u">typeof ua?ua:"u">typeof Proxy?new Proxy(u,{get:(u,D)=>("u">typeof ua?ua:u)[D]}):u),um=(u,D)=>()=>(D||u((D={exports:{}}).exports,D),D.exports),uA=um((u,D)=>{D.exports=r,r.sync=function(u,D){return t(e.statSync(u),u,D)};var e=uf("fs");function t(u,D,e){return!!(u.isSymbolicLink()||u.isFile())&&function(u,D){var e=void 0!==D.pathExt?D.pathExt:process.env.PATHEXT;if(!e||-1!==(e=e.split(";")).indexOf(""))return!0;for(var t=0;t<e.length;t++){var r=e[t].toLowerCase();if(r&&u.substr(-r.length).toLowerCase()===r)return!0}return!1}(D,e)}function r(u,D,r){e.stat(u,function(e,F){r(e,!e&&t(F,u,D))})}}),ug=um((u,D)=>{D.exports=t,t.sync=function(u,D){return r(e.statSync(u),D)};var e=uf("fs");function t(u,D,t){e.stat(u,function(u,e){t(u,!u&&r(e,D))})}function r(u,D){var e,t,r,F,s,i,n;return u.isFile()&&(e=u.mode,t=u.uid,r=u.gid,F=void 0!==D.uid?D.uid:process.getuid&&process.getuid(),s=void 0!==D.gid?D.gid:process.getgid&&process.getgid(),i=parseInt("100",8),n=parseInt("010",8),e&parseInt("001",8)||e&n&&r===s||e&i&&t===F||e&(i|n)&&0===F)}}),ub=um((u,D)=>{var e;function t(u,D,r){if("function"==typeof D&&(r=D,D={}),!r){if("function"!=typeof Promise)throw TypeError("callback not provided");return new Promise(function(e,r){t(u,D||{},function(u,D){u?r(u):e(D)})})}e(u,D||{},function(u,e){u&&("EACCES"===u.code||D&&D.ignoreErrors)&&(u=null,e=!1),r(u,e)})}uf("fs"),"win32"===process.platform||global.TESTING_WINDOWS?e=uA():e=ug(),D.exports=t,t.sync=function(u,D){try{return e.sync(u,D||{})}catch(u){if(D&&D.ignoreErrors||"EACCES"===u.code)return!1;throw u}}}),uv=um((u,D)=>{var e="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,t=uf("path"),r=e?";":":",F=ub(),s=u=>Object.assign(Error(`not found: ${u}`),{code:"ENOENT"}),i=(u,D)=>{let t=D.colon||r,F=u.match(/\//)||e&&u.match(/\\/)?[""]:[...e?[process.cwd()]:[],...(D.path||process.env.PATH||"").split(t)],s=e?D.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=e?s.split(t):[""];return e&&-1!==u.indexOf(".")&&""!==i[0]&&i.unshift(""),{pathEnv:F,pathExt:i,pathExtExe:s}},n=(u,D,e)=>{"function"==typeof D&&(e=D,D={}),D||(D={});let{pathEnv:r,pathExt:n,pathExtExe:o}=i(u,D),C=[],E=e=>new Promise((F,i)=>{if(e===r.length)return D.all&&C.length?F(C):i(s(u));let n=r[e],o=/^".*"$/.test(n)?n.slice(1,-1):n,E=t.join(o,u);F(a(!o&&/^\.[\\\/]/.test(u)?u.slice(0,2)+E:E,e,0))}),a=(u,e,t)=>new Promise((r,s)=>{if(t===n.length)return r(E(e+1));let i=n[t];F(u+i,{pathExt:o},(F,s)=>{if(!F&&s){if(!D.all)return r(u+i);C.push(u+i)}return r(a(u,e,t+1))})});return e?E(0).then(u=>e(null,u),e):E(0)};D.exports=n,n.sync=(u,D)=>{let{pathEnv:e,pathExt:r,pathExtExe:n}=i(u,D=D||{}),o=[];for(let s=0;s<e.length;s++){let i=e[s],C=/^".*"$/.test(i)?i.slice(1,-1):i,E=t.join(C,u),a=!C&&/^\.[\\\/]/.test(u)?u.slice(0,2)+E:E;for(let u=0;u<r.length;u++){let e=a+r[u];try{if(F.sync(e,{pathExt:n})){if(!D.all)return e;o.push(e)}}catch{}}}if(D.all&&o.length)return o;if(D.nothrow)return null;throw s(u)}}),uw=um((u,D)=>{var e=(u={})=>{let D=u.env||process.env;return"win32"!==(u.platform||process.platform)?"PATH":Object.keys(D).reverse().find(u=>"PATH"===u.toUpperCase())||"Path"};D.exports=e,D.exports.default=e}),uy=um((u,D)=>{var e=uf("path"),t=uv(),r=uw();function F(u,D){let F,s=u.options.env||process.env,i=process.cwd(),n=null!=u.options.cwd,o=n&&void 0!==process.chdir&&!process.chdir.disabled;if(o)try{process.chdir(u.options.cwd)}catch{}try{F=t.sync(u.command,{path:s[r({env:s})],pathExt:D?e.delimiter:void 0})}catch{}finally{o&&process.chdir(i)}return F&&(F=e.resolve(n?u.options.cwd:"",F)),F}D.exports=function(u){return F(u)||F(u,!0)}}),u_=um((u,D)=>{var e=/([()\][%!^"`<>&|;, *?])/g;D.exports.command=function(u){return u=u.replace(e,"^$1")},D.exports.argument=function(u,D){return u=(u=(u=`${u}`).replace(/(\\*)"/g,'$1$1\\"')).replace(/(\\*)$/,"$1$1"),u=(u=`"${u}"`).replace(e,"^$1"),D&&(u=u.replace(e,"^$1")),u}}),ux=um((u,D)=>{D.exports=/^#!(.*)/}),u$=um((u,D)=>{var e=ux();D.exports=(u="")=>{let D=u.match(e);if(!D)return null;let[t,r]=D[0].replace(/#! ?/,"").split(" "),F=t.split("/").pop();return"env"===F?r:r?`${F} ${r}`:F}}),uO=um((u,D)=>{var e=uf("fs"),t=u$();D.exports=function(u){let D=Buffer.alloc(150),r;try{r=e.openSync(u,"r"),e.readSync(r,D,0,150,0),e.closeSync(r)}catch{}return t(D.toString())}}),uk=um((u,D)=>{var e=uf("path"),t=uy(),r=u_(),F=uO(),s="win32"===process.platform,i=/\.(?:com|exe)$/i,n=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;D.exports=function(u,D,o){D&&!Array.isArray(D)&&(o=D,D=null);let C={command:u,args:D=D?D.slice(0):[],options:o=Object.assign({},o),file:void 0,original:{command:u,args:D}};return o.shell?C:function(u){let D;if(!s)return u;let o=(u.file=t(u),(D=u.file&&F(u.file))?(u.args.unshift(u.file),u.command=D,t(u)):u.file),C=!i.test(o);if(u.options.forceShell||C){let D=n.test(o);u.command=e.normalize(u.command),u.command=r.command(u.command),u.args=u.args.map(u=>r.argument(u,D));let t=[u.command].concat(u.args).join(" ");u.args=["/d","/s","/c",`"${t}"`],u.command=process.env.comspec||"cmd.exe",u.options.windowsVerbatimArguments=!0}return u}(C)}}),uT=um((u,D)=>{var e="win32"===process.platform;function t(u,D){return Object.assign(Error(`${D} ${u.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${D} ${u.command}`,path:u.command,spawnargs:u.args})}function r(u,D){return e&&1===u&&!D.file?t(D.original,"spawn"):null}D.exports={hookChildProcess:function(u,D){if(!e)return;let t=u.emit;u.emit=function(e,F){if("exit"===e){let e=r(F,D);if(e)return t.call(u,"error",e)}return t.apply(u,arguments)}},verifyENOENT:r,verifyENOENTSync:function(u,D){return e&&1===u&&!D.file?t(D.original,"spawnSync"):null},notFoundError:t}}),uj=um((u,D)=>{var e=uf("child_process"),t=uk(),r=uT();function F(u,D,F){let s=t(u,D,F),i=e.spawn(s.command,s.args,s.options);return r.hookChildProcess(i,s),i}D.exports=F,D.exports.spawn=F,D.exports.sync=function(u,D,F){let s=t(u,D,F),i=e.spawnSync(s.command,s.args,s.options);return i.error=i.error||r.verifyENOENTSync(i.status,s),i},D.exports._parse=t,D.exports._enoent=r}),uS=/^path$/i,uP={key:"PATH",value:""},uM=u=>{let D=u.length,e=new p.PassThrough,t=()=>{0==--D&&e.emit("end")};for(let D of u)D.pipe(e,{end:!1}),D.on("end",t);return e},uN=((u,D,e,t)=>{if(D&&"object"==typeof D||"function"==typeof D)for(let r of up(D))ud.call(u,r)||r===e||uc(u,r,{get:()=>D[r],enumerable:!(t=uh(D,r))||t.enumerable});return u})(uc(null!=(D=uj())?ul(uB(D)):{},"default",{value:D,enumerable:!0}),D),uR=class extends Error{result;output;get exitCode(){if(null!==this.result.exitCode)return this.result.exitCode}constructor(u,D){super(`Process exited with non-zero status (${u.exitCode})`),this.result=u,this.output=D}},uL={timeout:void 0,persist:!1},uI={windowsHide:!0},uq=class{_process;_aborted=!1;_options;_command;_args;_resolveClose;_processClosed;_thrownError;get process(){return this._process}get pid(){return this._process?.pid}get exitCode(){if(this._process&&null!==this._process.exitCode)return this._process.exitCode}constructor(u,D,e){this._options={...uL,...e},this._command=u,this._args=D??[],this._processClosed=new Promise(u=>{this._resolveClose=u})}kill(u){return this._process?.kill(u)===!0}get aborted(){return this._aborted}get killed(){return this._process?.killed===!0}pipe(u,D,e){return uz(u,D,{...e,stdin:this})}async *[Symbol.asyncIterator](){let u=this._process;if(!u)return;let D=[];this._streamErr&&D.push(this._streamErr),this._streamOut&&D.push(this._streamOut);let e=uM(D);for await(let u of B.createInterface({input:e}))yield u.toString();if(await this._processClosed,u.removeAllListeners(),this._thrownError)throw this._thrownError;if(this._options?.throwOnError&&0!==this.exitCode&&void 0!==this.exitCode)throw new uR(this)}async _waitForOutput(){let u=this._process;if(!u)throw Error("No process was started");let D="",e="";if(this._streamErr)for await(let u of this._streamErr)D+=u.toString();if(this._streamOut)for await(let u of this._streamOut)e+=u.toString();if(await this._processClosed,this._options?.stdin&&await this._options.stdin,u.removeAllListeners(),this._thrownError)throw this._thrownError;let t={stderr:D,stdout:e};if(this._options.throwOnError&&0!==this.exitCode&&void 0!==this.exitCode)throw new uR(this,t);return t}then(u,D){return this._waitForOutput().then(u,D)}_streamOut;_streamErr;spawn(){var u,D,e;let t,r,F=n.cwd(),s=this._options,i={...uI,...s.nodeOptions},o=[];this._resetState(),void 0!==s.timeout&&o.push(AbortSignal.timeout(s.timeout)),void 0!==s.signal&&o.push(s.signal),!0===s.persist&&(i.detached=!0),o.length>0&&(i.signal=function(u){let D=new AbortController;for(let e of u){if(e.aborted)return D.abort(),e;let u=()=>{D.abort(e.reason)};e.addEventListener("abort",u,{signal:D.signal})}return D.signal}(o)),i.env=(u=i.env,r=function(u,D){let e=D.value.split(l.delimiter),t=u,r;do e.push(l.resolve(t,"node_modules",".bin")),r=t,t=l.dirname(t);while(t!==r);return{key:D.key,value:e.join(l.delimiter)}}(F,function(u){for(let D in u){if(!Object.prototype.hasOwnProperty.call(u,D)||!uS.test(D))continue;let e=u[D];return e?{key:D,value:e}:uP}return uP}(t={...process.env,...u})),t[r.key]=r.value,t);let{command:C,args:E}=(D=this._command,e=this._args,{command:l.normalize(D),args:e??[]}),a=(0,uN._parse)(C,E,i),c=h.spawn(a.command,a.args,a.options);if(c.stderr&&(this._streamErr=c.stderr),c.stdout&&(this._streamOut=c.stdout),this._process=c,c.once("error",this._onError),c.once("close",this._onClose),void 0!==s.stdin&&c.stdin&&s.stdin.process){let{stdout:u}=s.stdin.process;u&&u.pipe(c.stdin)}}_resetState(){this._aborted=!1,this._processClosed=new Promise(u=>{this._resolveClose=u}),this._thrownError=void 0}_onError=u=>{if("AbortError"===u.name&&(!(u.cause instanceof Error)||"TimeoutError"!==u.cause.name)){this._aborted=!0;return}this._thrownError=u};_onClose=()=>{this._resolveClose&&this._resolveClose()}},uW=(u,D,e)=>{let t=new uq(u,D,e);return t.spawn(),t},uz=uW;async function uU(u=n.cwd()){let D=await uo({cwd:u,onUnknown(u){console.warn("[@antfu/install-pkg] Unknown packageManager:",u)}});return D?.agent||null}async function uG(u,D={}){let e=D.packageManager||await uU(D.cwd)||"npm",[t]=e.split("@");Array.isArray(u)||(u=[u]);let r=D.additionalArgs||[];return D.preferOffline&&("yarn@berry"===e?r.unshift("--cached"):r.unshift("--prefer-offline")),"pnpm"===t&&a.existsSync(l.resolve(D.cwd??n.cwd(),"pnpm-workspace.yaml"))&&r.unshift("-w"),uW(t,["yarn"===t?"add":"install",D.dev?"-D":"",...r,...u].filter(Boolean),{nodeOptions:{stdio:D.silent?"ignore":"inherit",cwd:D.cwd},throwOnError:!0})}var uH=/*#__PURE__*/Object.freeze({__proto__:null,detectPackageManager:uU,installPackage:uG});exports.a=uH,exports.g=function(u){if(u.__esModule)return u;var D=u.default;if("function"==typeof D){var e=function u(){return this instanceof u?Reflect.construct(D,arguments,this.constructor):D.apply(this,arguments)};e.prototype=D.prototype}else e={};return Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(u).forEach(function(D){var t=Object.getOwnPropertyDescriptor(u,D);Object.defineProperty(e,D,t.get?t:{enumerable:!0,get:function(){return u[D]}})}),e},exports.i=us;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-config-sukka",
3
- "version": "6.5.0",
3
+ "version": "6.6.0",
4
4
  "description": "Sukka's ESLint config",
5
5
  "homepage": "https://github.com/SukkaW/eslint-config-sukka",
6
6
  "repository": {
@@ -29,38 +29,37 @@
29
29
  "license": "MIT",
30
30
  "dependencies": {
31
31
  "@eslint-community/eslint-plugin-eslint-comments": "^4.4.0",
32
- "@eslint/js": "^9.10.0",
32
+ "@eslint/js": "^9.11.1",
33
33
  "@stylistic/eslint-plugin-js": "2.8.0",
34
34
  "@stylistic/eslint-plugin-plus": "2.8.0",
35
35
  "@stylistic/eslint-plugin-ts": "2.8.0",
36
- "@typescript-eslint/parser": "8.6.0",
36
+ "@typescript-eslint/parser": "8.7.0",
37
37
  "ci-info": "^4.0.0",
38
38
  "defu": "^6.1.4",
39
39
  "eslint-plugin-autofix": "^2.2.0",
40
- "eslint-plugin-import-x": "^4.2.1",
40
+ "eslint-plugin-import-x": "^4.3.0",
41
41
  "eslint-plugin-jsonc": "^2.16.0",
42
42
  "eslint-plugin-promise": "^7.1.0",
43
43
  "eslint-plugin-regexp": "^2.6.0",
44
44
  "eslint-plugin-unused-imports": "4.1.4",
45
45
  "jsonc-eslint-parser": "^2.4.0",
46
- "local-pkg": "^0.5.0",
47
46
  "picocolors": "^1.1.0",
48
- "typescript-eslint": "^8.6.0",
49
- "@eslint-sukka/shared": "6.5.0",
50
- "eslint-plugin-sukka": "6.5.0",
51
- "eslint-import-resolver-ts-bundled": "6.5.0"
47
+ "typescript-eslint": "^8.7.0",
48
+ "@eslint-sukka/shared": "6.6.0",
49
+ "eslint-import-resolver-ts-bundled": "6.6.0",
50
+ "eslint-plugin-sukka": "6.6.0"
52
51
  },
53
52
  "devDependencies": {
54
53
  "@antfu/install-pkg": "^0.4.1",
55
54
  "@clack/prompts": "^0.7.0",
56
- "@typescript-eslint/eslint-plugin": "8.6.0",
55
+ "@typescript-eslint/eslint-plugin": "8.7.0",
57
56
  "eslint-config-flat-gitignore": "^0.3.0",
58
- "@eslint-sukka/node": "6.5.0",
59
- "@eslint-sukka/react": "6.5.0",
60
- "@eslint-sukka/rollup-config": "6.5.0"
57
+ "@eslint-sukka/node": "6.6.0",
58
+ "@eslint-sukka/rollup-config": "6.6.0",
59
+ "@eslint-sukka/react": "6.6.0"
61
60
  },
62
61
  "scripts": {
63
- "codegen": "node -r @swc-node/register scripts/codegen.ts",
62
+ "codegen": "SWC_NODE_IGNORE_DYNAMIC=true node -r @swc-node/register scripts/codegen.ts",
64
63
  "build": "rollup -c rollup.config.ts --configPlugin swc3"
65
64
  }
66
65
  }
@@ -1,19 +0,0 @@
1
- "use strict";let D,u;var e=require("node:process"),t=require("node:readline"),r=require("node:tty"),F=require("picocolors"),s=require("process"),i=require("node:fs"),n=require("node:fs/promises"),o=require("node:path"),C=require("fs"),E=require("path"),a=require("node:module"),l=require("child_process"),c=require("stream"),h=require("readline"),p="undefined"!=typeof document?document.currentScript:null;const B=`\x1b[`,d={to:(D,u)=>u?`${B}${u+1};${D+1}H`:`${B}${D+1}G`,move(D,u){let e="";return D<0?e+=`${B}${-D}D`:D>0&&(e+=`${B}${D}C`),u<0?e+=`${B}${-u}A`:u>0&&(e+=`${B}${u}B`),e},up:(D=1)=>`${B}${D}A`,down:(D=1)=>`${B}${D}B`,forward:(D=1)=>`${B}${D}C`,backward:(D=1)=>`${B}${D}D`,nextLine:(D=1)=>`${B}E`.repeat(D),prevLine:(D=1)=>`${B}F`.repeat(D),left:`${B}G`,hide:`${B}?25l`,show:`${B}?25h`,save:`\x1b7`,restore:`\x1b8`},f={screen:`${B}2J`,up:(D=1)=>`${B}1J`.repeat(D),down:(D=1)=>`${B}J`.repeat(D),line:`${B}2K`,lineEnd:`${B}K`,lineStart:`${B}1K`,lines(D){let u="";for(let e=0;e<D;e++)u+=this.line+(e<D-1?d.up():"");return D&&(u+=d.left),u}};var m={cursor:d,erase:f};function A(D){if("string"!=typeof D)throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(function({onlyFirst:D=!1}={}){return RegExp("[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)|(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))",D?void 0:"g")}(),"")}function g(D){return D&&D.__esModule&&Object.prototype.hasOwnProperty.call(D,"default")?D.default:D}var v={exports:{}};!function(D){var u={};function e(D){return D.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}D.exports=u,u.eastAsianWidth=function(D){var u=D.charCodeAt(0),e=2==D.length?D.charCodeAt(1):0,t=u;return 55296<=u&&u<=56319&&56320<=e&&e<=57343&&(u&=1023,e&=1023,t=(u<<10|e)+65536),12288==t||65281<=t&&t<=65376||65504<=t&&t<=65510?"F":8361==t||65377<=t&&t<=65470||65474<=t&&t<=65479||65482<=t&&t<=65487||65490<=t&&t<=65495||65498<=t&&t<=65500||65512<=t&&t<=65518?"H":4352<=t&&t<=4447||4515<=t&&t<=4519||4602<=t&&t<=4607||9001<=t&&t<=9002||11904<=t&&t<=11929||11931<=t&&t<=12019||12032<=t&&t<=12245||12272<=t&&t<=12283||12289<=t&&t<=12350||12353<=t&&t<=12438||12441<=t&&t<=12543||12549<=t&&t<=12589||12593<=t&&t<=12686||12688<=t&&t<=12730||12736<=t&&t<=12771||12784<=t&&t<=12830||12832<=t&&t<=12871||12880<=t&&t<=13054||13056<=t&&t<=19903||19968<=t&&t<=42124||42128<=t&&t<=42182||43360<=t&&t<=43388||44032<=t&&t<=55203||55216<=t&&t<=55238||55243<=t&&t<=55291||63744<=t&&t<=64255||65040<=t&&t<=65049||65072<=t&&t<=65106||65108<=t&&t<=65126||65128<=t&&t<=65131||110592<=t&&t<=110593||127488<=t&&t<=127490||127504<=t&&t<=127546||127552<=t&&t<=127560||127568<=t&&t<=127569||131072<=t&&t<=194367||177984<=t&&t<=196605||196608<=t&&t<=262141?"W":32<=t&&t<=126||162<=t&&t<=163||165<=t&&t<=166||172==t||175==t||10214<=t&&t<=10221||10629<=t&&t<=10630?"Na":161==t||164==t||167<=t&&t<=168||170==t||173<=t&&t<=174||176<=t&&t<=180||182<=t&&t<=186||188<=t&&t<=191||198==t||208==t||215<=t&&t<=216||222<=t&&t<=225||230==t||232<=t&&t<=234||236<=t&&t<=237||240==t||242<=t&&t<=243||247<=t&&t<=250||252==t||254==t||257==t||273==t||275==t||283==t||294<=t&&t<=295||299==t||305<=t&&t<=307||312==t||319<=t&&t<=322||324==t||328<=t&&t<=331||333==t||338<=t&&t<=339||358<=t&&t<=359||363==t||462==t||464==t||466==t||468==t||470==t||472==t||474==t||476==t||593==t||609==t||708==t||711==t||713<=t&&t<=715||717==t||720==t||728<=t&&t<=731||733==t||735==t||768<=t&&t<=879||913<=t&&t<=929||931<=t&&t<=937||945<=t&&t<=961||963<=t&&t<=969||1025==t||1040<=t&&t<=1103||1105==t||8208==t||8211<=t&&t<=8214||8216<=t&&t<=8217||8220<=t&&t<=8221||8224<=t&&t<=8226||8228<=t&&t<=8231||8240==t||8242<=t&&t<=8243||8245==t||8251==t||8254==t||8308==t||8319==t||8321<=t&&t<=8324||8364==t||8451==t||8453==t||8457==t||8467==t||8470==t||8481<=t&&t<=8482||8486==t||8491==t||8531<=t&&t<=8532||8539<=t&&t<=8542||8544<=t&&t<=8555||8560<=t&&t<=8569||8585==t||8592<=t&&t<=8601||8632<=t&&t<=8633||8658==t||8660==t||8679==t||8704==t||8706<=t&&t<=8707||8711<=t&&t<=8712||8715==t||8719==t||8721==t||8725==t||8730==t||8733<=t&&t<=8736||8739==t||8741==t||8743<=t&&t<=8748||8750==t||8756<=t&&t<=8759||8764<=t&&t<=8765||8776==t||8780==t||8786==t||8800<=t&&t<=8801||8804<=t&&t<=8807||8810<=t&&t<=8811||8814<=t&&t<=8815||8834<=t&&t<=8835||8838<=t&&t<=8839||8853==t||8857==t||8869==t||8895==t||8978==t||9312<=t&&t<=9449||9451<=t&&t<=9547||9552<=t&&t<=9587||9600<=t&&t<=9615||9618<=t&&t<=9621||9632<=t&&t<=9633||9635<=t&&t<=9641||9650<=t&&t<=9651||9654<=t&&t<=9655||9660<=t&&t<=9661||9664<=t&&t<=9665||9670<=t&&t<=9672||9675==t||9678<=t&&t<=9681||9698<=t&&t<=9701||9711==t||9733<=t&&t<=9734||9737==t||9742<=t&&t<=9743||9748<=t&&t<=9749||9756==t||9758==t||9792==t||9794==t||9824<=t&&t<=9825||9827<=t&&t<=9829||9831<=t&&t<=9834||9836<=t&&t<=9837||9839==t||9886<=t&&t<=9887||9918<=t&&t<=9919||9924<=t&&t<=9933||9935<=t&&t<=9953||9955==t||9960<=t&&t<=9983||10045==t||10071==t||10102<=t&&t<=10111||11093<=t&&t<=11097||12872<=t&&t<=12879||57344<=t&&t<=63743||65024<=t&&t<=65039||65533==t||127232<=t&&t<=127242||127248<=t&&t<=127277||127280<=t&&t<=127337||127344<=t&&t<=127386||917760<=t&&t<=917999||983040<=t&&t<=1048573||1048576<=t&&t<=1114109?"A":"N"},u.characterLength=function(D){var u=this.eastAsianWidth(D);return"F"==u||"W"==u||"A"==u?2:1},u.length=function(D){for(var u=e(D),t=0,r=0;r<u.length;r++)t+=this.characterLength(u[r]);return t},u.slice=function(D,t,r){textLen=u.length(D),r=r||1,(t=t||0)<0&&(t=textLen+t),r<0&&(r=textLen+r);for(var F="",s=0,i=e(D),n=0;n<i.length;n++){var o=i[n],C=u.length(o);if(s>=t-(2==C?1:0)){if(s+C<=r)F+=o;else break}s+=C}return F}}(v);const b=g(v.exports),w=g(function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g});function y(D,u={}){if("string"!=typeof D||0===D.length||(u={ambiguousIsNarrow:!0,...u},0===(D=A(D)).length))return 0;D=D.replace(w()," ");let e=u.ambiguousIsNarrow?1:2,t=0;for(let u of D){let D=u.codePointAt(0);if(!(D<=31)&&(!(D>=127)||!(D<=159))&&(!(D>=768)||!(D<=879)))switch(b.eastAsianWidth(u)){case"F":case"W":t+=2;break;case"A":t+=e;break;default:t+=1}}return t}const _=(D=0)=>u=>`\x1b[${u+D}m`,x=(D=0)=>u=>`\x1b[${38+D};5;${u}m`,$=(D=0)=>(u,e,t)=>`\x1b[${38+D};2;${u};${e};${t}m`,O={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(O.modifier),[...Object.keys(O.color),...Object.keys(O.bgColor)];const k=function(){let D=new Map;for(let[u,e]of Object.entries(O)){for(let[u,t]of Object.entries(e))O[u]={open:`\x1b[${t[0]}m`,close:`\x1b[${t[1]}m`},e[u]=O[u],D.set(t[0],t[1]);Object.defineProperty(O,u,{value:e,enumerable:!1})}return Object.defineProperty(O,"codes",{value:D,enumerable:!1}),O.color.close="\x1b[39m",O.bgColor.close="\x1b[49m",O.color.ansi=_(),O.color.ansi256=x(),O.color.ansi16m=$(),O.bgColor.ansi=_(10),O.bgColor.ansi256=x(10),O.bgColor.ansi16m=$(10),Object.defineProperties(O,{rgbToAnsi256:{value:(D,u,e)=>D===u&&u===e?D<8?16:D>248?231:Math.round((D-8)/247*24)+232:16+36*Math.round(D/255*5)+6*Math.round(u/255*5)+Math.round(e/255*5),enumerable:!1},hexToRgb:{value:D=>{let u=/[a-f\d]{6}|[a-f\d]{3}/i.exec(D.toString(16));if(!u)return[0,0,0];let[e]=u;3===e.length&&(e=[...e].map(D=>D+D).join(""));let t=Number.parseInt(e,16);return[t>>16&255,t>>8&255,255&t]},enumerable:!1},hexToAnsi256:{value:D=>O.rgbToAnsi256(...O.hexToRgb(D)),enumerable:!1},ansi256ToAnsi:{value:D=>{let u,e,t;if(D<8)return 30+D;if(D<16)return 90+(D-8);if(D>=232)e=u=((D-232)*10+8)/255,t=u;else{let r=(D-=16)%36;u=Math.floor(D/36)/5,e=Math.floor(r/6)/5,t=r%6/5}let r=2*Math.max(u,e,t);if(0===r)return 30;let F=30+(Math.round(t)<<2|Math.round(e)<<1|Math.round(u));return 2===r&&(F+=60),F},enumerable:!1},rgbToAnsi:{value:(D,u,e)=>O.ansi256ToAnsi(O.rgbToAnsi256(D,u,e)),enumerable:!1},hexToAnsi:{value:D=>O.ansi256ToAnsi(O.hexToAnsi256(D)),enumerable:!1}}),O}(),T=new Set(["\x1b","\x9b"]),j="]8;;",S=D=>`${T.values().next().value}[${D}m`,M=D=>`${T.values().next().value}${j}${D}\x07`,P=D=>D.split(" ").map(D=>y(D)),N=(D,u,e)=>{let t=[...u],r=!1,F=!1,s=y(A(D[D.length-1]));for(let[u,i]of t.entries()){let n=y(i);if(s+n<=e?D[D.length-1]+=i:(D.push(i),s=0),T.has(i)&&(r=!0,F=t.slice(u+1).join("").startsWith(j)),r){F?"\x07"===i&&(r=!1,F=!1):"m"===i&&(r=!1);continue}(s+=n)===e&&u<t.length-1&&(D.push(""),s=0)}!s&&D[D.length-1].length>0&&D.length>1&&(D[D.length-2]+=D.pop())},R=D=>{let u=D.split(" "),e=u.length;for(;e>0&&!(y(u[e-1])>0);)e--;return e===u.length?D:u.slice(0,e).join(" ")+u.slice(e).join("")},L=(D,u,e={})=>{if(!1!==e.trim&&""===D.trim())return"";let t="",r,F,s=P(D),i=[""];for(let[t,r]of D.split(" ").entries()){!1!==e.trim&&(i[i.length-1]=i[i.length-1].trimStart());let D=y(i[i.length-1]);if(0!==t&&(D>=u&&(!1===e.wordWrap||!1===e.trim)&&(i.push(""),D=0),(D>0||!1===e.trim)&&(i[i.length-1]+=" ",D++)),e.hard&&s[t]>u){let e=u-D,F=1+Math.floor((s[t]-e-1)/u);Math.floor((s[t]-1)/u)<F&&i.push(""),N(i,r,u);continue}if(D+s[t]>u&&D>0&&s[t]>0){if(!1===e.wordWrap&&D<u){N(i,r,u);continue}i.push("")}if(D+s[t]>u&&!1===e.wordWrap){N(i,r,u);continue}i[i.length-1]+=r}!1!==e.trim&&(i=i.map(D=>R(D)));let n=[...i.join(`
2
- `)];for(let[D,u]of n.entries()){if(t+=u,T.has(u)){let{groups:u}=RegExp(`(?:\\[(?<code>\\d+)m|\\${j}(?<uri>.*)\x07)`).exec(n.slice(D).join(""))||{groups:{}};if(void 0!==u.code){let D=Number.parseFloat(u.code);r=39===D?void 0:D}else void 0!==u.uri&&(F=0===u.uri.length?void 0:u.uri)}let e=k.codes.get(Number(r));n[D+1]===`
3
- `?(F&&(t+=M("")),r&&e&&(t+=S(e))):u===`
4
- `&&(r&&e&&(t+=S(r)),F&&(t+=M(F)))}return t};function I(D,u,e){return String(D).normalize().replace(/\r\n/g,`
5
- `).split(`
6
- `).map(D=>L(D,u,e)).join(`
7
- `)}var q=Object.defineProperty,W=(D,u,e)=>u in D?q(D,u,{enumerable:!0,configurable:!0,writable:!0,value:e}):D[u]=e,z=(D,u,e)=>(W(D,"symbol"!=typeof u?u+"":u,e),e);const G=Symbol("clack:cancel");function H(D,u){D.isTTY&&D.setRawMode(u)}const K=new Map([["k","up"],["j","down"],["h","left"],["l","right"]]),U=new Set(["up","down","left","right","space","enter"]);let J=class{constructor({render:D,input:u=e.stdin,output:t=e.stdout,...r},F=!0){z(this,"input"),z(this,"output"),z(this,"rl"),z(this,"opts"),z(this,"_track",!1),z(this,"_render"),z(this,"_cursor",0),z(this,"state","initial"),z(this,"value"),z(this,"error",""),z(this,"subscribers",new Map),z(this,"_prevFrame",""),this.opts=r,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=D.bind(this),this._track=F,this.input=u,this.output=t}prompt(){let D=new r.WriteStream(0);return D._write=(D,u,e)=>{this._track&&(this.value=this.rl.line.replace(/\t/g,""),this._cursor=this.rl.cursor,this.emit("value",this.value)),e()},this.input.pipe(D),this.rl=t.createInterface({input:this.input,output:D,tabSize:2,prompt:"",escapeCodeTimeout:50}),t.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),void 0!==this.opts.initialValue&&this._track&&this.rl.write(this.opts.initialValue),this.input.on("keypress",this.onKeypress),H(this.input,!0),this.output.on("resize",this.render),this.render(),new Promise((D,u)=>{this.once("submit",()=>{this.output.write(m.cursor.show),this.output.off("resize",this.render),H(this.input,!1),D(this.value)}),this.once("cancel",()=>{this.output.write(m.cursor.show),this.output.off("resize",this.render),H(this.input,!1),D(G)})})}on(D,u){let e=this.subscribers.get(D)??[];e.push({cb:u}),this.subscribers.set(D,e)}once(D,u){let e=this.subscribers.get(D)??[];e.push({cb:u,once:!0}),this.subscribers.set(D,e)}emit(D,...u){let e=this.subscribers.get(D)??[],t=[];for(let D of e)D.cb(...u),D.once&&t.push(()=>e.splice(e.indexOf(D),1));for(let D of t)D()}unsubscribe(){this.subscribers.clear()}onKeypress(D,u){if("error"===this.state&&(this.state="active"),u?.name&&!this._track&&K.has(u.name)&&this.emit("cursor",K.get(u.name)),u?.name&&U.has(u.name)&&this.emit("cursor",u.name),D&&("y"===D.toLowerCase()||"n"===D.toLowerCase())&&this.emit("confirm","y"===D.toLowerCase())," "===D&&this.opts.placeholder&&(this.value||(this.rl.write(this.opts.placeholder),this.emit("value",this.opts.placeholder))),D&&this.emit("key",D.toLowerCase()),u?.name==="return"){if(this.opts.validate){let D=this.opts.validate(this.value);D&&(this.error=D,this.state="error",this.rl.write(this.value))}"error"!==this.state&&(this.state="submit")}"\x03"===D&&(this.state="cancel"),("submit"===this.state||"cancel"===this.state)&&this.emit("finalize"),this.render(),("submit"===this.state||"cancel"===this.state)&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
8
- `),H(this.input,!1),this.rl.close(),this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let D=I(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
9
- `).length-1;this.output.write(m.cursor.move(-999,-1*D))}render(){let D=I(this._render(this)??"",process.stdout.columns,{hard:!0});if(D!==this._prevFrame){if("initial"===this.state)this.output.write(m.cursor.hide);else{let u=function(D,u){if(D===u)return;let e=D.split(`
10
- `),t=u.split(`
11
- `),r=[];for(let D=0;D<Math.max(e.length,t.length);D++)e[D]!==t[D]&&r.push(D);return r}(this._prevFrame,D);if(this.restoreCursor(),u&&u?.length===1){let e=u[0];this.output.write(m.cursor.move(0,e)),this.output.write(m.erase.lines(1));let t=D.split(`
12
- `);this.output.write(t[e]),this._prevFrame=D,this.output.write(m.cursor.move(0,t.length-e-1));return}if(u&&u?.length>1){let e=u[0];this.output.write(m.cursor.move(0,e)),this.output.write(m.erase.down());let t=D.split(`
13
- `).slice(e);this.output.write(t.join(`
14
- `)),this._prevFrame=D;return}this.output.write(m.erase.down())}this.output.write(D),"initial"===this.state&&(this.state="active"),this._prevFrame=D}}};class V extends J{get cursor(){return this.value?0:1}get _value(){return 0===this.cursor}constructor(D){super(D,!1),this.value=!!D.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",D=>{this.output.write(m.cursor.move(0,-1)),this.value=D,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}globalThis.process.platform.startsWith("win");const Y="win32"!==e.platform?"linux"!==e.env.TERM:!!e.env.CI||!!e.env.WT_SESSION||!!e.env.TERMINUS_SUBLIME||"{cmd::Cmder}"===e.env.ConEmuTask||"Terminus-Sublime"===e.env.TERM_PROGRAM||"vscode"===e.env.TERM_PROGRAM||"xterm-256color"===e.env.TERM||"alacritty"===e.env.TERM||"JetBrains-JediTerm"===e.env.TERMINAL_EMULATOR,Z=(D,u)=>Y?D:u,X=Z("◆","*"),Q=Z("■","x"),DD=Z("▲","x"),Du=Z("◇","o"),De=Z("│","|"),Dt=Z("└","—"),Dr=Z("●",">"),DF=Z("○"," "),Ds=D=>{switch(D){case"initial":case"active":return F.cyan(X);case"cancel":return F.red(Q);case"error":return F.yellow(DD);case"submit":return F.green(Du)}};var Di=/*#__PURE__*/Object.freeze({__proto__:null,confirm:D=>{let u=D.active??"Yes",e=D.inactive??"No";return new V({active:u,inactive:e,initialValue:D.initialValue??!0,render(){let t=`${F.gray(De)}
15
- ${Ds(this.state)} ${D.message}
16
- `,r=this.value?u:e;switch(this.state){case"submit":return`${t}${F.gray(De)} ${F.dim(r)}`;case"cancel":return`${t}${F.gray(De)} ${F.strikethrough(F.dim(r))}
17
- ${F.gray(De)}`;default:return`${t}${F.cyan(De)} ${this.value?`${F.green(Dr)} ${u}`:`${F.dim(DF)} ${F.dim(u)}`} ${F.dim("/")} ${this.value?`${F.dim(DF)} ${F.dim(e)}`:`${F.green(Dr)} ${e}`}
18
- ${F.cyan(Dt)}
19
- `}}}).prompt()}});const Dn=["npm","yarn","yarn@berry","pnpm","pnpm@6","bun"],Do={"bun.lockb":"bun","pnpm-lock.yaml":"pnpm","yarn.lock":"yarn","package-lock.json":"npm","npm-shrinkwrap.json":"npm"};async function DC({cwd:D,onUnknown:u}={}){for(let t of function*(D=e.cwd()){let u=o.resolve(D),{root:t}=o.parse(u);for(;u&&u!==t;)yield u,u=o.dirname(u)}(D)){for(let D of Object.keys(Do))if(await Da(o.join(t,D))){let e=Do[D],r=await DE(o.join(t,"package.json"),u);if(r)return r;return{name:e,agent:e}}let D=await DE(o.join(t,"package.json"),u);if(D)return D}return null}async function DE(D,u){if(!D||!await Da(D))return null;try{let e;let t=JSON.parse(i.readFileSync(D,"utf8"));if("string"==typeof t.packageManager){let[D,r]=t.packageManager.replace(/^\^/,"").split("@"),F=r;if("yarn"===D&&Number.parseInt(r)>1)return e="yarn@berry",F="berry",{name:D,agent:e,version:F};if("pnpm"===D&&7>Number.parseInt(r))return e="pnpm@6",{name:D,agent:e,version:F};if(Dn.includes(D))return e=D,{name:D,agent:e,version:F};return u?.(t.packageManager)??null}}catch{}return null}async function Da(D){try{if((await n.stat(D)).isFile())return!0}catch{}return!1}const Dl=a.createRequire("undefined"==typeof document?require("url").pathToFileURL(__filename).href:p&&p.src||new URL("vendor-DekA__rQ.cjs",document.baseURI).href);var Dc=Object.create,Dh=Object.defineProperty,Dp=Object.getOwnPropertyDescriptor,DB=Object.getOwnPropertyNames,Dd=Object.getPrototypeOf,Df=Object.prototype.hasOwnProperty,Dm=(D=function(D){if("u">typeof Dl)return Dl.apply(this,arguments);throw Error('Dynamic require of "'+D+'" is not supported')},"u">typeof Dl?Dl:"u">typeof Proxy?new Proxy(D,{get:(D,u)=>("u">typeof Dl?Dl:D)[u]}):D),DA=(D,u)=>()=>(u||D((u={exports:{}}).exports,u),u.exports),Dg=DA((D,u)=>{u.exports=r,r.sync=function(D,u){return t(e.statSync(D),D,u)};var e=Dm("fs");function t(D,u,e){return!!(D.isSymbolicLink()||D.isFile())&&function(D,u){var e=void 0!==u.pathExt?u.pathExt:process.env.PATHEXT;if(!e||-1!==(e=e.split(";")).indexOf(""))return!0;for(var t=0;t<e.length;t++){var r=e[t].toLowerCase();if(r&&D.substr(-r.length).toLowerCase()===r)return!0}return!1}(u,e)}function r(D,u,r){e.stat(D,function(e,F){r(e,!e&&t(F,D,u))})}}),Dv=DA((D,u)=>{u.exports=t,t.sync=function(D,u){return r(e.statSync(D),u)};var e=Dm("fs");function t(D,u,t){e.stat(D,function(D,e){t(D,!D&&r(e,u))})}function r(D,u){var e,t,r,F,s,i,n;return D.isFile()&&(e=D.mode,t=D.uid,r=D.gid,F=void 0!==u.uid?u.uid:process.getuid&&process.getuid(),s=void 0!==u.gid?u.gid:process.getgid&&process.getgid(),i=parseInt("100",8),n=parseInt("010",8),e&parseInt("001",8)||e&n&&r===s||e&i&&t===F||e&(i|n)&&0===F)}}),Db=DA((D,u)=>{var e;function t(D,u,r){if("function"==typeof u&&(r=u,u={}),!r){if("function"!=typeof Promise)throw TypeError("callback not provided");return new Promise(function(e,r){t(D,u||{},function(D,u){D?r(D):e(u)})})}e(D,u||{},function(D,e){D&&("EACCES"===D.code||u&&u.ignoreErrors)&&(D=null,e=!1),r(D,e)})}Dm("fs"),"win32"===process.platform||global.TESTING_WINDOWS?e=Dg():e=Dv(),u.exports=t,t.sync=function(D,u){try{return e.sync(D,u||{})}catch(D){if(u&&u.ignoreErrors||"EACCES"===D.code)return!1;throw D}}}),Dw=DA((D,u)=>{var e="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,t=Dm("path"),r=e?";":":",F=Db(),s=D=>Object.assign(Error(`not found: ${D}`),{code:"ENOENT"}),i=(D,u)=>{let t=u.colon||r,F=D.match(/\//)||e&&D.match(/\\/)?[""]:[...e?[process.cwd()]:[],...(u.path||process.env.PATH||"").split(t)],s=e?u.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=e?s.split(t):[""];return e&&-1!==D.indexOf(".")&&""!==i[0]&&i.unshift(""),{pathEnv:F,pathExt:i,pathExtExe:s}},n=(D,u,e)=>{"function"==typeof u&&(e=u,u={}),u||(u={});let{pathEnv:r,pathExt:n,pathExtExe:o}=i(D,u),C=[],E=e=>new Promise((F,i)=>{if(e===r.length)return u.all&&C.length?F(C):i(s(D));let n=r[e],o=/^".*"$/.test(n)?n.slice(1,-1):n,E=t.join(o,D);F(a(!o&&/^\.[\\\/]/.test(D)?D.slice(0,2)+E:E,e,0))}),a=(D,e,t)=>new Promise((r,s)=>{if(t===n.length)return r(E(e+1));let i=n[t];F(D+i,{pathExt:o},(F,s)=>{if(!F&&s){if(!u.all)return r(D+i);C.push(D+i)}return r(a(D,e,t+1))})});return e?E(0).then(D=>e(null,D),e):E(0)};u.exports=n,n.sync=(D,u)=>{let{pathEnv:e,pathExt:r,pathExtExe:n}=i(D,u=u||{}),o=[];for(let s=0;s<e.length;s++){let i=e[s],C=/^".*"$/.test(i)?i.slice(1,-1):i,E=t.join(C,D),a=!C&&/^\.[\\\/]/.test(D)?D.slice(0,2)+E:E;for(let D=0;D<r.length;D++){let e=a+r[D];try{if(F.sync(e,{pathExt:n})){if(!u.all)return e;o.push(e)}}catch{}}}if(u.all&&o.length)return o;if(u.nothrow)return null;throw s(D)}}),Dy=DA((D,u)=>{var e=(D={})=>{let u=D.env||process.env;return"win32"!==(D.platform||process.platform)?"PATH":Object.keys(u).reverse().find(D=>"PATH"===D.toUpperCase())||"Path"};u.exports=e,u.exports.default=e}),D_=DA((D,u)=>{var e=Dm("path"),t=Dw(),r=Dy();function F(D,u){let F,s=D.options.env||process.env,i=process.cwd(),n=null!=D.options.cwd,o=n&&void 0!==process.chdir&&!process.chdir.disabled;if(o)try{process.chdir(D.options.cwd)}catch{}try{F=t.sync(D.command,{path:s[r({env:s})],pathExt:u?e.delimiter:void 0})}catch{}finally{o&&process.chdir(i)}return F&&(F=e.resolve(n?D.options.cwd:"",F)),F}u.exports=function(D){return F(D)||F(D,!0)}}),Dx=DA((D,u)=>{var e=/([()\][%!^"`<>&|;, *?])/g;u.exports.command=function(D){return D=D.replace(e,"^$1")},u.exports.argument=function(D,u){return D=(D=(D=`${D}`).replace(/(\\*)"/g,'$1$1\\"')).replace(/(\\*)$/,"$1$1"),D=(D=`"${D}"`).replace(e,"^$1"),u&&(D=D.replace(e,"^$1")),D}}),D$=DA((D,u)=>{u.exports=/^#!(.*)/}),DO=DA((D,u)=>{var e=D$();u.exports=(D="")=>{let u=D.match(e);if(!u)return null;let[t,r]=u[0].replace(/#! ?/,"").split(" "),F=t.split("/").pop();return"env"===F?r:r?`${F} ${r}`:F}}),Dk=DA((D,u)=>{var e=Dm("fs"),t=DO();u.exports=function(D){let u=Buffer.alloc(150),r;try{r=e.openSync(D,"r"),e.readSync(r,u,0,150,0),e.closeSync(r)}catch{}return t(u.toString())}}),DT=DA((D,u)=>{var e=Dm("path"),t=D_(),r=Dx(),F=Dk(),s="win32"===process.platform,i=/\.(?:com|exe)$/i,n=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;u.exports=function(D,u,o){u&&!Array.isArray(u)&&(o=u,u=null);let C={command:D,args:u=u?u.slice(0):[],options:o=Object.assign({},o),file:void 0,original:{command:D,args:u}};return o.shell?C:function(D){let u;if(!s)return D;let o=(D.file=t(D),(u=D.file&&F(D.file))?(D.args.unshift(D.file),D.command=u,t(D)):D.file),C=!i.test(o);if(D.options.forceShell||C){let u=n.test(o);D.command=e.normalize(D.command),D.command=r.command(D.command),D.args=D.args.map(D=>r.argument(D,u));let t=[D.command].concat(D.args).join(" ");D.args=["/d","/s","/c",`"${t}"`],D.command=process.env.comspec||"cmd.exe",D.options.windowsVerbatimArguments=!0}return D}(C)}}),Dj=DA((D,u)=>{var e="win32"===process.platform;function t(D,u){return Object.assign(Error(`${u} ${D.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${u} ${D.command}`,path:D.command,spawnargs:D.args})}function r(D,u){return e&&1===D&&!u.file?t(u.original,"spawn"):null}u.exports={hookChildProcess:function(D,u){if(!e)return;let t=D.emit;D.emit=function(e,F){if("exit"===e){let e=r(F,u);if(e)return t.call(D,"error",e)}return t.apply(D,arguments)}},verifyENOENT:r,verifyENOENTSync:function(D,u){return e&&1===D&&!u.file?t(u.original,"spawnSync"):null},notFoundError:t}}),DS=DA((D,u)=>{var e=Dm("child_process"),t=DT(),r=Dj();function F(D,u,F){let s=t(D,u,F),i=e.spawn(s.command,s.args,s.options);return r.hookChildProcess(i,s),i}u.exports=F,u.exports.spawn=F,u.exports.sync=function(D,u,F){let s=t(D,u,F),i=e.spawnSync(s.command,s.args,s.options);return i.error=i.error||r.verifyENOENTSync(i.status,s),i},u.exports._parse=t,u.exports._enoent=r}),DM=/^path$/i,DP={key:"PATH",value:""},DN=D=>{let u=D.length,e=new c.PassThrough,t=()=>{0==--u&&e.emit("end")};for(let u of D)u.pipe(e,{end:!1}),u.on("end",t);return e},DR=((D,u,e,t)=>{if(u&&"object"==typeof u||"function"==typeof u)for(let r of DB(u))Df.call(D,r)||r===e||Dh(D,r,{get:()=>u[r],enumerable:!(t=Dp(u,r))||t.enumerable});return D})(Dh(null!=(u=DS())?Dc(Dd(u)):{},"default",{value:u,enumerable:!0}),u),DL=class extends Error{result;output;get exitCode(){if(null!==this.result.exitCode)return this.result.exitCode}constructor(D,u){super(`Process exited with non-zero status (${D.exitCode})`),this.result=D,this.output=u}},DI={timeout:void 0,persist:!1},Dq={windowsHide:!0},DW=class{_process;_aborted=!1;_options;_command;_args;_resolveClose;_processClosed;_thrownError;get process(){return this._process}get pid(){return this._process?.pid}get exitCode(){if(this._process&&null!==this._process.exitCode)return this._process.exitCode}constructor(D,u,e){this._options={...DI,...e},this._command=D,this._args=u??[],this._processClosed=new Promise(D=>{this._resolveClose=D})}kill(D){return this._process?.kill(D)===!0}get aborted(){return this._aborted}get killed(){return this._process?.killed===!0}pipe(D,u,e){return DG(D,u,{...e,stdin:this})}async *[Symbol.asyncIterator](){let D=this._process;if(!D)return;let u=[];this._streamErr&&u.push(this._streamErr),this._streamOut&&u.push(this._streamOut);let e=DN(u);for await(let D of h.createInterface({input:e}))yield D.toString();if(await this._processClosed,D.removeAllListeners(),this._thrownError)throw this._thrownError;if(this._options?.throwOnError&&0!==this.exitCode&&void 0!==this.exitCode)throw new DL(this)}async _waitForOutput(){let D=this._process;if(!D)throw Error("No process was started");let u="",e="";if(this._streamErr)for await(let D of this._streamErr)u+=D.toString();if(this._streamOut)for await(let D of this._streamOut)e+=D.toString();if(await this._processClosed,this._options?.stdin&&await this._options.stdin,D.removeAllListeners(),this._thrownError)throw this._thrownError;let t={stderr:u,stdout:e};if(this._options.throwOnError&&0!==this.exitCode&&void 0!==this.exitCode)throw new DL(this,t);return t}then(D,u){return this._waitForOutput().then(D,u)}_streamOut;_streamErr;spawn(){var D,u,e;let t,r,F=s.cwd(),i=this._options,n={...Dq,...i.nodeOptions},o=[];this._resetState(),void 0!==i.timeout&&o.push(AbortSignal.timeout(i.timeout)),void 0!==i.signal&&o.push(i.signal),!0===i.persist&&(n.detached=!0),o.length>0&&(n.signal=function(D){let u=new AbortController;for(let e of D){if(e.aborted)return u.abort(),e;let D=()=>{u.abort(e.reason)};e.addEventListener("abort",D,{signal:u.signal})}return u.signal}(o)),n.env=(D=n.env,r=function(D,u){let e=u.value.split(E.delimiter),t=D,r;do e.push(E.resolve(t,"node_modules",".bin")),r=t,t=E.dirname(t);while(t!==r);return{key:u.key,value:e.join(E.delimiter)}}(F,function(D){for(let u in D){if(!Object.prototype.hasOwnProperty.call(D,u)||!DM.test(u))continue;let e=D[u];return e?{key:u,value:e}:DP}return DP}(t={...process.env,...D})),t[r.key]=r.value,t);let{command:C,args:a}=(u=this._command,e=this._args,{command:E.normalize(u),args:e??[]}),c=(0,DR._parse)(C,a,n),h=l.spawn(c.command,c.args,c.options);if(h.stderr&&(this._streamErr=h.stderr),h.stdout&&(this._streamOut=h.stdout),this._process=h,h.once("error",this._onError),h.once("close",this._onClose),void 0!==i.stdin&&h.stdin&&i.stdin.process){let{stdout:D}=i.stdin.process;D&&D.pipe(h.stdin)}}_resetState(){this._aborted=!1,this._processClosed=new Promise(D=>{this._resolveClose=D}),this._thrownError=void 0}_onError=D=>{if("AbortError"===D.name&&(!(D.cause instanceof Error)||"TimeoutError"!==D.cause.name)){this._aborted=!0;return}this._thrownError=D};_onClose=()=>{this._resolveClose&&this._resolveClose()}},Dz=(D,u,e)=>{let t=new DW(D,u,e);return t.spawn(),t},DG=Dz;async function DH(D=s.cwd()){let u=await DC({cwd:D,onUnknown(D){console.warn("[@antfu/install-pkg] Unknown packageManager:",D)}});return u?.agent||null}async function DK(D,u={}){let e=u.packageManager||await DH(u.cwd)||"npm",[t]=e.split("@");Array.isArray(D)||(D=[D]);let r=u.additionalArgs||[];return u.preferOffline&&("yarn@berry"===e?r.unshift("--cached"):r.unshift("--prefer-offline")),"pnpm"===t&&C.existsSync(E.resolve(u.cwd??s.cwd(),"pnpm-workspace.yaml"))&&r.unshift("-w"),Dz(t,["yarn"===t?"add":"install",u.dev?"-D":"",...r,...D].filter(Boolean),{nodeOptions:{stdio:u.silent?"ignore":"inherit",cwd:u.cwd},throwOnError:!0})}var DU=/*#__PURE__*/Object.freeze({__proto__:null,detectPackageManager:DH,installPackage:DK});exports.a=DU,exports.i=Di;
@@ -1,19 +0,0 @@
1
- let D,u;import t,{stdin as e,stdout as r}from"node:process";import F from"node:readline";import{WriteStream as i}from"node:tty";import s from"picocolors";import n,{cwd as o}from"process";import C from"node:fs";import E from"node:fs/promises";import a from"node:path";import{existsSync as l}from"fs";import{normalize as c,delimiter as h,resolve as p,dirname as B}from"path";import{createRequire as f}from"node:module";import{spawn as d}from"child_process";import{PassThrough as m}from"stream";import A from"readline";let g=`\x1b[`,b={to:(D,u)=>u?`${g}${u+1};${D+1}H`:`${g}${D+1}G`,move(D,u){let t="";return D<0?t+=`${g}${-D}D`:D>0&&(t+=`${g}${D}C`),u<0?t+=`${g}${-u}A`:u>0&&(t+=`${g}${u}B`),t},up:(D=1)=>`${g}${D}A`,down:(D=1)=>`${g}${D}B`,forward:(D=1)=>`${g}${D}C`,backward:(D=1)=>`${g}${D}D`,nextLine:(D=1)=>`${g}E`.repeat(D),prevLine:(D=1)=>`${g}F`.repeat(D),left:`${g}G`,hide:`${g}?25l`,show:`${g}?25h`,save:`\x1b7`,restore:`\x1b8`},v={screen:`${g}2J`,up:(D=1)=>`${g}1J`.repeat(D),down:(D=1)=>`${g}J`.repeat(D),line:`${g}2K`,lineEnd:`${g}K`,lineStart:`${g}1K`,lines(D){let u="";for(let t=0;t<D;t++)u+=this.line+(t<D-1?b.up():"");return D&&(u+=b.left),u}};var w={cursor:b,erase:v};function y(D){if("string"!=typeof D)throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(function({onlyFirst:D=!1}={}){return RegExp("[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)|(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))",D?void 0:"g")}(),"")}function _(D){return D&&D.__esModule&&Object.prototype.hasOwnProperty.call(D,"default")?D.default:D}var x={exports:{}};!function(D){var u={};function t(D){return D.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}D.exports=u,u.eastAsianWidth=function(D){var u=D.charCodeAt(0),t=2==D.length?D.charCodeAt(1):0,e=u;return 55296<=u&&u<=56319&&56320<=t&&t<=57343&&(u&=1023,t&=1023,e=(u<<10|t)+65536),12288==e||65281<=e&&e<=65376||65504<=e&&e<=65510?"F":8361==e||65377<=e&&e<=65470||65474<=e&&e<=65479||65482<=e&&e<=65487||65490<=e&&e<=65495||65498<=e&&e<=65500||65512<=e&&e<=65518?"H":4352<=e&&e<=4447||4515<=e&&e<=4519||4602<=e&&e<=4607||9001<=e&&e<=9002||11904<=e&&e<=11929||11931<=e&&e<=12019||12032<=e&&e<=12245||12272<=e&&e<=12283||12289<=e&&e<=12350||12353<=e&&e<=12438||12441<=e&&e<=12543||12549<=e&&e<=12589||12593<=e&&e<=12686||12688<=e&&e<=12730||12736<=e&&e<=12771||12784<=e&&e<=12830||12832<=e&&e<=12871||12880<=e&&e<=13054||13056<=e&&e<=19903||19968<=e&&e<=42124||42128<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||55216<=e&&e<=55238||55243<=e&&e<=55291||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65106||65108<=e&&e<=65126||65128<=e&&e<=65131||110592<=e&&e<=110593||127488<=e&&e<=127490||127504<=e&&e<=127546||127552<=e&&e<=127560||127568<=e&&e<=127569||131072<=e&&e<=194367||177984<=e&&e<=196605||196608<=e&&e<=262141?"W":32<=e&&e<=126||162<=e&&e<=163||165<=e&&e<=166||172==e||175==e||10214<=e&&e<=10221||10629<=e&&e<=10630?"Na":161==e||164==e||167<=e&&e<=168||170==e||173<=e&&e<=174||176<=e&&e<=180||182<=e&&e<=186||188<=e&&e<=191||198==e||208==e||215<=e&&e<=216||222<=e&&e<=225||230==e||232<=e&&e<=234||236<=e&&e<=237||240==e||242<=e&&e<=243||247<=e&&e<=250||252==e||254==e||257==e||273==e||275==e||283==e||294<=e&&e<=295||299==e||305<=e&&e<=307||312==e||319<=e&&e<=322||324==e||328<=e&&e<=331||333==e||338<=e&&e<=339||358<=e&&e<=359||363==e||462==e||464==e||466==e||468==e||470==e||472==e||474==e||476==e||593==e||609==e||708==e||711==e||713<=e&&e<=715||717==e||720==e||728<=e&&e<=731||733==e||735==e||768<=e&&e<=879||913<=e&&e<=929||931<=e&&e<=937||945<=e&&e<=961||963<=e&&e<=969||1025==e||1040<=e&&e<=1103||1105==e||8208==e||8211<=e&&e<=8214||8216<=e&&e<=8217||8220<=e&&e<=8221||8224<=e&&e<=8226||8228<=e&&e<=8231||8240==e||8242<=e&&e<=8243||8245==e||8251==e||8254==e||8308==e||8319==e||8321<=e&&e<=8324||8364==e||8451==e||8453==e||8457==e||8467==e||8470==e||8481<=e&&e<=8482||8486==e||8491==e||8531<=e&&e<=8532||8539<=e&&e<=8542||8544<=e&&e<=8555||8560<=e&&e<=8569||8585==e||8592<=e&&e<=8601||8632<=e&&e<=8633||8658==e||8660==e||8679==e||8704==e||8706<=e&&e<=8707||8711<=e&&e<=8712||8715==e||8719==e||8721==e||8725==e||8730==e||8733<=e&&e<=8736||8739==e||8741==e||8743<=e&&e<=8748||8750==e||8756<=e&&e<=8759||8764<=e&&e<=8765||8776==e||8780==e||8786==e||8800<=e&&e<=8801||8804<=e&&e<=8807||8810<=e&&e<=8811||8814<=e&&e<=8815||8834<=e&&e<=8835||8838<=e&&e<=8839||8853==e||8857==e||8869==e||8895==e||8978==e||9312<=e&&e<=9449||9451<=e&&e<=9547||9552<=e&&e<=9587||9600<=e&&e<=9615||9618<=e&&e<=9621||9632<=e&&e<=9633||9635<=e&&e<=9641||9650<=e&&e<=9651||9654<=e&&e<=9655||9660<=e&&e<=9661||9664<=e&&e<=9665||9670<=e&&e<=9672||9675==e||9678<=e&&e<=9681||9698<=e&&e<=9701||9711==e||9733<=e&&e<=9734||9737==e||9742<=e&&e<=9743||9748<=e&&e<=9749||9756==e||9758==e||9792==e||9794==e||9824<=e&&e<=9825||9827<=e&&e<=9829||9831<=e&&e<=9834||9836<=e&&e<=9837||9839==e||9886<=e&&e<=9887||9918<=e&&e<=9919||9924<=e&&e<=9933||9935<=e&&e<=9953||9955==e||9960<=e&&e<=9983||10045==e||10071==e||10102<=e&&e<=10111||11093<=e&&e<=11097||12872<=e&&e<=12879||57344<=e&&e<=63743||65024<=e&&e<=65039||65533==e||127232<=e&&e<=127242||127248<=e&&e<=127277||127280<=e&&e<=127337||127344<=e&&e<=127386||917760<=e&&e<=917999||983040<=e&&e<=1048573||1048576<=e&&e<=1114109?"A":"N"},u.characterLength=function(D){var u=this.eastAsianWidth(D);return"F"==u||"W"==u||"A"==u?2:1},u.length=function(D){for(var u=t(D),e=0,r=0;r<u.length;r++)e+=this.characterLength(u[r]);return e},u.slice=function(D,e,r){textLen=u.length(D),r=r||1,(e=e||0)<0&&(e=textLen+e),r<0&&(r=textLen+r);for(var F="",i=0,s=t(D),n=0;n<s.length;n++){var o=s[n],C=u.length(o);if(i>=e-(2==C?1:0)){if(i+C<=r)F+=o;else break}i+=C}return F}}(x);let $=_(x.exports),O=_(function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g});function k(D,u={}){if("string"!=typeof D||0===D.length||(u={ambiguousIsNarrow:!0,...u},0===(D=y(D)).length))return 0;D=D.replace(O()," ");let t=u.ambiguousIsNarrow?1:2,e=0;for(let u of D){let D=u.codePointAt(0);if(!(D<=31)&&(!(D>=127)||!(D<=159))&&(!(D>=768)||!(D<=879)))switch($.eastAsianWidth(u)){case"F":case"W":e+=2;break;case"A":e+=t;break;default:e+=1}}return e}let T=(D=0)=>u=>`\x1b[${u+D}m`,j=(D=0)=>u=>`\x1b[${38+D};5;${u}m`,S=(D=0)=>(u,t,e)=>`\x1b[${38+D};2;${u};${t};${e}m`,M={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(M.modifier),[...Object.keys(M.color),...Object.keys(M.bgColor)];let P=function(){let D=new Map;for(let[u,t]of Object.entries(M)){for(let[u,e]of Object.entries(t))M[u]={open:`\x1b[${e[0]}m`,close:`\x1b[${e[1]}m`},t[u]=M[u],D.set(e[0],e[1]);Object.defineProperty(M,u,{value:t,enumerable:!1})}return Object.defineProperty(M,"codes",{value:D,enumerable:!1}),M.color.close="\x1b[39m",M.bgColor.close="\x1b[49m",M.color.ansi=T(),M.color.ansi256=j(),M.color.ansi16m=S(),M.bgColor.ansi=T(10),M.bgColor.ansi256=j(10),M.bgColor.ansi16m=S(10),Object.defineProperties(M,{rgbToAnsi256:{value:(D,u,t)=>D===u&&u===t?D<8?16:D>248?231:Math.round((D-8)/247*24)+232:16+36*Math.round(D/255*5)+6*Math.round(u/255*5)+Math.round(t/255*5),enumerable:!1},hexToRgb:{value:D=>{let u=/[a-f\d]{6}|[a-f\d]{3}/i.exec(D.toString(16));if(!u)return[0,0,0];let[t]=u;3===t.length&&(t=[...t].map(D=>D+D).join(""));let e=Number.parseInt(t,16);return[e>>16&255,e>>8&255,255&e]},enumerable:!1},hexToAnsi256:{value:D=>M.rgbToAnsi256(...M.hexToRgb(D)),enumerable:!1},ansi256ToAnsi:{value:D=>{let u,t,e;if(D<8)return 30+D;if(D<16)return 90+(D-8);if(D>=232)t=u=((D-232)*10+8)/255,e=u;else{let r=(D-=16)%36;u=Math.floor(D/36)/5,t=Math.floor(r/6)/5,e=r%6/5}let r=2*Math.max(u,t,e);if(0===r)return 30;let F=30+(Math.round(e)<<2|Math.round(t)<<1|Math.round(u));return 2===r&&(F+=60),F},enumerable:!1},rgbToAnsi:{value:(D,u,t)=>M.ansi256ToAnsi(M.rgbToAnsi256(D,u,t)),enumerable:!1},hexToAnsi:{value:D=>M.ansi256ToAnsi(M.hexToAnsi256(D)),enumerable:!1}}),M}(),N=new Set(["\x1b","\x9b"]),L="]8;;",R=D=>`${N.values().next().value}[${D}m`,I=D=>`${N.values().next().value}${L}${D}\x07`,W=D=>D.split(" ").map(D=>k(D)),z=(D,u,t)=>{let e=[...u],r=!1,F=!1,i=k(y(D[D.length-1]));for(let[u,s]of e.entries()){let n=k(s);if(i+n<=t?D[D.length-1]+=s:(D.push(s),i=0),N.has(s)&&(r=!0,F=e.slice(u+1).join("").startsWith(L)),r){F?"\x07"===s&&(r=!1,F=!1):"m"===s&&(r=!1);continue}(i+=n)===t&&u<e.length-1&&(D.push(""),i=0)}!i&&D[D.length-1].length>0&&D.length>1&&(D[D.length-2]+=D.pop())},G=D=>{let u=D.split(" "),t=u.length;for(;t>0&&!(k(u[t-1])>0);)t--;return t===u.length?D:u.slice(0,t).join(" ")+u.slice(t).join("")},H=(D,u,t={})=>{if(!1!==t.trim&&""===D.trim())return"";let e="",r,F,i=W(D),s=[""];for(let[e,r]of D.split(" ").entries()){!1!==t.trim&&(s[s.length-1]=s[s.length-1].trimStart());let D=k(s[s.length-1]);if(0!==e&&(D>=u&&(!1===t.wordWrap||!1===t.trim)&&(s.push(""),D=0),(D>0||!1===t.trim)&&(s[s.length-1]+=" ",D++)),t.hard&&i[e]>u){let t=u-D,F=1+Math.floor((i[e]-t-1)/u);Math.floor((i[e]-1)/u)<F&&s.push(""),z(s,r,u);continue}if(D+i[e]>u&&D>0&&i[e]>0){if(!1===t.wordWrap&&D<u){z(s,r,u);continue}s.push("")}if(D+i[e]>u&&!1===t.wordWrap){z(s,r,u);continue}s[s.length-1]+=r}!1!==t.trim&&(s=s.map(D=>G(D)));let n=[...s.join(`
2
- `)];for(let[D,u]of n.entries()){if(e+=u,N.has(u)){let{groups:u}=RegExp(`(?:\\[(?<code>\\d+)m|\\${L}(?<uri>.*)\x07)`).exec(n.slice(D).join(""))||{groups:{}};if(void 0!==u.code){let D=Number.parseFloat(u.code);r=39===D?void 0:D}else void 0!==u.uri&&(F=0===u.uri.length?void 0:u.uri)}let t=P.codes.get(Number(r));n[D+1]===`
3
- `?(F&&(e+=I("")),r&&t&&(e+=R(t))):u===`
4
- `&&(r&&t&&(e+=R(r)),F&&(e+=I(F)))}return e};function K(D,u,t){return String(D).normalize().replace(/\r\n/g,`
5
- `).split(`
6
- `).map(D=>H(D,u,t)).join(`
7
- `)}var J=Object.defineProperty,U=(D,u,t)=>u in D?J(D,u,{enumerable:!0,configurable:!0,writable:!0,value:t}):D[u]=t,V=(D,u,t)=>(U(D,"symbol"!=typeof u?u+"":u,t),t);let Y=Symbol("clack:cancel");function Z(D,u){D.isTTY&&D.setRawMode(u)}let X=new Map([["k","up"],["j","down"],["h","left"],["l","right"]]),q=new Set(["up","down","left","right","space","enter"]),Q=class{constructor({render:D,input:u=e,output:t=r,...F},i=!0){V(this,"input"),V(this,"output"),V(this,"rl"),V(this,"opts"),V(this,"_track",!1),V(this,"_render"),V(this,"_cursor",0),V(this,"state","initial"),V(this,"value"),V(this,"error",""),V(this,"subscribers",new Map),V(this,"_prevFrame",""),this.opts=F,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=D.bind(this),this._track=i,this.input=u,this.output=t}prompt(){let D=new i(0);return D._write=(D,u,t)=>{this._track&&(this.value=this.rl.line.replace(/\t/g,""),this._cursor=this.rl.cursor,this.emit("value",this.value)),t()},this.input.pipe(D),this.rl=F.createInterface({input:this.input,output:D,tabSize:2,prompt:"",escapeCodeTimeout:50}),F.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),void 0!==this.opts.initialValue&&this._track&&this.rl.write(this.opts.initialValue),this.input.on("keypress",this.onKeypress),Z(this.input,!0),this.output.on("resize",this.render),this.render(),new Promise((D,u)=>{this.once("submit",()=>{this.output.write(w.cursor.show),this.output.off("resize",this.render),Z(this.input,!1),D(this.value)}),this.once("cancel",()=>{this.output.write(w.cursor.show),this.output.off("resize",this.render),Z(this.input,!1),D(Y)})})}on(D,u){let t=this.subscribers.get(D)??[];t.push({cb:u}),this.subscribers.set(D,t)}once(D,u){let t=this.subscribers.get(D)??[];t.push({cb:u,once:!0}),this.subscribers.set(D,t)}emit(D,...u){let t=this.subscribers.get(D)??[],e=[];for(let D of t)D.cb(...u),D.once&&e.push(()=>t.splice(t.indexOf(D),1));for(let D of e)D()}unsubscribe(){this.subscribers.clear()}onKeypress(D,u){if("error"===this.state&&(this.state="active"),u?.name&&!this._track&&X.has(u.name)&&this.emit("cursor",X.get(u.name)),u?.name&&q.has(u.name)&&this.emit("cursor",u.name),D&&("y"===D.toLowerCase()||"n"===D.toLowerCase())&&this.emit("confirm","y"===D.toLowerCase())," "===D&&this.opts.placeholder&&(this.value||(this.rl.write(this.opts.placeholder),this.emit("value",this.opts.placeholder))),D&&this.emit("key",D.toLowerCase()),u?.name==="return"){if(this.opts.validate){let D=this.opts.validate(this.value);D&&(this.error=D,this.state="error",this.rl.write(this.value))}"error"!==this.state&&(this.state="submit")}"\x03"===D&&(this.state="cancel"),("submit"===this.state||"cancel"===this.state)&&this.emit("finalize"),this.render(),("submit"===this.state||"cancel"===this.state)&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
8
- `),Z(this.input,!1),this.rl.close(),this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let D=K(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
9
- `).length-1;this.output.write(w.cursor.move(-999,-1*D))}render(){let D=K(this._render(this)??"",process.stdout.columns,{hard:!0});if(D!==this._prevFrame){if("initial"===this.state)this.output.write(w.cursor.hide);else{let u=function(D,u){if(D===u)return;let t=D.split(`
10
- `),e=u.split(`
11
- `),r=[];for(let D=0;D<Math.max(t.length,e.length);D++)t[D]!==e[D]&&r.push(D);return r}(this._prevFrame,D);if(this.restoreCursor(),u&&u?.length===1){let t=u[0];this.output.write(w.cursor.move(0,t)),this.output.write(w.erase.lines(1));let e=D.split(`
12
- `);this.output.write(e[t]),this._prevFrame=D,this.output.write(w.cursor.move(0,e.length-t-1));return}if(u&&u?.length>1){let t=u[0];this.output.write(w.cursor.move(0,t)),this.output.write(w.erase.down());let e=D.split(`
13
- `).slice(t);this.output.write(e.join(`
14
- `)),this._prevFrame=D;return}this.output.write(w.erase.down())}this.output.write(D),"initial"===this.state&&(this.state="active"),this._prevFrame=D}}};class DD extends Q{get cursor(){return this.value?0:1}get _value(){return 0===this.cursor}constructor(D){super(D,!1),this.value=!!D.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",D=>{this.output.write(w.cursor.move(0,-1)),this.value=D,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}globalThis.process.platform.startsWith("win");let Du="win32"!==t.platform?"linux"!==t.env.TERM:!!t.env.CI||!!t.env.WT_SESSION||!!t.env.TERMINUS_SUBLIME||"{cmd::Cmder}"===t.env.ConEmuTask||"Terminus-Sublime"===t.env.TERM_PROGRAM||"vscode"===t.env.TERM_PROGRAM||"xterm-256color"===t.env.TERM||"alacritty"===t.env.TERM||"JetBrains-JediTerm"===t.env.TERMINAL_EMULATOR,Dt=(D,u)=>Du?D:u,De=Dt("◆","*"),Dr=Dt("■","x"),DF=Dt("▲","x"),Di=Dt("◇","o"),Ds=Dt("│","|"),Dn=Dt("└","—"),Do=Dt("●",">"),DC=Dt("○"," "),DE=D=>{switch(D){case"initial":case"active":return s.cyan(De);case"cancel":return s.red(Dr);case"error":return s.yellow(DF);case"submit":return s.green(Di)}};var Da=/*#__PURE__*/Object.freeze({__proto__:null,confirm:D=>{let u=D.active??"Yes",t=D.inactive??"No";return new DD({active:u,inactive:t,initialValue:D.initialValue??!0,render(){let e=`${s.gray(Ds)}
15
- ${DE(this.state)} ${D.message}
16
- `,r=this.value?u:t;switch(this.state){case"submit":return`${e}${s.gray(Ds)} ${s.dim(r)}`;case"cancel":return`${e}${s.gray(Ds)} ${s.strikethrough(s.dim(r))}
17
- ${s.gray(Ds)}`;default:return`${e}${s.cyan(Ds)} ${this.value?`${s.green(Do)} ${u}`:`${s.dim(DC)} ${s.dim(u)}`} ${s.dim("/")} ${this.value?`${s.dim(DC)} ${s.dim(t)}`:`${s.green(Do)} ${t}`}
18
- ${s.cyan(Dn)}
19
- `}}}).prompt()}});let Dl=["npm","yarn","yarn@berry","pnpm","pnpm@6","bun"],Dc={"bun.lockb":"bun","pnpm-lock.yaml":"pnpm","yarn.lock":"yarn","package-lock.json":"npm","npm-shrinkwrap.json":"npm"};async function Dh({cwd:D,onUnknown:u}={}){for(let e of function*(D=t.cwd()){let u=a.resolve(D),{root:e}=a.parse(u);for(;u&&u!==e;)yield u,u=a.dirname(u)}(D)){for(let D of Object.keys(Dc))if(await DB(a.join(e,D))){let t=Dc[D],r=await Dp(a.join(e,"package.json"),u);if(r)return r;return{name:t,agent:t}}let D=await Dp(a.join(e,"package.json"),u);if(D)return D}return null}async function Dp(D,u){if(!D||!await DB(D))return null;try{let t;let e=JSON.parse(C.readFileSync(D,"utf8"));if("string"==typeof e.packageManager){let[D,r]=e.packageManager.replace(/^\^/,"").split("@"),F=r;if("yarn"===D&&Number.parseInt(r)>1)return t="yarn@berry",F="berry",{name:D,agent:t,version:F};if("pnpm"===D&&7>Number.parseInt(r))return t="pnpm@6",{name:D,agent:t,version:F};if(Dl.includes(D))return t=D,{name:D,agent:t,version:F};return u?.(e.packageManager)??null}}catch{}return null}async function DB(D){try{if((await E.stat(D)).isFile())return!0}catch{}return!1}let Df=f(import.meta.url);var Dd=Object.create,Dm=Object.defineProperty,DA=Object.getOwnPropertyDescriptor,Dg=Object.getOwnPropertyNames,Db=Object.getPrototypeOf,Dv=Object.prototype.hasOwnProperty,Dw=(D=function(D){if("u">typeof Df)return Df.apply(this,arguments);throw Error('Dynamic require of "'+D+'" is not supported')},"u">typeof Df?Df:"u">typeof Proxy?new Proxy(D,{get:(D,u)=>("u">typeof Df?Df:D)[u]}):D),Dy=(D,u)=>()=>(u||D((u={exports:{}}).exports,u),u.exports),D_=Dy((D,u)=>{u.exports=r,r.sync=function(D,u){return e(t.statSync(D),D,u)};var t=Dw("fs");function e(D,u,t){return!!(D.isSymbolicLink()||D.isFile())&&function(D,u){var t=void 0!==u.pathExt?u.pathExt:process.env.PATHEXT;if(!t||-1!==(t=t.split(";")).indexOf(""))return!0;for(var e=0;e<t.length;e++){var r=t[e].toLowerCase();if(r&&D.substr(-r.length).toLowerCase()===r)return!0}return!1}(u,t)}function r(D,u,r){t.stat(D,function(t,F){r(t,!t&&e(F,D,u))})}}),Dx=Dy((D,u)=>{u.exports=e,e.sync=function(D,u){return r(t.statSync(D),u)};var t=Dw("fs");function e(D,u,e){t.stat(D,function(D,t){e(D,!D&&r(t,u))})}function r(D,u){var t,e,r,F,i,s,n;return D.isFile()&&(t=D.mode,e=D.uid,r=D.gid,F=void 0!==u.uid?u.uid:process.getuid&&process.getuid(),i=void 0!==u.gid?u.gid:process.getgid&&process.getgid(),s=parseInt("100",8),n=parseInt("010",8),t&parseInt("001",8)||t&n&&r===i||t&s&&e===F||t&(s|n)&&0===F)}}),D$=Dy((D,u)=>{var t;function e(D,u,r){if("function"==typeof u&&(r=u,u={}),!r){if("function"!=typeof Promise)throw TypeError("callback not provided");return new Promise(function(t,r){e(D,u||{},function(D,u){D?r(D):t(u)})})}t(D,u||{},function(D,t){D&&("EACCES"===D.code||u&&u.ignoreErrors)&&(D=null,t=!1),r(D,t)})}Dw("fs"),"win32"===process.platform||global.TESTING_WINDOWS?t=D_():t=Dx(),u.exports=e,e.sync=function(D,u){try{return t.sync(D,u||{})}catch(D){if(u&&u.ignoreErrors||"EACCES"===D.code)return!1;throw D}}}),DO=Dy((D,u)=>{var t="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,e=Dw("path"),r=t?";":":",F=D$(),i=D=>Object.assign(Error(`not found: ${D}`),{code:"ENOENT"}),s=(D,u)=>{let e=u.colon||r,F=D.match(/\//)||t&&D.match(/\\/)?[""]:[...t?[process.cwd()]:[],...(u.path||process.env.PATH||"").split(e)],i=t?u.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=t?i.split(e):[""];return t&&-1!==D.indexOf(".")&&""!==s[0]&&s.unshift(""),{pathEnv:F,pathExt:s,pathExtExe:i}},n=(D,u,t)=>{"function"==typeof u&&(t=u,u={}),u||(u={});let{pathEnv:r,pathExt:n,pathExtExe:o}=s(D,u),C=[],E=t=>new Promise((F,s)=>{if(t===r.length)return u.all&&C.length?F(C):s(i(D));let n=r[t],o=/^".*"$/.test(n)?n.slice(1,-1):n,E=e.join(o,D);F(a(!o&&/^\.[\\\/]/.test(D)?D.slice(0,2)+E:E,t,0))}),a=(D,t,e)=>new Promise((r,i)=>{if(e===n.length)return r(E(t+1));let s=n[e];F(D+s,{pathExt:o},(F,i)=>{if(!F&&i){if(!u.all)return r(D+s);C.push(D+s)}return r(a(D,t,e+1))})});return t?E(0).then(D=>t(null,D),t):E(0)};u.exports=n,n.sync=(D,u)=>{let{pathEnv:t,pathExt:r,pathExtExe:n}=s(D,u=u||{}),o=[];for(let i=0;i<t.length;i++){let s=t[i],C=/^".*"$/.test(s)?s.slice(1,-1):s,E=e.join(C,D),a=!C&&/^\.[\\\/]/.test(D)?D.slice(0,2)+E:E;for(let D=0;D<r.length;D++){let t=a+r[D];try{if(F.sync(t,{pathExt:n})){if(!u.all)return t;o.push(t)}}catch{}}}if(u.all&&o.length)return o;if(u.nothrow)return null;throw i(D)}}),Dk=Dy((D,u)=>{var t=(D={})=>{let u=D.env||process.env;return"win32"!==(D.platform||process.platform)?"PATH":Object.keys(u).reverse().find(D=>"PATH"===D.toUpperCase())||"Path"};u.exports=t,u.exports.default=t}),DT=Dy((D,u)=>{var t=Dw("path"),e=DO(),r=Dk();function F(D,u){let F,i=D.options.env||process.env,s=process.cwd(),n=null!=D.options.cwd,o=n&&void 0!==process.chdir&&!process.chdir.disabled;if(o)try{process.chdir(D.options.cwd)}catch{}try{F=e.sync(D.command,{path:i[r({env:i})],pathExt:u?t.delimiter:void 0})}catch{}finally{o&&process.chdir(s)}return F&&(F=t.resolve(n?D.options.cwd:"",F)),F}u.exports=function(D){return F(D)||F(D,!0)}}),Dj=Dy((D,u)=>{var t=/([()\][%!^"`<>&|;, *?])/g;u.exports.command=function(D){return D=D.replace(t,"^$1")},u.exports.argument=function(D,u){return D=(D=(D=`${D}`).replace(/(\\*)"/g,'$1$1\\"')).replace(/(\\*)$/,"$1$1"),D=(D=`"${D}"`).replace(t,"^$1"),u&&(D=D.replace(t,"^$1")),D}}),DS=Dy((D,u)=>{u.exports=/^#!(.*)/}),DM=Dy((D,u)=>{var t=DS();u.exports=(D="")=>{let u=D.match(t);if(!u)return null;let[e,r]=u[0].replace(/#! ?/,"").split(" "),F=e.split("/").pop();return"env"===F?r:r?`${F} ${r}`:F}}),DP=Dy((D,u)=>{var t=Dw("fs"),e=DM();u.exports=function(D){let u=Buffer.alloc(150),r;try{r=t.openSync(D,"r"),t.readSync(r,u,0,150,0),t.closeSync(r)}catch{}return e(u.toString())}}),DN=Dy((D,u)=>{var t=Dw("path"),e=DT(),r=Dj(),F=DP(),i="win32"===process.platform,s=/\.(?:com|exe)$/i,n=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;u.exports=function(D,u,o){u&&!Array.isArray(u)&&(o=u,u=null);let C={command:D,args:u=u?u.slice(0):[],options:o=Object.assign({},o),file:void 0,original:{command:D,args:u}};return o.shell?C:function(D){let u;if(!i)return D;let o=(D.file=e(D),(u=D.file&&F(D.file))?(D.args.unshift(D.file),D.command=u,e(D)):D.file),C=!s.test(o);if(D.options.forceShell||C){let u=n.test(o);D.command=t.normalize(D.command),D.command=r.command(D.command),D.args=D.args.map(D=>r.argument(D,u));let e=[D.command].concat(D.args).join(" ");D.args=["/d","/s","/c",`"${e}"`],D.command=process.env.comspec||"cmd.exe",D.options.windowsVerbatimArguments=!0}return D}(C)}}),DL=Dy((D,u)=>{var t="win32"===process.platform;function e(D,u){return Object.assign(Error(`${u} ${D.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${u} ${D.command}`,path:D.command,spawnargs:D.args})}function r(D,u){return t&&1===D&&!u.file?e(u.original,"spawn"):null}u.exports={hookChildProcess:function(D,u){if(!t)return;let e=D.emit;D.emit=function(t,F){if("exit"===t){let t=r(F,u);if(t)return e.call(D,"error",t)}return e.apply(D,arguments)}},verifyENOENT:r,verifyENOENTSync:function(D,u){return t&&1===D&&!u.file?e(u.original,"spawnSync"):null},notFoundError:e}}),DR=Dy((D,u)=>{var t=Dw("child_process"),e=DN(),r=DL();function F(D,u,F){let i=e(D,u,F),s=t.spawn(i.command,i.args,i.options);return r.hookChildProcess(s,i),s}u.exports=F,u.exports.spawn=F,u.exports.sync=function(D,u,F){let i=e(D,u,F),s=t.spawnSync(i.command,i.args,i.options);return s.error=s.error||r.verifyENOENTSync(s.status,i),s},u.exports._parse=e,u.exports._enoent=r}),DI=/^path$/i,DW={key:"PATH",value:""},Dz=D=>{let u=D.length,t=new m,e=()=>{0==--u&&t.emit("end")};for(let u of D)u.pipe(t,{end:!1}),u.on("end",e);return t},DG=((D,u,t,e)=>{if(u&&"object"==typeof u||"function"==typeof u)for(let r of Dg(u))Dv.call(D,r)||r===t||Dm(D,r,{get:()=>u[r],enumerable:!(e=DA(u,r))||e.enumerable});return D})(Dm(null!=(u=DR())?Dd(Db(u)):{},"default",{value:u,enumerable:!0}),u),DH=class extends Error{result;output;get exitCode(){if(null!==this.result.exitCode)return this.result.exitCode}constructor(D,u){super(`Process exited with non-zero status (${D.exitCode})`),this.result=D,this.output=u}},DK={timeout:void 0,persist:!1},DJ={windowsHide:!0},DU=class{_process;_aborted=!1;_options;_command;_args;_resolveClose;_processClosed;_thrownError;get process(){return this._process}get pid(){return this._process?.pid}get exitCode(){if(this._process&&null!==this._process.exitCode)return this._process.exitCode}constructor(D,u,t){this._options={...DK,...t},this._command=D,this._args=u??[],this._processClosed=new Promise(D=>{this._resolveClose=D})}kill(D){return this._process?.kill(D)===!0}get aborted(){return this._aborted}get killed(){return this._process?.killed===!0}pipe(D,u,t){return DY(D,u,{...t,stdin:this})}async *[Symbol.asyncIterator](){let D=this._process;if(!D)return;let u=[];this._streamErr&&u.push(this._streamErr),this._streamOut&&u.push(this._streamOut);let t=Dz(u);for await(let D of A.createInterface({input:t}))yield D.toString();if(await this._processClosed,D.removeAllListeners(),this._thrownError)throw this._thrownError;if(this._options?.throwOnError&&0!==this.exitCode&&void 0!==this.exitCode)throw new DH(this)}async _waitForOutput(){let D=this._process;if(!D)throw Error("No process was started");let u="",t="";if(this._streamErr)for await(let D of this._streamErr)u+=D.toString();if(this._streamOut)for await(let D of this._streamOut)t+=D.toString();if(await this._processClosed,this._options?.stdin&&await this._options.stdin,D.removeAllListeners(),this._thrownError)throw this._thrownError;let e={stderr:u,stdout:t};if(this._options.throwOnError&&0!==this.exitCode&&void 0!==this.exitCode)throw new DH(this,e);return e}then(D,u){return this._waitForOutput().then(D,u)}_streamOut;_streamErr;spawn(){var D,u,t;let e,r,F=o(),i=this._options,s={...DJ,...i.nodeOptions},n=[];this._resetState(),void 0!==i.timeout&&n.push(AbortSignal.timeout(i.timeout)),void 0!==i.signal&&n.push(i.signal),!0===i.persist&&(s.detached=!0),n.length>0&&(s.signal=function(D){let u=new AbortController;for(let t of D){if(t.aborted)return u.abort(),t;let D=()=>{u.abort(t.reason)};t.addEventListener("abort",D,{signal:u.signal})}return u.signal}(n)),s.env=(D=s.env,r=function(D,u){let t=u.value.split(h),e=D,r;do t.push(p(e,"node_modules",".bin")),r=e,e=B(e);while(e!==r);return{key:u.key,value:t.join(h)}}(F,function(D){for(let u in D){if(!Object.prototype.hasOwnProperty.call(D,u)||!DI.test(u))continue;let t=D[u];return t?{key:u,value:t}:DW}return DW}(e={...process.env,...D})),e[r.key]=r.value,e);let{command:C,args:E}=(u=this._command,t=this._args,{command:c(u),args:t??[]}),a=(0,DG._parse)(C,E,s),l=d(a.command,a.args,a.options);if(l.stderr&&(this._streamErr=l.stderr),l.stdout&&(this._streamOut=l.stdout),this._process=l,l.once("error",this._onError),l.once("close",this._onClose),void 0!==i.stdin&&l.stdin&&i.stdin.process){let{stdout:D}=i.stdin.process;D&&D.pipe(l.stdin)}}_resetState(){this._aborted=!1,this._processClosed=new Promise(D=>{this._resolveClose=D}),this._thrownError=void 0}_onError=D=>{if("AbortError"===D.name&&(!(D.cause instanceof Error)||"TimeoutError"!==D.cause.name)){this._aborted=!0;return}this._thrownError=D};_onClose=()=>{this._resolveClose&&this._resolveClose()}},DV=(D,u,t)=>{let e=new DU(D,u,t);return e.spawn(),e},DY=DV;async function DZ(D=n.cwd()){let u=await Dh({cwd:D,onUnknown(D){console.warn("[@antfu/install-pkg] Unknown packageManager:",D)}});return u?.agent||null}async function DX(D,u={}){let t=u.packageManager||await DZ(u.cwd)||"npm",[e]=t.split("@");Array.isArray(D)||(D=[D]);let r=u.additionalArgs||[];return u.preferOffline&&("yarn@berry"===t?r.unshift("--cached"):r.unshift("--prefer-offline")),"pnpm"===e&&l(p(u.cwd??n.cwd(),"pnpm-workspace.yaml"))&&r.unshift("-w"),DV(e,["yarn"===e?"add":"install",u.dev?"-D":"",...r,...D].filter(Boolean),{nodeOptions:{stdio:u.silent?"ignore":"inherit",cwd:u.cwd},throwOnError:!0})}var Dq=/*#__PURE__*/Object.freeze({__proto__:null,detectPackageManager:DZ,installPackage:DX});export{Dq as a,Da as i};