@common-stack/generate-plugin 8.2.1-alpha.1 → 8.2.2-alpha.1
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/CHANGELOG.md +1197 -11
- package/lib/generators/add-backend/files/package.json +1 -1
- package/lib/generators/add-frontend/frameworks/tailwindui/src/entry.client.tsx.template +11 -15
- package/lib/generators/add-frontend/frameworks/tailwindui/src/entry.server.tsx.template +9 -10
- package/lib/generators/add-frontend/frameworks/tailwindui/src/root.tsx.template +68 -42
- package/lib/generators/add-frontend/frameworks/tailwindui/tailwind.config.ts.template +288 -9
- package/lib/generators/add-frontend/templates/package.json +3 -7
- package/lib/generators/add-frontend/templates/server.js +11 -10
- package/lib/generators/add-frontend/templates/src/routes.ts.template +38 -0
- package/lib/generators/add-frontend/templates/vite.config.ts.template +91 -48
- package/lib/generators/add-fullstack/files/package.json +3 -3
- package/lib/generators/add-moleculer/files/package.json +5 -5
- package/lib/generators/add-package/files/browser/package.json +1 -1
- package/lib/generators/add-package/files/server/package.json +3 -3
- package/package.json +3 -3
- package/src/generators/add-backend/files/package.json +1 -1
- package/src/generators/add-frontend/frameworks/tailwindui/src/entry.client.tsx.template +11 -15
- package/src/generators/add-frontend/frameworks/tailwindui/src/entry.server.tsx.template +9 -10
- package/src/generators/add-frontend/frameworks/tailwindui/src/root.tsx.template +68 -42
- package/src/generators/add-frontend/frameworks/tailwindui/tailwind.config.ts.template +288 -9
- package/src/generators/add-frontend/templates/CHANGELOG.md +72 -0
- package/src/generators/add-frontend/templates/package.json +4 -8
- package/src/generators/add-frontend/templates/server.js +11 -10
- package/src/generators/add-frontend/templates/src/routes.ts.template +38 -0
- package/src/generators/add-frontend/templates/vite.config.ts.template +91 -48
- package/src/generators/add-fullstack/files/package.json +4 -4
- package/src/generators/add-moleculer/files/package.json +5 -5
- package/src/generators/add-package/files/browser/package.json +2 -2
- package/src/generators/add-package/files/server/package.json +3 -3
|
@@ -1,23 +1,26 @@
|
|
|
1
|
-
import { defineConfig } from 'vite';
|
|
1
|
+
import { defineConfig, ConfigEnv, UserConfig } from 'vite';
|
|
2
2
|
import { vitePlugin as remix } from '@remix-run/dev';
|
|
3
3
|
import { dirname, resolve } from 'path';
|
|
4
|
-
import { installGlobals } from '@remix-run/node';
|
|
5
4
|
import { fileURLToPath } from 'url';
|
|
6
|
-
import {
|
|
5
|
+
// import { remixDevTools } from 'remix-development-tools';
|
|
7
6
|
import tsconfigPaths from 'vite-tsconfig-paths';
|
|
8
7
|
import { i18nInternationalizationPlugin } from '@common-stack/rollup-vite-utils/lib/vite-plugins/i18n-internationalization-plugin.js';
|
|
9
|
-
import {
|
|
8
|
+
// import { visualizer } from 'rollup-plugin-visualizer';
|
|
10
9
|
import { loadEnvConfig } from '@common-stack/rollup-vite-utils/lib/preStartup/configLoader/envLoader.js';
|
|
11
10
|
import { cjsInterop } from 'vite-plugin-cjs-interop';
|
|
12
11
|
import { mergeWith } from 'lodash-es';
|
|
13
|
-
import config from './app/cde-webconfig.json'
|
|
12
|
+
import config from './app/cde-webconfig.json' with { type: 'json' };
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
declare module '@remix-run/node' {
|
|
15
|
+
// or cloudflare, deno, etc.
|
|
16
|
+
interface Future {
|
|
17
|
+
v3_singleFetch: true;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
17
20
|
|
|
18
21
|
const directoryName = dirname(fileURLToPath(import.meta.url));
|
|
19
22
|
|
|
20
|
-
export default defineConfig(async ({ isSsrBuild }) => {
|
|
23
|
+
export default defineConfig(async ({ isSsrBuild }: ConfigEnv): Promise<UserConfig> => {
|
|
21
24
|
console.log('--- IS SSR BUILD:', isSsrBuild);
|
|
22
25
|
|
|
23
26
|
// Load environment variables from dotenv or other config
|
|
@@ -32,69 +35,105 @@ export default defineConfig(async ({ isSsrBuild }) => {
|
|
|
32
35
|
Object.entries(config.buildConfig).map(([key, value]) => [
|
|
33
36
|
key,
|
|
34
37
|
typeof value === 'string' ? `"${value.replace(/\\/g, '\\\\')}"` : value,
|
|
35
|
-
])
|
|
38
|
+
]),
|
|
36
39
|
),
|
|
37
40
|
};
|
|
38
41
|
|
|
39
|
-
// Define routes configuration
|
|
40
|
-
const routesConfig = async (defineRoutes) => {
|
|
41
|
-
// In production, perform required file copy operations
|
|
42
|
-
if (process.env.NODE_ENV === 'production') {
|
|
43
|
-
await performCopyOperations(config);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
// Load metadata for routes
|
|
47
|
-
let metaJson = null;
|
|
48
|
-
try {
|
|
49
|
-
metaJson = await import('./app/sync-meta.json');
|
|
50
|
-
} catch {
|
|
51
|
-
console.warn('No sync-meta.json found, continuing without metadata.');
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
// Return routes definition
|
|
55
|
-
return defineRoutes((routeFn) =>
|
|
56
|
-
defineRoutesConfig(
|
|
57
|
-
routeFn,
|
|
58
|
-
{
|
|
59
|
-
routesFileName: 'routes.json',
|
|
60
|
-
packages: config.modules,
|
|
61
|
-
paths: config.paths,
|
|
62
|
-
iconsRepository: config?.iconsRepository,
|
|
63
|
-
rootPath: resolve(directoryName, '../..'),
|
|
64
|
-
settings: {
|
|
65
|
-
_useFutureCommonPackage: true,
|
|
66
|
-
},
|
|
67
|
-
},
|
|
68
|
-
metaJson
|
|
69
|
-
)
|
|
70
|
-
);
|
|
71
|
-
};
|
|
72
|
-
|
|
73
42
|
// Vite configuration
|
|
74
43
|
const viteConfig = {
|
|
75
44
|
define: envVariables,
|
|
45
|
+
ssr: {
|
|
46
|
+
// Keep small client-only libraries bundled, including all @radix-ui packages
|
|
47
|
+
// to ensure proper CommonJS to ESM interop handled by cjsInterop plugin
|
|
48
|
+
noExternal: [
|
|
49
|
+
'react-datepicker',
|
|
50
|
+
/^@radix-ui\//,
|
|
51
|
+
'@radix-ui/react-slot',
|
|
52
|
+
'@radix-ui/react-primitive',
|
|
53
|
+
'@radix-ui/react-compose-refs',
|
|
54
|
+
'@radix-ui/react-context',
|
|
55
|
+
'@radix-ui/react-collection',
|
|
56
|
+
'@radix-ui/react-separator',
|
|
57
|
+
],
|
|
58
|
+
},
|
|
76
59
|
plugins: [
|
|
60
|
+
// remixDevTools({
|
|
61
|
+
// server: {
|
|
62
|
+
// logs: {
|
|
63
|
+
// cookies: true,
|
|
64
|
+
// defer: true,
|
|
65
|
+
// actions: true,
|
|
66
|
+
// loaders: true,
|
|
67
|
+
// cache: true,
|
|
68
|
+
// siteClear: true,
|
|
69
|
+
// },
|
|
70
|
+
// },
|
|
71
|
+
// }),
|
|
77
72
|
i18nInternationalizationPlugin({
|
|
78
73
|
folderName: 'cdm-locales',
|
|
79
74
|
packages: [...config.modules, ...config.i18n.packages],
|
|
80
|
-
namespaceResolution: 'basename',
|
|
75
|
+
namespaceResolution: 'basename' as any,
|
|
81
76
|
}),
|
|
77
|
+
// visualizer({
|
|
78
|
+
// open: true,
|
|
79
|
+
// filename: 'bundle-analysis.html',
|
|
80
|
+
// }),
|
|
81
|
+
// cjsInterop({
|
|
82
|
+
// dependencies: ['@apollo/client', '@ant-design/pro-utils', '@rjsf/**',],
|
|
83
|
+
// }),
|
|
82
84
|
cjsInterop({
|
|
83
|
-
dependencies: [
|
|
85
|
+
dependencies: [
|
|
86
|
+
'@rjsf/**',
|
|
87
|
+
'react-timer-hook',
|
|
88
|
+
'rc-util/lib/hooks/useMergedState.js',
|
|
89
|
+
'@ant-design/icons',
|
|
90
|
+
'rc-picker',
|
|
91
|
+
'@monaco-editor/loader',
|
|
92
|
+
'react-google-calendar-api',
|
|
93
|
+
'@apollo/client',
|
|
94
|
+
],
|
|
84
95
|
}),
|
|
85
96
|
remix({
|
|
86
97
|
appDirectory: 'src',
|
|
87
|
-
routes: routesConfig,
|
|
98
|
+
// routes: routesConfig,
|
|
99
|
+
future: {
|
|
100
|
+
unstable_optimizeDeps: true,
|
|
101
|
+
v3_fetcherPersist: true,
|
|
102
|
+
v3_relativeSplatPath: true,
|
|
103
|
+
v3_throwAbortReason: true,
|
|
104
|
+
v3_lazyRouteDiscovery: true,
|
|
105
|
+
v3_singleFetch: true,
|
|
106
|
+
v3_routeConfig: true,
|
|
107
|
+
},
|
|
88
108
|
}),
|
|
89
109
|
tsconfigPaths({ ignoreConfigErrors: true }),
|
|
90
110
|
],
|
|
91
111
|
optimizeDeps: {
|
|
112
|
+
include: [
|
|
113
|
+
'@radix-ui/react-slot',
|
|
114
|
+
'@radix-ui/react-compose-refs',
|
|
115
|
+
'@radix-ui/react-primitive',
|
|
116
|
+
'@radix-ui/react-collection',
|
|
117
|
+
'@radix-ui/react-dialog',
|
|
118
|
+
'@radix-ui/react-select',
|
|
119
|
+
'@radix-ui/react-alert-dialog',
|
|
120
|
+
'@radix-ui/react-popover',
|
|
121
|
+
'@radix-ui/react-tooltip',
|
|
122
|
+
'@radix-ui/react-context-menu',
|
|
123
|
+
],
|
|
92
124
|
esbuildOptions: {
|
|
93
125
|
target: 'esnext',
|
|
94
126
|
},
|
|
127
|
+
force: true, // Force dependency optimization on every build
|
|
95
128
|
},
|
|
96
129
|
build: {
|
|
97
130
|
target: 'esnext',
|
|
131
|
+
rollupOptions: {
|
|
132
|
+
output: {
|
|
133
|
+
// Ensure that worker files are properly bundled
|
|
134
|
+
format: 'es',
|
|
135
|
+
},
|
|
136
|
+
},
|
|
98
137
|
},
|
|
99
138
|
resolve: {
|
|
100
139
|
alias: {
|
|
@@ -102,14 +141,18 @@ export default defineConfig(async ({ isSsrBuild }) => {
|
|
|
102
141
|
'@src': resolve(directoryName, 'src'),
|
|
103
142
|
},
|
|
104
143
|
},
|
|
144
|
+
worker: {
|
|
145
|
+
format: 'es', // Use ES modules format for workers
|
|
146
|
+
plugins: () => [], // Return an empty array of plugins
|
|
147
|
+
},
|
|
105
148
|
};
|
|
106
149
|
|
|
107
150
|
// Deep merge custom Vite config from config.json
|
|
108
|
-
// to merge Arrays properly need to concat.
|
|
151
|
+
// to merge Arrays properly need to concat.
|
|
109
152
|
const result = mergeWith(config.viteConfig, viteConfig, (objValue, srcValue) => {
|
|
110
153
|
if (Array.isArray(objValue)) {
|
|
111
154
|
return objValue.concat(srcValue);
|
|
112
155
|
}
|
|
113
156
|
});
|
|
114
|
-
return result;
|
|
157
|
+
return result as UserConfig;
|
|
115
158
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sample-stack",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "5.0.5-alpha.10",
|
|
4
4
|
"private": true,
|
|
5
5
|
"homepage": "https://github.com/cdmbase/fullstack-pro#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -136,9 +136,9 @@
|
|
|
136
136
|
"@babel/preset-typescript": "^7.18.6",
|
|
137
137
|
"@babel/register": "^7.18.9",
|
|
138
138
|
"@babel/runtime": "^7.20.1",
|
|
139
|
-
"@common-stack/env-list-loader": "8.2.
|
|
140
|
-
"@common-stack/generate-plugin": "8.2.
|
|
141
|
-
"@common-stack/rollup-vite-utils": "8.2.
|
|
139
|
+
"@common-stack/env-list-loader": "8.2.2-alpha.0",
|
|
140
|
+
"@common-stack/generate-plugin": "8.2.2-alpha.0",
|
|
141
|
+
"@common-stack/rollup-vite-utils": "8.2.2-alpha.0",
|
|
142
142
|
"@emotion/babel-plugin": "^11.11.0",
|
|
143
143
|
"@graphql-codegen/add": "^5.0.3",
|
|
144
144
|
"@graphql-codegen/cli": "^5.0.4",
|
|
@@ -29,11 +29,11 @@
|
|
|
29
29
|
"common": "link:./common"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@common-stack/client-core": "8.2.
|
|
33
|
-
"@common-stack/core": "8.2.
|
|
34
|
-
"@common-stack/server-core": "8.2.
|
|
35
|
-
"@common-stack/server-stack": "8.2.
|
|
36
|
-
"@common-stack/store-mongo": "8.2.
|
|
32
|
+
"@common-stack/client-core": "8.2.2-alpha.0",
|
|
33
|
+
"@common-stack/core": "8.2.2-alpha.0",
|
|
34
|
+
"@common-stack/server-core": "8.2.2-alpha.0",
|
|
35
|
+
"@common-stack/server-stack": "8.2.2-alpha.0",
|
|
36
|
+
"@common-stack/store-mongo": "8.2.2-alpha.0",
|
|
37
37
|
"@container-stack/mailing-api": "5.2.1-alpha.1",
|
|
38
38
|
"helmet": "^3.21.2",
|
|
39
39
|
"react": "18.2.0",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "browser-package",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.5-alpha.10",
|
|
4
4
|
"description": "Sample core for higher packages to depend on",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"author": "CDMBase LLC",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
},
|
|
30
30
|
"peerDependencies": {
|
|
31
31
|
"@cdm-logger/client": "*",
|
|
32
|
-
"@common-stack/client-react": "8.2.
|
|
32
|
+
"@common-stack/client-react": "8.2.2-alpha.0",
|
|
33
33
|
"@remix-run/react": "*",
|
|
34
34
|
"antd": ">=5.1.6",
|
|
35
35
|
"lodash": "*",
|
|
@@ -62,9 +62,9 @@
|
|
|
62
62
|
"peerDependencies": {
|
|
63
63
|
"@apollo/client": ">=3.0.0",
|
|
64
64
|
"@cdm-logger/server": ">=9.0.3",
|
|
65
|
-
"@common-stack/core": "8.2.
|
|
66
|
-
"@common-stack/server-core": "8.2.
|
|
67
|
-
"@common-stack/store-mongo": "8.2.
|
|
65
|
+
"@common-stack/core": "8.2.2-alpha.0",
|
|
66
|
+
"@common-stack/server-core": "8.2.2-alpha.0",
|
|
67
|
+
"@common-stack/store-mongo": "8.2.2-alpha.0",
|
|
68
68
|
"@container-stack/mailing-api": ">=0.0.35-alpha.1",
|
|
69
69
|
"@vscode-alt/monaco-editor": "^0.21.4",
|
|
70
70
|
"inversify": "^5.0.1",
|