js-style-kit 0.1.0 → 0.1.2
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/README.md +14 -1
- package/dist/{chunk-FFDZIX5V.js → chunk-3QISP36C.js} +2 -2
- package/dist/{chunk-246GSZSY.js → chunk-6WWZTVUE.js} +5 -6
- package/dist/chunk-6WWZTVUE.js.map +1 -0
- package/dist/{chunk-24D5VXCF.js → chunk-EBXXF3BN.js} +3 -3
- package/dist/{chunk-NBIRBRD5.js → chunk-F6JAHALQ.js} +16 -10
- package/dist/chunk-F6JAHALQ.js.map +1 -0
- package/dist/{chunk-2F7EYOEC.js → chunk-GBJI557O.js} +2 -2
- package/dist/{chunk-FZZIRGNP.js → chunk-HLX2OWWB.js} +2 -2
- package/dist/{chunk-FKHL7GEP.js → chunk-LGB33CUY.js} +2 -2
- package/dist/{chunk-UWPH7ZM3.js → chunk-M4HZ67BH.js} +2 -2
- package/dist/{chunk-XLCCYRR6.js → chunk-MQCYNRXY.js} +5 -1
- package/dist/chunk-MQCYNRXY.js.map +1 -0
- package/dist/chunk-OPQZGCVL.js +26 -0
- package/dist/chunk-OPQZGCVL.js.map +1 -0
- package/dist/{chunk-E5VWJJPO.js → chunk-SIH4WAXK.js} +2 -2
- package/dist/{chunk-3OHUY7NC.js → chunk-XXWXCIGZ.js} +2 -1
- package/dist/chunk-XXWXCIGZ.js.map +1 -0
- package/dist/{chunk-ATE34YNW.js → chunk-Y4XKZK6J.js} +6 -6
- package/dist/{chunk-ATE34YNW.js.map → chunk-Y4XKZK6J.js.map} +1 -1
- package/dist/eslint/constants.d.ts +1 -0
- package/dist/eslint/constants.js +1 -1
- package/dist/eslint/ignores.js +2 -2
- package/dist/eslint/index.js +11 -10
- package/dist/eslint/index.test.js +49 -16
- package/dist/eslint/index.test.js.map +1 -1
- package/dist/eslint/javascript/config.js +3 -3
- package/dist/eslint/javascript/rules.js +1 -1
- package/dist/eslint/jsdoc/config.js +2 -2
- package/dist/eslint/perfectionist/config.js +2 -2
- package/dist/eslint/prefer-arrow-function/config.d.ts +12 -0
- package/dist/eslint/prefer-arrow-function/config.js +9 -0
- package/dist/eslint/prefer-arrow-function/config.js.map +1 -0
- package/dist/eslint/prefer-arrow-function/types.d.ts +17 -0
- package/dist/eslint/prefer-arrow-function/types.js +1 -0
- package/dist/eslint/prefer-arrow-function/types.js.map +1 -0
- package/dist/eslint/react/config.js +2 -2
- package/dist/eslint/react-compiler/config.js +2 -2
- package/dist/eslint/typescript/config.js +2 -2
- package/dist/index.js +12 -11
- package/dist/prettier/index.d.ts +6 -3
- package/dist/prettier/index.js +1 -1
- package/dist/prettier/index.test.js +26 -13
- package/dist/prettier/index.test.js.map +1 -1
- package/package.json +8 -6
- package/dist/chunk-246GSZSY.js.map +0 -1
- package/dist/chunk-3OHUY7NC.js.map +0 -1
- package/dist/chunk-NBIRBRD5.js.map +0 -1
- package/dist/chunk-XLCCYRR6.js.map +0 -1
- /package/dist/{chunk-FFDZIX5V.js.map → chunk-3QISP36C.js.map} +0 -0
- /package/dist/{chunk-24D5VXCF.js.map → chunk-EBXXF3BN.js.map} +0 -0
- /package/dist/{chunk-2F7EYOEC.js.map → chunk-GBJI557O.js.map} +0 -0
- /package/dist/{chunk-FZZIRGNP.js.map → chunk-HLX2OWWB.js.map} +0 -0
- /package/dist/{chunk-FKHL7GEP.js.map → chunk-LGB33CUY.js.map} +0 -0
- /package/dist/{chunk-UWPH7ZM3.js.map → chunk-M4HZ67BH.js.map} +0 -0
- /package/dist/{chunk-E5VWJJPO.js.map → chunk-SIH4WAXK.js.map} +0 -0
package/README.md
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
1
3
|
# `js-style-kit`
|
|
2
4
|
|
|
3
5
|
A zero-configuration style guide for ESLint and Prettier that provides sensible default settings and flexible configuration options.
|
|
@@ -77,7 +79,7 @@ export default eslintConfig({
|
|
|
77
79
|
|
|
78
80
|
#### Function Style Configuration
|
|
79
81
|
|
|
80
|
-
Controls how functions should be written
|
|
82
|
+
Controls how functions should be written. Some configurations are auto-fixable, but some require manual adjustment.
|
|
81
83
|
|
|
82
84
|
```js
|
|
83
85
|
// Enforce arrow functions (default)
|
|
@@ -204,6 +206,7 @@ import { prettierConfig } from "js-style-kit";
|
|
|
204
206
|
|
|
205
207
|
export default prettierConfig({
|
|
206
208
|
// All options shown with their default values
|
|
209
|
+
cssOrderPlugin: true, // Enable CSS order plugin
|
|
207
210
|
jsonSortPlugin: true, // Enable JSON sorting plugin
|
|
208
211
|
packageJsonPlugin: true, // Enable package.json sorting plugin
|
|
209
212
|
tailwindPlugin: false, // Enable Tailwind CSS plugin (boolean, string[], or options object)
|
|
@@ -233,6 +236,15 @@ tailwindPlugin: {
|
|
|
233
236
|
}
|
|
234
237
|
```
|
|
235
238
|
|
|
239
|
+
#### CSS Order Plugin
|
|
240
|
+
|
|
241
|
+
The CSS order plugin is enabled by default. It sorts CSS properties in a consistent order. You can disable it:
|
|
242
|
+
|
|
243
|
+
```js
|
|
244
|
+
// Disable CSS order plugin
|
|
245
|
+
cssOrderPlugin: false;
|
|
246
|
+
```
|
|
247
|
+
|
|
236
248
|
#### JSON Sorting
|
|
237
249
|
|
|
238
250
|
The JSON sorting plugin is enabled by default. You can disable it or configure it:
|
|
@@ -303,6 +315,7 @@ import { prettierConfig } from "js-style-kit";
|
|
|
303
315
|
|
|
304
316
|
export default prettierConfig({
|
|
305
317
|
tailwindPlugin: true,
|
|
318
|
+
cssOrderPlugin: true,
|
|
306
319
|
printWidth: 100,
|
|
307
320
|
singleQuote: true,
|
|
308
321
|
});
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-AHLHRIAC.js";
|
|
4
4
|
import {
|
|
5
5
|
configNames
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-XXWXCIGZ.js";
|
|
7
7
|
|
|
8
8
|
// src/eslint/typescript/config.ts
|
|
9
9
|
import tseslint from "typescript-eslint";
|
|
@@ -35,4 +35,4 @@ var tseslintConfig = (tsconfigPath) => {
|
|
|
35
35
|
export {
|
|
36
36
|
tseslintConfig
|
|
37
37
|
};
|
|
38
|
-
//# sourceMappingURL=chunk-
|
|
38
|
+
//# sourceMappingURL=chunk-3QISP36C.js.map
|
|
@@ -49,11 +49,10 @@ var baseEslintRules = (functionStyle) => ({
|
|
|
49
49
|
* 🚫 Not fixable - https://eslint.org/docs/rules/func-names
|
|
50
50
|
*/
|
|
51
51
|
"func-names": ["warn", "as-needed"],
|
|
52
|
-
"func-style":
|
|
53
|
-
|
|
54
|
-
functionStyle === "arrow" ? "
|
|
55
|
-
|
|
56
|
-
],
|
|
52
|
+
"func-style": (
|
|
53
|
+
// if arrow function, we use the prefer-arrow-functions plugin
|
|
54
|
+
functionStyle === "off" || functionStyle === "arrow" ? "off" : ["warn", functionStyle, { allowArrowFunctions: true }]
|
|
55
|
+
),
|
|
57
56
|
/**
|
|
58
57
|
* Require grouped accessor pairs in object literals and classes.
|
|
59
58
|
*
|
|
@@ -425,4 +424,4 @@ var baseEslintRules = (functionStyle) => ({
|
|
|
425
424
|
export {
|
|
426
425
|
baseEslintRules
|
|
427
426
|
};
|
|
428
|
-
//# sourceMappingURL=chunk-
|
|
427
|
+
//# sourceMappingURL=chunk-6WWZTVUE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/eslint/javascript/rules.ts"],"sourcesContent":["import type { EslintRuleConfig, FunctionStyle } from \"../types.js\";\n\ntype BaseRules = Record<string, EslintRuleConfig> & {\n \"func-style\"?: EslintRuleConfig<\n \"declaration\" | \"expression\",\n {\n allowArrowFunctions?: boolean;\n overrides?: {\n namedExports?: \"declaration\" | \"expression\" | \"ignore\";\n };\n }\n >;\n};\n\n/**\n * Generates the base set of ESLint rules with configurable function style enforcement.\n *\n * @param functionStyle - Controls how functions should be written. Can be:\n * - \"off\": Disables function style enforcement\n * - \"arrow\": Enforces arrow function expressions\n * - \"declaration\": Enforces function declarations\n * - \"expression\": Enforces function expressions\n * @returns An object containing ESLint rule configurations\n */\nexport const baseEslintRules = (\n functionStyle: \"off\" | FunctionStyle,\n): BaseRules => ({\n /**\n * Require return statements in array methods callbacks.\n *\n * 🚫 Not fixable -https://eslint.org/docs/rules/array-callback-return\n */\n \"array-callback-return\": [\n \"warn\",\n { allowImplicit: true, checkForEach: true },\n ],\n /**\n * Treat `var` statements as if they were block scoped.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/block-scoped-var\n */\n \"block-scoped-var\": \"warn\",\n /**\n * Require camel case names.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/camelcase\n */\n camelcase: [\n \"warn\",\n { allow: [\"^UNSAFE_\"], ignoreDestructuring: false, properties: \"never\" },\n ],\n /**\n * Require curly braces for multiline blocks.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/curly\n */\n curly: [\"warn\", \"multi-line\"],\n /**\n * Require default clauses in switch statements to be last (if used).\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/default-case-last\n */\n \"default-case-last\": \"warn\",\n /**\n * Require triple equals (`===` and `!==`).\n *å\n * 🔧 Fixable - https://eslint.org/docs/rules/eqeqeq\n */\n eqeqeq: \"warn\",\n \"for-direction\": \"warn\",\n /**\n * Require function expressions to have a name.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/func-names\n */\n \"func-names\": [\"warn\", \"as-needed\"],\n \"func-style\":\n // if arrow function, we use the prefer-arrow-functions plugin\n functionStyle === \"off\" || functionStyle === \"arrow\" ?\n \"off\"\n : [\"warn\", functionStyle, { allowArrowFunctions: true }],\n /**\n * Require grouped accessor pairs in object literals and classes.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/grouped-accessor-pairs\n */\n \"grouped-accessor-pairs\": \"warn\",\n /**\n * Require a capital letter for constructors.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/new-cap\n */\n \"new-cap\": [\"warn\", { capIsNew: false }],\n /**\n * Disallow use of `alert()`.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-alert\n */\n \"no-alert\": \"warn\",\n \"no-async-promise-executor\": \"warn\",\n /**\n * Disallow use of bitwise operators.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-bitwise\n */\n \"no-bitwise\": \"warn\",\n /**\n * Disallow use of `caller`/`callee`.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-caller\n */\n \"no-caller\": \"warn\",\n \"no-case-declarations\": \"warn\",\n \"no-compare-neg-zero\": \"warn\",\n \"no-cond-assign\": \"warn\",\n /**\n * Disallow the use of console.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-console\n */\n \"no-console\": [\"warn\", { allow: [\"info\", \"warn\", \"error\"] }],\n /**\n * Disallow expressions where the operation doesn't affect the value.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-console\n */\n \"no-constant-binary-expression\": \"warn\",\n \"no-constant-condition\": \"warn\",\n /**\n * Disallow returning value in constructor.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-constructor-return\n */\n \"no-constructor-return\": \"warn\",\n \"no-control-regex\": \"warn\",\n \"no-debugger\": \"warn\",\n \"no-delete-var\": \"warn\",\n \"no-dupe-else-if\": \"warn\",\n \"no-duplicate-case\": \"warn\",\n /**\n * Disallow using an `else` if the `if` block contains a return.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/no-else-return\n */\n \"no-else-return\": \"warn\",\n \"no-empty\": \"warn\",\n \"no-empty-character-class\": \"warn\",\n \"no-empty-pattern\": \"warn\",\n \"no-empty-static-block\": \"warn\",\n /**\n * Disallow `eval()`.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-eval\n */\n \"no-eval\": \"warn\",\n \"no-ex-assign\": \"warn\",\n /**\n * Disallow extending native objects.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-extend-native\n */\n \"no-extend-native\": \"warn\",\n /**\n * Disallow unnecessary function binding.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/no-extra-bind\n */\n \"no-extra-bind\": \"warn\",\n \"no-extra-boolean-cast\": \"warn\",\n /**\n * Disallow unnecessary labels.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/no-extra-label\n */\n \"no-extra-label\": \"warn\",\n \"no-fallthrough\": \"warn\",\n \"no-global-assign\": \"warn\",\n /**\n * Make people convert types explicitly e.g. `Boolean(foo)` instead of `!!foo`.\n *\n * 🔧 Partially Fixable - https://eslint.org/docs/rules/no-implicit-coercion\n */\n \"no-implicit-coercion\": \"warn\",\n \"no-invalid-regexp\": \"warn\",\n \"no-irregular-whitespace\": \"warn\",\n /**\n * Disallow usage of `__iterator__` property.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-iterator\n */\n \"no-iterator\": \"warn\",\n /**\n * Disallow labels that share a name with a variable.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-label-var\n */\n \"no-label-var\": \"warn\",\n /**\n * Disallow use of labels for anything other than loops and switches.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-labels\n */\n \"no-labels\": [\"warn\"],\n /**\n * Disallow unnecessary nested blocks.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-lone-blocks\n */\n \"no-lone-blocks\": \"warn\",\n /**\n * Disallow if as the only statement in an else block.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/no-lonely-if\n */\n \"no-lonely-if\": \"warn\",\n \"no-loss-of-precision\": \"warn\",\n \"no-misleading-character-class\": \"warn\",\n /**\n * Disallow use of chained assignment expressions.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-multi-assign\n */\n \"no-multi-assign\": [\"warn\"],\n /**\n * Disallow nested ternary expressions.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-nested-ternary\n */\n \"no-nested-ternary\": \"warn\",\n /**\n * Disallow `new` for side effects.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-new\n */\n \"no-new\": \"warn\",\n /**\n * Disallow function constructors.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-new-func\n */\n \"no-new-func\": \"warn\",\n /**\n * Disallow primitive wrapper instances, such as `new String('foo')`.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-new-wrappers\n */\n \"no-new-wrappers\": \"warn\",\n \"no-nonoctal-decimal-escape\": \"warn\",\n \"no-octal\": \"warn\",\n /**\n * Disallow use of octal escape sequences in string literals.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-octal-escape\n */\n \"no-octal-escape\": \"warn\",\n /**\n * Disallow reassignment of function parameters.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-param-reassign\n */\n \"no-param-reassign\": \"warn\",\n /**\n * Disallow returning values from Promise executor functions.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-promise-executor-return\n */\n \"no-promise-executor-return\": \"warn\",\n /**\n * Disallow usage of the deprecated `__proto__` property.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-proto\n */\n \"no-proto\": \"warn\",\n \"no-prototype-builtins\": \"warn\",\n \"no-regex-spaces\": \"warn\",\n /**\n * Disallow assignment in `return` statement.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-return-assign\n */\n \"no-return-assign\": \"warn\",\n /**\n * Disallow use of `javascript:` urls.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-script-url\n */\n \"no-script-url\": \"warn\",\n \"no-self-assign\": \"warn\",\n /**\n * Disallow comparisons where both sides are exactly the same.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-self-compare\n */\n \"no-self-compare\": \"warn\",\n /**\n * Disallow use of comma operator.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-sequences\n */\n \"no-sequences\": \"warn\",\n \"no-shadow-restricted-names\": \"warn\",\n \"no-sparse-arrays\": \"warn\",\n /**\n * Disallow template literal placeholder syntax in regular strings, as\n * these are likely errors.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-template-curly-in-string\n */\n \"no-template-curly-in-string\": \"warn\",\n /**\n * Disallow initializing variables to `undefined`.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/no-undef-init\n */\n \"no-undef-init\": \"warn\",\n \"no-unexpected-multiline\": \"warn\",\n /**\n * Disallow ternary operators when simpler alternatives exist.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-unneeded-ternary\n */\n \"no-unneeded-ternary\": \"warn\",\n /**\n * Disallow loops with a body that allows only one iteration.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-unreachable-loop\n */\n \"no-unreachable-loop\": \"warn\",\n \"no-unsafe-finally\": \"warn\",\n \"no-unsafe-optional-chaining\": \"warn\",\n \"no-unused-labels\": \"warn\",\n \"no-unused-private-class-members\": \"warn\",\n \"no-useless-backreference\": \"warn\",\n /**\n * Disallow unnecessary `.call()` and `.apply()`.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/no-useless-call\n */\n \"no-useless-call\": \"warn\",\n \"no-useless-catch\": \"warn\",\n /**\n * Disallow useless computed property keys.\n *\n * � Fixable - https://eslint.org/docs/rules/no-useless-computed-key\n */\n \"no-useless-computed-key\": \"warn\",\n /**\n * Disallow unnecessary concatenation of strings.\n *\n * � Not fixable - https://eslint.org/docs/rules/no-useless-concat\n */\n \"no-useless-concat\": \"warn\",\n \"no-useless-escape\": \"warn\",\n /**\n * Disallow renaming import, export, and destructured assignments to the\n * same name.\n *\n * � Fixable - https://eslint.org/docs/rules/no-useless-rename\n */\n \"no-useless-rename\": \"warn\",\n /**\n * Disallow redundant return statements.\n *\n * � Fixable - https://eslint.org/docs/rules/no-useless-return\n */\n \"no-useless-return\": \"warn\",\n /**\n * Require `let` or `const` instead of `var`.\n * ts transpiles let/const to var, so no need for vars any more\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/no-var\n */\n \"no-var\": \"warn\",\n \"no-with\": \"warn\",\n /**\n * Require object literal shorthand syntax.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/object-shorthand\n */\n \"object-shorthand\": \"warn\",\n /**\n * Require default to `const` instead of `let`.\n * ts provides better types with const\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/prefer-const\n */\n \"prefer-const\": \"warn\",\n /**\n * Require using named capture groups in regular expressions.\n *\n * � Not fixable - https://eslint.org/docs/rules/prefer-named-capture-group\n */\n \"prefer-named-capture-group\": \"warn\",\n /**\n * Disallow parseInt() in favor of binary, octal, and hexadecimal literals.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/prefer-numeric-literals\n */\n \"prefer-numeric-literals\": \"warn\",\n /**\n * Require use of an object spread over Object.assign.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/prefer-object-spread\n */\n \"prefer-object-spread\": \"warn\",\n /**\n * Disallow use of the RegExp constructor in favor of regular expression\n * literals.\n *\n * � Not fixable - https://eslint.org/docs/rules/prefer-regex-literals\n */\n \"prefer-regex-literals\": \"warn\",\n /**\n * Require using rest parameters instead of `arguments`.\n * ts provides better types with rest args over arguments\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/prefer-rest-params\n */\n \"prefer-rest-params\": \"warn\",\n /**\n * Require using spread syntax instead of `.apply()`.\n * ts transpiles spread to apply, so no need for manual apply\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/prefer-spread\n */\n \"prefer-spread\": \"warn\",\n /**\n * Require using template literals instead of string concatenation.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/prefer-template\n */\n \"prefer-template\": \"warn\",\n \"require-yield\": \"warn\",\n /**\n * Require a `Symbol` description.\n *\n * 🚫 Not fixable - https://eslint.org/docs/rules/symbol-description\n */\n \"symbol-description\": \"warn\",\n \"use-isnan\": \"warn\",\n \"valid-typeof\": \"warn\",\n /**\n * Disallow \"Yoda conditions\", ensuring the comparison.\n *\n * 🔧 Fixable - https://eslint.org/docs/rules/yoda\n */\n yoda: \"warn\",\n});\n"],"mappings":"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","names":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
baseEslintRules
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-6WWZTVUE.js";
|
|
4
4
|
import {
|
|
5
5
|
configNames
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-XXWXCIGZ.js";
|
|
7
7
|
|
|
8
8
|
// src/eslint/javascript/config.ts
|
|
9
9
|
var baseEslintConfig = (functionStyle) => ({
|
|
@@ -18,4 +18,4 @@ var baseEslintConfig = (functionStyle) => ({
|
|
|
18
18
|
export {
|
|
19
19
|
baseEslintConfig
|
|
20
20
|
};
|
|
21
|
-
//# sourceMappingURL=chunk-
|
|
21
|
+
//# sourceMappingURL=chunk-EBXXF3BN.js.map
|
|
@@ -1,24 +1,27 @@
|
|
|
1
|
+
import {
|
|
2
|
+
preferArrowFunctionConfig
|
|
3
|
+
} from "./chunk-OPQZGCVL.js";
|
|
1
4
|
import {
|
|
2
5
|
reactEslintConfig
|
|
3
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-SIH4WAXK.js";
|
|
4
7
|
import {
|
|
5
8
|
reactCompilerEslintConfig
|
|
6
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-GBJI557O.js";
|
|
7
10
|
import {
|
|
8
11
|
tseslintConfig
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import {
|
|
11
|
-
baseEslintConfig
|
|
12
|
-
} from "./chunk-24D5VXCF.js";
|
|
12
|
+
} from "./chunk-3QISP36C.js";
|
|
13
13
|
import {
|
|
14
14
|
jsdocConfig
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-LGB33CUY.js";
|
|
16
16
|
import {
|
|
17
17
|
perfectionistConfig
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-HLX2OWWB.js";
|
|
19
|
+
import {
|
|
20
|
+
baseEslintConfig
|
|
21
|
+
} from "./chunk-EBXXF3BN.js";
|
|
19
22
|
import {
|
|
20
23
|
ignoresConfig
|
|
21
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-M4HZ67BH.js";
|
|
22
25
|
|
|
23
26
|
// src/eslint/index.ts
|
|
24
27
|
import { isString } from "is-type-of";
|
|
@@ -54,6 +57,9 @@ var eslintConfig = ({
|
|
|
54
57
|
if (sorting) {
|
|
55
58
|
configs.push(perfectionistConfig);
|
|
56
59
|
}
|
|
60
|
+
if (functionStyle === "arrow") {
|
|
61
|
+
configs.push(preferArrowFunctionConfig());
|
|
62
|
+
}
|
|
57
63
|
if (additionalConfigs.length > 0) {
|
|
58
64
|
configs.push(...additionalConfigs);
|
|
59
65
|
}
|
|
@@ -63,4 +69,4 @@ var eslintConfig = ({
|
|
|
63
69
|
export {
|
|
64
70
|
eslintConfig
|
|
65
71
|
};
|
|
66
|
-
//# sourceMappingURL=chunk-
|
|
72
|
+
//# sourceMappingURL=chunk-F6JAHALQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/eslint/index.ts"],"sourcesContent":["import type { Linter } from \"eslint\";\n\nimport { isString } from \"is-type-of\";\n\nimport type { FunctionStyle } from \"./types.js\";\n\nimport { ignoresConfig } from \"./ignores.js\";\nimport { baseEslintConfig } from \"./javascript/config.js\";\nimport { jsdocConfig } from \"./jsdoc/config.js\";\nimport { perfectionistConfig } from \"./perfectionist/config.js\";\nimport { preferArrowFunctionConfig } from \"./prefer-arrow-function/config.js\";\nimport { reactCompilerEslintConfig } from \"./react-compiler/config.js\";\nimport { reactEslintConfig } from \"./react/config.js\";\nimport { tseslintConfig } from \"./typescript/config.js\";\n\nexport type EslintConfigOptions = {\n functionStyle?: \"off\" | FunctionStyle;\n ignores?: string[];\n jsdoc?:\n | false\n | {\n requireJsdoc?: boolean;\n };\n sorting?: boolean;\n typescript?: boolean | string;\n} & (\n | {\n react: true;\n reactCompiler: boolean | undefined;\n }\n | {\n react?: boolean;\n }\n);\n\n/**\n * This function configures your ESLint config based on inputs. It accepts a configuration object with the following properties:\n *\n * @param options - The optional configuration object.\n * @param options.functionStyle - The function style to use. Defaults to \"arrow\".\n * @param options.ignores - An array of paths to ignore. Already excludes `node_modules` and `dist`.\n * @param options.jsdoc - Whether to include JSDoc rules. Defaults to true.\n * @param options.react - Whether to include React rules. Defaults to false.\n * @param options.sorting - Whether to include sorting rules from Perfectionist. Defaults to true.\n * @param options.typescript - Whether to include TypeScript rules OR a string with the path to your tsconfig. Defaults to true.\n * @param additionalConfigs - Additional ESLint config objects to be included in the final configuration.\n * @returns The ESLint configuration array.\n */\nexport const eslintConfig = (\n {\n functionStyle = \"arrow\",\n ignores = [],\n jsdoc = { requireJsdoc: false },\n react = false,\n sorting = true,\n typescript = true,\n ...options\n }: EslintConfigOptions = {},\n ...additionalConfigs: Linter.Config[]\n): Linter.Config[] => {\n const configs: Linter.Config[] = [\n ignoresConfig(ignores),\n baseEslintConfig(functionStyle),\n ];\n\n if (jsdoc !== false) {\n configs.push(jsdocConfig(jsdoc.requireJsdoc ?? false));\n }\n\n if (typescript) {\n configs.push(\n ...(tseslintConfig(\n isString(typescript) ? typescript : undefined,\n ) as Linter.Config[]),\n );\n }\n\n if (react) {\n configs.push(reactEslintConfig(functionStyle, Boolean(typescript)));\n\n // Default to true if not explicitly set to false\n if (!(\"reactCompiler\" in options) || options.reactCompiler !== false) {\n configs.push(reactCompilerEslintConfig);\n }\n }\n\n if (sorting) {\n configs.push(perfectionistConfig);\n }\n\n if (functionStyle === \"arrow\") {\n configs.push(preferArrowFunctionConfig());\n }\n\n // Add any additional config objects provided by the user\n if (additionalConfigs.length > 0) {\n configs.push(...additionalConfigs);\n }\n\n return configs;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAAS,gBAAgB;AA8ClB,IAAM,eAAe,CAC1B;AAAA,EACE,gBAAgB;AAAA,EAChB,UAAU,CAAC;AAAA,EACX,QAAQ,EAAE,cAAc,MAAM;AAAA,EAC9B,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,aAAa;AAAA,EACb,GAAG;AACL,IAAyB,CAAC,MACvB,sBACiB;AACpB,QAAM,UAA2B;AAAA,IAC/B,cAAc,OAAO;AAAA,IACrB,iBAAiB,aAAa;AAAA,EAChC;AAEA,MAAI,UAAU,OAAO;AACnB,YAAQ,KAAK,YAAY,MAAM,gBAAgB,KAAK,CAAC;AAAA,EACvD;AAEA,MAAI,YAAY;AACd,YAAQ;AAAA,MACN,GAAI;AAAA,QACF,SAAS,UAAU,IAAI,aAAa;AAAA,MACtC;AAAA,IACF;AAAA,EACF;AAEA,MAAI,OAAO;AACT,YAAQ,KAAK,kBAAkB,eAAe,QAAQ,UAAU,CAAC,CAAC;AAGlE,QAAI,EAAE,mBAAmB,YAAY,QAAQ,kBAAkB,OAAO;AACpE,cAAQ,KAAK,yBAAyB;AAAA,IACxC;AAAA,EACF;AAEA,MAAI,SAAS;AACX,YAAQ,KAAK,mBAAmB;AAAA,EAClC;AAEA,MAAI,kBAAkB,SAAS;AAC7B,YAAQ,KAAK,0BAA0B,CAAC;AAAA,EAC1C;AAGA,MAAI,kBAAkB,SAAS,GAAG;AAChC,YAAQ,KAAK,GAAG,iBAAiB;AAAA,EACnC;AAEA,SAAO;AACT;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
configNames
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-XXWXCIGZ.js";
|
|
4
4
|
|
|
5
5
|
// src/eslint/react-compiler/config.ts
|
|
6
6
|
import reactCompiler from "eslint-plugin-react-compiler";
|
|
@@ -17,4 +17,4 @@ var reactCompilerEslintConfig = {
|
|
|
17
17
|
export {
|
|
18
18
|
reactCompilerEslintConfig
|
|
19
19
|
};
|
|
20
|
-
//# sourceMappingURL=chunk-
|
|
20
|
+
//# sourceMappingURL=chunk-GBJI557O.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-3SHRYTUT.js";
|
|
4
4
|
import {
|
|
5
5
|
configNames
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-XXWXCIGZ.js";
|
|
7
7
|
|
|
8
8
|
// src/eslint/perfectionist/config.ts
|
|
9
9
|
import perfectionist from "eslint-plugin-perfectionist";
|
|
@@ -18,4 +18,4 @@ var perfectionistConfig = {
|
|
|
18
18
|
export {
|
|
19
19
|
perfectionistConfig
|
|
20
20
|
};
|
|
21
|
-
//# sourceMappingURL=chunk-
|
|
21
|
+
//# sourceMappingURL=chunk-HLX2OWWB.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-XCPOAYGQ.js";
|
|
4
4
|
import {
|
|
5
5
|
configNames
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-XXWXCIGZ.js";
|
|
7
7
|
|
|
8
8
|
// src/eslint/jsdoc/config.ts
|
|
9
9
|
import jsdoc from "eslint-plugin-jsdoc";
|
|
@@ -18,4 +18,4 @@ var jsdocConfig = (requireJsdoc = false, typescript = true) => ({
|
|
|
18
18
|
export {
|
|
19
19
|
jsdocConfig
|
|
20
20
|
};
|
|
21
|
-
//# sourceMappingURL=chunk-
|
|
21
|
+
//# sourceMappingURL=chunk-LGB33CUY.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
configNames
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-XXWXCIGZ.js";
|
|
4
4
|
|
|
5
5
|
// src/eslint/ignores.ts
|
|
6
6
|
var ignoresConfig = (userIgnores) => ({
|
|
@@ -11,4 +11,4 @@ var ignoresConfig = (userIgnores) => ({
|
|
|
11
11
|
export {
|
|
12
12
|
ignoresConfig
|
|
13
13
|
};
|
|
14
|
-
//# sourceMappingURL=chunk-
|
|
14
|
+
//# sourceMappingURL=chunk-M4HZ67BH.js.map
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { isArray, isObject } from "is-type-of";
|
|
3
3
|
var prettierConfig = (options = {}) => {
|
|
4
4
|
const {
|
|
5
|
+
cssOrderPlugin = true,
|
|
5
6
|
jsonSortPlugin = true,
|
|
6
7
|
packageJsonPlugin = true,
|
|
7
8
|
tailwindPlugin = false,
|
|
@@ -12,6 +13,9 @@ var prettierConfig = (options = {}) => {
|
|
|
12
13
|
experimentalTernaries: true,
|
|
13
14
|
...rest
|
|
14
15
|
};
|
|
16
|
+
if (cssOrderPlugin) {
|
|
17
|
+
plugins.push("prettier-plugin-css-order");
|
|
18
|
+
}
|
|
15
19
|
if (jsonSortPlugin) {
|
|
16
20
|
plugins.push("prettier-plugin-sort-json");
|
|
17
21
|
if (isObject(jsonSortPlugin)) {
|
|
@@ -44,4 +48,4 @@ var prettierConfig = (options = {}) => {
|
|
|
44
48
|
export {
|
|
45
49
|
prettierConfig
|
|
46
50
|
};
|
|
47
|
-
//# sourceMappingURL=chunk-
|
|
51
|
+
//# sourceMappingURL=chunk-MQCYNRXY.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/prettier/index.ts"],"sourcesContent":["import type { Config as PrettierConfig } from \"prettier\";\nimport type { SortJsonOptions as SortJsonPluginOptions } from \"prettier-plugin-sort-json\";\nimport type { PluginOptions as TailwindPluginOptions } from \"prettier-plugin-tailwindcss\";\n\nimport { isArray, isObject } from \"is-type-of\";\n\ninterface PrettierConfigOptions extends PrettierConfig {\n cssOrderPlugin?: boolean;\n jsonSortPlugin?: boolean | SortJsonPluginOptions;\n packageJsonPlugin?: boolean;\n tailwindPlugin?: boolean | string[] | TailwindPluginOptions;\n}\n\nexport interface PrettierConfigWithPlugins\n extends PrettierConfig,\n SortJsonPluginOptions,\n TailwindPluginOptions {}\n\n/**\n * Creates a Prettier configuration object with optional Tailwind support\n *\n * @param options - Configuration options for Prettier\n * @param options.cssOrderPlugin CSS order sorting support\n * @param options.jsonSortPlugin JSON sorting support\n * @param options.packageJsonPlugin Package.json sorting support\n * @param options.tailwindPlugin Tailwind CSS formatting support\n * @returns Prettier configuration object with:\n * - Default Prettier configuration\n * - Experimental ternaries enabled\n * - CSS order plugin\n * - JSON sorting plugin\n * - Package.json sorting plugin\n * - Optional Tailwind plugin and functions\n */\nexport const prettierConfig = (\n options: PrettierConfigOptions = {},\n): PrettierConfigWithPlugins => {\n const {\n cssOrderPlugin = true,\n jsonSortPlugin = true,\n packageJsonPlugin = true,\n tailwindPlugin = false,\n ...rest\n } = options;\n\n const plugins: string[] = [];\n const config: PrettierConfigWithPlugins = {\n experimentalTernaries: true,\n ...rest,\n };\n\n if (cssOrderPlugin) {\n plugins.push(\"prettier-plugin-css-order\");\n }\n\n if (jsonSortPlugin) {\n plugins.push(\"prettier-plugin-sort-json\");\n\n if (isObject(jsonSortPlugin)) {\n Object.assign(config, jsonSortPlugin);\n } else {\n config.jsonRecursiveSort = true;\n }\n }\n\n if (packageJsonPlugin) {\n plugins.push(\"prettier-plugin-packagejson\");\n }\n\n if (tailwindPlugin) {\n plugins.push(\"prettier-plugin-tailwindcss\");\n const defaultTailwindFunctions = [\"clsx\", \"cva\", \"cn\"];\n\n if (isArray(tailwindPlugin)) {\n config.tailwindFunctions = [\n ...defaultTailwindFunctions,\n ...tailwindPlugin,\n ];\n } else if (isObject(tailwindPlugin)) {\n Object.assign(config, tailwindPlugin);\n } else {\n config.tailwindFunctions = defaultTailwindFunctions;\n }\n }\n\n // Set plugins after all configurations are done\n config.plugins = plugins;\n\n return config;\n};\n"],"mappings":";AAIA,SAAS,SAAS,gBAAgB;AA8B3B,IAAM,iBAAiB,CAC5B,UAAiC,CAAC,MACJ;AAC9B,QAAM;AAAA,IACJ,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,oBAAoB;AAAA,IACpB,iBAAiB;AAAA,IACjB,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,UAAoB,CAAC;AAC3B,QAAM,SAAoC;AAAA,IACxC,uBAAuB;AAAA,IACvB,GAAG;AAAA,EACL;AAEA,MAAI,gBAAgB;AAClB,YAAQ,KAAK,2BAA2B;AAAA,EAC1C;AAEA,MAAI,gBAAgB;AAClB,YAAQ,KAAK,2BAA2B;AAExC,QAAI,SAAS,cAAc,GAAG;AAC5B,aAAO,OAAO,QAAQ,cAAc;AAAA,IACtC,OAAO;AACL,aAAO,oBAAoB;AAAA,IAC7B;AAAA,EACF;AAEA,MAAI,mBAAmB;AACrB,YAAQ,KAAK,6BAA6B;AAAA,EAC5C;AAEA,MAAI,gBAAgB;AAClB,YAAQ,KAAK,6BAA6B;AAC1C,UAAM,2BAA2B,CAAC,QAAQ,OAAO,IAAI;AAErD,QAAI,QAAQ,cAAc,GAAG;AAC3B,aAAO,oBAAoB;AAAA,QACzB,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,IACF,WAAW,SAAS,cAAc,GAAG;AACnC,aAAO,OAAO,QAAQ,cAAc;AAAA,IACtC,OAAO;AACL,aAAO,oBAAoB;AAAA,IAC7B;AAAA,EACF;AAGA,SAAO,UAAU;AAEjB,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import {
|
|
2
|
+
configNames
|
|
3
|
+
} from "./chunk-XXWXCIGZ.js";
|
|
4
|
+
|
|
5
|
+
// src/eslint/prefer-arrow-function/config.ts
|
|
6
|
+
import preferArrowFunctions from "eslint-plugin-prefer-arrow-functions";
|
|
7
|
+
var preferArrowFunctionConfig = () => ({
|
|
8
|
+
name: configNames.preferArrowFunction,
|
|
9
|
+
plugins: {
|
|
10
|
+
"prefer-arrow-functions": preferArrowFunctions
|
|
11
|
+
},
|
|
12
|
+
rules: {
|
|
13
|
+
"prefer-arrow-functions/prefer-arrow-functions": [
|
|
14
|
+
"warn",
|
|
15
|
+
{
|
|
16
|
+
returnStyle: "unchanged",
|
|
17
|
+
singleReturnOnly: false
|
|
18
|
+
}
|
|
19
|
+
]
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
export {
|
|
24
|
+
preferArrowFunctionConfig
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=chunk-OPQZGCVL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/eslint/prefer-arrow-function/config.ts"],"sourcesContent":["import type { ESLint } from \"eslint\";\n\nimport preferArrowFunctions from \"eslint-plugin-prefer-arrow-functions\";\n\nimport type { EslintConfigObject } from \"../types.js\";\nimport type { PreferArrowFunctionsRules } from \"./types.js\";\n\nimport { configNames } from \"../constants.js\";\n\n/**\n * Creates an ESLint configuration for Prefer Arrow Functions.\n *\n * @returns ESLint configuration object for Prefer Arrow Functions\n */\nexport const preferArrowFunctionConfig = (): EslintConfigObject => ({\n name: configNames.preferArrowFunction,\n plugins: {\n \"prefer-arrow-functions\": preferArrowFunctions as ESLint.Plugin,\n },\n rules: {\n \"prefer-arrow-functions/prefer-arrow-functions\": [\n \"warn\",\n {\n returnStyle: \"unchanged\",\n singleReturnOnly: false,\n },\n ],\n } satisfies PreferArrowFunctionsRules,\n});\n"],"mappings":";;;;;AAEA,OAAO,0BAA0B;AAY1B,IAAM,4BAA4B,OAA2B;AAAA,EAClE,MAAM,YAAY;AAAA,EAClB,SAAS;AAAA,IACP,0BAA0B;AAAA,EAC5B;AAAA,EACA,OAAO;AAAA,IACL,iDAAiD;AAAA,MAC/C;AAAA,MACA;AAAA,QACE,aAAa;AAAA,QACb,kBAAkB;AAAA,MACpB;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-26SVGV32.js";
|
|
4
4
|
import {
|
|
5
5
|
configNames
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-XXWXCIGZ.js";
|
|
7
7
|
|
|
8
8
|
// src/eslint/react/config.ts
|
|
9
9
|
import react from "eslint-plugin-react";
|
|
@@ -38,4 +38,4 @@ var reactEslintConfig = (functionStyle, typescript) => {
|
|
|
38
38
|
export {
|
|
39
39
|
reactEslintConfig
|
|
40
40
|
};
|
|
41
|
-
//# sourceMappingURL=chunk-
|
|
41
|
+
//# sourceMappingURL=chunk-SIH4WAXK.js.map
|
|
@@ -6,6 +6,7 @@ var configNames = {
|
|
|
6
6
|
jsdoc: "jsdoc-config",
|
|
7
7
|
markdown: "markdown-config",
|
|
8
8
|
perfectionist: "perfectionist-config",
|
|
9
|
+
preferArrowFunction: "prefer-arrow-function-config",
|
|
9
10
|
react: "react-config",
|
|
10
11
|
reactCompiler: "react-compiler-config",
|
|
11
12
|
typescript: "tseslint-config"
|
|
@@ -14,4 +15,4 @@ var configNames = {
|
|
|
14
15
|
export {
|
|
15
16
|
configNames
|
|
16
17
|
};
|
|
17
|
-
//# sourceMappingURL=chunk-
|
|
18
|
+
//# sourceMappingURL=chunk-XXWXCIGZ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/eslint/constants.ts"],"sourcesContent":["/**\n * Debug names for ESLint configuration objects.\n * These names help identify different configuration sections in ESLint's debug output\n * and error messages, making it easier to track which rules come from which config.\n */\nexport const configNames = {\n base: \"base-config\",\n disableTypeChecked: \"typescript-eslint/disable-type-checked\",\n ignores: \"ignores-config\",\n jsdoc: \"jsdoc-config\",\n markdown: \"markdown-config\",\n perfectionist: \"perfectionist-config\",\n preferArrowFunction: \"prefer-arrow-function-config\",\n react: \"react-config\",\n reactCompiler: \"react-compiler-config\",\n typescript: \"tseslint-config\",\n} as const;\n\nexport type ConfigName = (typeof configNames)[keyof typeof configNames];\n"],"mappings":";AAKO,IAAM,cAAc;AAAA,EACzB,MAAM;AAAA,EACN,oBAAoB;AAAA,EACpB,SAAS;AAAA,EACT,OAAO;AAAA,EACP,UAAU;AAAA,EACV,eAAe;AAAA,EACf,qBAAqB;AAAA,EACrB,OAAO;AAAA,EACP,eAAe;AAAA,EACf,YAAY;AACd;","names":[]}
|
|
@@ -12402,7 +12402,7 @@ var JestExtend = (chai2, utils) => {
|
|
|
12402
12402
|
);
|
|
12403
12403
|
};
|
|
12404
12404
|
|
|
12405
|
-
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.
|
|
12405
|
+
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.9_jiti@1.21.7_terser@5.37.0_yaml@2.7.0/node_modules/vitest/dist/chunks/utils.C8RiOc4B.js
|
|
12406
12406
|
var NAME_WORKER_STATE = "__vitest_worker__";
|
|
12407
12407
|
function getWorkerState() {
|
|
12408
12408
|
const workerState = globalThis[NAME_WORKER_STATE];
|
|
@@ -12462,7 +12462,7 @@ async function waitForImportsToResolve() {
|
|
|
12462
12462
|
await waitForImportsToResolve();
|
|
12463
12463
|
}
|
|
12464
12464
|
|
|
12465
|
-
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.
|
|
12465
|
+
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.9_jiti@1.21.7_terser@5.37.0_yaml@2.7.0/node_modules/vitest/dist/chunks/_commonjsHelpers.BFTU3MAI.js
|
|
12466
12466
|
var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
|
|
12467
12467
|
function getDefaultExportFromCjs3(x2) {
|
|
12468
12468
|
return x2 && x2.__esModule && Object.prototype.hasOwnProperty.call(x2, "default") ? x2["default"] : x2;
|
|
@@ -14580,7 +14580,7 @@ var SnapshotClient = class {
|
|
|
14580
14580
|
}
|
|
14581
14581
|
};
|
|
14582
14582
|
|
|
14583
|
-
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.
|
|
14583
|
+
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.9_jiti@1.21.7_terser@5.37.0_yaml@2.7.0/node_modules/vitest/dist/chunks/date.W2xKR2qe.js
|
|
14584
14584
|
var RealDate = Date;
|
|
14585
14585
|
var now2 = null;
|
|
14586
14586
|
var MockDate = class _MockDate extends RealDate {
|
|
@@ -14633,7 +14633,7 @@ function resetDate() {
|
|
|
14633
14633
|
globalThis.Date = RealDate;
|
|
14634
14634
|
}
|
|
14635
14635
|
|
|
14636
|
-
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.
|
|
14636
|
+
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.9_jiti@1.21.7_terser@5.37.0_yaml@2.7.0/node_modules/vitest/dist/chunks/vi.DT3m61kS.js
|
|
14637
14637
|
var unsupported = [
|
|
14638
14638
|
// .poll is meant to retry matchers until they succeed, and
|
|
14639
14639
|
// snapshots will always succeed as long as the poll method doesn't throw an error
|
|
@@ -17599,7 +17599,7 @@ function getImporter(name) {
|
|
|
17599
17599
|
return stack?.file || "";
|
|
17600
17600
|
}
|
|
17601
17601
|
|
|
17602
|
-
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.
|
|
17602
|
+
// ../../node_modules/.pnpm/vitest@3.0.7_@types+debug@4.1.12_@types+node@22.13.9_jiti@1.21.7_terser@5.37.0_yaml@2.7.0/node_modules/vitest/dist/index.js
|
|
17603
17603
|
var import_expect_type = __toESM(require_dist(), 1);
|
|
17604
17604
|
|
|
17605
17605
|
export {
|
|
@@ -17898,4 +17898,4 @@ chai/chai.js:
|
|
|
17898
17898
|
* @license MIT License
|
|
17899
17899
|
*)
|
|
17900
17900
|
*/
|
|
17901
|
-
//# sourceMappingURL=chunk-
|
|
17901
|
+
//# sourceMappingURL=chunk-Y4XKZK6J.js.map
|