@gct-paas/build 0.1.5-dev.2 → 0.1.5-dev.4
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/dist/constants/index.cjs +3 -2
- package/dist/constants/index.d.ts +4 -0
- package/dist/vite/vite-config/vite-base-config.cjs +2 -1
- package/dist/vite/vite-config/vite-pkg-dev-config.cjs +33 -3
- package/es/constants/index.d.ts +4 -0
- package/es/constants/index.mjs +1 -0
- package/es/vite/vite-config/vite-base-config.mjs +2 -0
- package/es/vite/vite-config/vite-pkg-dev-config.mjs +38 -2
- package/package.json +4 -3
package/dist/constants/index.cjs
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.PROD_MODE = exports.DEV_MODE = exports.DEFAULT_EXTERNAL = void 0;
|
|
6
|
+
exports.PROD_MODE = exports.DEV_MODE = exports.DEFAULT_IGNORED_DEPENDENCIES = exports.DEFAULT_EXTERNAL = void 0;
|
|
7
7
|
const DEV_MODE = exports.DEV_MODE = "development";
|
|
8
8
|
const PROD_MODE = exports.PROD_MODE = "production";
|
|
9
|
-
const DEFAULT_EXTERNAL = exports.DEFAULT_EXTERNAL = ["vue", "vue-router", "vue-i18n", "axios", "dayjs", "lodash-es", "qs", "pinia", "vuedraggable", "sortablejs", "vue-grid-layout", "vant", "ant-design-vue", "@gct-paas/build", "@gct-paas/api", "@gct-paas/core", "@gct-paas/core-mobile", "@gct-paas/core-web", "@gct-paas/core-pad", "@gct-paas/design", "@gct-paas/design-mobile", "@gct-paas/design-web", "@gct-paas/design-pad", "@gct-paas/mobile", "@gct-paas/scss", "@gct-paas/web", "@gct-paas/pad", "systemjs"];
|
|
9
|
+
const DEFAULT_EXTERNAL = exports.DEFAULT_EXTERNAL = ["vue", "vue-router", "vue-i18n", "axios", "dayjs", "lodash-es", "qs", "pinia", "vuedraggable", "sortablejs", "vue-grid-layout", "vant", "ant-design-vue", "@gct-paas/build", "@gct-paas/api", "@gct-paas/core", "@gct-paas/core-mobile", "@gct-paas/core-web", "@gct-paas/core-pad", "@gct-paas/design", "@gct-paas/design-mobile", "@gct-paas/design-web", "@gct-paas/design-pad", "@gct-paas/mobile", "@gct-paas/scss", "@gct-paas/web", "@gct-paas/pad", "systemjs"];
|
|
10
|
+
const DEFAULT_IGNORED_DEPENDENCIES = exports.DEFAULT_IGNORED_DEPENDENCIES = ["path-browserify", "qx-util"];
|
|
@@ -8,6 +8,7 @@ var _vite = require("vite");
|
|
|
8
8
|
var _pluginVue = _interopRequireDefault(require("@vitejs/plugin-vue"));
|
|
9
9
|
var _pluginVueJsx = _interopRequireDefault(require("@vitejs/plugin-vue-jsx"));
|
|
10
10
|
var _pluginJson = _interopRequireDefault(require("@rollup/plugin-json"));
|
|
11
|
+
var _viteTsconfigPaths = _interopRequireDefault(require("vite-tsconfig-paths"));
|
|
11
12
|
var _path = _interopRequireDefault(require("path"));
|
|
12
13
|
var _constants = require("../../constants/index.cjs");
|
|
13
14
|
var _util = require("../../util/index.cjs");
|
|
@@ -29,7 +30,7 @@ function defineViteBaseConfig(opts = {}) {
|
|
|
29
30
|
external: _constants.DEFAULT_EXTERNAL
|
|
30
31
|
}
|
|
31
32
|
},
|
|
32
|
-
plugins: [(0, _pluginJson.default)(), (0, _pluginVue.default)(), (0, _pluginVueJsx.default)()
|
|
33
|
+
plugins: [(0, _viteTsconfigPaths.default)(), (0, _pluginJson.default)(), (0, _pluginVue.default)(), (0, _pluginVueJsx.default)()
|
|
33
34
|
// 关系 babel 配置,这个配置要放在具体的 project vite 编译配置中,底包应该是干净的
|
|
34
35
|
// babel({
|
|
35
36
|
// babelHelpers: 'bundled',
|
|
@@ -11,9 +11,12 @@ var _pluginVue = _interopRequireDefault(require("@vitejs/plugin-vue"));
|
|
|
11
11
|
var _pluginVueJsx = _interopRequireDefault(require("@vitejs/plugin-vue-jsx"));
|
|
12
12
|
var _pluginJson = _interopRequireDefault(require("@rollup/plugin-json"));
|
|
13
13
|
var _vitePluginLibInjectCss = require("vite-plugin-lib-inject-css");
|
|
14
|
+
var _viteTsconfigPaths = _interopRequireDefault(require("vite-tsconfig-paths"));
|
|
15
|
+
var _vitePluginStaticCopy = require("vite-plugin-static-copy");
|
|
14
16
|
var _vitePluginDts = _interopRequireDefault(require("vite-plugin-dts"));
|
|
15
|
-
var
|
|
17
|
+
var _fs = require("fs");
|
|
16
18
|
var _util = require("../../util/index.cjs");
|
|
19
|
+
var _constants = require("../../constants/index.cjs");
|
|
17
20
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
21
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
22
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -21,6 +24,14 @@ function definePkgDevViteConfig(opts = {}) {
|
|
|
21
24
|
const cwd = process.cwd();
|
|
22
25
|
const outDir = _path.default.resolve(cwd, "es");
|
|
23
26
|
rf.sync(outDir);
|
|
27
|
+
let pkgDependencies = [];
|
|
28
|
+
try {
|
|
29
|
+
const pkgJsonPath = _path.default.resolve(cwd, "package.json");
|
|
30
|
+
const pkgJson = JSON.parse((0, _fs.readFileSync)(pkgJsonPath, "utf-8"));
|
|
31
|
+
pkgDependencies = Object.keys(pkgJson.dependencies || {});
|
|
32
|
+
} catch (error) {
|
|
33
|
+
console.warn("Failed to read package.json dependencies:", error);
|
|
34
|
+
}
|
|
24
35
|
return (0, _util.mergeConfig)((0, _vite.defineConfig)({
|
|
25
36
|
css: {
|
|
26
37
|
preprocessorOptions: {
|
|
@@ -34,7 +45,18 @@ function definePkgDevViteConfig(opts = {}) {
|
|
|
34
45
|
target: "esnext",
|
|
35
46
|
minify: false,
|
|
36
47
|
rollupOptions: {
|
|
37
|
-
external:
|
|
48
|
+
external: id => {
|
|
49
|
+
if (pkgDependencies.some(dep => id === dep || id.startsWith(dep + "/"))) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
if (_util.IS_NODE_MODULE.test(id)) {
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
if (_constants.DEFAULT_EXTERNAL.includes(id)) {
|
|
56
|
+
return true;
|
|
57
|
+
}
|
|
58
|
+
return false;
|
|
59
|
+
},
|
|
38
60
|
output: {
|
|
39
61
|
preserveModules: true,
|
|
40
62
|
entryFileNames: ({
|
|
@@ -49,10 +71,18 @@ function definePkgDevViteConfig(opts = {}) {
|
|
|
49
71
|
formats: ["es"]
|
|
50
72
|
}
|
|
51
73
|
},
|
|
52
|
-
plugins: [(0, _pluginJson.default)(), (0, _pluginVue.default)(), (0, _pluginVueJsx.default)(), (0, _vitePluginLibInjectCss.libInjectCss)(), (0, _vitePluginDts.default)({
|
|
74
|
+
plugins: [(0, _viteTsconfigPaths.default)(), (0, _pluginJson.default)(), (0, _pluginVue.default)(), (0, _pluginVueJsx.default)(), (0, _vitePluginLibInjectCss.libInjectCss)(), (0, _vitePluginDts.default)({
|
|
53
75
|
outDir: [outDir],
|
|
54
76
|
// 排除测试目录,以及测试文件
|
|
55
77
|
exclude: ["**/test/**", "**/*.test.ts", "**/*.test.tsx", "**/*.spec.ts", "**/*.spec.tsx"]
|
|
78
|
+
}), (0, _vitePluginStaticCopy.viteStaticCopy)({
|
|
79
|
+
targets: [{
|
|
80
|
+
// 匹配 src 目录下所有深层层级的 .d.ts 文件
|
|
81
|
+
src: "src/types",
|
|
82
|
+
// 关键:dest 设置为 '.' 配合下面的 transform 逻辑
|
|
83
|
+
// 或者直接指定输出到 dist 里的某个子目录,比如 'types'
|
|
84
|
+
dest: "."
|
|
85
|
+
}]
|
|
56
86
|
})]
|
|
57
87
|
}), opts);
|
|
58
88
|
}
|
package/es/constants/index.d.ts
CHANGED
package/es/constants/index.mjs
CHANGED
|
@@ -2,6 +2,7 @@ import { defineConfig } from "vite";
|
|
|
2
2
|
import vue from "@vitejs/plugin-vue";
|
|
3
3
|
import vueJsx from "@vitejs/plugin-vue-jsx";
|
|
4
4
|
import json from "@rollup/plugin-json";
|
|
5
|
+
import tsconfigPaths from "vite-tsconfig-paths";
|
|
5
6
|
import path from "path";
|
|
6
7
|
import { DEFAULT_EXTERNAL } from "../../constants/index.mjs";
|
|
7
8
|
import { mergeConfig } from "../../util/index.mjs";
|
|
@@ -24,6 +25,7 @@ export function defineViteBaseConfig(opts = {}) {
|
|
|
24
25
|
}
|
|
25
26
|
},
|
|
26
27
|
plugins: [
|
|
28
|
+
tsconfigPaths(),
|
|
27
29
|
json(),
|
|
28
30
|
vue(),
|
|
29
31
|
vueJsx()
|
|
@@ -5,13 +5,24 @@ import vue from "@vitejs/plugin-vue";
|
|
|
5
5
|
import vueJsx from "@vitejs/plugin-vue-jsx";
|
|
6
6
|
import json from "@rollup/plugin-json";
|
|
7
7
|
import { libInjectCss } from "vite-plugin-lib-inject-css";
|
|
8
|
+
import tsconfigPaths from "vite-tsconfig-paths";
|
|
9
|
+
import { viteStaticCopy } from "vite-plugin-static-copy";
|
|
8
10
|
import dts from "vite-plugin-dts";
|
|
11
|
+
import { readFileSync } from "fs";
|
|
12
|
+
import { mergeConfig, IS_NODE_MODULE } from "../../util/index.mjs";
|
|
9
13
|
import { DEFAULT_EXTERNAL } from "../../constants/index.mjs";
|
|
10
|
-
import { mergeConfig } from "../../util/index.mjs";
|
|
11
14
|
export function definePkgDevViteConfig(opts = {}) {
|
|
12
15
|
const cwd = process.cwd();
|
|
13
16
|
const outDir = path.resolve(cwd, "es");
|
|
14
17
|
rf.sync(outDir);
|
|
18
|
+
let pkgDependencies = [];
|
|
19
|
+
try {
|
|
20
|
+
const pkgJsonPath = path.resolve(cwd, "package.json");
|
|
21
|
+
const pkgJson = JSON.parse(readFileSync(pkgJsonPath, "utf-8"));
|
|
22
|
+
pkgDependencies = Object.keys(pkgJson.dependencies || {});
|
|
23
|
+
} catch (error) {
|
|
24
|
+
console.warn("Failed to read package.json dependencies:", error);
|
|
25
|
+
}
|
|
15
26
|
return mergeConfig(
|
|
16
27
|
defineConfig({
|
|
17
28
|
css: {
|
|
@@ -26,7 +37,20 @@ export function definePkgDevViteConfig(opts = {}) {
|
|
|
26
37
|
target: "esnext",
|
|
27
38
|
minify: false,
|
|
28
39
|
rollupOptions: {
|
|
29
|
-
external:
|
|
40
|
+
external: (id) => {
|
|
41
|
+
if (pkgDependencies.some(
|
|
42
|
+
(dep) => id === dep || id.startsWith(dep + "/")
|
|
43
|
+
)) {
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
if (IS_NODE_MODULE.test(id)) {
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
if (DEFAULT_EXTERNAL.includes(id)) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
return false;
|
|
53
|
+
},
|
|
30
54
|
output: {
|
|
31
55
|
preserveModules: true,
|
|
32
56
|
entryFileNames: ({ name }) => `${name}.mjs`,
|
|
@@ -40,6 +64,7 @@ export function definePkgDevViteConfig(opts = {}) {
|
|
|
40
64
|
}
|
|
41
65
|
},
|
|
42
66
|
plugins: [
|
|
67
|
+
tsconfigPaths(),
|
|
43
68
|
json(),
|
|
44
69
|
vue(),
|
|
45
70
|
vueJsx(),
|
|
@@ -54,6 +79,17 @@ export function definePkgDevViteConfig(opts = {}) {
|
|
|
54
79
|
"**/*.spec.ts",
|
|
55
80
|
"**/*.spec.tsx"
|
|
56
81
|
]
|
|
82
|
+
}),
|
|
83
|
+
viteStaticCopy({
|
|
84
|
+
targets: [
|
|
85
|
+
{
|
|
86
|
+
// 匹配 src 目录下所有深层层级的 .d.ts 文件
|
|
87
|
+
src: "src/types",
|
|
88
|
+
// 关键:dest 设置为 '.' 配合下面的 transform 逻辑
|
|
89
|
+
// 或者直接指定输出到 dist 里的某个子目录,比如 'types'
|
|
90
|
+
dest: "."
|
|
91
|
+
}
|
|
92
|
+
]
|
|
57
93
|
})
|
|
58
94
|
]
|
|
59
95
|
}),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gct-paas/build",
|
|
3
|
-
"version": "0.1.5-dev.
|
|
3
|
+
"version": "0.1.5-dev.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "paas 平台核心包",
|
|
6
6
|
"main": "dist/index.cjs",
|
|
@@ -91,6 +91,8 @@
|
|
|
91
91
|
"vite": "^7.3.1",
|
|
92
92
|
"vite-plugin-dts": "^4.5.4",
|
|
93
93
|
"vite-plugin-lib-inject-css": "^2.2.2",
|
|
94
|
+
"vite-plugin-static-copy": "^3.2.0",
|
|
95
|
+
"vite-tsconfig-paths": "^6.0.5",
|
|
94
96
|
"vue-eslint-parser": "^10.2.0",
|
|
95
97
|
"vue-tsc": "^3.2.4"
|
|
96
98
|
},
|
|
@@ -105,6 +107,5 @@
|
|
|
105
107
|
"tsx": "^4.21.0",
|
|
106
108
|
"typescript": "^5.9.3",
|
|
107
109
|
"unbuild": "^3.6.1"
|
|
108
|
-
}
|
|
109
|
-
"gitHead": "d5c70cf34961e0bd1736b97f04b4afdf06386d23"
|
|
110
|
+
}
|
|
110
111
|
}
|