Commit Graph

64 Commits

Author SHA1 Message Date
Haoqun Jiang
4378c8df26 style: replace eslint-plugin-vue-libs with standard config (#6148) 2021-01-06 14:29:12 +08:00
fxxjdedd
451f3d2f5f feat: make globby includes dot files (#5537)
https://cli.vuejs.org/dev-guide/plugin-dev.html#filename-edge-cases

Although in this passage, it is suggested that we should change ".env" to "_env" to solve the problem of uploading npm packages. But there will also be such a demand, the files in `generator/template` are dynamically pulled from the git repository at runtime, and there may be `.env` files in the repository, so this pr can solve the problem here
2020-12-20 20:02:58 +08:00
Haoqun Jiang
920160a011 refactor: rename the version parameter to versionRange 2020-10-09 19:20:14 +08:00
Haoqun Jiang
5d002ccb07 fix: do not throw when api.render is called from an anonymous function (#5801)
Fixes #4774
2020-08-24 15:44:25 +08:00
Necmettin Karakaya
5baec1fdc5 chore: fix common misspelling errors (#5694)
Co-authored-by: Haoqun Jiang <haoqunjiang@gmail.com>
2020-08-10 01:17:01 +08:00
Haoqun Jiang
7f56846a2e refactor: replace jscodeshift with vue-codemod (#5629) 2020-07-01 15:06:55 +08:00
Haoqun Jiang
5e93d70e65 fix: normalize the file argument of transformScript, fix Windows compatibility (#5424) 2020-05-08 16:11:47 +08:00
Haoqun Jiang
f5f4de0aa3 feat(GeneratorAPI): allow passing options to api.extendPackage (#5149)
Currently, 3 options are implemented:

- options.prune (defaults to `false`) - Remove null or undefined
fields from the object after merging.
- options.merge (defaults to `true`) deep-merge nested fields, note
that dependency fields are always deep merged regardless of this option.
- options.warnIncompatibleVersions (defaults to `true`) Output warning
if two dependency version ranges don't intersect.

Closes #4779
2020-02-06 14:28:00 +08:00
Haoqun Jiang
1a0b59142a refactor: use dependencies from @vue/cli-share-utils whenver possible 2019-11-29 15:41:18 +08:00
Haoqun Jiang
2652ab6a6b fix: include prereleases for assert*Version calls 2019-11-13 00:14:24 +08:00
Haoqun Jiang
1e663df1ca feat(GeneratorAPI): accept multiple arguments for the resolve method (#4715)
* feat(GeneratorAPI): accept multiple arguments for the resolve method

To make its signature conform to  the standard `path.resolve`, avoid
confusions.

There's already a bug in the downstream plugin that was caused by such
confusion: a742953b83/generator/index.js (L163-L171)

* docs: update descriptions of the `resolve` api [ci skip]
2019-11-07 10:29:06 +08:00
Haoqun Jiang
c76d2e691d style: add a "no-shadow" linter rule (#4385)
It has become a common source of mistakes.
For example, during PR #4363 I've referred to the wrong `options`
several times due to the variable shadowing.
2019-08-02 18:24:52 +08:00
Cédric Exbrayat
52bae8e14a fix: do not generate empty file when use ts without router (#4374) 2019-07-30 16:42:00 +08:00
yiliang
a2856a750c chore(cli-service): word spelling in comments (#4367) 2019-07-28 20:39:42 +08:00
Haoqun Jiang
a1c88edce7 fix: require parent template after when condition evaluated as truthy (#4330)
fixes #4291
2019-07-22 20:58:06 +08:00
Pavan Kumar Sunkara
544faee81e feat: more flexible hook system for generators (#2337) 2019-07-21 19:59:18 +08:00
Haoqun Jiang
9eadfe1eba test: fix cliServiceVersion for generator unit tests 2019-07-05 19:47:34 +08:00
Haoqun Jiang
867c6eaf2c feat!: redesigns vue upgrade, supports code migration (#4090) 2019-07-02 16:23:34 +08:00
Haoqun Jiang
5460ca498f feat: add transformScript to GeneratorAPI (#4188) 2019-06-26 18:25:47 +08:00
Haoqun Jiang
77092b2223 feat: implement version-related APIs for GeneratorAPI (#4000)
closes #2336
2019-06-26 18:25:21 +08:00
Haoqun Jiang
649b564feb chore: update isbinaryfile to 4.x 2019-05-22 16:52:16 +08:00
Steve Workman
f69339e816 feat: add makeJSOnlyValue to generator API (#3568)
Provides convenience method for passing JS into config files.
Closes issue #3535.
2019-04-09 19:54:17 +08:00
Dobromir Hristov
3f434f69c6 fix(plugin api): fix generator dotfile rename for Windows. (#2427)
close #2424
2018-09-04 17:49:17 +08:00
Evan You
1892bcc251 fix(generator): handle directories starting with dot
close #2222
2018-08-15 18:34:55 -04:00
Evan You
4b4e4609e5 perf: improve CLI startup performance 2018-07-19 16:41:10 -04:00
Evan You
ba4d0f285b refactor(generator): ensure proper deep merge of array values in api.extendPackage
Also fixes #970 by injecting eslint config when invoking ts plugin in an existing project
with eslint plugin installed.
2018-07-18 16:44:03 -04:00
Stephen Lam
e393be733d feat(generator): allow plugins to modify how configs are extracted (#1130)
* feat(generator): allow plugins to modify how configs are extracted

* refactor(cli): change addConfigTransform parameters

Allow plugin author to set config 'descriptions' instead of implementing their own transform functions.

* fix(cli): fix missed issues from changing types from array to set

* fix: use reserved config transforms to check in API

* fix: lines dedupe
2018-07-11 19:52:57 +02:00
Thorsten Lünborg
a9aa3decf6 fix: underscore escaping for dotfiles (#1737)
* WIP: fix undersocre escaping for dotfiles 

(fix #1732)

* Fix charAt

* adding a short explanation to the docs.

* improved wording
2018-07-04 13:12:18 +02:00
Evan You
4d00161d6f fix(typescript): avoid including router file when router is not selected 2018-05-30 13:39:18 -04:00
Guillaume Chau
ada402249a refactor: improve invocation of builtin plugins in TypeScript projects (#1342) 2018-05-22 10:11:10 -04:00
Evan You
8b32f4a60f feat: GeneratorAPI: addImports & addRootOptions 2018-05-21 14:25:49 -04:00
Evan You
07ac887486 fix: stringifyJS should be used in all call sites 2018-05-18 18:49:58 -04:00
Evan You
9cfafea328 refactor(cli): default to .js for eslintrc and postcssrc
close #994
2018-04-27 12:45:45 -04:00
Derek Henscheid
6af7bbe247 fix: deep merge objects when extending package.json via plugins (#1070)
close #1053
2018-04-25 17:53:06 -04:00
Evan You
89f5cc3fc8 fix: resolve template extend source from the template location (fix #943) 2018-03-05 17:52:21 -05:00
Evan You
4601cc34b2 refactor: move more into pluginResolution util 2018-03-05 11:09:21 -05:00
Evan You
78dcc7ac58 refactor: use consistent plugin name resolution between add and invoke 2018-03-04 14:25:56 -05:00
Evan You
edff5b49fe refactor: extract plugin resolution into shared-utils 2018-03-04 13:46:10 -05:00
Guillaume Chau
0f2ee80a10 feat: generatorAPI.exitLog (#935)
* feat(logger): add tag argument

* feat(generator): add `exitLog` api

* fix(generator): extract toShortId into a util function
2018-03-04 13:22:55 -05:00
Evan You
f065d18aec test: tests for template inehritance 2018-03-03 18:47:26 -05:00
Evan You
1869aa2a20 feat: Generator now supports template inheritance 2018-03-03 18:32:53 -05:00
Evan You
46166fb640 fix: handle vue invoke config merging for existing files
close #788
2018-02-06 16:02:09 -05:00
Evan You
e597d12f41 docs: improve documentation for plugin development 2018-02-05 19:58:13 -05:00
Evan You
4f2f6f0995 fix: move plugin data extraction into GeneratorAPI 2018-02-04 10:50:33 -05:00
Evan You
5be05f34d2 fix: fix project creation when path contains spaces (fix #742) 2018-01-29 17:41:13 -05:00
Evan You
2e3fe07ed8 fix: avoid dotfiles not being published to npm 2018-01-25 12:04:27 -05:00
Evan You
52dad9d79b feat: improve generator hasPlugin check + invoke output 2018-01-15 13:53:41 -05:00
Evan You
54a902d2ff feat: preliminary TS plugin imeplementation 2018-01-10 19:15:31 -05:00
Evan You
902f6c0fb3 feat: pwa 2018-01-09 17:45:41 -05:00
Evan You
88e9d46334 feat: router & vuex 2018-01-08 16:45:03 -05:00