create-vue 3.11.1 → 3.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +101 -0
- package/locales/en-US.json +10 -1
- package/locales/fr-FR.json +10 -1
- package/locales/tr-TR.json +10 -1
- package/locales/zh-Hans.json +10 -1
- package/locales/zh-Hant.json +10 -1
- package/outfile.cjs +84 -49
- package/package.json +6 -7
- package/template/base/index.html +1 -1
- package/template/base/node_modules/.bin/tsc +4 -4
- package/template/base/node_modules/.bin/tsserver +4 -4
- package/template/base/node_modules/.bin/vite +2 -2
- package/template/base/node_modules/.vue-global-types/vue_3.5_false.d.ts +116 -0
- package/template/base/package.json +1 -1
- package/template/base/vite.config.js.data.mjs +3 -3
- package/template/base/vite.config.js.ejs +2 -2
- package/template/code/default/src/components/HelloWorld.vue +2 -2
- package/template/code/default/src/components/TheWelcome.vue +6 -4
- package/template/code/router/src/components/HelloWorld.vue +2 -2
- package/template/code/router/src/components/TheWelcome.vue +6 -4
- package/template/code/router/src/router/index.js +4 -4
- package/template/code/typescript-default/src/components/TheWelcome.vue +6 -4
- package/template/code/typescript-router/src/components/TheWelcome.vue +6 -4
- package/template/code/typescript-router/src/router/index.ts +4 -4
- package/template/config/cypress/cypress.config.js +2 -2
- package/template/config/cypress/node_modules/.bin/cypress +2 -2
- package/template/config/cypress/package.json +1 -1
- package/template/config/cypress-ct/cypress.config.js +4 -4
- package/template/config/cypress-ct/node_modules/.bin/cypress +2 -2
- package/template/config/cypress-ct/node_modules/.bin/tsc +4 -4
- package/template/config/cypress-ct/node_modules/.bin/tsserver +4 -4
- package/template/config/cypress-ct/package.json +1 -1
- package/template/config/devtools/node_modules/.bin/tsc +4 -4
- package/template/config/devtools/node_modules/.bin/tsserver +4 -4
- package/template/config/devtools/node_modules/.bin/vite +4 -4
- package/template/config/devtools/package.json +1 -1
- package/template/config/devtools/vite.config.js.data.mjs +2 -2
- package/template/config/eslint/.vscode/extensions.json +1 -1
- package/template/config/jsx/node_modules/.bin/tsc +4 -4
- package/template/config/jsx/node_modules/.bin/tsserver +4 -4
- package/template/config/jsx/node_modules/.bin/vite +2 -2
- package/template/config/jsx/package.json +1 -1
- package/template/config/jsx/vite.config.js.data.mjs +3 -3
- package/template/config/nightwatch/nightwatch.conf.cjs +25 -25
- package/template/config/nightwatch/node_modules/.bin/chromedriver +2 -2
- package/template/config/nightwatch/node_modules/.bin/nightwatch +2 -2
- package/template/config/nightwatch/node_modules/.bin/ts-node +2 -2
- package/template/config/nightwatch/node_modules/.bin/ts-node-cwd +2 -2
- package/template/config/nightwatch/node_modules/.bin/ts-node-esm +2 -2
- package/template/config/nightwatch/node_modules/.bin/ts-node-script +2 -2
- package/template/config/nightwatch/node_modules/.bin/ts-node-transpile-only +2 -2
- package/template/config/nightwatch/node_modules/.bin/ts-script +2 -2
- package/template/config/nightwatch/node_modules/.bin/tsc +4 -4
- package/template/config/nightwatch/node_modules/.bin/tsserver +4 -4
- package/template/config/nightwatch/node_modules/.bin/vite +2 -2
- package/template/config/nightwatch/package.json +3 -3
- package/template/config/nightwatch/vite.config.js.data.mjs +2 -2
- package/template/config/nightwatch-ct/node_modules/.bin/tsc +4 -4
- package/template/config/nightwatch-ct/node_modules/.bin/tsserver +4 -4
- package/template/config/nightwatch-ct/vite.config.js.data.mjs +2 -2
- package/template/config/pinia/node_modules/.bin/tsc +4 -4
- package/template/config/pinia/node_modules/.bin/tsserver +4 -4
- package/template/config/pinia/package.json +1 -1
- package/template/config/playwright/node_modules/.bin/playwright +2 -2
- package/template/config/playwright/package.json +1 -1
- package/template/config/playwright/playwright.config.js +11 -11
- package/template/config/router/node_modules/.bin/tsc +4 -4
- package/template/config/router/node_modules/.bin/tsserver +4 -4
- package/template/config/typescript/node_modules/.bin/npm-run-all +2 -2
- package/template/config/typescript/node_modules/.bin/npm-run-all2 +2 -2
- package/template/config/typescript/node_modules/.bin/run-p +2 -2
- package/template/config/typescript/node_modules/.bin/run-s +2 -2
- package/template/config/typescript/node_modules/.bin/tsc +2 -2
- package/template/config/typescript/node_modules/.bin/tsserver +2 -2
- package/template/config/typescript/node_modules/.bin/vue-tsc +2 -2
- package/template/config/typescript/package.json +4 -4
- package/template/config/vitest/node_modules/.bin/tsc +4 -4
- package/template/config/vitest/node_modules/.bin/tsserver +4 -4
- package/template/config/vitest/node_modules/.bin/vitest +2 -2
- package/template/config/vitest/package.json +1 -1
- package/template/config/vitest/vitest.config.js +3 -3
- package/template/eslint/package.json +2 -2
package/LICENSE
CHANGED
|
@@ -24,6 +24,107 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
|
24
24
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
25
25
|
SOFTWARE.
|
|
26
26
|
|
|
27
|
+
# License of the files in the directories template in create-vue
|
|
28
|
+
The files in the directories template in create-vue and files
|
|
29
|
+
generated from those files are licensed under the CC0 1.0 Universal license:
|
|
30
|
+
|
|
31
|
+
CC0 1.0 Universal
|
|
32
|
+
Statement of Purpose
|
|
33
|
+
The laws of most jurisdictions throughout the world automatically confer
|
|
34
|
+
exclusive Copyright and Related Rights (defined below) upon the creator and
|
|
35
|
+
subsequent owner(s) (each and all, an "owner") of an original work of
|
|
36
|
+
authorship and/or a database (each, a "Work").
|
|
37
|
+
Certain owners wish to permanently relinquish those rights to a Work for the
|
|
38
|
+
purpose of contributing to a commons of creative, cultural and scientific
|
|
39
|
+
works ("Commons") that the public can reliably and without fear of later
|
|
40
|
+
claims of infringement build upon, modify, incorporate in other works, reuse
|
|
41
|
+
and redistribute as freely as possible in any form whatsoever and for any
|
|
42
|
+
purposes, including without limitation commercial purposes. These owners may
|
|
43
|
+
contribute to the Commons to promote the ideal of a free culture and the
|
|
44
|
+
further production of creative, cultural and scientific works, or to gain
|
|
45
|
+
reputation or greater distribution for their Work in part through the use and
|
|
46
|
+
efforts of others.
|
|
47
|
+
For these and/or other purposes and motivations, and without any expectation
|
|
48
|
+
of additional consideration or compensation, the person associating CC0 with a
|
|
49
|
+
Work (the "Affirmer"), to the extent that he or she is an owner of Copyright
|
|
50
|
+
and Related Rights in the Work, voluntarily elects to apply CC0 to the Work
|
|
51
|
+
and publicly distribute the Work under its terms, with knowledge of his or her
|
|
52
|
+
Copyright and Related Rights in the Work and the meaning and intended legal
|
|
53
|
+
effect of CC0 on those rights.
|
|
54
|
+
1. Copyright and Related Rights. A Work made available under CC0 may be
|
|
55
|
+
protected by copyright and related or neighboring rights ("Copyright and
|
|
56
|
+
Related Rights"). Copyright and Related Rights include, but are not limited
|
|
57
|
+
to, the following:
|
|
58
|
+
i. the right to reproduce, adapt, distribute, perform, display, communicate,
|
|
59
|
+
and translate a Work;
|
|
60
|
+
ii. moral rights retained by the original author(s) and/or performer(s);
|
|
61
|
+
iii. publicity and privacy rights pertaining to a person's image or likeness
|
|
62
|
+
depicted in a Work;
|
|
63
|
+
iv. rights protecting against unfair competition in regards to a Work,
|
|
64
|
+
subject to the limitations in paragraph 4(a), below;
|
|
65
|
+
v. rights protecting the extraction, dissemination, use and reuse of data in
|
|
66
|
+
a Work;
|
|
67
|
+
vi. database rights (such as those arising under Directive 96/9/EC of the
|
|
68
|
+
European Parliament and of the Council of 11 March 1996 on the legal
|
|
69
|
+
protection of databases, and under any national implementation thereof,
|
|
70
|
+
including any amended or successor version of such directive); and
|
|
71
|
+
vii. other similar, equivalent or corresponding rights throughout the world
|
|
72
|
+
based on applicable law or treaty, and any national implementations thereof.
|
|
73
|
+
2. Waiver. To the greatest extent permitted by, but not in contravention of,
|
|
74
|
+
applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and
|
|
75
|
+
unconditionally waives, abandons, and surrenders all of Affirmer's Copyright
|
|
76
|
+
and Related Rights and associated claims and causes of action, whether now
|
|
77
|
+
known or unknown (including existing as well as future claims and causes of
|
|
78
|
+
action), in the Work (i) in all territories worldwide, (ii) for the maximum
|
|
79
|
+
duration provided by applicable law or treaty (including future time
|
|
80
|
+
extensions), (iii) in any current or future medium and for any number of
|
|
81
|
+
copies, and (iv) for any purpose whatsoever, including without limitation
|
|
82
|
+
commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes
|
|
83
|
+
the Waiver for the benefit of each member of the public at large and to the
|
|
84
|
+
detriment of Affirmer's heirs and successors, fully intending that such Waiver
|
|
85
|
+
shall not be subject to revocation, rescission, cancellation, termination, or
|
|
86
|
+
any other legal or equitable action to disrupt the quiet enjoyment of the Work
|
|
87
|
+
by the public as contemplated by Affirmer's express Statement of Purpose.
|
|
88
|
+
3. Public License Fallback. Should any part of the Waiver for any reason be
|
|
89
|
+
judged legally invalid or ineffective under applicable law, then the Waiver
|
|
90
|
+
shall be preserved to the maximum extent permitted taking into account
|
|
91
|
+
Affirmer's express Statement of Purpose. In addition, to the extent the Waiver
|
|
92
|
+
is so judged Affirmer hereby grants to each affected person a royalty-free,
|
|
93
|
+
non transferable, non sublicensable, non exclusive, irrevocable and
|
|
94
|
+
unconditional license to exercise Affirmer's Copyright and Related Rights in
|
|
95
|
+
the Work (i) in all territories worldwide, (ii) for the maximum duration
|
|
96
|
+
provided by applicable law or treaty (including future time extensions), (iii)
|
|
97
|
+
in any current or future medium and for any number of copies, and (iv) for any
|
|
98
|
+
purpose whatsoever, including without limitation commercial, advertising or
|
|
99
|
+
promotional purposes (the "License"). The License shall be deemed effective as
|
|
100
|
+
of the date CC0 was applied by Affirmer to the Work. Should any part of the
|
|
101
|
+
License for any reason be judged legally invalid or ineffective under
|
|
102
|
+
applicable law, such partial invalidity or ineffectiveness shall not
|
|
103
|
+
invalidate the remainder of the License, and in such case Affirmer hereby
|
|
104
|
+
affirms that he or she will not (i) exercise any of his or her remaining
|
|
105
|
+
Copyright and Related Rights in the Work or (ii) assert any associated claims
|
|
106
|
+
and causes of action with respect to the Work, in either case contrary to
|
|
107
|
+
Affirmer's express Statement of Purpose.
|
|
108
|
+
4. Limitations and Disclaimers.
|
|
109
|
+
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
|
110
|
+
surrendered, licensed or otherwise affected by this document.
|
|
111
|
+
b. Affirmer offers the Work as-is and makes no representations or warranties
|
|
112
|
+
of any kind concerning the Work, express, implied, statutory or otherwise,
|
|
113
|
+
including without limitation warranties of title, merchantability, fitness
|
|
114
|
+
for a particular purpose, non infringement, or the absence of latent or
|
|
115
|
+
other defects, accuracy, or the present or absence of errors, whether or not
|
|
116
|
+
discoverable, all to the greatest extent permissible under applicable law.
|
|
117
|
+
c. Affirmer disclaims responsibility for clearing rights of other persons
|
|
118
|
+
that may apply to the Work or any use thereof, including without limitation
|
|
119
|
+
any person's Copyright and Related Rights in the Work. Further, Affirmer
|
|
120
|
+
disclaims responsibility for obtaining any necessary consents, permissions
|
|
121
|
+
or other rights required for any use of the Work.
|
|
122
|
+
d. Affirmer understands and acknowledges that Creative Commons is not a
|
|
123
|
+
party to this document and has no duty or obligation with respect to this
|
|
124
|
+
CC0 or use of the Work.
|
|
125
|
+
For more information, please see
|
|
126
|
+
<http://creativecommons.org/publicdomain/zero/1.0/>
|
|
127
|
+
|
|
27
128
|
## Licenses of bundled dependencies
|
|
28
129
|
|
|
29
130
|
The published create-vue artifact additionally contains code with the following licenses:
|
package/locales/en-US.json
CHANGED
|
@@ -45,7 +45,16 @@
|
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
47
|
"needsEslint": {
|
|
48
|
-
"message": "Add ESLint for code quality?"
|
|
48
|
+
"message": "Add ESLint for code quality?",
|
|
49
|
+
"selectOptions": {
|
|
50
|
+
"negative": { "title": "No" },
|
|
51
|
+
"eslintOnly": {
|
|
52
|
+
"title": "Yes"
|
|
53
|
+
},
|
|
54
|
+
"speedUpWithOxlint": {
|
|
55
|
+
"title": "Yes, and speed up with Oxlint (experimental)"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
49
58
|
},
|
|
50
59
|
"needsPrettier": {
|
|
51
60
|
"message": "Add Prettier for code formatting?"
|
package/locales/fr-FR.json
CHANGED
|
@@ -45,7 +45,16 @@
|
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
47
|
"needsEslint": {
|
|
48
|
-
"message": "Ajouter ESLint pour la qualité du code\u00a0?"
|
|
48
|
+
"message": "Ajouter ESLint pour la qualité du code\u00a0?",
|
|
49
|
+
"selectOptions": {
|
|
50
|
+
"negative": { "title": "Non" },
|
|
51
|
+
"eslintOnly": {
|
|
52
|
+
"title": "Oui"
|
|
53
|
+
},
|
|
54
|
+
"speedUpWithOxlint": {
|
|
55
|
+
"title": "Oui, et accélérer avec Oxlint (expérimental)"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
49
58
|
},
|
|
50
59
|
"needsPrettier": {
|
|
51
60
|
"message": "Ajouter Prettier pour le formatage du code\u00a0?"
|
package/locales/tr-TR.json
CHANGED
|
@@ -45,7 +45,16 @@
|
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
47
|
"needsEslint": {
|
|
48
|
-
"message": "Kod kalitesi için ESLint eklensin mi?"
|
|
48
|
+
"message": "Kod kalitesi için ESLint eklensin mi?",
|
|
49
|
+
"selectOptions": {
|
|
50
|
+
"negative": { "title": "Hayır" },
|
|
51
|
+
"eslintOnly": {
|
|
52
|
+
"title": "Evet"
|
|
53
|
+
},
|
|
54
|
+
"speedUpWithOxlint": {
|
|
55
|
+
"title": "Evet ve Oxlint ile hızlanın (deneysel)"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
49
58
|
},
|
|
50
59
|
"needsPrettier": {
|
|
51
60
|
"message": "Kod formatlama için Prettier eklensin mi?"
|
package/locales/zh-Hans.json
CHANGED
|
@@ -45,7 +45,16 @@
|
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
47
|
"needsEslint": {
|
|
48
|
-
"message": "是否引入 ESLint 用于代码质量检测?"
|
|
48
|
+
"message": "是否引入 ESLint 用于代码质量检测?",
|
|
49
|
+
"selectOptions": {
|
|
50
|
+
"negative": { "title": "否" },
|
|
51
|
+
"eslintOnly": {
|
|
52
|
+
"title": "是"
|
|
53
|
+
},
|
|
54
|
+
"speedUpWithOxlint": {
|
|
55
|
+
"title": "是,并同时引入 Oxlint 以加快检测(试验阶段)"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
49
58
|
},
|
|
50
59
|
"needsPrettier": {
|
|
51
60
|
"message": "是否引入 Prettier 用于代码格式化?"
|
package/locales/zh-Hant.json
CHANGED
|
@@ -49,7 +49,16 @@
|
|
|
49
49
|
}
|
|
50
50
|
},
|
|
51
51
|
"needsEslint": {
|
|
52
|
-
"message": "是否引入 ESLint 用於程式碼品質檢測?"
|
|
52
|
+
"message": "是否引入 ESLint 用於程式碼品質檢測?",
|
|
53
|
+
"selectOptions": {
|
|
54
|
+
"negative": { "title": "否" },
|
|
55
|
+
"eslintOnly": {
|
|
56
|
+
"title": "是"
|
|
57
|
+
},
|
|
58
|
+
"speedUpWithOxlint": {
|
|
59
|
+
"title": "是,並同時引入 Oxlint 以加快檢測(試驗性功能)"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
53
62
|
},
|
|
54
63
|
"needsPrettier": {
|
|
55
64
|
"message": "是否引入 Prettier 用於程式碼格式化?"
|
package/outfile.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
/*! create-vue v3.
|
|
2
|
+
/*! create-vue v3.12.0 | MIT */
|
|
3
3
|
var __create = Object.create;
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
5
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -3462,44 +3462,32 @@ function getLanguage() {
|
|
|
3462
3462
|
var fs4 = __toESM(require("fs"), 1);
|
|
3463
3463
|
var path4 = __toESM(require("path"), 1);
|
|
3464
3464
|
|
|
3465
|
-
// node_modules/.pnpm/@vue+create-eslint-config@0.
|
|
3465
|
+
// node_modules/.pnpm/@vue+create-eslint-config@0.6.0/node_modules/@vue/create-eslint-config/renderEjsFile.js
|
|
3466
3466
|
var import_ejs = __toESM(require_ejs(), 1);
|
|
3467
3467
|
var templates = { "./templates/_editorconfig.ejs": "[*.{js,jsx,mjs,cjs,ts,tsx,mts,cts,vue}]\ncharset = utf-8\nindent_size = 2\nindent_style = space\ninsert_final_newline = true\ntrim_trailing_whitespace = true\n<%_ if (styleGuide === 'airbnb') { _%>\n<%# // standard doesn't have an opinion on line endings\n// https://github.com/standard/standard/issues/140\n// or maximum line length\n// https://github.com/standard/standard/issues/1559\n// so we only configure them for airbnb style\n%>\nend_of_line = lf\nmax_line_length = 100\n<%_ } _%>\n", "./templates/_prettierrc.json.ejs": `<%_ if (styleGuide === 'airbnb') { _%>
|
|
3468
3468
|
{
|
|
3469
3469
|
"$schema": "https://json.schemastore.org/prettierrc",
|
|
3470
|
-
"arrowParens": "always",
|
|
3471
|
-
"bracketSameLine": false,
|
|
3472
|
-
"bracketSpacing": true,
|
|
3473
|
-
"endOfLine": "lf",
|
|
3474
|
-
"jsxSingleQuote": false,
|
|
3475
3470
|
"printWidth": 100,
|
|
3476
|
-
"
|
|
3477
|
-
"quoteProps": "as-needed",
|
|
3478
|
-
"semi": true,
|
|
3479
|
-
"singleQuote": true,
|
|
3480
|
-
"tabWidth": 2,
|
|
3481
|
-
"trailingComma": "all",
|
|
3482
|
-
"useTabs": false
|
|
3471
|
+
"singleQuote": true
|
|
3483
3472
|
}
|
|
3484
3473
|
<%_ } else if (styleGuide === 'standard') { _%>
|
|
3485
3474
|
{
|
|
3486
3475
|
"$schema": "https://json.schemastore.org/prettierrc",
|
|
3487
3476
|
"semi": false,
|
|
3488
|
-
"tabWidth": 2,
|
|
3489
3477
|
"singleQuote": true,
|
|
3490
|
-
"
|
|
3491
|
-
"trailingComma": "
|
|
3478
|
+
"jsxSingleQuote": true,
|
|
3479
|
+
"trailingComma": "none"
|
|
3492
3480
|
}
|
|
3493
3481
|
<%_ } else { _%>
|
|
3494
3482
|
<%#
|
|
3495
|
-
The default style follows the one used in the vuejs/
|
|
3496
|
-
<https://github.com/vuejs/
|
|
3483
|
+
The default style follows the one used in the vuejs/create-vue repository
|
|
3484
|
+
<https://github.com/vuejs/create-vue/blob/main/.prettierrc>
|
|
3497
3485
|
%>
|
|
3498
3486
|
{
|
|
3499
3487
|
"$schema": "https://json.schemastore.org/prettierrc",
|
|
3500
3488
|
"semi": false,
|
|
3501
3489
|
"singleQuote": true,
|
|
3502
|
-
"
|
|
3490
|
+
"printWidth": 100
|
|
3503
3491
|
}
|
|
3504
3492
|
<%_ } _%>
|
|
3505
3493
|
`, "./templates/eslint.config.js.ejs": "<%_ for (const { importer } of configsBeforeVuePlugin) { _%>\n<%- importer %>\n<%_ } _%>\nimport pluginVue from 'eslint-plugin-vue'\n<%_ for (const { importer } of configsAfterVuePlugin) { _%>\n<%- importer %>\n<%_ } _%>\n\nexport default [\n {\n name: 'app/files-to-lint',\n files: ['**/*.{<%= fileExtensions.join(',') %>}'],\n },\n\n {\n name: 'app/files-to-ignore',\n ignores: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**'],\n },\n\n <%_ for (const { content } of configsBeforeVuePlugin) { _%>\n <%- content %><%# TODO: auto-indent if content's multi-line %>\n <%_ } _%>\n ...pluginVue.configs['flat/essential'],\n <%_ for (const { content } of configsAfterVuePlugin) { _%>\n <%- content %><%# TODO: auto-indent if content's multi-line %>\n <%_ } _%>\n]\n" };
|
|
@@ -3507,10 +3495,10 @@ function renderEjsFile(filePath, data) {
|
|
|
3507
3495
|
return import_ejs.default.render(templates[filePath], data, {});
|
|
3508
3496
|
}
|
|
3509
3497
|
|
|
3510
|
-
// node_modules/.pnpm/@vue+create-eslint-config@0.
|
|
3498
|
+
// node_modules/.pnpm/@vue+create-eslint-config@0.6.0/node_modules/@vue/create-eslint-config/package.json
|
|
3511
3499
|
var package_default = {
|
|
3512
3500
|
name: "@vue/create-eslint-config",
|
|
3513
|
-
version: "0.
|
|
3501
|
+
version: "0.6.0",
|
|
3514
3502
|
description: "Utility to setup ESLint in Vue.js projects.",
|
|
3515
3503
|
type: "module",
|
|
3516
3504
|
main: "index.js",
|
|
@@ -3544,14 +3532,17 @@ var package_default = {
|
|
|
3544
3532
|
kolorist: "^1.8.0"
|
|
3545
3533
|
},
|
|
3546
3534
|
devDependencies: {
|
|
3547
|
-
"@eslint/js": "^9.
|
|
3548
|
-
"@types/node": "^22.7
|
|
3549
|
-
"@vue/eslint-config-prettier": "^10.
|
|
3550
|
-
"@vue/eslint-config-typescript": "^14.
|
|
3551
|
-
eslint: "^9.
|
|
3552
|
-
"eslint-plugin-
|
|
3535
|
+
"@eslint/js": "^9.14.0",
|
|
3536
|
+
"@types/node": "^22.8.7",
|
|
3537
|
+
"@vue/eslint-config-prettier": "^10.1.0",
|
|
3538
|
+
"@vue/eslint-config-typescript": "^14.1.3",
|
|
3539
|
+
eslint: "^9.14.0",
|
|
3540
|
+
"eslint-plugin-oxlint": "^0.11.0",
|
|
3541
|
+
"eslint-plugin-vue": "^9.30.0",
|
|
3542
|
+
"npm-run-all2": "^7.0.1",
|
|
3543
|
+
oxlint: "^0.11.0",
|
|
3553
3544
|
prettier: "^3.3.3",
|
|
3554
|
-
typescript: "~5.
|
|
3545
|
+
typescript: "~5.6.0"
|
|
3555
3546
|
},
|
|
3556
3547
|
scripts: {
|
|
3557
3548
|
test: 'echo "Error: no test specified" && exit 1',
|
|
@@ -3559,18 +3550,20 @@ var package_default = {
|
|
|
3559
3550
|
}
|
|
3560
3551
|
};
|
|
3561
3552
|
|
|
3562
|
-
// node_modules/.pnpm/@vue+create-eslint-config@0.
|
|
3553
|
+
// node_modules/.pnpm/@vue+create-eslint-config@0.6.0/node_modules/@vue/create-eslint-config/index.js
|
|
3563
3554
|
var versionMap = package_default.devDependencies;
|
|
3564
3555
|
function createConfig({
|
|
3565
3556
|
styleGuide = "default",
|
|
3566
3557
|
// default ~~| airbnb | standard~~ only the default is supported for now
|
|
3567
3558
|
hasTypeScript = false,
|
|
3568
3559
|
needsPrettier = false,
|
|
3560
|
+
needsOxlint = false,
|
|
3569
3561
|
additionalConfigs = []
|
|
3570
3562
|
}) {
|
|
3571
3563
|
const pickDependencies = (keys) => pickKeysFromObject(versionMap, keys);
|
|
3572
3564
|
const pkg = {
|
|
3573
|
-
devDependencies: pickDependencies(["eslint", "eslint-plugin-vue"])
|
|
3565
|
+
devDependencies: pickDependencies(["eslint", "eslint-plugin-vue"]),
|
|
3566
|
+
scripts: {}
|
|
3574
3567
|
};
|
|
3575
3568
|
const fileExtensions = ["vue"];
|
|
3576
3569
|
if (hasTypeScript) {
|
|
@@ -3597,6 +3590,22 @@ function createConfig({
|
|
|
3597
3590
|
]
|
|
3598
3591
|
});
|
|
3599
3592
|
}
|
|
3593
|
+
if (needsOxlint) {
|
|
3594
|
+
additionalConfigs.push({
|
|
3595
|
+
devDependencies: pickDependencies(["oxlint", "eslint-plugin-oxlint", "npm-run-all2"]),
|
|
3596
|
+
afterVuePlugin: [
|
|
3597
|
+
{
|
|
3598
|
+
importer: "import oxlint from 'eslint-plugin-oxlint'",
|
|
3599
|
+
content: "oxlint.configs['flat/recommended'],"
|
|
3600
|
+
}
|
|
3601
|
+
]
|
|
3602
|
+
});
|
|
3603
|
+
pkg.scripts["lint:oxlint"] = "oxlint . --fix -D correctness";
|
|
3604
|
+
pkg.scripts["lint:eslint"] = "eslint . --fix";
|
|
3605
|
+
pkg.scripts.lint = "run-s lint:*";
|
|
3606
|
+
} else {
|
|
3607
|
+
pkg.scripts.lint = "eslint . --fix";
|
|
3608
|
+
}
|
|
3600
3609
|
if (needsPrettier) {
|
|
3601
3610
|
additionalConfigs.push({
|
|
3602
3611
|
devDependencies: pickDependencies([
|
|
@@ -3610,6 +3619,7 @@ function createConfig({
|
|
|
3610
3619
|
}
|
|
3611
3620
|
]
|
|
3612
3621
|
});
|
|
3622
|
+
pkg.scripts.format = "prettier --write src/";
|
|
3613
3623
|
}
|
|
3614
3624
|
const configsBeforeVuePlugin = [], configsAfterVuePlugin = [];
|
|
3615
3625
|
for (const config of additionalConfigs) {
|
|
@@ -3673,14 +3683,22 @@ function deepMerge2(target, obj) {
|
|
|
3673
3683
|
var package_default2 = {
|
|
3674
3684
|
devDependencies: {
|
|
3675
3685
|
"@vitest/eslint-plugin": "1.1.7",
|
|
3676
|
-
"eslint-plugin-cypress": "^4.
|
|
3677
|
-
"eslint-plugin-playwright": "^
|
|
3686
|
+
"eslint-plugin-cypress": "^4.1.0",
|
|
3687
|
+
"eslint-plugin-playwright": "^2.0.0"
|
|
3678
3688
|
}
|
|
3679
3689
|
};
|
|
3680
3690
|
|
|
3681
3691
|
// utils/renderEslint.ts
|
|
3682
3692
|
var eslintDeps = package_default2.devDependencies;
|
|
3683
|
-
function renderEslint(rootDir, {
|
|
3693
|
+
function renderEslint(rootDir, {
|
|
3694
|
+
needsTypeScript,
|
|
3695
|
+
needsVitest,
|
|
3696
|
+
needsCypress,
|
|
3697
|
+
needsCypressCT,
|
|
3698
|
+
needsOxlint,
|
|
3699
|
+
needsPrettier,
|
|
3700
|
+
needsPlaywright
|
|
3701
|
+
}) {
|
|
3684
3702
|
const additionalConfigs = getAdditionalConfigs({
|
|
3685
3703
|
needsVitest,
|
|
3686
3704
|
needsCypress,
|
|
@@ -3690,18 +3708,15 @@ function renderEslint(rootDir, { needsTypeScript, needsVitest, needsCypress, nee
|
|
|
3690
3708
|
const { pkg, files } = createConfig({
|
|
3691
3709
|
styleGuide: "default",
|
|
3692
3710
|
hasTypeScript: needsTypeScript,
|
|
3711
|
+
needsOxlint,
|
|
3712
|
+
// Theoretically, we could add Prettier without requring ESLint.
|
|
3713
|
+
// But it doesn't seem to be a good practice, so we just let createESLintConfig handle it.
|
|
3693
3714
|
needsPrettier,
|
|
3694
3715
|
additionalConfigs
|
|
3695
3716
|
});
|
|
3696
|
-
const scripts = {
|
|
3697
|
-
lint: "eslint . --fix"
|
|
3698
|
-
};
|
|
3699
|
-
if (needsPrettier) {
|
|
3700
|
-
scripts.format = "prettier --write src/";
|
|
3701
|
-
}
|
|
3702
3717
|
const packageJsonPath = path4.resolve(rootDir, "package.json");
|
|
3703
3718
|
const existingPkg = JSON.parse(fs4.readFileSync(packageJsonPath, "utf8"));
|
|
3704
|
-
const updatedPkg = sortDependencies(deepMerge_default(
|
|
3719
|
+
const updatedPkg = sortDependencies(deepMerge_default(existingPkg, pkg));
|
|
3705
3720
|
fs4.writeFileSync(packageJsonPath, JSON.stringify(updatedPkg, null, 2) + "\n", "utf8");
|
|
3706
3721
|
for (const [fileName, content] of Object.entries(files)) {
|
|
3707
3722
|
const fullPath = path4.resolve(rootDir, fileName);
|
|
@@ -3717,7 +3732,9 @@ function getAdditionalConfigs({
|
|
|
3717
3732
|
const additionalConfigs = [];
|
|
3718
3733
|
if (needsVitest) {
|
|
3719
3734
|
additionalConfigs.push({
|
|
3720
|
-
devDependencies: {
|
|
3735
|
+
devDependencies: {
|
|
3736
|
+
"@vitest/eslint-plugin": eslintDeps["@vitest/eslint-plugin"]
|
|
3737
|
+
},
|
|
3721
3738
|
afterVuePlugin: [
|
|
3722
3739
|
{
|
|
3723
3740
|
importer: `import pluginVitest from '@vitest/eslint-plugin'`,
|
|
@@ -3732,7 +3749,9 @@ function getAdditionalConfigs({
|
|
|
3732
3749
|
}
|
|
3733
3750
|
if (needsCypress) {
|
|
3734
3751
|
additionalConfigs.push({
|
|
3735
|
-
devDependencies: {
|
|
3752
|
+
devDependencies: {
|
|
3753
|
+
"eslint-plugin-cypress": eslintDeps["eslint-plugin-cypress"]
|
|
3754
|
+
},
|
|
3736
3755
|
afterVuePlugin: [
|
|
3737
3756
|
{
|
|
3738
3757
|
importer: "import pluginCypress from 'eslint-plugin-cypress/flat'",
|
|
@@ -3757,7 +3776,9 @@ function getAdditionalConfigs({
|
|
|
3757
3776
|
}
|
|
3758
3777
|
if (needsPlaywright) {
|
|
3759
3778
|
additionalConfigs.push({
|
|
3760
|
-
devDependencies: {
|
|
3779
|
+
devDependencies: {
|
|
3780
|
+
"eslint-plugin-playwright": eslintDeps["eslint-plugin-playwright"]
|
|
3781
|
+
},
|
|
3761
3782
|
afterVuePlugin: [
|
|
3762
3783
|
{
|
|
3763
3784
|
importer: "import pluginPlaywright from 'eslint-plugin-playwright'",
|
|
@@ -3938,11 +3959,23 @@ async function init2() {
|
|
|
3938
3959
|
},
|
|
3939
3960
|
{
|
|
3940
3961
|
name: "needsEslint",
|
|
3941
|
-
type: () => isFeatureFlagsUsed ? null : "
|
|
3962
|
+
type: () => isFeatureFlagsUsed ? null : "select",
|
|
3942
3963
|
message: language.needsEslint.message,
|
|
3943
|
-
initial:
|
|
3944
|
-
|
|
3945
|
-
|
|
3964
|
+
initial: 0,
|
|
3965
|
+
choices: [
|
|
3966
|
+
{
|
|
3967
|
+
title: language.needsEslint.selectOptions.negative.title,
|
|
3968
|
+
value: false
|
|
3969
|
+
},
|
|
3970
|
+
{
|
|
3971
|
+
title: language.needsEslint.selectOptions.eslintOnly.title,
|
|
3972
|
+
value: "eslintOnly"
|
|
3973
|
+
},
|
|
3974
|
+
{
|
|
3975
|
+
title: language.needsEslint.selectOptions.speedUpWithOxlint.title,
|
|
3976
|
+
value: "speedUpWithOxlint"
|
|
3977
|
+
}
|
|
3978
|
+
]
|
|
3946
3979
|
},
|
|
3947
3980
|
{
|
|
3948
3981
|
name: "needsPrettier",
|
|
@@ -3985,10 +4018,11 @@ async function init2() {
|
|
|
3985
4018
|
needsRouter = argv.router || argv["vue-router"],
|
|
3986
4019
|
needsPinia = argv.pinia,
|
|
3987
4020
|
needsVitest = argv.vitest || argv.tests,
|
|
3988
|
-
needsEslint = argv.eslint || argv["eslint-with-prettier"],
|
|
3989
4021
|
needsPrettier = argv["eslint-with-prettier"],
|
|
3990
4022
|
needsDevTools = argv.devtools || argv["vue-devtools"]
|
|
3991
4023
|
} = result;
|
|
4024
|
+
const needsEslint = Boolean(argv.eslint || argv["eslint-with-prettier"] || result.needsEslint);
|
|
4025
|
+
const needsOxlint = result.needsEslint === "speedUpWithOxlint";
|
|
3992
4026
|
const { needsE2eTesting } = result;
|
|
3993
4027
|
const needsCypress = argv.cypress || argv.tests || needsE2eTesting === "cypress";
|
|
3994
4028
|
const needsCypressCT = needsCypress && !needsVitest;
|
|
@@ -4094,6 +4128,7 @@ ${language.infos.scaffolding} ${root}...`);
|
|
|
4094
4128
|
if (needsEslint) {
|
|
4095
4129
|
renderEslint(root, {
|
|
4096
4130
|
needsTypeScript,
|
|
4131
|
+
needsOxlint,
|
|
4097
4132
|
needsVitest,
|
|
4098
4133
|
needsCypress,
|
|
4099
4134
|
needsCypressCT,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-vue",
|
|
3
|
-
"version": "3.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "3.12.0",
|
|
4
|
+
"description": "🛠️ The recommended way to start a Vite-powered Vue project",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"create-vue": "outfile.cjs"
|
|
@@ -28,21 +28,20 @@
|
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@tsconfig/node20": "^20.1.4",
|
|
30
30
|
"@types/eslint": "^9.6.1",
|
|
31
|
-
"@types/node": "^20.
|
|
31
|
+
"@types/node": "^20.17.6",
|
|
32
32
|
"@types/prompts": "^2.4.9",
|
|
33
|
-
"@vue/create-eslint-config": "0.
|
|
33
|
+
"@vue/create-eslint-config": "^0.6.0",
|
|
34
34
|
"@vue/tsconfig": "^0.5.1",
|
|
35
35
|
"ejs": "^3.1.10",
|
|
36
36
|
"esbuild": "^0.24.0",
|
|
37
37
|
"esbuild-plugin-license": "^1.2.3",
|
|
38
38
|
"husky": "^9.1.6",
|
|
39
39
|
"kleur": "^4.1.5",
|
|
40
|
-
"kolorist": "^1.8.0",
|
|
41
40
|
"lint-staged": "^15.2.10",
|
|
42
41
|
"prettier": "^3.3.3",
|
|
43
42
|
"prompts": "^2.4.2",
|
|
44
|
-
"vitest": "^2.1.
|
|
45
|
-
"zx": "^8.
|
|
43
|
+
"vitest": "^2.1.4",
|
|
44
|
+
"zx": "^8.2.0"
|
|
46
45
|
},
|
|
47
46
|
"lint-staged": {
|
|
48
47
|
"*.{js,ts,vue,json}": [
|
package/template/base/index.html
CHANGED
|
@@ -6,12 +6,12 @@ case `uname` in
|
|
|
6
6
|
esac
|
|
7
7
|
|
|
8
8
|
if [ -z "$NODE_PATH" ]; then
|
|
9
|
-
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.
|
|
9
|
+
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/bin/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/node_modules"
|
|
10
10
|
else
|
|
11
|
-
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.
|
|
11
|
+
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/bin/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
12
12
|
fi
|
|
13
13
|
if [ -x "$basedir/node" ]; then
|
|
14
|
-
exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/typescript@5.6.
|
|
14
|
+
exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/bin/tsc" "$@"
|
|
15
15
|
else
|
|
16
|
-
exec node "$basedir/../../../../node_modules/.pnpm/typescript@5.6.
|
|
16
|
+
exec node "$basedir/../../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/bin/tsc" "$@"
|
|
17
17
|
fi
|
|
@@ -6,12 +6,12 @@ case `uname` in
|
|
|
6
6
|
esac
|
|
7
7
|
|
|
8
8
|
if [ -z "$NODE_PATH" ]; then
|
|
9
|
-
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.
|
|
9
|
+
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/bin/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/node_modules"
|
|
10
10
|
else
|
|
11
|
-
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.
|
|
11
|
+
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/bin/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/typescript@5.6.3/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
12
12
|
fi
|
|
13
13
|
if [ -x "$basedir/node" ]; then
|
|
14
|
-
exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/typescript@5.6.
|
|
14
|
+
exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/bin/tsserver" "$@"
|
|
15
15
|
else
|
|
16
|
-
exec node "$basedir/../../../../node_modules/.pnpm/typescript@5.6.
|
|
16
|
+
exec node "$basedir/../../../../node_modules/.pnpm/typescript@5.6.3/node_modules/typescript/bin/tsserver" "$@"
|
|
17
17
|
fi
|
|
@@ -6,9 +6,9 @@ case `uname` in
|
|
|
6
6
|
esac
|
|
7
7
|
|
|
8
8
|
if [ -z "$NODE_PATH" ]; then
|
|
9
|
-
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/vite@5.4.
|
|
9
|
+
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/vite@5.4.10_@types+node@22.7.5/node_modules/vite/bin/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/vite@5.4.10_@types+node@22.7.5/node_modules/vite/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/vite@5.4.10_@types+node@22.7.5/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/node_modules"
|
|
10
10
|
else
|
|
11
|
-
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/vite@5.4.
|
|
11
|
+
export NODE_PATH="/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/vite@5.4.10_@types+node@22.7.5/node_modules/vite/bin/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/vite@5.4.10_@types+node@22.7.5/node_modules/vite/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/vite@5.4.10_@types+node@22.7.5/node_modules:/Users/haoqun/Developer/vuejs/create-vue/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
12
12
|
fi
|
|
13
13
|
if [ -x "$basedir/node" ]; then
|
|
14
14
|
exec "$basedir/node" "$basedir/../vite/bin/vite.js" "$@"
|