feat(vue): add private Vue plugin (#19009)
This commit is contained in:
parent
8c1f183659
commit
f3fb455f33
@ -54,6 +54,10 @@ pnpm-lock.yaml @nrwl/nx-core-reviewers
|
||||
/packages/react-native/** @nrwl/nx-react-reviewers
|
||||
/e2e/react-native/** @nrwl/nx-react-reviewers
|
||||
|
||||
# Vue
|
||||
/packages/vue/** @nrwl/nx-vue-reviewers
|
||||
/e2e/vue/** @nrwl/nx-vue-reviewers
|
||||
|
||||
## Node
|
||||
/docs/generated/packages/node/** @nrwl/nx-node-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/generated/packages/nest/** @nrwl/nx-node-reviewers @nrwl/nx-docs-reviewers
|
||||
|
||||
13
e2e/vue/jest.config.ts
Normal file
13
e2e/vue/jest.config.ts
Normal file
@ -0,0 +1,13 @@
|
||||
/* eslint-disable */
|
||||
export default {
|
||||
displayName: 'e2e-vue',
|
||||
preset: '../../jest.preset.js',
|
||||
transform: {
|
||||
'^.+\\.[tj]sx?$': ['ts-jest', { tsconfig: '<rootDir>/tsconfig.spec.json' }],
|
||||
},
|
||||
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'html'],
|
||||
maxWorkers: 1,
|
||||
globals: {},
|
||||
globalSetup: '../utils/global-setup.ts',
|
||||
globalTeardown: '../utils/global-teardown.ts',
|
||||
};
|
||||
10
e2e/vue/project.json
Normal file
10
e2e/vue/project.json
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
"name": "e2e-vue",
|
||||
"$schema": "../../node_modules/nx/schemas/project-schema.json",
|
||||
"sourceRoot": "e2e/vue",
|
||||
"projectType": "application",
|
||||
"targets": {
|
||||
"e2e": {}
|
||||
},
|
||||
"implicitDependencies": ["vue"]
|
||||
}
|
||||
13
e2e/vue/tsconfig.json
Normal file
13
e2e/vue/tsconfig.json
Normal file
@ -0,0 +1,13 @@
|
||||
{
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"types": ["node", "jest"]
|
||||
},
|
||||
"include": [],
|
||||
"files": [],
|
||||
"references": [
|
||||
{
|
||||
"path": "./tsconfig.spec.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
20
e2e/vue/tsconfig.spec.json
Normal file
20
e2e/vue/tsconfig.spec.json
Normal file
@ -0,0 +1,20 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "../../dist/out-tsc",
|
||||
"module": "commonjs",
|
||||
"types": ["jest", "node"]
|
||||
},
|
||||
"include": [
|
||||
"**/*.test.ts",
|
||||
"**/*.spec.ts",
|
||||
"**/*.spec.tsx",
|
||||
"**/*.test.tsx",
|
||||
"**/*.spec.js",
|
||||
"**/*.test.js",
|
||||
"**/*.spec.jsx",
|
||||
"**/*.test.jsx",
|
||||
"**/*.d.ts",
|
||||
"jest.config.ts"
|
||||
]
|
||||
}
|
||||
38
packages/vue/.eslintrc.json
Normal file
38
packages/vue/.eslintrc.json
Normal file
@ -0,0 +1,38 @@
|
||||
{
|
||||
"extends": ["../../.eslintrc.json"],
|
||||
"ignorePatterns": ["!**/*"],
|
||||
"overrides": [
|
||||
{
|
||||
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": ["*.ts", "*.tsx"],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": ["*.js", "*.jsx"],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": ["./package.json", "./generators.json", "./executors.json"],
|
||||
"parser": "jsonc-eslint-parser",
|
||||
"rules": {
|
||||
"@nx/nx-plugin-checks": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": ["./package.json"],
|
||||
"parser": "jsonc-eslint-parser",
|
||||
"rules": {
|
||||
"@nx/dependency-checks": [
|
||||
"error",
|
||||
{
|
||||
"buildTargets": ["build-base"],
|
||||
"ignoredDependencies": ["nx", "typescript"]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
13
packages/vue/README.md
Normal file
13
packages/vue/README.md
Normal file
@ -0,0 +1,13 @@
|
||||
<p style="text-align: center;"><img src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx.png" width="600" alt="Nx - Smart, Fast and Extensible Build System"></p>
|
||||
|
||||
{{links}}
|
||||
|
||||
<hr>
|
||||
|
||||
# Nx: Smart, Fast and Extensible Build System
|
||||
|
||||
Nx is a next generation build system with first class monorepo support and powerful integrations.
|
||||
|
||||
This package is a [Vue plugin for Nx](https://nx.dev/packages/vue).
|
||||
|
||||
{{content}}
|
||||
3
packages/vue/executors.json
Normal file
3
packages/vue/executors.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"executors": {}
|
||||
}
|
||||
5
packages/vue/generators.json
Normal file
5
packages/vue/generators.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "Nx Vue",
|
||||
"version": "0.1",
|
||||
"generators": {}
|
||||
}
|
||||
0
packages/vue/index.ts
Normal file
0
packages/vue/index.ts
Normal file
10
packages/vue/jest.config.ts
Normal file
10
packages/vue/jest.config.ts
Normal file
@ -0,0 +1,10 @@
|
||||
/* eslint-disable */
|
||||
export default {
|
||||
displayName: 'vue',
|
||||
preset: '../../jest.preset.js',
|
||||
transform: {
|
||||
'^.+\\.[tj]s$': ['ts-jest', { tsconfig: '<rootDir>/tsconfig.spec.json' }],
|
||||
},
|
||||
moduleFileExtensions: ['ts', 'js', 'html'],
|
||||
coverageDirectory: '../../coverage/packages/vue',
|
||||
};
|
||||
4
packages/vue/migrations.json
Normal file
4
packages/vue/migrations.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"generators": {},
|
||||
"packageJsonUpdates": {}
|
||||
}
|
||||
46
packages/vue/package.json
Normal file
46
packages/vue/package.json
Normal file
@ -0,0 +1,46 @@
|
||||
{
|
||||
"name": "@nx/vue",
|
||||
"version": "0.0.1",
|
||||
"private": true,
|
||||
"description": "The Vue plugin for Nx contains executors and generators for managing Vue applications and libraries within an Nx workspace. It provides:\n\n\n- Integration with libraries such as Jest, Cypress, and Storybook.\n\n- Generators for applications, libraries, and more.\n\n- Library build support for publishing packages to npm or other registries.\n\n- Utilities for automatic workspace refactoring.",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nrwl/nx.git",
|
||||
"directory": "packages/vue"
|
||||
},
|
||||
"keywords": [
|
||||
"Monorepo",
|
||||
"Vue",
|
||||
"Web",
|
||||
"CLI"
|
||||
],
|
||||
"main": "./index",
|
||||
"typings": "./index.d.ts",
|
||||
"author": "Victor Savkin",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/nrwl/nx/issues"
|
||||
},
|
||||
"homepage": "https://nx.dev",
|
||||
"generators": "./generators.json",
|
||||
"executors": "./executors.json",
|
||||
"nx-migrations": {
|
||||
"migrations": "./migrations.json"
|
||||
},
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"nx": ">= 15 <= 17"
|
||||
},
|
||||
"exports": {
|
||||
".": "./index.js",
|
||||
"./package.json": "./package.json",
|
||||
"./migrations.json": "./migrations.json",
|
||||
"./generators.json": "./generators.json",
|
||||
"./executors.json": "./executors.json"
|
||||
}
|
||||
}
|
||||
64
packages/vue/project.json
Normal file
64
packages/vue/project.json
Normal file
@ -0,0 +1,64 @@
|
||||
{
|
||||
"name": "vue",
|
||||
"$schema": "../../node_modules/nx/schemas/project-schema.json",
|
||||
"sourceRoot": "packages/vue",
|
||||
"projectType": "library",
|
||||
"targets": {
|
||||
"test": {
|
||||
"executor": "@nx/jest:jest",
|
||||
"options": {
|
||||
"jestConfig": "packages/vue/jest.config.ts",
|
||||
"passWithNoTests": true
|
||||
},
|
||||
"outputs": ["{workspaceRoot}/coverage/packages/vue"]
|
||||
},
|
||||
"build-base": {
|
||||
"executor": "@nx/js:tsc",
|
||||
"options": {
|
||||
"outputPath": "build/packages/vue",
|
||||
"tsConfig": "packages/vue/tsconfig.lib.json",
|
||||
"main": "packages/vue/index.ts",
|
||||
"assets": [
|
||||
{
|
||||
"input": "packages/vue",
|
||||
"glob": "**/files/**",
|
||||
"output": "/"
|
||||
},
|
||||
{
|
||||
"input": "packages/vue",
|
||||
"glob": "**/files/**/.gitkeep",
|
||||
"output": "/"
|
||||
},
|
||||
{
|
||||
"input": "packages/vue",
|
||||
"glob": "**/*.json",
|
||||
"ignore": ["**/tsconfig*.json", "project.json", ".eslintrc.json"],
|
||||
"output": "/"
|
||||
},
|
||||
{
|
||||
"input": "packages/vue",
|
||||
"glob": "**/*.js",
|
||||
"ignore": ["**/jest.config.js"],
|
||||
"output": "/"
|
||||
},
|
||||
{
|
||||
"input": "packages/vue",
|
||||
"glob": "**/*.d.ts",
|
||||
"output": "/"
|
||||
},
|
||||
{
|
||||
"input": "",
|
||||
"glob": "LICENSE",
|
||||
"output": "/"
|
||||
}
|
||||
]
|
||||
},
|
||||
"outputs": ["{options.outputPath}"]
|
||||
},
|
||||
"build": {
|
||||
"command": "node ./scripts/copy-readme.js vue",
|
||||
"outputs": ["{workspaceRoot}/build/packages/vue"]
|
||||
},
|
||||
"lint": {}
|
||||
}
|
||||
}
|
||||
16
packages/vue/tsconfig.json
Normal file
16
packages/vue/tsconfig.json
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"module": "commonjs"
|
||||
},
|
||||
"files": [],
|
||||
"include": [],
|
||||
"references": [
|
||||
{
|
||||
"path": "./tsconfig.lib.json"
|
||||
},
|
||||
{
|
||||
"path": "./tsconfig.spec.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
10
packages/vue/tsconfig.lib.json
Normal file
10
packages/vue/tsconfig.lib.json
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "../../dist/out-tsc",
|
||||
"declaration": true,
|
||||
"types": ["node"]
|
||||
},
|
||||
"include": ["**/*.ts"],
|
||||
"exclude": ["jest.config.ts", "**/*.spec.ts", "**/*.test.ts"]
|
||||
}
|
||||
9
packages/vue/tsconfig.spec.json
Normal file
9
packages/vue/tsconfig.spec.json
Normal file
@ -0,0 +1,9 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "../../dist/out-tsc",
|
||||
"module": "commonjs",
|
||||
"types": ["jest", "node"]
|
||||
},
|
||||
"include": ["jest.config.ts", "**/*.test.ts", "**/*.spec.ts", "**/*.d.ts"]
|
||||
}
|
||||
@ -23,6 +23,7 @@ const scopes = [
|
||||
{ value: 'storybook', name: 'storybook: anything Storybook specific' },
|
||||
{ value: 'testing', name: 'testing: anything testing specific (e.g. jest or cypress)' },
|
||||
{ value: 'vite', name: 'vite: anything Vite specific' },
|
||||
{ value: 'vue', name: 'vue: anything Vue specific' },
|
||||
{ value: 'web', name: 'web: anything Web specific' },
|
||||
{ value: 'webpack', name: 'webpack: anything Webpack specific' },
|
||||
];
|
||||
|
||||
@ -101,6 +101,8 @@
|
||||
"@nx/typedoc-theme": ["typedoc-theme/src/index.ts"],
|
||||
"@nx/vite": ["packages/vite"],
|
||||
"@nx/vite/*": ["packages/vite/*"],
|
||||
"@nx/vue": ["packages/vue/index.ts"],
|
||||
"@nx/vue/*": ["packages/vue/*"],
|
||||
"@nx/web": ["packages/web"],
|
||||
"@nx/web/*": ["packages/web/*"],
|
||||
"@nx/webpack": ["packages/webpack"],
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user