zova-vite 1.0.70
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 +21 -0
- package/README.md +1 -0
- package/dist/cabloy.d.ts +4 -0
- package/dist/cabloy.d.ts.map +1 -0
- package/dist/cabloy.js +104 -0
- package/dist/cabloy.js.map +1 -0
- package/dist/configUtils.d.ts +9 -0
- package/dist/configUtils.d.ts.map +1 -0
- package/dist/configUtils.js +83 -0
- package/dist/configUtils.js.map +1 -0
- package/dist/generateEntryFiles.d.ts +4 -0
- package/dist/generateEntryFiles.d.ts.map +1 -0
- package/dist/generateEntryFiles.js +109 -0
- package/dist/generateEntryFiles.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +29 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +11 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +22 -0
- package/dist/utils.js.map +1 -0
- package/dist/vitePlugins.d.ts +3 -0
- package/dist/vitePlugins.d.ts.map +1 -0
- package/dist/vitePlugins.js +98 -0
- package/dist/vitePlugins.js.map +1 -0
- package/dist/zova.d.ts +4 -0
- package/dist/zova.d.ts.map +1 -0
- package/dist/zova.js +104 -0
- package/dist/zova.js.map +1 -0
- package/package.json +56 -0
- package/templates/cabloy-modules-meta.ejs +26 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2016-present Zova
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# zova-vite
|
package/dist/cabloy.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { CabloyConfigMeta } from '@cabloy/front-core';
|
|
2
|
+
import { CabloyViteConfigOptions, CabloyViteConfigResult } from './types.js';
|
|
3
|
+
export declare function generateCabloyViteMeta(configMeta: CabloyConfigMeta, configOptions: CabloyViteConfigOptions): Promise<CabloyViteConfigResult>;
|
|
4
|
+
//# sourceMappingURL=cabloy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cabloy.d.ts","sourceRoot":"","sources":["../src/cabloy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAQ7E,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,gBAAgB,EAC5B,aAAa,EAAE,uBAAuB,GACrC,OAAO,CAAC,sBAAsB,CAAC,CAqGjC"}
|
package/dist/cabloy.js
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { generateVitePlugins } from './vitePlugins.js';
|
|
2
|
+
import { createConfigUtils } from './configUtils.js';
|
|
3
|
+
import { generateEntryFiles } from './generateEntryFiles.js';
|
|
4
|
+
const __SvgIconPattern = /assets\/icons\/groups\/.*?\.svg/;
|
|
5
|
+
export async function generateCabloyViteMeta(configMeta, configOptions) {
|
|
6
|
+
// config utils
|
|
7
|
+
const configUtils = createConfigUtils(configMeta, configOptions);
|
|
8
|
+
// env
|
|
9
|
+
const env = configUtils.loadEnvs();
|
|
10
|
+
// define
|
|
11
|
+
const define = __getConfigDefine(env);
|
|
12
|
+
// server
|
|
13
|
+
const server = __getConfigServer();
|
|
14
|
+
// build
|
|
15
|
+
const build = __getConfigBuild();
|
|
16
|
+
// vitePlugins
|
|
17
|
+
const vitePlugins = generateVitePlugins(configOptions);
|
|
18
|
+
// alias
|
|
19
|
+
const alias = {
|
|
20
|
+
'@vue/runtime-core': '@cabloy/vue-runtime-core',
|
|
21
|
+
};
|
|
22
|
+
// viteConfig
|
|
23
|
+
const viteConfig = {
|
|
24
|
+
root: configOptions.appDir,
|
|
25
|
+
base: env.APP_PUBLIC_PATH,
|
|
26
|
+
mode: configMeta.mode,
|
|
27
|
+
define,
|
|
28
|
+
server,
|
|
29
|
+
build,
|
|
30
|
+
resolve: {
|
|
31
|
+
alias,
|
|
32
|
+
extensions: ['.js', '.json', '.jsx', '.mjs', '.ts', '.tsx', '.vue'],
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
// generateEntryFiles
|
|
36
|
+
await generateEntryFiles(configMeta, configOptions);
|
|
37
|
+
// ok
|
|
38
|
+
return {
|
|
39
|
+
env,
|
|
40
|
+
vitePlugins,
|
|
41
|
+
viteConfig,
|
|
42
|
+
};
|
|
43
|
+
//////////////////////////////
|
|
44
|
+
function __getConfigServer() {
|
|
45
|
+
// proxy
|
|
46
|
+
const proxy = {};
|
|
47
|
+
if (process.env.PROXY_API_ENABLED === 'true') {
|
|
48
|
+
proxy[process.env.PROXY_API_PREFIX] = {
|
|
49
|
+
target: process.env.PROXY_API_BASE_URL,
|
|
50
|
+
changeOrigin: true,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
// server
|
|
54
|
+
const server = {
|
|
55
|
+
proxy,
|
|
56
|
+
};
|
|
57
|
+
// devServerHost
|
|
58
|
+
if (process.env.DEV_SERVER_HOST) {
|
|
59
|
+
if (process.env.DEV_SERVER_HOST === 'true') {
|
|
60
|
+
server.host = true;
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
server.host = process.env.DEV_SERVER_HOST;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
if (process.env.DEV_SERVER_PORT) {
|
|
67
|
+
server.port = Number(process.env.DEV_SERVER_PORT);
|
|
68
|
+
}
|
|
69
|
+
return server;
|
|
70
|
+
}
|
|
71
|
+
function __getConfigDefine(env) {
|
|
72
|
+
const acc = {};
|
|
73
|
+
for (const key in env) {
|
|
74
|
+
const val = env[key];
|
|
75
|
+
acc[`process.env.${key}`] =
|
|
76
|
+
val === 'true' || val === 'false'
|
|
77
|
+
? val // let's keep it as boolean and not transform it to string
|
|
78
|
+
: JSON.stringify(env[key]);
|
|
79
|
+
}
|
|
80
|
+
return acc;
|
|
81
|
+
}
|
|
82
|
+
function __getConfigBuild() {
|
|
83
|
+
const build = {
|
|
84
|
+
rollupOptions: {
|
|
85
|
+
output: {
|
|
86
|
+
manualChunks: id => {
|
|
87
|
+
return configUtils.configManualChunk(id);
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
assetsInlineLimit: (filePath) => {
|
|
92
|
+
if (__SvgIconPattern.test(filePath)) {
|
|
93
|
+
return 0;
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
minify: 'terser',
|
|
97
|
+
terserOptions: {
|
|
98
|
+
keep_classnames: true,
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
return build;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=cabloy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cabloy.js","sourceRoot":"","sources":["../src/cabloy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CabloyConfigMeta } from 'zova-core';
|
|
2
|
+
import { CabloyViteConfigOptions } from './types.js';
|
|
3
|
+
export declare function createConfigUtils(configMeta: CabloyConfigMeta, configOptions: CabloyViteConfigOptions): {
|
|
4
|
+
loadEnvs: () => {
|
|
5
|
+
[name: string]: string;
|
|
6
|
+
};
|
|
7
|
+
configManualChunk: (id: string) => string;
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=configUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configUtils.d.ts","sourceRoot":"","sources":["../src/configUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAA+B,uBAAuB,EAAE,MAAM,YAAY,CAAC;AA0BlF,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,gBAAgB,EAC5B,aAAa,EAAE,uBAAuB,GACrC;IAAE,QAAQ,EAAE,MAAM;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAAC,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAA;CAAE,CAgE3F"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import * as dotenv from '@cabloy/dotenv';
|
|
3
|
+
import { getEnvMeta } from './utils.js';
|
|
4
|
+
const __ModuleLibs = [
|
|
5
|
+
/src\/module\/([^\/]*?)\//,
|
|
6
|
+
/src\/module-vendor\/([^\/]*?)\//,
|
|
7
|
+
/src\/suite\/.*\/modules\/([^\/]*?)\//,
|
|
8
|
+
/src\/suite-vendor\/.*\/modules\/([^\/]*?)\//,
|
|
9
|
+
/node_modules\/zova-module-([^\/]*?)\//,
|
|
10
|
+
];
|
|
11
|
+
const __CabloyManualChunkVendors = [
|
|
12
|
+
{ match: ['@faker-js'], output: 'faker' },
|
|
13
|
+
{
|
|
14
|
+
match: [/zova\/config\.js/],
|
|
15
|
+
output: '-zova-config',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
match: ['vue', '@vue', 'reflect-metadata', 'zova', 'packages-zova/core'],
|
|
19
|
+
output: 'zova',
|
|
20
|
+
},
|
|
21
|
+
{ match: ['vue-router'], output: 'vue-router' },
|
|
22
|
+
];
|
|
23
|
+
export function createConfigUtils(configMeta, configOptions) {
|
|
24
|
+
let __cabloyManualChunkVendors_runtime;
|
|
25
|
+
return {
|
|
26
|
+
loadEnvs: __loadEnvs,
|
|
27
|
+
configManualChunk: __configManualChunk,
|
|
28
|
+
};
|
|
29
|
+
//////////////////////////////
|
|
30
|
+
function __loadEnvs() {
|
|
31
|
+
const meta = getEnvMeta(configMeta);
|
|
32
|
+
const envDir = path.join(configOptions.appDir, 'env');
|
|
33
|
+
const envs = dotenv.loadEnvs(meta, envDir, '.env');
|
|
34
|
+
return Object.assign({
|
|
35
|
+
NODE_ENV: meta.mode,
|
|
36
|
+
}, envs, {
|
|
37
|
+
META_FLAVOR: meta.flavor,
|
|
38
|
+
META_MODE: meta.mode,
|
|
39
|
+
META_APP_MODE: meta.appMode,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
function __configManualChunk(id) {
|
|
43
|
+
id = id.replace(/\\/gi, '/');
|
|
44
|
+
// modules
|
|
45
|
+
let output = _configManualChunk_modules(id);
|
|
46
|
+
if (output)
|
|
47
|
+
return output;
|
|
48
|
+
// vendors
|
|
49
|
+
output = _configManualChunk_vendors(id);
|
|
50
|
+
if (output)
|
|
51
|
+
return output;
|
|
52
|
+
// default
|
|
53
|
+
if (configOptions.cabloyManualChunk.debug) {
|
|
54
|
+
console.log(id);
|
|
55
|
+
}
|
|
56
|
+
return 'vendor';
|
|
57
|
+
}
|
|
58
|
+
function _configManualChunk_vendors(id) {
|
|
59
|
+
if (!__cabloyManualChunkVendors_runtime) {
|
|
60
|
+
__cabloyManualChunkVendors_runtime = configOptions.cabloyManualChunk.vendors.concat(__CabloyManualChunkVendors);
|
|
61
|
+
}
|
|
62
|
+
const matchItem = __cabloyManualChunkVendors_runtime.find(item => {
|
|
63
|
+
return item.match.some(item => {
|
|
64
|
+
if (typeof item === 'string') {
|
|
65
|
+
return id.indexOf(`/${item}/`) > -1;
|
|
66
|
+
}
|
|
67
|
+
return item.test(id);
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
if (matchItem)
|
|
71
|
+
return matchItem.output;
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
function _configManualChunk_modules(id) {
|
|
75
|
+
for (const moduleLib of __ModuleLibs) {
|
|
76
|
+
const matched = id.match(moduleLib);
|
|
77
|
+
if (matched)
|
|
78
|
+
return matched[1];
|
|
79
|
+
}
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=configUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configUtils.js","sourceRoot":"","sources":["../src/configUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { CabloyConfigMeta } from 'zova-core';
|
|
2
|
+
import { CabloyViteConfigOptions } from './types.js';
|
|
3
|
+
export declare function generateEntryFiles(configMeta: CabloyConfigMeta, configOptions: CabloyViteConfigOptions): Promise<void>;
|
|
4
|
+
//# sourceMappingURL=generateEntryFiles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateEntryFiles.d.ts","sourceRoot":"","sources":["../src/generateEntryFiles.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,uBAAuB,iBAqG5G"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import fse from 'fs-extra';
|
|
3
|
+
import compileTemplate from 'lodash/template.js';
|
|
4
|
+
import { glob } from '@cabloy/module-glob';
|
|
5
|
+
import tmp from 'tmp';
|
|
6
|
+
import { build as esBuild } from 'esbuild';
|
|
7
|
+
import chalk from 'chalk';
|
|
8
|
+
import { extend } from '@cabloy/extend';
|
|
9
|
+
import { pathToFileURL } from 'node:url';
|
|
10
|
+
import path, * as Path from 'node:path';
|
|
11
|
+
import { getEnvMeta } from './utils.js';
|
|
12
|
+
import { getEnvFiles } from '@cabloy/dotenv';
|
|
13
|
+
export async function generateEntryFiles(configMeta, configOptions) {
|
|
14
|
+
// config
|
|
15
|
+
await __generateConfig();
|
|
16
|
+
// modules meta
|
|
17
|
+
await __generateModulesMeta();
|
|
18
|
+
//////////////////////////////
|
|
19
|
+
async function __generateConfig() {
|
|
20
|
+
// check config
|
|
21
|
+
let configDir = path.join(configOptions.appDir, 'src/front/config');
|
|
22
|
+
if (!fse.existsSync(configDir)) {
|
|
23
|
+
console.log(chalk.red('Please copy directory: from _config to config\n'));
|
|
24
|
+
process.exit(0);
|
|
25
|
+
}
|
|
26
|
+
// meta
|
|
27
|
+
const meta = getEnvMeta(configMeta);
|
|
28
|
+
configDir = path.join(configOptions.appDir, 'src/front/config/config');
|
|
29
|
+
const files = getEnvFiles(meta, configDir, 'config', '.ts');
|
|
30
|
+
const targetMeta = { ...meta };
|
|
31
|
+
delete targetMeta.mine;
|
|
32
|
+
const target = {
|
|
33
|
+
meta: targetMeta,
|
|
34
|
+
env: {
|
|
35
|
+
appServer: process.env.APP_SERVER === 'true',
|
|
36
|
+
appRouterMode: process.env.APP_ROUTER_MODE,
|
|
37
|
+
appRouterBase: process.env.APP_ROUTER_BASE,
|
|
38
|
+
appPublicPath: process.env.APP_PUBLIC_PATH,
|
|
39
|
+
appName: process.env.APP_NAME,
|
|
40
|
+
appTitle: process.env.APP_TITLE,
|
|
41
|
+
appVersion: process.env.APP_VERSION,
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
for (const file of files) {
|
|
45
|
+
const config = await __loadConfig(file, targetMeta);
|
|
46
|
+
if (config) {
|
|
47
|
+
extend(true, target, config);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// output
|
|
51
|
+
const contentDest = `export default ${JSON.stringify(target, null, 2)};`;
|
|
52
|
+
const fileDest = path.join(configOptions.appDir, configOptions.runtimeDir, 'config.js');
|
|
53
|
+
fse.ensureFileSync(fileDest);
|
|
54
|
+
fse.writeFileSync(fileDest, contentDest, 'utf-8');
|
|
55
|
+
// ok
|
|
56
|
+
return target;
|
|
57
|
+
}
|
|
58
|
+
async function __loadConfig(fileName, meta) {
|
|
59
|
+
// temp
|
|
60
|
+
const fileTempObj = tmp.fileSync({ postfix: '.mjs' });
|
|
61
|
+
const fileTemp = fileTempObj.name;
|
|
62
|
+
// build
|
|
63
|
+
const esBuildConfig = __createEsbuildConfig(fileName, fileTemp);
|
|
64
|
+
await esBuild(esBuildConfig);
|
|
65
|
+
// load
|
|
66
|
+
const fnResult = await import(_pathToHref(fileTemp));
|
|
67
|
+
const configFn = fnResult.default || fnResult;
|
|
68
|
+
const config = await configFn(meta);
|
|
69
|
+
// delete temp
|
|
70
|
+
fileTempObj.removeCallback();
|
|
71
|
+
// ok
|
|
72
|
+
return config;
|
|
73
|
+
}
|
|
74
|
+
function __createEsbuildConfig(fileSrc, fileDest) {
|
|
75
|
+
return {
|
|
76
|
+
platform: 'node',
|
|
77
|
+
format: 'esm',
|
|
78
|
+
bundle: true,
|
|
79
|
+
packages: 'external',
|
|
80
|
+
resolveExtensions: ['.mjs', '.js', '.mts', '.ts', '.json'],
|
|
81
|
+
entryPoints: [fileSrc],
|
|
82
|
+
outfile: fileDest,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
async function __generateModulesMeta() {
|
|
86
|
+
// modules
|
|
87
|
+
const { modules, modulesArray } = await glob({
|
|
88
|
+
projectMode: 'front',
|
|
89
|
+
projectPath: configOptions.appDir,
|
|
90
|
+
disabledModules: process.env.PROJECT_DISABLED_MODULES,
|
|
91
|
+
disabledSuites: process.env.PROJECT_DISABLED_SUITES,
|
|
92
|
+
log: true,
|
|
93
|
+
});
|
|
94
|
+
const moduleNames = modulesArray.map(item => item.info.relativeName);
|
|
95
|
+
// src
|
|
96
|
+
const fileSrc = new URL('../templates/zova-modules-meta.ejs', import.meta.url);
|
|
97
|
+
const contentSrc = readFileSync(fileSrc, 'utf8');
|
|
98
|
+
const template = compileTemplate(contentSrc);
|
|
99
|
+
// dest
|
|
100
|
+
const contentDest = template({ modules, moduleNames });
|
|
101
|
+
const fileDest = path.join(configOptions.appDir, configOptions.runtimeDir, 'modules-meta.js');
|
|
102
|
+
fse.ensureFileSync(fileDest);
|
|
103
|
+
fse.writeFileSync(fileDest, contentDest, 'utf-8');
|
|
104
|
+
}
|
|
105
|
+
function _pathToHref(fileName) {
|
|
106
|
+
return Path.sep === '\\' ? pathToFileURL(fileName).href : fileName;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=generateEntryFiles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateEntryFiles.js","sourceRoot":"","sources":["../src/generateEntryFiles.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export interface CabloyViteConfigChunkVendor {
|
|
2
|
+
match: (string | RegExp)[];
|
|
3
|
+
output: string;
|
|
4
|
+
}
|
|
5
|
+
export interface CabloyViteConfigOptions {
|
|
6
|
+
appDir: string;
|
|
7
|
+
runtimeDir: string;
|
|
8
|
+
cabloyManualChunk: {
|
|
9
|
+
debug: boolean;
|
|
10
|
+
vendors: CabloyViteConfigChunkVendor[];
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export interface CabloyViteConfigResult {
|
|
14
|
+
env: {
|
|
15
|
+
[name: string]: string;
|
|
16
|
+
};
|
|
17
|
+
vitePlugins: any[];
|
|
18
|
+
viteConfig: any;
|
|
19
|
+
}
|
|
20
|
+
export type CabloyVitePlugin = [
|
|
21
|
+
string,
|
|
22
|
+
(...args: any[]) => any,
|
|
23
|
+
any,
|
|
24
|
+
{
|
|
25
|
+
client?: boolean;
|
|
26
|
+
server?: boolean;
|
|
27
|
+
} | undefined
|
|
28
|
+
];
|
|
29
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE;QACjB,KAAK,EAAE,OAAO,CAAC;QACf,OAAO,EAAE,2BAA2B,EAAE,CAAC;KACxC,CAAC;CACH;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAChC,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,UAAU,EAAE,GAAG,CAAC;CACjB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM;IACN,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG;IACvB,GAAG;IACH;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS;CACnD,CAAC"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CabloyConfigMeta } from 'zova-core';
|
|
2
|
+
export declare function getFlavor(offset?: number): string;
|
|
3
|
+
export declare function getAppMode(offset?: number): string;
|
|
4
|
+
export declare function getEnvMeta(configMeta: CabloyConfigMeta): {
|
|
5
|
+
flavor: string;
|
|
6
|
+
mode: string;
|
|
7
|
+
appMode: string | undefined;
|
|
8
|
+
mine: string;
|
|
9
|
+
};
|
|
10
|
+
export declare function getEnvFromCli(cliEnvName: string, cliArgName: string, defaultValue: string, offset?: number): string;
|
|
11
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,wBAAgB,SAAS,CAAC,MAAM,GAAE,MAAU,GAAG,MAAM,CAEpD;AAED,wBAAgB,UAAU,CAAC,MAAM,GAAE,MAAU,GAAG,MAAM,CAErD;AAED,wBAAgB,UAAU,CAAC,UAAU,EAAE,gBAAgB;;;;;EAEtD;AAED,wBAAgB,aAAa,CAC3B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,MAAM,GAAE,MAAU,GACjB,MAAM,CAUR"}
|
package/dist/utils.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import parseArgs from 'minimist';
|
|
2
|
+
export function getFlavor(offset = 2) {
|
|
3
|
+
return getEnvFromCli('FLAVOR', 'flavor', 'app', offset);
|
|
4
|
+
}
|
|
5
|
+
export function getAppMode(offset = 2) {
|
|
6
|
+
return getEnvFromCli('APPMODE', 'appMode', 'spa', offset);
|
|
7
|
+
}
|
|
8
|
+
export function getEnvMeta(configMeta) {
|
|
9
|
+
return { flavor: configMeta.flavor, mode: configMeta.mode, appMode: configMeta.appMode, mine: 'mine' };
|
|
10
|
+
}
|
|
11
|
+
export function getEnvFromCli(cliEnvName, cliArgName, defaultValue, offset = 2) {
|
|
12
|
+
let value = process.env[cliEnvName];
|
|
13
|
+
if (!value) {
|
|
14
|
+
const argv = parseArgs(process.argv.slice(offset));
|
|
15
|
+
value = argv[cliArgName];
|
|
16
|
+
}
|
|
17
|
+
if (!value) {
|
|
18
|
+
value = defaultValue;
|
|
19
|
+
}
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,UAAU,CAAC;AAEjC,MAAM,UAAU,SAAS,CAAC,SAAiB,CAAC;IAC1C,OAAO,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,SAAiB,CAAC;IAC3C,OAAO,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,UAA4B;IACrD,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AACzG,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,UAAkB,EAClB,UAAkB,EAClB,YAAoB,EACpB,SAAiB,CAAC;IAElB,IAAI,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACnD,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,YAAY,CAAC;IACvB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vitePlugins.d.ts","sourceRoot":"","sources":["../src/vitePlugins.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEvE,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,uBAAuB,sBAkG1E"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import babel from '@cabloy/vite-plugin-babel';
|
|
2
|
+
// import vitePluginChecker from 'vite-plugin-checker';
|
|
3
|
+
import vueJsxPlugin from '@vitejs/plugin-vue-jsx';
|
|
4
|
+
import { vitePluginFakeServer } from '@zhennann/vite-plugin-fake-server';
|
|
5
|
+
export function generateVitePlugins(_configOptions) {
|
|
6
|
+
const vitePlugins = [];
|
|
7
|
+
vitePlugins.push(__getVitePluginTs());
|
|
8
|
+
vitePlugins.push(__getVitePluginTsx());
|
|
9
|
+
if (process.env.MOCK_ENABLED === 'true') {
|
|
10
|
+
vitePlugins.push(__getVitePluginMock());
|
|
11
|
+
}
|
|
12
|
+
// vitePlugins.push(__getVitePluginChecker(configOptions));
|
|
13
|
+
return vitePlugins;
|
|
14
|
+
//////////////////////////////
|
|
15
|
+
function __getVitePluginTs() {
|
|
16
|
+
return [
|
|
17
|
+
'vite-plugin-babel',
|
|
18
|
+
babel,
|
|
19
|
+
{
|
|
20
|
+
filter: /\.ts$/,
|
|
21
|
+
babelConfig: {
|
|
22
|
+
babelrc: false,
|
|
23
|
+
configFile: false,
|
|
24
|
+
plugins: [
|
|
25
|
+
['babel-plugin-zova-bean-module'],
|
|
26
|
+
['babel-plugin-transform-typescript-metadata'],
|
|
27
|
+
['@babel/plugin-proposal-decorators', { version: 'legacy' }],
|
|
28
|
+
['@babel/plugin-transform-class-properties', { loose: true }],
|
|
29
|
+
['@babel/plugin-transform-typescript'],
|
|
30
|
+
],
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
undefined,
|
|
34
|
+
];
|
|
35
|
+
}
|
|
36
|
+
function __getVitePluginTsx() {
|
|
37
|
+
return [
|
|
38
|
+
'@vitejs/plugin-vue-jsx',
|
|
39
|
+
vueJsxPlugin,
|
|
40
|
+
{
|
|
41
|
+
include: /\.[jt]sx$/,
|
|
42
|
+
babelPlugins: [
|
|
43
|
+
['babel-plugin-zova-bean-module'],
|
|
44
|
+
['babel-plugin-transform-typescript-metadata'],
|
|
45
|
+
['@babel/plugin-proposal-decorators', { version: 'legacy' }],
|
|
46
|
+
['@babel/plugin-transform-class-properties', { loose: true }],
|
|
47
|
+
],
|
|
48
|
+
},
|
|
49
|
+
undefined,
|
|
50
|
+
];
|
|
51
|
+
}
|
|
52
|
+
function __getVitePluginMock() {
|
|
53
|
+
const include = process.env.MOCK_PATH;
|
|
54
|
+
const logger = process.env.MOCK_LOGGER === 'true';
|
|
55
|
+
const basename = process.env.MOCK_BASE_NAME || '';
|
|
56
|
+
const build = process.env.MOCK_BUILD === 'true'
|
|
57
|
+
? {
|
|
58
|
+
port: Number(process.env.MOCK_BUILD_PORT || 8888),
|
|
59
|
+
outDir: process.env.MOCK_BUILD_OUTPUT || 'distMockServer',
|
|
60
|
+
}
|
|
61
|
+
: false;
|
|
62
|
+
const cors = process.env.MOCK_BUILD_CORS === 'true';
|
|
63
|
+
return [
|
|
64
|
+
'vite-plugin-fake-server',
|
|
65
|
+
vitePluginFakeServer,
|
|
66
|
+
{
|
|
67
|
+
include,
|
|
68
|
+
exclude: ['_*'],
|
|
69
|
+
infixName: 'fake',
|
|
70
|
+
watch: true,
|
|
71
|
+
logger,
|
|
72
|
+
basename,
|
|
73
|
+
enableDev: !build,
|
|
74
|
+
enableProd: !build,
|
|
75
|
+
build,
|
|
76
|
+
cors,
|
|
77
|
+
},
|
|
78
|
+
undefined,
|
|
79
|
+
];
|
|
80
|
+
}
|
|
81
|
+
// function __getVitePluginChecker(configOptions: CabloyViteConfigOptions) {
|
|
82
|
+
// const tsconfigPath = path.join(configOptions.appDir, 'tsconfig.vue-tsc.json');
|
|
83
|
+
// return [
|
|
84
|
+
// 'vite-plugin-checker',
|
|
85
|
+
// vitePluginChecker,
|
|
86
|
+
// {
|
|
87
|
+
// vueTsc: {
|
|
88
|
+
// tsconfigPath,
|
|
89
|
+
// },
|
|
90
|
+
// eslint: {
|
|
91
|
+
// lintCommand: 'eslint "./**/*.{js,ts,tsx,mjs,mts,cjs,cts,vue}"',
|
|
92
|
+
// },
|
|
93
|
+
// },
|
|
94
|
+
// { server: false },
|
|
95
|
+
// ] as CabloyVitePlugin;
|
|
96
|
+
// }
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=vitePlugins.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vitePlugins.js","sourceRoot":"","sources":["../src/vitePlugins.ts"],"names":[],"mappings":"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"}
|
package/dist/zova.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { CabloyConfigMeta } from 'zova-core';
|
|
2
|
+
import { CabloyViteConfigOptions, CabloyViteConfigResult } from './types.js';
|
|
3
|
+
export declare function generateCabloyViteMeta(configMeta: CabloyConfigMeta, configOptions: CabloyViteConfigOptions): Promise<CabloyViteConfigResult>;
|
|
4
|
+
//# sourceMappingURL=zova.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zova.d.ts","sourceRoot":"","sources":["../src/zova.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAQ7E,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,gBAAgB,EAC5B,aAAa,EAAE,uBAAuB,GACrC,OAAO,CAAC,sBAAsB,CAAC,CAqGjC"}
|
package/dist/zova.js
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { generateVitePlugins } from './vitePlugins.js';
|
|
2
|
+
import { createConfigUtils } from './configUtils.js';
|
|
3
|
+
import { generateEntryFiles } from './generateEntryFiles.js';
|
|
4
|
+
const __SvgIconPattern = /assets\/icons\/groups\/.*?\.svg/;
|
|
5
|
+
export async function generateCabloyViteMeta(configMeta, configOptions) {
|
|
6
|
+
// config utils
|
|
7
|
+
const configUtils = createConfigUtils(configMeta, configOptions);
|
|
8
|
+
// env
|
|
9
|
+
const env = configUtils.loadEnvs();
|
|
10
|
+
// define
|
|
11
|
+
const define = __getConfigDefine(env);
|
|
12
|
+
// server
|
|
13
|
+
const server = __getConfigServer();
|
|
14
|
+
// build
|
|
15
|
+
const build = __getConfigBuild();
|
|
16
|
+
// vitePlugins
|
|
17
|
+
const vitePlugins = generateVitePlugins(configOptions);
|
|
18
|
+
// alias
|
|
19
|
+
const alias = {
|
|
20
|
+
'@vue/runtime-core': '@cabloy/vue-runtime-core',
|
|
21
|
+
};
|
|
22
|
+
// viteConfig
|
|
23
|
+
const viteConfig = {
|
|
24
|
+
root: configOptions.appDir,
|
|
25
|
+
base: env.APP_PUBLIC_PATH,
|
|
26
|
+
mode: configMeta.mode,
|
|
27
|
+
define,
|
|
28
|
+
server,
|
|
29
|
+
build,
|
|
30
|
+
resolve: {
|
|
31
|
+
alias,
|
|
32
|
+
extensions: ['.js', '.json', '.jsx', '.mjs', '.ts', '.tsx', '.vue'],
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
// generateEntryFiles
|
|
36
|
+
await generateEntryFiles(configMeta, configOptions);
|
|
37
|
+
// ok
|
|
38
|
+
return {
|
|
39
|
+
env,
|
|
40
|
+
vitePlugins,
|
|
41
|
+
viteConfig,
|
|
42
|
+
};
|
|
43
|
+
//////////////////////////////
|
|
44
|
+
function __getConfigServer() {
|
|
45
|
+
// proxy
|
|
46
|
+
const proxy = {};
|
|
47
|
+
if (process.env.PROXY_API_ENABLED === 'true') {
|
|
48
|
+
proxy[process.env.PROXY_API_PREFIX] = {
|
|
49
|
+
target: process.env.PROXY_API_BASE_URL,
|
|
50
|
+
changeOrigin: true,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
// server
|
|
54
|
+
const server = {
|
|
55
|
+
proxy,
|
|
56
|
+
};
|
|
57
|
+
// devServerHost
|
|
58
|
+
if (process.env.DEV_SERVER_HOST) {
|
|
59
|
+
if (process.env.DEV_SERVER_HOST === 'true') {
|
|
60
|
+
server.host = true;
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
server.host = process.env.DEV_SERVER_HOST;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
if (process.env.DEV_SERVER_PORT) {
|
|
67
|
+
server.port = Number(process.env.DEV_SERVER_PORT);
|
|
68
|
+
}
|
|
69
|
+
return server;
|
|
70
|
+
}
|
|
71
|
+
function __getConfigDefine(env) {
|
|
72
|
+
const acc = {};
|
|
73
|
+
for (const key in env) {
|
|
74
|
+
const val = env[key];
|
|
75
|
+
acc[`process.env.${key}`] =
|
|
76
|
+
val === 'true' || val === 'false'
|
|
77
|
+
? val // let's keep it as boolean and not transform it to string
|
|
78
|
+
: JSON.stringify(env[key]);
|
|
79
|
+
}
|
|
80
|
+
return acc;
|
|
81
|
+
}
|
|
82
|
+
function __getConfigBuild() {
|
|
83
|
+
const build = {
|
|
84
|
+
rollupOptions: {
|
|
85
|
+
output: {
|
|
86
|
+
manualChunks: id => {
|
|
87
|
+
return configUtils.configManualChunk(id);
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
assetsInlineLimit: (filePath) => {
|
|
92
|
+
if (__SvgIconPattern.test(filePath)) {
|
|
93
|
+
return 0;
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
minify: 'terser',
|
|
97
|
+
terserOptions: {
|
|
98
|
+
keep_classnames: true,
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
return build;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=zova.js.map
|
package/dist/zova.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zova.js","sourceRoot":"","sources":["../src/zova.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "zova-vite",
|
|
3
|
+
"version": "1.0.70",
|
|
4
|
+
"description": "zova vite",
|
|
5
|
+
"publishConfig": {
|
|
6
|
+
"access": "public"
|
|
7
|
+
},
|
|
8
|
+
"type": "module",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"default": "./dist/index.js"
|
|
13
|
+
},
|
|
14
|
+
"./*": "./*"
|
|
15
|
+
},
|
|
16
|
+
"files": [
|
|
17
|
+
"dist",
|
|
18
|
+
"templates"
|
|
19
|
+
],
|
|
20
|
+
"keywords": [
|
|
21
|
+
"framework",
|
|
22
|
+
"zova"
|
|
23
|
+
],
|
|
24
|
+
"author": "zhennann",
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"@babel/plugin-proposal-decorators": "^7.24.1",
|
|
28
|
+
"@babel/plugin-transform-class-properties": "^7.24.1",
|
|
29
|
+
"@cabloy/dotenv": "^1.0.1",
|
|
30
|
+
"@cabloy/extend": "^3.0.5",
|
|
31
|
+
"zova-core": "^5.0.63",
|
|
32
|
+
"@cabloy/module-glob": "^5.0.9",
|
|
33
|
+
"@cabloy/vite-plugin-babel": "^1.1.3",
|
|
34
|
+
"@cabloy/vue-runtime-core": "^3.4.31",
|
|
35
|
+
"@faker-js/faker": "^8.4.1",
|
|
36
|
+
"@types/node": "^20.12.12",
|
|
37
|
+
"@vitejs/plugin-vue-jsx": "^3.1.0",
|
|
38
|
+
"@zhennann/vite-plugin-fake-server": "^2.1.1",
|
|
39
|
+
"babel-plugin-zova-bean-module": "^1.0.15",
|
|
40
|
+
"babel-plugin-transform-typescript-metadata": "^0.3.2",
|
|
41
|
+
"chalk": "^3.0.0",
|
|
42
|
+
"esbuild": "^0.20.2",
|
|
43
|
+
"fs-extra": "^11.2.0",
|
|
44
|
+
"lodash": "^4.17.21",
|
|
45
|
+
"minimist": "^1.2.8",
|
|
46
|
+
"terser": "^5.31.0",
|
|
47
|
+
"tmp": "^0.2.3",
|
|
48
|
+
"vite": "^5.2.11"
|
|
49
|
+
},
|
|
50
|
+
"gitHead": "5d8e87bdb90a85153694892e3a11a08e7276241b",
|
|
51
|
+
"scripts": {
|
|
52
|
+
"lint": "eslint .",
|
|
53
|
+
"clean": "tsc -b --clean",
|
|
54
|
+
"tsc:publish": "npm run clean && tsc -b"
|
|
55
|
+
}
|
|
56
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<%
|
|
2
|
+
function capitalizeFirstLetter(string) {
|
|
3
|
+
return string.charAt(0).toUpperCase() + string.slice(1);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
function getPascalFromSnake(input){
|
|
7
|
+
return input.split("-").map(capitalizeFirstLetter).join("")
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
function getCamelFromSnake(input){
|
|
11
|
+
const toReturn = getPascalFromSnake(input);
|
|
12
|
+
return toReturn.charAt(0).toLowerCase() + toReturn.slice(1);
|
|
13
|
+
}
|
|
14
|
+
%>
|
|
15
|
+
const modules = {};
|
|
16
|
+
|
|
17
|
+
<% for (const relativeName in modules) {
|
|
18
|
+
const module=modules[relativeName];
|
|
19
|
+
const importName=getCamelFromSnake(relativeName);
|
|
20
|
+
const importClause=`modules['${module.info.relativeName}'] = { resource: () => import('${module.info.fullName}'), info: ${JSON.stringify(module.info,null,2)}};\n`;
|
|
21
|
+
print(importClause);
|
|
22
|
+
}%>
|
|
23
|
+
<%
|
|
24
|
+
const clause=`export const modulesMeta = { modules, moduleNames: ${JSON.stringify(moduleNames)} };`;
|
|
25
|
+
%>
|
|
26
|
+
<%=clause%>
|