@shibanet0/datamitsu-config 0.0.3-alpha-1 → 0.0.3-alpha-3
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/bin/datamitsu.js +0 -2
- package/datamitsu.config.js +159 -41
- package/dist/datamitsu-config/app.prettier.d.ts +1 -0
- package/dist/datamitsu-config/inline-config/oxlint_configuration_schema.d.ts +1 -0
- package/dist/datamitsu-config/inline-config/prettier.d.ts +1 -0
- package/dist/datamitsu.config.d.ts +44 -5
- package/package.json +3 -18
- package/.oxlintrc.json +0 -59
- package/oxlint_configuration_schema.json +0 -735
package/bin/datamitsu.js
CHANGED
|
@@ -23,8 +23,6 @@ const child = spawn(
|
|
|
23
23
|
env: {
|
|
24
24
|
...process.env,
|
|
25
25
|
DATAMITSU_APP_COMMITLINT_BINARY_FILEPATH: getBinaryFilepath("@commitlint/cli", "../cli.js"),
|
|
26
|
-
DATAMITSU_APP_OXLINT_BINARY_FILEPATH: getBinaryFilepath("oxlint", "../../bin/oxlint"),
|
|
27
|
-
DATAMITSU_APP_PRETTIER_BINARY_FILEPATH: getBinaryFilepath("prettier", "../bin/prettier.cjs"),
|
|
28
26
|
DATAMITSU_APP_TSC_BINARY_FILEPATH: getBinaryFilepath("typescript/package.json", "../bin/tsc"),
|
|
29
27
|
DATAMITSU_PACKAGE_NAME: process.env.DATAMITSU_PACKAGE_NAME || "@shibanet0/datamitsu-config",
|
|
30
28
|
},
|
package/datamitsu.config.js
CHANGED
|
@@ -3,6 +3,67 @@
|
|
|
3
3
|
/* tslint:disable */
|
|
4
4
|
/* eslint-disable */
|
|
5
5
|
|
|
6
|
+
// .oxlintrc.json
|
|
7
|
+
var oxlintrc_default = {
|
|
8
|
+
$schema: "./.datamitsu/oxlint_configuration_schema.json",
|
|
9
|
+
categories: {
|
|
10
|
+
correctness: "error",
|
|
11
|
+
pedantic: "error",
|
|
12
|
+
perf: "error",
|
|
13
|
+
style: "warn",
|
|
14
|
+
suspicious: "error"
|
|
15
|
+
},
|
|
16
|
+
rules: {
|
|
17
|
+
"sort-keys": "off",
|
|
18
|
+
"no-duplicate-imports": "off",
|
|
19
|
+
"unicorn/prefer-query-selector": "off",
|
|
20
|
+
"no-lonely-if": "off",
|
|
21
|
+
"unicorn/prefer-string-raw": "off",
|
|
22
|
+
"array-type": "off",
|
|
23
|
+
"no-negated-condition": "off",
|
|
24
|
+
"arrow-body-style": "off",
|
|
25
|
+
"unicorn/prefer-global-this": "off",
|
|
26
|
+
"unicorn/consistent-function-scoping": "off",
|
|
27
|
+
"array-callback-return": "off",
|
|
28
|
+
"new-cap": "off",
|
|
29
|
+
"prefer-exponentiation-operator": "off",
|
|
30
|
+
"typescript-eslint/ban-types": "off",
|
|
31
|
+
"unicorn/prefer-top-level-await": "off",
|
|
32
|
+
"max-params": "off",
|
|
33
|
+
"no-promise-executor-return": "off",
|
|
34
|
+
"unicorn/no-useless-collection-argument": "off",
|
|
35
|
+
"unicorn/no-lonely-if": "off",
|
|
36
|
+
"no-map-spread": "off",
|
|
37
|
+
"capitalized-comments": "off",
|
|
38
|
+
"unicorn/prefer-array-some": "off",
|
|
39
|
+
eqeqeq: "off",
|
|
40
|
+
"func-names": "off",
|
|
41
|
+
"func-style": "off",
|
|
42
|
+
"id-length": "off",
|
|
43
|
+
"init-declarations": "off",
|
|
44
|
+
"max-lines": "off",
|
|
45
|
+
"max-lines-per-function": "off",
|
|
46
|
+
"max-statements": "off",
|
|
47
|
+
"no-await-in-loop": "off",
|
|
48
|
+
"no-inline-comments": "off",
|
|
49
|
+
"no-magic-numbers": "off",
|
|
50
|
+
"no-ternary": "off",
|
|
51
|
+
"no-unused-vars": "off",
|
|
52
|
+
"no-warning-comments": "off",
|
|
53
|
+
"prefer-destructuring": "off",
|
|
54
|
+
"prefer-template": "off",
|
|
55
|
+
"require-await": "off",
|
|
56
|
+
"sort-imports": "off",
|
|
57
|
+
"triple-slash-reference": "off",
|
|
58
|
+
"unicorn/filename-case": "off",
|
|
59
|
+
"unicorn/no-array-sort": "off",
|
|
60
|
+
"unicorn/no-null": "off",
|
|
61
|
+
"unicorn/no-object-as-default-parameter": "off",
|
|
62
|
+
"unicorn/number-literal-case": "off",
|
|
63
|
+
"unicorn/require-module-specifiers": "off"
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
|
|
6
67
|
// src/datamitsu-config/fnmVersions.json
|
|
7
68
|
var fnmVersions_default = {
|
|
8
69
|
cspell: {
|
|
@@ -13,6 +74,30 @@ var fnmVersions_default = {
|
|
|
13
74
|
packageName: "knip",
|
|
14
75
|
version: "5.86.0"
|
|
15
76
|
},
|
|
77
|
+
oxlint: {
|
|
78
|
+
packageName: "oxlint",
|
|
79
|
+
version: "1.42.0"
|
|
80
|
+
},
|
|
81
|
+
"@prettier/plugin-xml": {
|
|
82
|
+
packageName: "@prettier/plugin-xml",
|
|
83
|
+
version: "3.4.2"
|
|
84
|
+
},
|
|
85
|
+
prettier: {
|
|
86
|
+
packageName: "prettier",
|
|
87
|
+
version: "3.8.1"
|
|
88
|
+
},
|
|
89
|
+
"prettier-plugin-embed": {
|
|
90
|
+
packageName: "prettier-plugin-embed",
|
|
91
|
+
version: "0.5.1"
|
|
92
|
+
},
|
|
93
|
+
"prettier-plugin-jsdoc": {
|
|
94
|
+
packageName: "prettier-plugin-jsdoc",
|
|
95
|
+
version: "1.8.0"
|
|
96
|
+
},
|
|
97
|
+
"prettier-plugin-sql": {
|
|
98
|
+
packageName: "prettier-plugin-sql",
|
|
99
|
+
version: "0.19.2"
|
|
100
|
+
},
|
|
16
101
|
"markdown-link-check": {
|
|
17
102
|
packageName: "markdown-link-check",
|
|
18
103
|
version: "3.14.2"
|
|
@@ -376,6 +461,31 @@ var eslintApp = {
|
|
|
376
461
|
}
|
|
377
462
|
};
|
|
378
463
|
|
|
464
|
+
// src/datamitsu-config/inline-config/prettier.ts
|
|
465
|
+
var data2 = "tar.br:G/8HAMaMOV/XqFwVUIYg3CZsgWjwZu/hEosgshJ8H8/FD9p3D5guB4btLnI1nsRqUbaH5tIPFPxq3CDRLJzPRzAA82DZiS/gvw7e8fl0BjGM180RKcEMjgH4DGHGpknfttHz4tBp1c/L2mvbyKv1e0KU5qVCbZNGeXvfV5KTYkbWE+sahaapHZOKKckUq4sDg18MNZvyRRLDOXK1ftMiLAcjh0RWXRfD36q9vLmT+EI3X0MPXu7+fJ02FaLUR+issdG/xKrWsiHYgy7OqygP/hGo0w7TlHeNp4BoShojOEZmdFNtybaHUJjXmOhuNyAN/cqBDA==";
|
|
466
|
+
|
|
467
|
+
// src/datamitsu-config/app.prettier.ts
|
|
468
|
+
var prettierApp = {
|
|
469
|
+
archives: {
|
|
470
|
+
main: {
|
|
471
|
+
inline: data2
|
|
472
|
+
}
|
|
473
|
+
},
|
|
474
|
+
fnm: {
|
|
475
|
+
binPath: "node_modules/.bin/prettier",
|
|
476
|
+
...fnmVersions_default.prettier,
|
|
477
|
+
dependencies: {
|
|
478
|
+
"@prettier/plugin-xml": fnmVersions_default["@prettier/plugin-xml"].version,
|
|
479
|
+
"prettier-plugin-embed": fnmVersions_default["prettier-plugin-embed"].version,
|
|
480
|
+
"prettier-plugin-jsdoc": fnmVersions_default["prettier-plugin-jsdoc"].version,
|
|
481
|
+
"prettier-plugin-sql": fnmVersions_default["prettier-plugin-sql"].version
|
|
482
|
+
}
|
|
483
|
+
},
|
|
484
|
+
links: {
|
|
485
|
+
"prettier.config.js": "index.js"
|
|
486
|
+
}
|
|
487
|
+
};
|
|
488
|
+
|
|
379
489
|
// src/datamitsu-config/githubApps.json
|
|
380
490
|
var binaries = {
|
|
381
491
|
actionlint: {
|
|
@@ -2594,6 +2704,9 @@ var binaries = {
|
|
|
2594
2704
|
}
|
|
2595
2705
|
};
|
|
2596
2706
|
|
|
2707
|
+
// src/datamitsu-config/inline-config/oxlint_configuration_schema.ts
|
|
2708
|
+
var data3 = '{"$schema":"http://json-schema.org/draft-07/schema#","title":"Oxlintrc","description":"Oxlint Configuration File\\n\\nThis configuration is aligned with ESLint v8\'s configuration schema (`eslintrc.json`).\\n\\nUsage: `oxlint -c oxlintrc.json --import-plugin`\\n\\n::: danger NOTE\\n\\nOnly the `.json` format is supported. You can use comments in configuration files.\\n\\n:::\\n\\nExample\\n\\n`.oxlintrc.json`\\n\\n```json\\n{\\n\\"$schema\\": \\"./node_modules/oxlint/configuration_schema.json\\",\\n\\"plugins\\": [\\"import\\", \\"typescript\\", \\"unicorn\\"],\\n\\"env\\": {\\n\\"browser\\": true\\n},\\n\\"globals\\": {\\n\\"foo\\": \\"readonly\\"\\n},\\n\\"settings\\": {\\n},\\n\\"rules\\": {\\n\\"eqeqeq\\": \\"warn\\",\\n\\"import/no-cycle\\": \\"error\\",\\n\\"react/self-closing-comp\\": [\\"error\\", { \\"html\\": false }]\\n},\\n\\"overrides\\": [\\n{\\n\\"files\\": [\\"*.test.ts\\", \\"*.spec.ts\\"],\\n\\"rules\\": {\\n\\"@typescript-eslint/no-explicit-any\\": \\"off\\"\\n}\\n}\\n]\\n}\\n```","type":"object","properties":{"$schema":{"description":"Schema URI for editor tooling.","type":["string","null"],"markdownDescription":"Schema URI for editor tooling."},"categories":{"default":{},"allOf":[{"$ref":"#/definitions/OxlintCategories"}]},"env":{"description":"Environments enable and disable collections of global variables.","default":{"builtin":true},"allOf":[{"$ref":"#/definitions/OxlintEnv"}],"markdownDescription":"Environments enable and disable collections of global variables."},"extends":{"description":"Paths of configuration files that this configuration file extends (inherits from). The files\\nare resolved relative to the location of the configuration file that contains the `extends`\\nproperty. The configuration files are merged from the first to the last, with the last file\\noverriding the previous ones.","type":"array","items":{"type":"string"},"markdownDescription":"Paths of configuration files that this configuration file extends (inherits from). The files\\nare resolved relative to the location of the configuration file that contains the `extends`\\nproperty. The configuration files are merged from the first to the last, with the last file\\noverriding the previous ones."},"globals":{"description":"Enabled or disabled specific global variables.","default":{},"allOf":[{"$ref":"#/definitions/OxlintGlobals"}],"markdownDescription":"Enabled or disabled specific global variables."},"ignorePatterns":{"description":"Globs to ignore during linting. These are resolved from the configuration file path.","default":[],"type":"array","items":{"type":"string"},"markdownDescription":"Globs to ignore during linting. These are resolved from the configuration file path."},"jsPlugins":{"description":"JS plugins, allows usage of ESLint plugins with Oxlint.\\n\\nRead more about JS plugins in\\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\\n\\nNote: JS plugins are experimental and not subject to semver.\\nThey are not supported in the language server (and thus editor integrations) at present.","anyOf":[{"type":"null"},{"type":"array","items":{"$ref":"#/definitions/ExternalPluginEntry"},"uniqueItems":true}],"markdownDescription":"JS plugins, allows usage of ESLint plugins with Oxlint.\\n\\nRead more about JS plugins in\\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\\n\\nNote: JS plugins are experimental and not subject to semver.\\nThey are not supported in the language server (and thus editor integrations) at present."},"overrides":{"description":"Add, remove, or otherwise reconfigure rules for specific files or groups of files.","allOf":[{"$ref":"#/definitions/OxlintOverrides"}],"markdownDescription":"Add, remove, or otherwise reconfigure rules for specific files or groups of files."},"plugins":{"description":"Enabled built-in plugins for Oxlint.\\nYou can view the list of available plugins on\\n[the website](https://oxc.rs/docs/guide/usage/linter/plugins.html#supported-plugins).\\n\\nNOTE: Setting the `plugins` field will overwrite the base set of plugins.\\nThe `plugins` array should reflect all of the plugins you want to use.","default":null,"anyOf":[{"$ref":"#/definitions/LintPlugins"},{"type":"null"}],"markdownDescription":"Enabled built-in plugins for Oxlint.\\nYou can view the list of available plugins on\\n[the website](https://oxc.rs/docs/guide/usage/linter/plugins.html#supported-plugins).\\n\\nNOTE: Setting the `plugins` field will overwrite the base set of plugins.\\nThe `plugins` array should reflect all of the plugins you want to use."},"rules":{"description":"Example\\n\\n`.oxlintrc.json`\\n\\n```json\\n{\\n\\"$schema\\": \\"./node_modules/oxlint/configuration_schema.json\\",\\n\\"rules\\": {\\n\\"eqeqeq\\": \\"warn\\",\\n\\"import/no-cycle\\": \\"error\\",\\n\\"prefer-const\\": [\\"error\\", { \\"ignoreReadBeforeAssign\\": true }]\\n}\\n}\\n```\\n\\nSee [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html) for the list of\\nrules.","default":{},"allOf":[{"$ref":"#/definitions/OxlintRules"}],"markdownDescription":"Example\\n\\n`.oxlintrc.json`\\n\\n```json\\n{\\n\\"$schema\\": \\"./node_modules/oxlint/configuration_schema.json\\",\\n\\"rules\\": {\\n\\"eqeqeq\\": \\"warn\\",\\n\\"import/no-cycle\\": \\"error\\",\\n\\"prefer-const\\": [\\"error\\", { \\"ignoreReadBeforeAssign\\": true }]\\n}\\n}\\n```\\n\\nSee [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html) for the list of\\nrules."},"settings":{"default":{"jsx-a11y":{"polymorphicPropName":null,"components":{},"attributes":{}},"next":{"rootDir":[]},"react":{"formComponents":[],"linkComponents":[],"version":null,"componentWrapperFunctions":[]},"jsdoc":{"ignorePrivate":false,"ignoreInternal":false,"ignoreReplacesDocs":true,"overrideReplacesDocs":true,"augmentsExtendsReplacesDocs":false,"implementsReplacesDocs":false,"exemptDestructuredRootsFromChecks":false,"tagNamePreference":{}},"vitest":{"typecheck":false}},"allOf":[{"$ref":"#/definitions/OxlintSettings"}]}},"additionalProperties":false,"allowComments":true,"allowTrailingCommas":true,"definitions":{"AllowWarnDeny":{"oneOf":[{"description":"Oxlint rule.\\n- \\"allow\\" or \\"off\\": Turn off the rule.\\n- \\"warn\\": Turn the rule on as a warning (doesn\'t affect exit code).\\n- \\"error\\" or \\"deny\\": Turn the rule on as an error (will exit with a failure code).","type":"string","enum":["allow","off","warn","error","deny"],"markdownDescription":"Oxlint rule.\\n- \\"allow\\" or \\"off\\": Turn off the rule.\\n- \\"warn\\": Turn the rule on as a warning (doesn\'t affect exit code).\\n- \\"error\\" or \\"deny\\": Turn the rule on as an error (will exit with a failure code)."},{"description":"Oxlint rule.\\n \\n- 0: Turn off the rule.\\n- 1: Turn the rule on as a warning (doesn\'t affect exit code).\\n- 2: Turn the rule on as an error (will exit with a failure code).","type":"integer","format":"uint32","maximum":2,"minimum":0,"markdownDescription":"Oxlint rule.\\n \\n- 0: Turn off the rule.\\n- 1: Turn the rule on as a warning (doesn\'t affect exit code).\\n- 2: Turn the rule on as an error (will exit with a failure code)."}]},"CustomComponent":{"anyOf":[{"type":"string"},{"type":"object","required":["attribute","name"],"properties":{"attribute":{"type":"string"},"name":{"type":"string"}}},{"type":"object","required":["attributes","name"],"properties":{"attributes":{"type":"array","items":{"type":"string"}},"name":{"type":"string"}}}]},"DummyRule":{"anyOf":[{"$ref":"#/definitions/AllowWarnDeny"},{"type":"array","items":true}]},"DummyRuleMap":{"description":"See [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html)","type":"object","additionalProperties":{"$ref":"#/definitions/DummyRule"},"markdownDescription":"See [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html)"},"ExternalPluginEntry":{"anyOf":[{"description":"Path or package name of the plugin","type":"string","markdownDescription":"Path or package name of the plugin"},{"description":"Plugin with custom name/alias","type":"object","required":["name","specifier"],"properties":{"name":{"description":"Custom name/alias for the plugin.\\n\\nNote: The following plugin names are reserved because they are implemented natively in Rust within oxlint and cannot be used for JS plugins:\\n- react (includes react-hooks)\\n- unicorn\\n- typescript (includes @typescript-eslint)\\n- oxc\\n- import (includes import-x)\\n- jsdoc\\n- jest\\n- vitest\\n- jsx-a11y\\n- nextjs\\n- react-perf\\n- promise\\n- node\\n- vue\\n- eslint\\n\\nIf you need to use the JavaScript version of any of these plugins, provide a custom alias to avoid conflicts.","type":"string","markdownDescription":"Custom name/alias for the plugin.\\n\\nNote: The following plugin names are reserved because they are implemented natively in Rust within oxlint and cannot be used for JS plugins:\\n- react (includes react-hooks)\\n- unicorn\\n- typescript (includes @typescript-eslint)\\n- oxc\\n- import (includes import-x)\\n- jsdoc\\n- jest\\n- vitest\\n- jsx-a11y\\n- nextjs\\n- react-perf\\n- promise\\n- node\\n- vue\\n- eslint\\n\\nIf you need to use the JavaScript version of any of these plugins, provide a custom alias to avoid conflicts."},"specifier":{"description":"Path or package name of the plugin","type":"string","markdownDescription":"Path or package name of the plugin"}},"additionalProperties":false,"markdownDescription":"Plugin with custom name/alias"}]},"GlobSet":{"description":"A set of glob patterns.","type":"array","items":{"type":"string"},"markdownDescription":"A set of glob patterns."},"GlobalValue":{"type":"string","enum":["readonly","writable","off"]},"JSDocPluginSettings":{"type":"object","properties":{"augmentsExtendsReplacesDocs":{"description":"Only for `require-(yields|returns|description|example|param|throws)` rule","default":false,"type":"boolean","markdownDescription":"Only for `require-(yields|returns|description|example|param|throws)` rule"},"exemptDestructuredRootsFromChecks":{"description":"Only for `require-param-type` and `require-param-description` rule","default":false,"type":"boolean","markdownDescription":"Only for `require-param-type` and `require-param-description` rule"},"ignoreInternal":{"description":"For all rules but NOT apply to `empty-tags` rule","default":false,"type":"boolean","markdownDescription":"For all rules but NOT apply to `empty-tags` rule"},"ignorePrivate":{"description":"For all rules but NOT apply to `check-access` and `empty-tags` rule","default":false,"type":"boolean","markdownDescription":"For all rules but NOT apply to `check-access` and `empty-tags` rule"},"ignoreReplacesDocs":{"description":"Only for `require-(yields|returns|description|example|param|throws)` rule","default":true,"type":"boolean","markdownDescription":"Only for `require-(yields|returns|description|example|param|throws)` rule"},"implementsReplacesDocs":{"description":"Only for `require-(yields|returns|description|example|param|throws)` rule","default":false,"type":"boolean","markdownDescription":"Only for `require-(yields|returns|description|example|param|throws)` rule"},"overrideReplacesDocs":{"description":"Only for `require-(yields|returns|description|example|param|throws)` rule","default":true,"type":"boolean","markdownDescription":"Only for `require-(yields|returns|description|example|param|throws)` rule"},"tagNamePreference":{"default":{},"type":"object","additionalProperties":{"$ref":"#/definitions/TagNamePreference"}}}},"JSXA11yPluginSettings":{"description":"Configure JSX A11y plugin rules.\\n\\nSee\\n[eslint-plugin-jsx-a11y](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y#configurations)\'s\\nconfiguration for a full reference.","type":"object","properties":{"attributes":{"description":"Map of attribute names to their DOM equivalents.\\nThis is useful for non-React frameworks that use different attribute names.\\n\\nExample:\\n\\n```json\\n{\\n\\"settings\\": {\\n\\"jsx-a11y\\": {\\n\\"attributes\\": {\\n\\"for\\": [\\"htmlFor\\", \\"for\\"]\\n}\\n}\\n}\\n}\\n```","default":{},"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"markdownDescription":"Map of attribute names to their DOM equivalents.\\nThis is useful for non-React frameworks that use different attribute names.\\n\\nExample:\\n\\n```json\\n{\\n\\"settings\\": {\\n\\"jsx-a11y\\": {\\n\\"attributes\\": {\\n\\"for\\": [\\"htmlFor\\", \\"for\\"]\\n}\\n}\\n}\\n}\\n```"},"components":{"description":"To have your custom components be checked as DOM elements, you can\\nprovide a mapping of your component names to the DOM element name.\\n\\nExample:\\n\\n```json\\n{\\n\\"settings\\": {\\n\\"jsx-a11y\\": {\\n\\"components\\": {\\n\\"Link\\": \\"a\\",\\n\\"IconButton\\": \\"button\\"\\n}\\n}\\n}\\n}\\n```","default":{},"type":"object","additionalProperties":{"type":"string"},"markdownDescription":"To have your custom components be checked as DOM elements, you can\\nprovide a mapping of your component names to the DOM element name.\\n\\nExample:\\n\\n```json\\n{\\n\\"settings\\": {\\n\\"jsx-a11y\\": {\\n\\"components\\": {\\n\\"Link\\": \\"a\\",\\n\\"IconButton\\": \\"button\\"\\n}\\n}\\n}\\n}\\n```"},"polymorphicPropName":{"description":"An optional setting that define the prop your code uses to create polymorphic components.\\nThis setting will be used to determine the element type in rules that\\nrequire semantic context.\\n\\nFor example, if you set the `polymorphicPropName` to `as`, then this element:\\n\\n```jsx\\n<Box as=\\"h3\\">Hello</Box>\\n```\\n\\nWill be treated as an `h3`. If not set, this component will be treated\\nas a `Box`.","type":["string","null"],"markdownDescription":"An optional setting that define the prop your code uses to create polymorphic components.\\nThis setting will be used to determine the element type in rules that\\nrequire semantic context.\\n\\nFor example, if you set the `polymorphicPropName` to `as`, then this element:\\n\\n```jsx\\n<Box as=\\"h3\\">Hello</Box>\\n```\\n\\nWill be treated as an `h3`. If not set, this component will be treated\\nas a `Box`."}},"markdownDescription":"Configure JSX A11y plugin rules.\\n\\nSee\\n[eslint-plugin-jsx-a11y](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y#configurations)\'s\\nconfiguration for a full reference."},"LintPluginOptionsSchema":{"type":"string","enum":["eslint","react","unicorn","typescript","oxc","import","jsdoc","jest","vitest","jsx-a11y","nextjs","react-perf","promise","node","vue"]},"LintPlugins":{"type":"array","items":{"anyOf":[{"$ref":"#/definitions/LintPluginOptionsSchema"}]}},"NextPluginSettings":{"description":"Configure Next.js plugin rules.","type":"object","properties":{"rootDir":{"description":"The root directory of the Next.js project.\\n\\nThis is particularly useful when you have a monorepo and your Next.js\\nproject is in a subfolder.\\n\\nExample:\\n\\n```json\\n{\\n\\"settings\\": {\\n\\"next\\": {\\n\\"rootDir\\": \\"apps/dashboard/\\"\\n}\\n}\\n}\\n```","default":[],"allOf":[{"$ref":"#/definitions/OneOrMany_for_String"}],"markdownDescription":"The root directory of the Next.js project.\\n\\nThis is particularly useful when you have a monorepo and your Next.js\\nproject is in a subfolder.\\n\\nExample:\\n\\n```json\\n{\\n\\"settings\\": {\\n\\"next\\": {\\n\\"rootDir\\": \\"apps/dashboard/\\"\\n}\\n}\\n}\\n```"}},"markdownDescription":"Configure Next.js plugin rules."},"OneOrMany_for_String":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"OxlintCategories":{"title":"Rule Categories","description":"Configure an entire category of rules all at once.\\n\\nRules enabled or disabled this way will be overwritten by individual rules in the `rules` field.\\n\\nExample\\n```json\\n{\\n \\"$schema\\": \\"./node_modules/oxlint/configuration_schema.json\\",\\n \\"categories\\": {\\n \\"correctness\\": \\"warn\\"\\n },\\n \\"rules\\": {\\n \\"eslint/no-unused-vars\\": \\"error\\"\\n }\\n}\\n```","examples":[{"correctness":"warn"}],"type":"object","properties":{"correctness":{"$ref":"#/definitions/AllowWarnDeny"},"nursery":{"$ref":"#/definitions/AllowWarnDeny"},"pedantic":{"$ref":"#/definitions/AllowWarnDeny"},"perf":{"$ref":"#/definitions/AllowWarnDeny"},"restriction":{"$ref":"#/definitions/AllowWarnDeny"},"style":{"$ref":"#/definitions/AllowWarnDeny"},"suspicious":{"$ref":"#/definitions/AllowWarnDeny"}},"additionalProperties":false,"markdownDescription":"Configure an entire category of rules all at once.\\n\\nRules enabled or disabled this way will be overwritten by individual rules in the `rules` field.\\n\\nExample\\n```json\\n{\\n \\"$schema\\": \\"./node_modules/oxlint/configuration_schema.json\\",\\n \\"categories\\": {\\n \\"correctness\\": \\"warn\\"\\n },\\n \\"rules\\": {\\n \\"eslint/no-unused-vars\\": \\"error\\"\\n }\\n}\\n```"},"OxlintEnv":{"description":"Predefine global variables.\\n\\nEnvironments specify what global variables are predefined.\\nSee [ESLint\'s list of environments](https://eslint.org/docs/v8.x/use/configure/language-options#specifying-environments)\\nfor what environments are available and what each one provides.","type":"object","additionalProperties":{"type":"boolean"},"markdownDescription":"Predefine global variables.\\n\\nEnvironments specify what global variables are predefined.\\nSee [ESLint\'s list of environments](https://eslint.org/docs/v8.x/use/configure/language-options#specifying-environments)\\nfor what environments are available and what each one provides."},"OxlintGlobals":{"description":"Add or remove global variables.\\n\\nFor each global variable, set the corresponding value equal to `\\"writable\\"`\\nto allow the variable to be overwritten or `\\"readonly\\"` to disallow overwriting.\\n\\nGlobals can be disabled by setting their value to `\\"off\\"`. For example, in\\nan environment where most Es2015 globals are available but `Promise` is unavailable,\\nyou might use this config:\\n\\n```json\\n\\n{\\n\\"$schema\\": \\"./node_modules/oxlint/configuration_schema.json\\",\\n\\"env\\": {\\n\\"es6\\": true\\n},\\n\\"globals\\": {\\n\\"Promise\\": \\"off\\"\\n}\\n}\\n\\n```\\n\\nYou may also use `\\"readable\\"` or `false` to represent `\\"readonly\\"`, and\\n`\\"writeable\\"` or `true` to represent `\\"writable\\"`.","type":"object","additionalProperties":{"$ref":"#/definitions/GlobalValue"},"markdownDescription":"Add or remove global variables.\\n\\nFor each global variable, set the corresponding value equal to `\\"writable\\"`\\nto allow the variable to be overwritten or `\\"readonly\\"` to disallow overwriting.\\n\\nGlobals can be disabled by setting their value to `\\"off\\"`. For example, in\\nan environment where most Es2015 globals are available but `Promise` is unavailable,\\nyou might use this config:\\n\\n```json\\n\\n{\\n\\"$schema\\": \\"./node_modules/oxlint/configuration_schema.json\\",\\n\\"env\\": {\\n\\"es6\\": true\\n},\\n\\"globals\\": {\\n\\"Promise\\": \\"off\\"\\n}\\n}\\n\\n```\\n\\nYou may also use `\\"readable\\"` or `false` to represent `\\"readonly\\"`, and\\n`\\"writeable\\"` or `true` to represent `\\"writable\\"`."},"OxlintOverride":{"type":"object","required":["files"],"properties":{"env":{"description":"Environments enable and disable collections of global variables.","anyOf":[{"$ref":"#/definitions/OxlintEnv"},{"type":"null"}],"markdownDescription":"Environments enable and disable collections of global variables."},"files":{"description":"A list of glob patterns to override.\\n\\n## Example\\n`[ \\"*.test.ts\\", \\"*.spec.ts\\" ]`","allOf":[{"$ref":"#/definitions/GlobSet"}],"markdownDescription":"A list of glob patterns to override.\\n\\n## Example\\n`[ \\"*.test.ts\\", \\"*.spec.ts\\" ]`"},"globals":{"description":"Enabled or disabled specific global variables.","anyOf":[{"$ref":"#/definitions/OxlintGlobals"},{"type":"null"}],"markdownDescription":"Enabled or disabled specific global variables."},"jsPlugins":{"description":"JS plugins for this override, allows usage of ESLint plugins with Oxlint.\\n\\nRead more about JS plugins in\\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\\n\\nNote: JS plugins are experimental and not subject to semver.\\nThey are not supported in the language server (and thus editor integrations) at present.","anyOf":[{"type":"null"},{"type":"array","items":{"$ref":"#/definitions/ExternalPluginEntry"},"uniqueItems":true}],"markdownDescription":"JS plugins for this override, allows usage of ESLint plugins with Oxlint.\\n\\nRead more about JS plugins in\\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\\n\\nNote: JS plugins are experimental and not subject to semver.\\nThey are not supported in the language server (and thus editor integrations) at present."},"plugins":{"description":"Optionally change what plugins are enabled for this override. When\\nomitted, the base config\'s plugins are used.","default":null,"anyOf":[{"$ref":"#/definitions/LintPlugins"},{"type":"null"}],"markdownDescription":"Optionally change what plugins are enabled for this override. When\\nomitted, the base config\'s plugins are used."},"rules":{"default":{},"allOf":[{"$ref":"#/definitions/OxlintRules"}]}},"additionalProperties":false},"OxlintOverrides":{"type":"array","items":{"$ref":"#/definitions/OxlintOverride"}},"OxlintRules":{"$ref":"#/definitions/DummyRuleMap"},"OxlintSettings":{"title":"Oxlint Plugin Settings","description":"Configure the behavior of linter plugins.\\n\\nHere\'s an example if you\'re using Next.js in a monorepo:\\n\\n```json\\n{\\n\\"settings\\": {\\n\\"next\\": {\\n\\"rootDir\\": \\"apps/dashboard/\\"\\n},\\n\\"react\\": {\\n\\"linkComponents\\": [\\n{ \\"name\\": \\"Link\\", \\"linkAttribute\\": \\"to\\" }\\n]\\n},\\n\\"jsx-a11y\\": {\\n\\"components\\": {\\n\\"Link\\": \\"a\\",\\n\\"Button\\": \\"button\\"\\n}\\n}\\n}\\n}\\n```","type":"object","properties":{"jsdoc":{"default":{"ignorePrivate":false,"ignoreInternal":false,"ignoreReplacesDocs":true,"overrideReplacesDocs":true,"augmentsExtendsReplacesDocs":false,"implementsReplacesDocs":false,"exemptDestructuredRootsFromChecks":false,"tagNamePreference":{}},"allOf":[{"$ref":"#/definitions/JSDocPluginSettings"}]},"jsx-a11y":{"default":{"polymorphicPropName":null,"components":{},"attributes":{}},"allOf":[{"$ref":"#/definitions/JSXA11yPluginSettings"}]},"next":{"default":{"rootDir":[]},"allOf":[{"$ref":"#/definitions/NextPluginSettings"}]},"react":{"default":{"formComponents":[],"linkComponents":[],"version":null,"componentWrapperFunctions":[]},"allOf":[{"$ref":"#/definitions/ReactPluginSettings"}]},"vitest":{"default":{"typecheck":false},"allOf":[{"$ref":"#/definitions/VitestPluginSettings"}]}},"markdownDescription":"Configure the behavior of linter plugins.\\n\\nHere\'s an example if you\'re using Next.js in a monorepo:\\n\\n```json\\n{\\n\\"settings\\": {\\n\\"next\\": {\\n\\"rootDir\\": \\"apps/dashboard/\\"\\n},\\n\\"react\\": {\\n\\"linkComponents\\": [\\n{ \\"name\\": \\"Link\\", \\"linkAttribute\\": \\"to\\" }\\n]\\n},\\n\\"jsx-a11y\\": {\\n\\"components\\": {\\n\\"Link\\": \\"a\\",\\n\\"Button\\": \\"button\\"\\n}\\n}\\n}\\n}\\n```"},"ReactPluginSettings":{"description":"Configure React plugin rules.\\n\\nDerived from [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react#configuration-legacy-eslintrc-)","type":"object","properties":{"componentWrapperFunctions":{"description":"Functions that wrap React components and should be treated as HOCs.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\"settings\\": {\\n\\"react\\": {\\n\\"componentWrapperFunctions\\": [\\"observer\\", \\"withRouter\\"]\\n}\\n}\\n}\\n```","default":[],"type":"array","items":{"type":"string"},"markdownDescription":"Functions that wrap React components and should be treated as HOCs.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\"settings\\": {\\n\\"react\\": {\\n\\"componentWrapperFunctions\\": [\\"observer\\", \\"withRouter\\"]\\n}\\n}\\n}\\n```"},"formComponents":{"description":"Components used as alternatives to `<form>` for forms, such as `<Formik>`.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\"settings\\": {\\n\\"react\\": {\\n\\"formComponents\\": [\\n\\"CustomForm\\",\\n// OtherForm is considered a form component and has an endpoint attribute\\n{ \\"name\\": \\"OtherForm\\", \\"formAttribute\\": \\"endpoint\\" },\\n// allows specifying multiple properties if necessary\\n{ \\"name\\": \\"Form\\", \\"formAttribute\\": [\\"registerEndpoint\\", \\"loginEndpoint\\"] }\\n]\\n}\\n}\\n}\\n```","default":[],"type":"array","items":{"$ref":"#/definitions/CustomComponent"},"markdownDescription":"Components used as alternatives to `<form>` for forms, such as `<Formik>`.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\"settings\\": {\\n\\"react\\": {\\n\\"formComponents\\": [\\n\\"CustomForm\\",\\n// OtherForm is considered a form component and has an endpoint attribute\\n{ \\"name\\": \\"OtherForm\\", \\"formAttribute\\": \\"endpoint\\" },\\n// allows specifying multiple properties if necessary\\n{ \\"name\\": \\"Form\\", \\"formAttribute\\": [\\"registerEndpoint\\", \\"loginEndpoint\\"] }\\n]\\n}\\n}\\n}\\n```"},"linkComponents":{"description":"Components used as alternatives to `<a>` for linking, such as `<Link>`.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\"settings\\": {\\n\\"react\\": {\\n\\"linkComponents\\": [\\n\\"HyperLink\\",\\n// Use `linkAttribute` for components that use a different prop name\\n// than `href`.\\n{ \\"name\\": \\"MyLink\\", \\"linkAttribute\\": \\"to\\" },\\n// allows specifying multiple properties if necessary\\n{ \\"name\\": \\"Link\\", \\"linkAttribute\\": [\\"to\\", \\"href\\"] }\\n]\\n}\\n}\\n}\\n```","default":[],"type":"array","items":{"$ref":"#/definitions/CustomComponent"},"markdownDescription":"Components used as alternatives to `<a>` for linking, such as `<Link>`.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\"settings\\": {\\n\\"react\\": {\\n\\"linkComponents\\": [\\n\\"HyperLink\\",\\n// Use `linkAttribute` for components that use a different prop name\\n// than `href`.\\n{ \\"name\\": \\"MyLink\\", \\"linkAttribute\\": \\"to\\" },\\n// allows specifying multiple properties if necessary\\n{ \\"name\\": \\"Link\\", \\"linkAttribute\\": [\\"to\\", \\"href\\"] }\\n]\\n}\\n}\\n}\\n```"},"version":{"description":"React version to use for version-specific rules.\\n\\nAccepts semver versions (e.g., \\"18.2.0\\", \\"17.0\\").\\n\\nExample:\\n\\n```jsonc\\n{\\n\\"settings\\": {\\n\\"react\\": {\\n\\"version\\": \\"18.2.0\\"\\n}\\n}\\n}\\n```","default":null,"type":["string","null"],"pattern":"^[1-9]\\\\d*(\\\\.(0|[1-9]\\\\d*))?(\\\\.(0|[1-9]\\\\d*))?$","markdownDescription":"React version to use for version-specific rules.\\n\\nAccepts semver versions (e.g., \\"18.2.0\\", \\"17.0\\").\\n\\nExample:\\n\\n```jsonc\\n{\\n\\"settings\\": {\\n\\"react\\": {\\n\\"version\\": \\"18.2.0\\"\\n}\\n}\\n}\\n```"}},"markdownDescription":"Configure React plugin rules.\\n\\nDerived from [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react#configuration-legacy-eslintrc-)"},"TagNamePreference":{"anyOf":[{"type":"string"},{"type":"object","required":["message","replacement"],"properties":{"message":{"type":"string"},"replacement":{"type":"string"}}},{"type":"object","required":["message"],"properties":{"message":{"type":"string"}}},{"type":"boolean"}]},"VitestPluginSettings":{"description":"Configure Vitest plugin rules.\\n\\nSee [eslint-plugin-vitest](https://github.com/vitest-dev/eslint-plugin-vitest)\'s\\nconfiguration for a full reference.","type":"object","properties":{"typecheck":{"description":"Whether to enable typecheck mode for Vitest rules.\\nWhen enabled, some rules will skip certain checks for describe blocks\\nto accommodate TypeScript type checking scenarios.","default":false,"type":"boolean","markdownDescription":"Whether to enable typecheck mode for Vitest rules.\\nWhen enabled, some rules will skip certain checks for describe blocks\\nto accommodate TypeScript type checking scenarios."}},"markdownDescription":"Configure Vitest plugin rules.\\n\\nSee [eslint-plugin-vitest](https://github.com/vitest-dev/eslint-plugin-vitest)\'s\\nconfiguration for a full reference."}},"markdownDescription":"Oxlint Configuration File\\n\\nThis configuration is aligned with ESLint v8\'s configuration schema (`eslintrc.json`).\\n\\nUsage: `oxlint -c oxlintrc.json --import-plugin`\\n\\n::: danger NOTE\\n\\nOnly the `.json` format is supported. You can use comments in configuration files.\\n\\n:::\\n\\nExample\\n\\n`.oxlintrc.json`\\n\\n```json\\n{\\n\\"$schema\\": \\"./node_modules/oxlint/configuration_schema.json\\",\\n\\"plugins\\": [\\"import\\", \\"typescript\\", \\"unicorn\\"],\\n\\"env\\": {\\n\\"browser\\": true\\n},\\n\\"globals\\": {\\n\\"foo\\": \\"readonly\\"\\n},\\n\\"settings\\": {\\n},\\n\\"rules\\": {\\n\\"eqeqeq\\": \\"warn\\",\\n\\"import/no-cycle\\": \\"error\\",\\n\\"react/self-closing-comp\\": [\\"error\\", { \\"html\\": false }]\\n},\\n\\"overrides\\": [\\n{\\n\\"files\\": [\\"*.test.ts\\", \\"*.spec.ts\\"],\\n\\"rules\\": {\\n\\"@typescript-eslint/no-explicit-any\\": \\"off\\"\\n}\\n}\\n]\\n}\\n```"}';
|
|
2709
|
+
|
|
2597
2710
|
// src/datamitsu-config/uvVersions.json
|
|
2598
2711
|
var uvVersions_default = {
|
|
2599
2712
|
checkov: {
|
|
@@ -2713,9 +2826,17 @@ var mapOfApps = {
|
|
|
2713
2826
|
}
|
|
2714
2827
|
},
|
|
2715
2828
|
oxlint: {
|
|
2716
|
-
|
|
2717
|
-
|
|
2718
|
-
|
|
2829
|
+
files: {
|
|
2830
|
+
".oxlintrc.json": JSON.stringify(oxlintrc_default),
|
|
2831
|
+
"oxlint_configuration_schema.json": data3
|
|
2832
|
+
},
|
|
2833
|
+
fnm: {
|
|
2834
|
+
binPath: "node_modules/.bin/oxlint",
|
|
2835
|
+
...fnmVersions_default.oxlint
|
|
2836
|
+
},
|
|
2837
|
+
links: {
|
|
2838
|
+
".oxlintrc.json": ".oxlintrc.json",
|
|
2839
|
+
"oxlint_configuration_schema.json": "oxlint_configuration_schema.json"
|
|
2719
2840
|
}
|
|
2720
2841
|
},
|
|
2721
2842
|
pnpm: {
|
|
@@ -2725,12 +2846,7 @@ var mapOfApps = {
|
|
|
2725
2846
|
lockFile: "br:G6kBQBwHdiz4RuhgYyJ4djCvvpK+DdaLkb49VAogDeKCBvdtu7+/QnLaKRAkCKIVNGuG0DnNEXRXuk3w6OmuYujML0vgAzRHrVYjqjMcCkgxZB8+o9Xby+UNfrvISHWGhsWSWbh1RHU49FdEOMhc3sCgJiaVpM63S5ib+OlyHDFZIY+bkecYkWe4RbRNNS9ykgESeeIQFQuH8Vul6T/b6m2EzVTmBVqSi8+2Tl7X2a5VyRW3Y5/L9al/7o8Ho/ZxqeX3AKL+rero3LAxzOpal2fXz4ztwX3yOj/m41IUjsXgvQ5Yhd0B2Tu2w6lv238kOXti/IbUzYg6Nq8xvIBuGDaFYHsitIHT9HLuNrbYLt8/Ag=="
|
|
2726
2847
|
}
|
|
2727
2848
|
},
|
|
2728
|
-
prettier:
|
|
2729
|
-
shell: {
|
|
2730
|
-
args: [],
|
|
2731
|
-
name: facts().env.DATAMITSU_APP_PRETTIER_BINARY_FILEPATH || ""
|
|
2732
|
-
}
|
|
2733
|
-
},
|
|
2849
|
+
prettier: prettierApp,
|
|
2734
2850
|
quicktype: {
|
|
2735
2851
|
fnm: {
|
|
2736
2852
|
binPath: "node_modules/.bin/quicktype",
|
|
@@ -2794,7 +2910,7 @@ var mapOfApps = {
|
|
|
2794
2910
|
|
|
2795
2911
|
// package.json
|
|
2796
2912
|
var name = "@shibanet0/datamitsu-config";
|
|
2797
|
-
var version = "0.0.3-alpha-
|
|
2913
|
+
var version = "0.0.3-alpha-3";
|
|
2798
2914
|
|
|
2799
2915
|
// src/oxlint/index.ts
|
|
2800
2916
|
var finalized = {
|
|
@@ -3093,7 +3209,7 @@ var init = {
|
|
|
3093
3209
|
".editorconfig": {
|
|
3094
3210
|
content: (context) => {
|
|
3095
3211
|
const existing = INI.toRecord(INI.parse(context.existingContent || ""));
|
|
3096
|
-
const
|
|
3212
|
+
const data4 = [
|
|
3097
3213
|
{
|
|
3098
3214
|
name: "DEFAULT",
|
|
3099
3215
|
properties: { root: "true" }
|
|
@@ -3166,18 +3282,18 @@ var init = {
|
|
|
3166
3282
|
// },
|
|
3167
3283
|
// },
|
|
3168
3284
|
];
|
|
3169
|
-
return INI.stringify(
|
|
3285
|
+
return INI.stringify(data4);
|
|
3170
3286
|
},
|
|
3171
3287
|
rootOnly: true
|
|
3172
3288
|
},
|
|
3173
3289
|
".editorconfig-checker.json": {
|
|
3174
3290
|
content: (context) => {
|
|
3175
|
-
const
|
|
3291
|
+
const data4 = JSON.parse(context.existingContent || "{}");
|
|
3176
3292
|
return JSON.stringify(
|
|
3177
3293
|
{
|
|
3178
|
-
...
|
|
3294
|
+
...data4,
|
|
3179
3295
|
Disable: {
|
|
3180
|
-
...
|
|
3296
|
+
...data4.Disable
|
|
3181
3297
|
}
|
|
3182
3298
|
},
|
|
3183
3299
|
null,
|
|
@@ -3197,9 +3313,9 @@ var init = {
|
|
|
3197
3313
|
},
|
|
3198
3314
|
".gitleaks.toml": {
|
|
3199
3315
|
content: (context) => {
|
|
3200
|
-
const
|
|
3316
|
+
const data4 = TOML.parse(context.existingContent || "");
|
|
3201
3317
|
return TOML.stringify({
|
|
3202
|
-
...
|
|
3318
|
+
...data4,
|
|
3203
3319
|
extend: {
|
|
3204
3320
|
useDefault: true
|
|
3205
3321
|
},
|
|
@@ -3244,15 +3360,20 @@ var init = {
|
|
|
3244
3360
|
rootOnly: true
|
|
3245
3361
|
},
|
|
3246
3362
|
".oxlintrc.json": {
|
|
3247
|
-
content: () => {
|
|
3363
|
+
content: (context) => {
|
|
3248
3364
|
return JSON.stringify(
|
|
3249
3365
|
{
|
|
3250
3366
|
...oxlintConfig,
|
|
3251
3367
|
...env().DATAMITSU_DEV_MODE ? {
|
|
3252
|
-
$schema:
|
|
3368
|
+
$schema: tools.Path.join(
|
|
3369
|
+
context.datamitsuDir,
|
|
3370
|
+
"oxlint_configuration_schema.json"
|
|
3371
|
+
),
|
|
3253
3372
|
rules: oxlintConfig.rules
|
|
3254
3373
|
} : {
|
|
3255
|
-
extends:
|
|
3374
|
+
extends: tools.Path.forImport(
|
|
3375
|
+
tools.Path.join(context.datamitsuDir, ".oxlintrc.json")
|
|
3376
|
+
),
|
|
3256
3377
|
rules: void 0
|
|
3257
3378
|
}
|
|
3258
3379
|
},
|
|
@@ -3542,13 +3663,10 @@ var init = {
|
|
|
3542
3663
|
},
|
|
3543
3664
|
"eslint.config.js": {
|
|
3544
3665
|
content: (context) => {
|
|
3545
|
-
const relPath = tools.Path.rel(context.cwdPath, context.rootPath);
|
|
3546
|
-
console.log(JSON.stringify(context, null, 2));
|
|
3547
|
-
console.log(relPath);
|
|
3548
3666
|
if (env().DATAMITSU_DEV_MODE) {
|
|
3549
3667
|
return `import { join } from "node:path";
|
|
3550
3668
|
|
|
3551
|
-
import { defineConfig } from "${
|
|
3669
|
+
import { defineConfig } from "${tools.Path.forImport(tools.Path.join(context.datamitsuDir, "eslint.config.js"))}";
|
|
3552
3670
|
import packageJSON from "./package.json" with { type: "json" };
|
|
3553
3671
|
|
|
3554
3672
|
const config = await defineConfig(
|
|
@@ -3580,7 +3698,7 @@ export default [
|
|
|
3580
3698
|
}
|
|
3581
3699
|
return `import { join } from "node:path";
|
|
3582
3700
|
|
|
3583
|
-
import { defineConfig } from "${
|
|
3701
|
+
import { defineConfig } from "${tools.Path.forImport(tools.Path.join(context.datamitsuDir, "eslint.config.js"))}";
|
|
3584
3702
|
|
|
3585
3703
|
import packageJSON from "./package.json" with { type: "json" };
|
|
3586
3704
|
|
|
@@ -3631,9 +3749,9 @@ export default config;
|
|
|
3631
3749
|
// },
|
|
3632
3750
|
"hadolint.yaml": {
|
|
3633
3751
|
content: (context) => {
|
|
3634
|
-
const
|
|
3752
|
+
const data4 = YAML.parse(context.existingContent || "");
|
|
3635
3753
|
return YAML.stringify({
|
|
3636
|
-
...
|
|
3754
|
+
...data4
|
|
3637
3755
|
});
|
|
3638
3756
|
},
|
|
3639
3757
|
otherFileNameList: [
|
|
@@ -3765,11 +3883,11 @@ export default config;
|
|
|
3765
3883
|
},
|
|
3766
3884
|
"package.json": {
|
|
3767
3885
|
content: ({ existingContent, isRoot }) => {
|
|
3768
|
-
const
|
|
3886
|
+
const data4 = JSON.parse(existingContent || "{}");
|
|
3769
3887
|
const config = {
|
|
3770
|
-
...
|
|
3888
|
+
...data4,
|
|
3771
3889
|
scripts: {
|
|
3772
|
-
...
|
|
3890
|
+
...data4.scripts,
|
|
3773
3891
|
...isRoot ? {
|
|
3774
3892
|
postinstall: void 0,
|
|
3775
3893
|
preinstall: "npx only-allow@1.2.2 pnpm",
|
|
@@ -3785,24 +3903,24 @@ export default config;
|
|
|
3785
3903
|
}
|
|
3786
3904
|
},
|
|
3787
3905
|
type: "module",
|
|
3788
|
-
...typeof
|
|
3906
|
+
...typeof data4.config === "object" ? {
|
|
3789
3907
|
config: {
|
|
3790
|
-
...
|
|
3908
|
+
...data4.config,
|
|
3791
3909
|
syncpack: void 0
|
|
3792
3910
|
}
|
|
3793
3911
|
} : {},
|
|
3794
|
-
dependencies: cleanDependencies(
|
|
3912
|
+
dependencies: cleanDependencies(data4.dependencies),
|
|
3795
3913
|
devDependencies: {
|
|
3796
|
-
...cleanDependencies(
|
|
3914
|
+
...cleanDependencies(data4.devDependencies),
|
|
3797
3915
|
...env().DATAMITSU_DEV_MODE ? {} : { [name]: version }
|
|
3798
3916
|
},
|
|
3799
3917
|
engines: isRoot ? {
|
|
3800
3918
|
node: `>=${runtimeVersions.node}`,
|
|
3801
3919
|
pnpm: `>=${fnmVersions_default.pnpm.version}`
|
|
3802
3920
|
} : void 0,
|
|
3803
|
-
optionalDependencies: cleanDependencies(
|
|
3921
|
+
optionalDependencies: cleanDependencies(data4.optionalDependencies),
|
|
3804
3922
|
packageManager: isRoot ? `pnpm@${fnmVersions_default.pnpm.version}` : void 0,
|
|
3805
|
-
peerDependencies: cleanDependencies(
|
|
3923
|
+
peerDependencies: cleanDependencies(data4.peerDependencies),
|
|
3806
3924
|
...{
|
|
3807
3925
|
eslintConfig: void 0,
|
|
3808
3926
|
"lint-staged": void 0,
|
|
@@ -3857,9 +3975,9 @@ export default config;
|
|
|
3857
3975
|
// },
|
|
3858
3976
|
// },
|
|
3859
3977
|
"prettier.config.js": {
|
|
3860
|
-
content: () => {
|
|
3978
|
+
content: (context) => {
|
|
3861
3979
|
return [
|
|
3862
|
-
`import { defineConfig } from "${
|
|
3980
|
+
`import { defineConfig } from "${tools.Path.forImport(tools.Path.join(context.datamitsuDir, "prettier.config.js"))}";`,
|
|
3863
3981
|
"",
|
|
3864
3982
|
`const config = defineConfig();`,
|
|
3865
3983
|
"",
|
|
@@ -3891,14 +4009,14 @@ export default config;
|
|
|
3891
4009
|
},
|
|
3892
4010
|
"turbo.json": {
|
|
3893
4011
|
content: (context) => {
|
|
3894
|
-
const
|
|
4012
|
+
const data4 = JSON.parse(context.existingContent || "{}");
|
|
3895
4013
|
return JSON.stringify(
|
|
3896
4014
|
{
|
|
3897
|
-
...
|
|
4015
|
+
...data4,
|
|
3898
4016
|
$schema: "https://turbo.build/schema.json",
|
|
3899
4017
|
globalEnv: ["TZ", "PORT", "CI"],
|
|
3900
4018
|
tasks: {
|
|
3901
|
-
...
|
|
4019
|
+
...data4.tasks,
|
|
3902
4020
|
build: {
|
|
3903
4021
|
dependsOn: ["build:lib", "^build"],
|
|
3904
4022
|
outputs: ["dist/**", ".next/**", "!.next/cache/**"]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const prettierApp: BinManager.App;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const data = "{\"$schema\":\"http://json-schema.org/draft-07/schema#\",\"title\":\"Oxlintrc\",\"description\":\"Oxlint Configuration File\\n\\nThis configuration is aligned with ESLint v8's configuration schema (`eslintrc.json`).\\n\\nUsage: `oxlint -c oxlintrc.json --import-plugin`\\n\\n::: danger NOTE\\n\\nOnly the `.json` format is supported. You can use comments in configuration files.\\n\\n:::\\n\\nExample\\n\\n`.oxlintrc.json`\\n\\n```json\\n{\\n\\\"$schema\\\": \\\"./node_modules/oxlint/configuration_schema.json\\\",\\n\\\"plugins\\\": [\\\"import\\\", \\\"typescript\\\", \\\"unicorn\\\"],\\n\\\"env\\\": {\\n\\\"browser\\\": true\\n},\\n\\\"globals\\\": {\\n\\\"foo\\\": \\\"readonly\\\"\\n},\\n\\\"settings\\\": {\\n},\\n\\\"rules\\\": {\\n\\\"eqeqeq\\\": \\\"warn\\\",\\n\\\"import/no-cycle\\\": \\\"error\\\",\\n\\\"react/self-closing-comp\\\": [\\\"error\\\", { \\\"html\\\": false }]\\n},\\n\\\"overrides\\\": [\\n{\\n\\\"files\\\": [\\\"*.test.ts\\\", \\\"*.spec.ts\\\"],\\n\\\"rules\\\": {\\n\\\"@typescript-eslint/no-explicit-any\\\": \\\"off\\\"\\n}\\n}\\n]\\n}\\n```\",\"type\":\"object\",\"properties\":{\"$schema\":{\"description\":\"Schema URI for editor tooling.\",\"type\":[\"string\",\"null\"],\"markdownDescription\":\"Schema URI for editor tooling.\"},\"categories\":{\"default\":{},\"allOf\":[{\"$ref\":\"#/definitions/OxlintCategories\"}]},\"env\":{\"description\":\"Environments enable and disable collections of global variables.\",\"default\":{\"builtin\":true},\"allOf\":[{\"$ref\":\"#/definitions/OxlintEnv\"}],\"markdownDescription\":\"Environments enable and disable collections of global variables.\"},\"extends\":{\"description\":\"Paths of configuration files that this configuration file extends (inherits from). The files\\nare resolved relative to the location of the configuration file that contains the `extends`\\nproperty. The configuration files are merged from the first to the last, with the last file\\noverriding the previous ones.\",\"type\":\"array\",\"items\":{\"type\":\"string\"},\"markdownDescription\":\"Paths of configuration files that this configuration file extends (inherits from). The files\\nare resolved relative to the location of the configuration file that contains the `extends`\\nproperty. The configuration files are merged from the first to the last, with the last file\\noverriding the previous ones.\"},\"globals\":{\"description\":\"Enabled or disabled specific global variables.\",\"default\":{},\"allOf\":[{\"$ref\":\"#/definitions/OxlintGlobals\"}],\"markdownDescription\":\"Enabled or disabled specific global variables.\"},\"ignorePatterns\":{\"description\":\"Globs to ignore during linting. These are resolved from the configuration file path.\",\"default\":[],\"type\":\"array\",\"items\":{\"type\":\"string\"},\"markdownDescription\":\"Globs to ignore during linting. These are resolved from the configuration file path.\"},\"jsPlugins\":{\"description\":\"JS plugins, allows usage of ESLint plugins with Oxlint.\\n\\nRead more about JS plugins in\\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\\n\\nNote: JS plugins are experimental and not subject to semver.\\nThey are not supported in the language server (and thus editor integrations) at present.\",\"anyOf\":[{\"type\":\"null\"},{\"type\":\"array\",\"items\":{\"$ref\":\"#/definitions/ExternalPluginEntry\"},\"uniqueItems\":true}],\"markdownDescription\":\"JS plugins, allows usage of ESLint plugins with Oxlint.\\n\\nRead more about JS plugins in\\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\\n\\nNote: JS plugins are experimental and not subject to semver.\\nThey are not supported in the language server (and thus editor integrations) at present.\"},\"overrides\":{\"description\":\"Add, remove, or otherwise reconfigure rules for specific files or groups of files.\",\"allOf\":[{\"$ref\":\"#/definitions/OxlintOverrides\"}],\"markdownDescription\":\"Add, remove, or otherwise reconfigure rules for specific files or groups of files.\"},\"plugins\":{\"description\":\"Enabled built-in plugins for Oxlint.\\nYou can view the list of available plugins on\\n[the website](https://oxc.rs/docs/guide/usage/linter/plugins.html#supported-plugins).\\n\\nNOTE: Setting the `plugins` field will overwrite the base set of plugins.\\nThe `plugins` array should reflect all of the plugins you want to use.\",\"default\":null,\"anyOf\":[{\"$ref\":\"#/definitions/LintPlugins\"},{\"type\":\"null\"}],\"markdownDescription\":\"Enabled built-in plugins for Oxlint.\\nYou can view the list of available plugins on\\n[the website](https://oxc.rs/docs/guide/usage/linter/plugins.html#supported-plugins).\\n\\nNOTE: Setting the `plugins` field will overwrite the base set of plugins.\\nThe `plugins` array should reflect all of the plugins you want to use.\"},\"rules\":{\"description\":\"Example\\n\\n`.oxlintrc.json`\\n\\n```json\\n{\\n\\\"$schema\\\": \\\"./node_modules/oxlint/configuration_schema.json\\\",\\n\\\"rules\\\": {\\n\\\"eqeqeq\\\": \\\"warn\\\",\\n\\\"import/no-cycle\\\": \\\"error\\\",\\n\\\"prefer-const\\\": [\\\"error\\\", { \\\"ignoreReadBeforeAssign\\\": true }]\\n}\\n}\\n```\\n\\nSee [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html) for the list of\\nrules.\",\"default\":{},\"allOf\":[{\"$ref\":\"#/definitions/OxlintRules\"}],\"markdownDescription\":\"Example\\n\\n`.oxlintrc.json`\\n\\n```json\\n{\\n\\\"$schema\\\": \\\"./node_modules/oxlint/configuration_schema.json\\\",\\n\\\"rules\\\": {\\n\\\"eqeqeq\\\": \\\"warn\\\",\\n\\\"import/no-cycle\\\": \\\"error\\\",\\n\\\"prefer-const\\\": [\\\"error\\\", { \\\"ignoreReadBeforeAssign\\\": true }]\\n}\\n}\\n```\\n\\nSee [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html) for the list of\\nrules.\"},\"settings\":{\"default\":{\"jsx-a11y\":{\"polymorphicPropName\":null,\"components\":{},\"attributes\":{}},\"next\":{\"rootDir\":[]},\"react\":{\"formComponents\":[],\"linkComponents\":[],\"version\":null,\"componentWrapperFunctions\":[]},\"jsdoc\":{\"ignorePrivate\":false,\"ignoreInternal\":false,\"ignoreReplacesDocs\":true,\"overrideReplacesDocs\":true,\"augmentsExtendsReplacesDocs\":false,\"implementsReplacesDocs\":false,\"exemptDestructuredRootsFromChecks\":false,\"tagNamePreference\":{}},\"vitest\":{\"typecheck\":false}},\"allOf\":[{\"$ref\":\"#/definitions/OxlintSettings\"}]}},\"additionalProperties\":false,\"allowComments\":true,\"allowTrailingCommas\":true,\"definitions\":{\"AllowWarnDeny\":{\"oneOf\":[{\"description\":\"Oxlint rule.\\n- \\\"allow\\\" or \\\"off\\\": Turn off the rule.\\n- \\\"warn\\\": Turn the rule on as a warning (doesn't affect exit code).\\n- \\\"error\\\" or \\\"deny\\\": Turn the rule on as an error (will exit with a failure code).\",\"type\":\"string\",\"enum\":[\"allow\",\"off\",\"warn\",\"error\",\"deny\"],\"markdownDescription\":\"Oxlint rule.\\n- \\\"allow\\\" or \\\"off\\\": Turn off the rule.\\n- \\\"warn\\\": Turn the rule on as a warning (doesn't affect exit code).\\n- \\\"error\\\" or \\\"deny\\\": Turn the rule on as an error (will exit with a failure code).\"},{\"description\":\"Oxlint rule.\\n \\n- 0: Turn off the rule.\\n- 1: Turn the rule on as a warning (doesn't affect exit code).\\n- 2: Turn the rule on as an error (will exit with a failure code).\",\"type\":\"integer\",\"format\":\"uint32\",\"maximum\":2,\"minimum\":0,\"markdownDescription\":\"Oxlint rule.\\n \\n- 0: Turn off the rule.\\n- 1: Turn the rule on as a warning (doesn't affect exit code).\\n- 2: Turn the rule on as an error (will exit with a failure code).\"}]},\"CustomComponent\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"object\",\"required\":[\"attribute\",\"name\"],\"properties\":{\"attribute\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"}}},{\"type\":\"object\",\"required\":[\"attributes\",\"name\"],\"properties\":{\"attributes\":{\"type\":\"array\",\"items\":{\"type\":\"string\"}},\"name\":{\"type\":\"string\"}}}]},\"DummyRule\":{\"anyOf\":[{\"$ref\":\"#/definitions/AllowWarnDeny\"},{\"type\":\"array\",\"items\":true}]},\"DummyRuleMap\":{\"description\":\"See [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html)\",\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#/definitions/DummyRule\"},\"markdownDescription\":\"See [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html)\"},\"ExternalPluginEntry\":{\"anyOf\":[{\"description\":\"Path or package name of the plugin\",\"type\":\"string\",\"markdownDescription\":\"Path or package name of the plugin\"},{\"description\":\"Plugin with custom name/alias\",\"type\":\"object\",\"required\":[\"name\",\"specifier\"],\"properties\":{\"name\":{\"description\":\"Custom name/alias for the plugin.\\n\\nNote: The following plugin names are reserved because they are implemented natively in Rust within oxlint and cannot be used for JS plugins:\\n- react (includes react-hooks)\\n- unicorn\\n- typescript (includes @typescript-eslint)\\n- oxc\\n- import (includes import-x)\\n- jsdoc\\n- jest\\n- vitest\\n- jsx-a11y\\n- nextjs\\n- react-perf\\n- promise\\n- node\\n- vue\\n- eslint\\n\\nIf you need to use the JavaScript version of any of these plugins, provide a custom alias to avoid conflicts.\",\"type\":\"string\",\"markdownDescription\":\"Custom name/alias for the plugin.\\n\\nNote: The following plugin names are reserved because they are implemented natively in Rust within oxlint and cannot be used for JS plugins:\\n- react (includes react-hooks)\\n- unicorn\\n- typescript (includes @typescript-eslint)\\n- oxc\\n- import (includes import-x)\\n- jsdoc\\n- jest\\n- vitest\\n- jsx-a11y\\n- nextjs\\n- react-perf\\n- promise\\n- node\\n- vue\\n- eslint\\n\\nIf you need to use the JavaScript version of any of these plugins, provide a custom alias to avoid conflicts.\"},\"specifier\":{\"description\":\"Path or package name of the plugin\",\"type\":\"string\",\"markdownDescription\":\"Path or package name of the plugin\"}},\"additionalProperties\":false,\"markdownDescription\":\"Plugin with custom name/alias\"}]},\"GlobSet\":{\"description\":\"A set of glob patterns.\",\"type\":\"array\",\"items\":{\"type\":\"string\"},\"markdownDescription\":\"A set of glob patterns.\"},\"GlobalValue\":{\"type\":\"string\",\"enum\":[\"readonly\",\"writable\",\"off\"]},\"JSDocPluginSettings\":{\"type\":\"object\",\"properties\":{\"augmentsExtendsReplacesDocs\":{\"description\":\"Only for `require-(yields|returns|description|example|param|throws)` rule\",\"default\":false,\"type\":\"boolean\",\"markdownDescription\":\"Only for `require-(yields|returns|description|example|param|throws)` rule\"},\"exemptDestructuredRootsFromChecks\":{\"description\":\"Only for `require-param-type` and `require-param-description` rule\",\"default\":false,\"type\":\"boolean\",\"markdownDescription\":\"Only for `require-param-type` and `require-param-description` rule\"},\"ignoreInternal\":{\"description\":\"For all rules but NOT apply to `empty-tags` rule\",\"default\":false,\"type\":\"boolean\",\"markdownDescription\":\"For all rules but NOT apply to `empty-tags` rule\"},\"ignorePrivate\":{\"description\":\"For all rules but NOT apply to `check-access` and `empty-tags` rule\",\"default\":false,\"type\":\"boolean\",\"markdownDescription\":\"For all rules but NOT apply to `check-access` and `empty-tags` rule\"},\"ignoreReplacesDocs\":{\"description\":\"Only for `require-(yields|returns|description|example|param|throws)` rule\",\"default\":true,\"type\":\"boolean\",\"markdownDescription\":\"Only for `require-(yields|returns|description|example|param|throws)` rule\"},\"implementsReplacesDocs\":{\"description\":\"Only for `require-(yields|returns|description|example|param|throws)` rule\",\"default\":false,\"type\":\"boolean\",\"markdownDescription\":\"Only for `require-(yields|returns|description|example|param|throws)` rule\"},\"overrideReplacesDocs\":{\"description\":\"Only for `require-(yields|returns|description|example|param|throws)` rule\",\"default\":true,\"type\":\"boolean\",\"markdownDescription\":\"Only for `require-(yields|returns|description|example|param|throws)` rule\"},\"tagNamePreference\":{\"default\":{},\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#/definitions/TagNamePreference\"}}}},\"JSXA11yPluginSettings\":{\"description\":\"Configure JSX A11y plugin rules.\\n\\nSee\\n[eslint-plugin-jsx-a11y](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y#configurations)'s\\nconfiguration for a full reference.\",\"type\":\"object\",\"properties\":{\"attributes\":{\"description\":\"Map of attribute names to their DOM equivalents.\\nThis is useful for non-React frameworks that use different attribute names.\\n\\nExample:\\n\\n```json\\n{\\n\\\"settings\\\": {\\n\\\"jsx-a11y\\\": {\\n\\\"attributes\\\": {\\n\\\"for\\\": [\\\"htmlFor\\\", \\\"for\\\"]\\n}\\n}\\n}\\n}\\n```\",\"default\":{},\"type\":\"object\",\"additionalProperties\":{\"type\":\"array\",\"items\":{\"type\":\"string\"}},\"markdownDescription\":\"Map of attribute names to their DOM equivalents.\\nThis is useful for non-React frameworks that use different attribute names.\\n\\nExample:\\n\\n```json\\n{\\n\\\"settings\\\": {\\n\\\"jsx-a11y\\\": {\\n\\\"attributes\\\": {\\n\\\"for\\\": [\\\"htmlFor\\\", \\\"for\\\"]\\n}\\n}\\n}\\n}\\n```\"},\"components\":{\"description\":\"To have your custom components be checked as DOM elements, you can\\nprovide a mapping of your component names to the DOM element name.\\n\\nExample:\\n\\n```json\\n{\\n\\\"settings\\\": {\\n\\\"jsx-a11y\\\": {\\n\\\"components\\\": {\\n\\\"Link\\\": \\\"a\\\",\\n\\\"IconButton\\\": \\\"button\\\"\\n}\\n}\\n}\\n}\\n```\",\"default\":{},\"type\":\"object\",\"additionalProperties\":{\"type\":\"string\"},\"markdownDescription\":\"To have your custom components be checked as DOM elements, you can\\nprovide a mapping of your component names to the DOM element name.\\n\\nExample:\\n\\n```json\\n{\\n\\\"settings\\\": {\\n\\\"jsx-a11y\\\": {\\n\\\"components\\\": {\\n\\\"Link\\\": \\\"a\\\",\\n\\\"IconButton\\\": \\\"button\\\"\\n}\\n}\\n}\\n}\\n```\"},\"polymorphicPropName\":{\"description\":\"An optional setting that define the prop your code uses to create polymorphic components.\\nThis setting will be used to determine the element type in rules that\\nrequire semantic context.\\n\\nFor example, if you set the `polymorphicPropName` to `as`, then this element:\\n\\n```jsx\\n<Box as=\\\"h3\\\">Hello</Box>\\n```\\n\\nWill be treated as an `h3`. If not set, this component will be treated\\nas a `Box`.\",\"type\":[\"string\",\"null\"],\"markdownDescription\":\"An optional setting that define the prop your code uses to create polymorphic components.\\nThis setting will be used to determine the element type in rules that\\nrequire semantic context.\\n\\nFor example, if you set the `polymorphicPropName` to `as`, then this element:\\n\\n```jsx\\n<Box as=\\\"h3\\\">Hello</Box>\\n```\\n\\nWill be treated as an `h3`. If not set, this component will be treated\\nas a `Box`.\"}},\"markdownDescription\":\"Configure JSX A11y plugin rules.\\n\\nSee\\n[eslint-plugin-jsx-a11y](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y#configurations)'s\\nconfiguration for a full reference.\"},\"LintPluginOptionsSchema\":{\"type\":\"string\",\"enum\":[\"eslint\",\"react\",\"unicorn\",\"typescript\",\"oxc\",\"import\",\"jsdoc\",\"jest\",\"vitest\",\"jsx-a11y\",\"nextjs\",\"react-perf\",\"promise\",\"node\",\"vue\"]},\"LintPlugins\":{\"type\":\"array\",\"items\":{\"anyOf\":[{\"$ref\":\"#/definitions/LintPluginOptionsSchema\"}]}},\"NextPluginSettings\":{\"description\":\"Configure Next.js plugin rules.\",\"type\":\"object\",\"properties\":{\"rootDir\":{\"description\":\"The root directory of the Next.js project.\\n\\nThis is particularly useful when you have a monorepo and your Next.js\\nproject is in a subfolder.\\n\\nExample:\\n\\n```json\\n{\\n\\\"settings\\\": {\\n\\\"next\\\": {\\n\\\"rootDir\\\": \\\"apps/dashboard/\\\"\\n}\\n}\\n}\\n```\",\"default\":[],\"allOf\":[{\"$ref\":\"#/definitions/OneOrMany_for_String\"}],\"markdownDescription\":\"The root directory of the Next.js project.\\n\\nThis is particularly useful when you have a monorepo and your Next.js\\nproject is in a subfolder.\\n\\nExample:\\n\\n```json\\n{\\n\\\"settings\\\": {\\n\\\"next\\\": {\\n\\\"rootDir\\\": \\\"apps/dashboard/\\\"\\n}\\n}\\n}\\n```\"}},\"markdownDescription\":\"Configure Next.js plugin rules.\"},\"OneOrMany_for_String\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"array\",\"items\":{\"type\":\"string\"}}]},\"OxlintCategories\":{\"title\":\"Rule Categories\",\"description\":\"Configure an entire category of rules all at once.\\n\\nRules enabled or disabled this way will be overwritten by individual rules in the `rules` field.\\n\\nExample\\n```json\\n{\\n \\\"$schema\\\": \\\"./node_modules/oxlint/configuration_schema.json\\\",\\n \\\"categories\\\": {\\n \\\"correctness\\\": \\\"warn\\\"\\n },\\n \\\"rules\\\": {\\n \\\"eslint/no-unused-vars\\\": \\\"error\\\"\\n }\\n}\\n```\",\"examples\":[{\"correctness\":\"warn\"}],\"type\":\"object\",\"properties\":{\"correctness\":{\"$ref\":\"#/definitions/AllowWarnDeny\"},\"nursery\":{\"$ref\":\"#/definitions/AllowWarnDeny\"},\"pedantic\":{\"$ref\":\"#/definitions/AllowWarnDeny\"},\"perf\":{\"$ref\":\"#/definitions/AllowWarnDeny\"},\"restriction\":{\"$ref\":\"#/definitions/AllowWarnDeny\"},\"style\":{\"$ref\":\"#/definitions/AllowWarnDeny\"},\"suspicious\":{\"$ref\":\"#/definitions/AllowWarnDeny\"}},\"additionalProperties\":false,\"markdownDescription\":\"Configure an entire category of rules all at once.\\n\\nRules enabled or disabled this way will be overwritten by individual rules in the `rules` field.\\n\\nExample\\n```json\\n{\\n \\\"$schema\\\": \\\"./node_modules/oxlint/configuration_schema.json\\\",\\n \\\"categories\\\": {\\n \\\"correctness\\\": \\\"warn\\\"\\n },\\n \\\"rules\\\": {\\n \\\"eslint/no-unused-vars\\\": \\\"error\\\"\\n }\\n}\\n```\"},\"OxlintEnv\":{\"description\":\"Predefine global variables.\\n\\nEnvironments specify what global variables are predefined.\\nSee [ESLint's list of environments](https://eslint.org/docs/v8.x/use/configure/language-options#specifying-environments)\\nfor what environments are available and what each one provides.\",\"type\":\"object\",\"additionalProperties\":{\"type\":\"boolean\"},\"markdownDescription\":\"Predefine global variables.\\n\\nEnvironments specify what global variables are predefined.\\nSee [ESLint's list of environments](https://eslint.org/docs/v8.x/use/configure/language-options#specifying-environments)\\nfor what environments are available and what each one provides.\"},\"OxlintGlobals\":{\"description\":\"Add or remove global variables.\\n\\nFor each global variable, set the corresponding value equal to `\\\"writable\\\"`\\nto allow the variable to be overwritten or `\\\"readonly\\\"` to disallow overwriting.\\n\\nGlobals can be disabled by setting their value to `\\\"off\\\"`. For example, in\\nan environment where most Es2015 globals are available but `Promise` is unavailable,\\nyou might use this config:\\n\\n```json\\n\\n{\\n\\\"$schema\\\": \\\"./node_modules/oxlint/configuration_schema.json\\\",\\n\\\"env\\\": {\\n\\\"es6\\\": true\\n},\\n\\\"globals\\\": {\\n\\\"Promise\\\": \\\"off\\\"\\n}\\n}\\n\\n```\\n\\nYou may also use `\\\"readable\\\"` or `false` to represent `\\\"readonly\\\"`, and\\n`\\\"writeable\\\"` or `true` to represent `\\\"writable\\\"`.\",\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#/definitions/GlobalValue\"},\"markdownDescription\":\"Add or remove global variables.\\n\\nFor each global variable, set the corresponding value equal to `\\\"writable\\\"`\\nto allow the variable to be overwritten or `\\\"readonly\\\"` to disallow overwriting.\\n\\nGlobals can be disabled by setting their value to `\\\"off\\\"`. For example, in\\nan environment where most Es2015 globals are available but `Promise` is unavailable,\\nyou might use this config:\\n\\n```json\\n\\n{\\n\\\"$schema\\\": \\\"./node_modules/oxlint/configuration_schema.json\\\",\\n\\\"env\\\": {\\n\\\"es6\\\": true\\n},\\n\\\"globals\\\": {\\n\\\"Promise\\\": \\\"off\\\"\\n}\\n}\\n\\n```\\n\\nYou may also use `\\\"readable\\\"` or `false` to represent `\\\"readonly\\\"`, and\\n`\\\"writeable\\\"` or `true` to represent `\\\"writable\\\"`.\"},\"OxlintOverride\":{\"type\":\"object\",\"required\":[\"files\"],\"properties\":{\"env\":{\"description\":\"Environments enable and disable collections of global variables.\",\"anyOf\":[{\"$ref\":\"#/definitions/OxlintEnv\"},{\"type\":\"null\"}],\"markdownDescription\":\"Environments enable and disable collections of global variables.\"},\"files\":{\"description\":\"A list of glob patterns to override.\\n\\n## Example\\n`[ \\\"*.test.ts\\\", \\\"*.spec.ts\\\" ]`\",\"allOf\":[{\"$ref\":\"#/definitions/GlobSet\"}],\"markdownDescription\":\"A list of glob patterns to override.\\n\\n## Example\\n`[ \\\"*.test.ts\\\", \\\"*.spec.ts\\\" ]`\"},\"globals\":{\"description\":\"Enabled or disabled specific global variables.\",\"anyOf\":[{\"$ref\":\"#/definitions/OxlintGlobals\"},{\"type\":\"null\"}],\"markdownDescription\":\"Enabled or disabled specific global variables.\"},\"jsPlugins\":{\"description\":\"JS plugins for this override, allows usage of ESLint plugins with Oxlint.\\n\\nRead more about JS plugins in\\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\\n\\nNote: JS plugins are experimental and not subject to semver.\\nThey are not supported in the language server (and thus editor integrations) at present.\",\"anyOf\":[{\"type\":\"null\"},{\"type\":\"array\",\"items\":{\"$ref\":\"#/definitions/ExternalPluginEntry\"},\"uniqueItems\":true}],\"markdownDescription\":\"JS plugins for this override, allows usage of ESLint plugins with Oxlint.\\n\\nRead more about JS plugins in\\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\\n\\nNote: JS plugins are experimental and not subject to semver.\\nThey are not supported in the language server (and thus editor integrations) at present.\"},\"plugins\":{\"description\":\"Optionally change what plugins are enabled for this override. When\\nomitted, the base config's plugins are used.\",\"default\":null,\"anyOf\":[{\"$ref\":\"#/definitions/LintPlugins\"},{\"type\":\"null\"}],\"markdownDescription\":\"Optionally change what plugins are enabled for this override. When\\nomitted, the base config's plugins are used.\"},\"rules\":{\"default\":{},\"allOf\":[{\"$ref\":\"#/definitions/OxlintRules\"}]}},\"additionalProperties\":false},\"OxlintOverrides\":{\"type\":\"array\",\"items\":{\"$ref\":\"#/definitions/OxlintOverride\"}},\"OxlintRules\":{\"$ref\":\"#/definitions/DummyRuleMap\"},\"OxlintSettings\":{\"title\":\"Oxlint Plugin Settings\",\"description\":\"Configure the behavior of linter plugins.\\n\\nHere's an example if you're using Next.js in a monorepo:\\n\\n```json\\n{\\n\\\"settings\\\": {\\n\\\"next\\\": {\\n\\\"rootDir\\\": \\\"apps/dashboard/\\\"\\n},\\n\\\"react\\\": {\\n\\\"linkComponents\\\": [\\n{ \\\"name\\\": \\\"Link\\\", \\\"linkAttribute\\\": \\\"to\\\" }\\n]\\n},\\n\\\"jsx-a11y\\\": {\\n\\\"components\\\": {\\n\\\"Link\\\": \\\"a\\\",\\n\\\"Button\\\": \\\"button\\\"\\n}\\n}\\n}\\n}\\n```\",\"type\":\"object\",\"properties\":{\"jsdoc\":{\"default\":{\"ignorePrivate\":false,\"ignoreInternal\":false,\"ignoreReplacesDocs\":true,\"overrideReplacesDocs\":true,\"augmentsExtendsReplacesDocs\":false,\"implementsReplacesDocs\":false,\"exemptDestructuredRootsFromChecks\":false,\"tagNamePreference\":{}},\"allOf\":[{\"$ref\":\"#/definitions/JSDocPluginSettings\"}]},\"jsx-a11y\":{\"default\":{\"polymorphicPropName\":null,\"components\":{},\"attributes\":{}},\"allOf\":[{\"$ref\":\"#/definitions/JSXA11yPluginSettings\"}]},\"next\":{\"default\":{\"rootDir\":[]},\"allOf\":[{\"$ref\":\"#/definitions/NextPluginSettings\"}]},\"react\":{\"default\":{\"formComponents\":[],\"linkComponents\":[],\"version\":null,\"componentWrapperFunctions\":[]},\"allOf\":[{\"$ref\":\"#/definitions/ReactPluginSettings\"}]},\"vitest\":{\"default\":{\"typecheck\":false},\"allOf\":[{\"$ref\":\"#/definitions/VitestPluginSettings\"}]}},\"markdownDescription\":\"Configure the behavior of linter plugins.\\n\\nHere's an example if you're using Next.js in a monorepo:\\n\\n```json\\n{\\n\\\"settings\\\": {\\n\\\"next\\\": {\\n\\\"rootDir\\\": \\\"apps/dashboard/\\\"\\n},\\n\\\"react\\\": {\\n\\\"linkComponents\\\": [\\n{ \\\"name\\\": \\\"Link\\\", \\\"linkAttribute\\\": \\\"to\\\" }\\n]\\n},\\n\\\"jsx-a11y\\\": {\\n\\\"components\\\": {\\n\\\"Link\\\": \\\"a\\\",\\n\\\"Button\\\": \\\"button\\\"\\n}\\n}\\n}\\n}\\n```\"},\"ReactPluginSettings\":{\"description\":\"Configure React plugin rules.\\n\\nDerived from [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react#configuration-legacy-eslintrc-)\",\"type\":\"object\",\"properties\":{\"componentWrapperFunctions\":{\"description\":\"Functions that wrap React components and should be treated as HOCs.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\\"settings\\\": {\\n\\\"react\\\": {\\n\\\"componentWrapperFunctions\\\": [\\\"observer\\\", \\\"withRouter\\\"]\\n}\\n}\\n}\\n```\",\"default\":[],\"type\":\"array\",\"items\":{\"type\":\"string\"},\"markdownDescription\":\"Functions that wrap React components and should be treated as HOCs.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\\"settings\\\": {\\n\\\"react\\\": {\\n\\\"componentWrapperFunctions\\\": [\\\"observer\\\", \\\"withRouter\\\"]\\n}\\n}\\n}\\n```\"},\"formComponents\":{\"description\":\"Components used as alternatives to `<form>` for forms, such as `<Formik>`.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\\"settings\\\": {\\n\\\"react\\\": {\\n\\\"formComponents\\\": [\\n\\\"CustomForm\\\",\\n// OtherForm is considered a form component and has an endpoint attribute\\n{ \\\"name\\\": \\\"OtherForm\\\", \\\"formAttribute\\\": \\\"endpoint\\\" },\\n// allows specifying multiple properties if necessary\\n{ \\\"name\\\": \\\"Form\\\", \\\"formAttribute\\\": [\\\"registerEndpoint\\\", \\\"loginEndpoint\\\"] }\\n]\\n}\\n}\\n}\\n```\",\"default\":[],\"type\":\"array\",\"items\":{\"$ref\":\"#/definitions/CustomComponent\"},\"markdownDescription\":\"Components used as alternatives to `<form>` for forms, such as `<Formik>`.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\\"settings\\\": {\\n\\\"react\\\": {\\n\\\"formComponents\\\": [\\n\\\"CustomForm\\\",\\n// OtherForm is considered a form component and has an endpoint attribute\\n{ \\\"name\\\": \\\"OtherForm\\\", \\\"formAttribute\\\": \\\"endpoint\\\" },\\n// allows specifying multiple properties if necessary\\n{ \\\"name\\\": \\\"Form\\\", \\\"formAttribute\\\": [\\\"registerEndpoint\\\", \\\"loginEndpoint\\\"] }\\n]\\n}\\n}\\n}\\n```\"},\"linkComponents\":{\"description\":\"Components used as alternatives to `<a>` for linking, such as `<Link>`.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\\"settings\\\": {\\n\\\"react\\\": {\\n\\\"linkComponents\\\": [\\n\\\"HyperLink\\\",\\n// Use `linkAttribute` for components that use a different prop name\\n// than `href`.\\n{ \\\"name\\\": \\\"MyLink\\\", \\\"linkAttribute\\\": \\\"to\\\" },\\n// allows specifying multiple properties if necessary\\n{ \\\"name\\\": \\\"Link\\\", \\\"linkAttribute\\\": [\\\"to\\\", \\\"href\\\"] }\\n]\\n}\\n}\\n}\\n```\",\"default\":[],\"type\":\"array\",\"items\":{\"$ref\":\"#/definitions/CustomComponent\"},\"markdownDescription\":\"Components used as alternatives to `<a>` for linking, such as `<Link>`.\\n\\nExample:\\n\\n```jsonc\\n{\\n\\\"settings\\\": {\\n\\\"react\\\": {\\n\\\"linkComponents\\\": [\\n\\\"HyperLink\\\",\\n// Use `linkAttribute` for components that use a different prop name\\n// than `href`.\\n{ \\\"name\\\": \\\"MyLink\\\", \\\"linkAttribute\\\": \\\"to\\\" },\\n// allows specifying multiple properties if necessary\\n{ \\\"name\\\": \\\"Link\\\", \\\"linkAttribute\\\": [\\\"to\\\", \\\"href\\\"] }\\n]\\n}\\n}\\n}\\n```\"},\"version\":{\"description\":\"React version to use for version-specific rules.\\n\\nAccepts semver versions (e.g., \\\"18.2.0\\\", \\\"17.0\\\").\\n\\nExample:\\n\\n```jsonc\\n{\\n\\\"settings\\\": {\\n\\\"react\\\": {\\n\\\"version\\\": \\\"18.2.0\\\"\\n}\\n}\\n}\\n```\",\"default\":null,\"type\":[\"string\",\"null\"],\"pattern\":\"^[1-9]\\\\d*(\\\\.(0|[1-9]\\\\d*))?(\\\\.(0|[1-9]\\\\d*))?$\",\"markdownDescription\":\"React version to use for version-specific rules.\\n\\nAccepts semver versions (e.g., \\\"18.2.0\\\", \\\"17.0\\\").\\n\\nExample:\\n\\n```jsonc\\n{\\n\\\"settings\\\": {\\n\\\"react\\\": {\\n\\\"version\\\": \\\"18.2.0\\\"\\n}\\n}\\n}\\n```\"}},\"markdownDescription\":\"Configure React plugin rules.\\n\\nDerived from [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react#configuration-legacy-eslintrc-)\"},\"TagNamePreference\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"object\",\"required\":[\"message\",\"replacement\"],\"properties\":{\"message\":{\"type\":\"string\"},\"replacement\":{\"type\":\"string\"}}},{\"type\":\"object\",\"required\":[\"message\"],\"properties\":{\"message\":{\"type\":\"string\"}}},{\"type\":\"boolean\"}]},\"VitestPluginSettings\":{\"description\":\"Configure Vitest plugin rules.\\n\\nSee [eslint-plugin-vitest](https://github.com/vitest-dev/eslint-plugin-vitest)'s\\nconfiguration for a full reference.\",\"type\":\"object\",\"properties\":{\"typecheck\":{\"description\":\"Whether to enable typecheck mode for Vitest rules.\\nWhen enabled, some rules will skip certain checks for describe blocks\\nto accommodate TypeScript type checking scenarios.\",\"default\":false,\"type\":\"boolean\",\"markdownDescription\":\"Whether to enable typecheck mode for Vitest rules.\\nWhen enabled, some rules will skip certain checks for describe blocks\\nto accommodate TypeScript type checking scenarios.\"}},\"markdownDescription\":\"Configure Vitest plugin rules.\\n\\nSee [eslint-plugin-vitest](https://github.com/vitest-dev/eslint-plugin-vitest)'s\\nconfiguration for a full reference.\"}},\"markdownDescription\":\"Oxlint Configuration File\\n\\nThis configuration is aligned with ESLint v8's configuration schema (`eslintrc.json`).\\n\\nUsage: `oxlint -c oxlintrc.json --import-plugin`\\n\\n::: danger NOTE\\n\\nOnly the `.json` format is supported. You can use comments in configuration files.\\n\\n:::\\n\\nExample\\n\\n`.oxlintrc.json`\\n\\n```json\\n{\\n\\\"$schema\\\": \\\"./node_modules/oxlint/configuration_schema.json\\\",\\n\\\"plugins\\\": [\\\"import\\\", \\\"typescript\\\", \\\"unicorn\\\"],\\n\\\"env\\\": {\\n\\\"browser\\\": true\\n},\\n\\\"globals\\\": {\\n\\\"foo\\\": \\\"readonly\\\"\\n},\\n\\\"settings\\\": {\\n},\\n\\\"rules\\\": {\\n\\\"eqeqeq\\\": \\\"warn\\\",\\n\\\"import/no-cycle\\\": \\\"error\\\",\\n\\\"react/self-closing-comp\\\": [\\\"error\\\", { \\\"html\\\": false }]\\n},\\n\\\"overrides\\\": [\\n{\\n\\\"files\\\": [\\\"*.test.ts\\\", \\\"*.spec.ts\\\"],\\n\\\"rules\\\": {\\n\\\"@typescript-eslint/no-explicit-any\\\": \\\"off\\\"\\n}\\n}\\n]\\n}\\n```\"}";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const data = "tar.br:G/8HAMaMOV/XqFwVUIYg3CZsgWjwZu/hEosgshJ8H8/FD9p3D5guB4btLnI1nsRqUbaH5tIPFPxq3CDRLJzPRzAA82DZiS/gvw7e8fl0BjGM180RKcEMjgH4DGHGpknfttHz4tBp1c/L2mvbyKv1e0KU5qVCbZNGeXvfV5KTYkbWE+sahaapHZOKKckUq4sDg18MNZvyRRLDOXK1ftMiLAcjh0RWXRfD36q9vLmT+EI3X0MPXu7+fJ02FaLUR+issdG/xKrWsiHYgy7OqygP/hGo0w7TlHeNp4BoShojOEZmdFNtybaHUJjXmOhuNyAN/cqBDA==";
|
|
@@ -97,6 +97,37 @@ declare global {
|
|
|
97
97
|
*/
|
|
98
98
|
function abs(path: string): string;
|
|
99
99
|
|
|
100
|
+
/**
|
|
101
|
+
* Convert a relative path to an ES module import-compatible format.
|
|
102
|
+
* Ensures the path starts with `./` or `../` as required by JavaScript/TypeScript imports.
|
|
103
|
+
* The path is cleaned/normalized before processing.
|
|
104
|
+
* Idempotent: paths already starting with `./` or `../` are returned unchanged.
|
|
105
|
+
*
|
|
106
|
+
* @param path - Relative path to convert
|
|
107
|
+
* @returns Import-compatible relative path (always starts with `./` or `../`)
|
|
108
|
+
* @throws TypeError if path is absolute (imports must be relative)
|
|
109
|
+
* @throws TypeError if no argument is provided
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* // Basic usage with datamitsuDir context
|
|
113
|
+
* const importPath = tools.Path.forImport(
|
|
114
|
+
* tools.Path.join(context.datamitsuDir, "eslint.config.js")
|
|
115
|
+
* );
|
|
116
|
+
* // ".datamitsu/eslint.config.js" → "./.datamitsu/eslint.config.js"
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* // Idempotent — already-valid paths are unchanged
|
|
120
|
+
* tools.Path.forImport("./.datamitsu/file.js"); // "./.datamitsu/file.js"
|
|
121
|
+
* tools.Path.forImport("../.datamitsu/file.js"); // "../.datamitsu/file.js"
|
|
122
|
+
*
|
|
123
|
+
* @example
|
|
124
|
+
* // Composing with linkPath for managed config imports
|
|
125
|
+
* const configPath = tools.Config.linkPath("my-app", "eslint-config", context.cwdPath);
|
|
126
|
+
* const importPath = tools.Path.forImport(configPath);
|
|
127
|
+
* // Use in generated config: `import config from "${importPath}";`
|
|
128
|
+
*/
|
|
129
|
+
function forImport(path: string): string;
|
|
130
|
+
|
|
100
131
|
/**
|
|
101
132
|
* Join path segments together using the OS-specific separator
|
|
102
133
|
* @param paths - Path segments to join
|
|
@@ -259,6 +290,14 @@ declare global {
|
|
|
259
290
|
*/
|
|
260
291
|
cwdPath: string;
|
|
261
292
|
|
|
293
|
+
/**
|
|
294
|
+
* Relative path from cwdPath to the .datamitsu/ directory at git root.
|
|
295
|
+
* Simplifies referencing managed config links in content generators.
|
|
296
|
+
* @example "../../.datamitsu" // from packages/frontend/
|
|
297
|
+
* @example ".datamitsu" // from git root
|
|
298
|
+
*/
|
|
299
|
+
datamitsuDir: string;
|
|
300
|
+
|
|
262
301
|
/**
|
|
263
302
|
* Content of existing file (if it exists)
|
|
264
303
|
* This may be modified content from previous merge operations
|
|
@@ -454,6 +493,11 @@ declare global {
|
|
|
454
493
|
* Tool operation configuration - how to run a tool for a specific operation
|
|
455
494
|
*/
|
|
456
495
|
interface ToolOperation {
|
|
496
|
+
/**
|
|
497
|
+
* App to execute (app name from MapOfApps)
|
|
498
|
+
*/
|
|
499
|
+
app: string;
|
|
500
|
+
|
|
457
501
|
/**
|
|
458
502
|
* Arguments to pass to the command.
|
|
459
503
|
* Template placeholders are expanded by the executor before execution:
|
|
@@ -475,11 +519,6 @@ declare global {
|
|
|
475
519
|
*/
|
|
476
520
|
batch?: boolean;
|
|
477
521
|
|
|
478
|
-
/**
|
|
479
|
-
* App to execute (app name from MapOfApps)
|
|
480
|
-
*/
|
|
481
|
-
app: string;
|
|
482
|
-
|
|
483
522
|
/**
|
|
484
523
|
* Extra environment variables for this operation
|
|
485
524
|
* Merge priority: OS env < app env < tool operation env
|