create-fluxstack 1.10.1 → 1.12.0
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/.dockerignore +1 -2
- package/Dockerfile +8 -8
- package/LLMD/INDEX.md +64 -0
- package/LLMD/MAINTENANCE.md +197 -0
- package/LLMD/MIGRATION.md +156 -0
- package/LLMD/config/.gitkeep +1 -0
- package/LLMD/config/declarative-system.md +268 -0
- package/LLMD/config/environment-vars.md +327 -0
- package/LLMD/config/runtime-reload.md +401 -0
- package/LLMD/core/.gitkeep +1 -0
- package/LLMD/core/build-system.md +599 -0
- package/LLMD/core/framework-lifecycle.md +229 -0
- package/LLMD/core/plugin-system.md +451 -0
- package/LLMD/patterns/.gitkeep +1 -0
- package/LLMD/patterns/anti-patterns.md +297 -0
- package/LLMD/patterns/project-structure.md +264 -0
- package/LLMD/patterns/type-safety.md +440 -0
- package/LLMD/reference/.gitkeep +1 -0
- package/LLMD/reference/cli-commands.md +250 -0
- package/LLMD/reference/plugin-hooks.md +357 -0
- package/LLMD/reference/routing.md +39 -0
- package/LLMD/reference/troubleshooting.md +364 -0
- package/LLMD/resources/.gitkeep +1 -0
- package/LLMD/resources/controllers.md +465 -0
- package/LLMD/resources/live-components.md +703 -0
- package/LLMD/resources/live-rooms.md +482 -0
- package/LLMD/resources/live-upload.md +130 -0
- package/LLMD/resources/plugins-external.md +617 -0
- package/LLMD/resources/routes-eden.md +254 -0
- package/README.md +37 -17
- package/app/client/index.html +0 -1
- package/app/client/src/App.tsx +107 -150
- package/app/client/src/components/AppLayout.tsx +68 -0
- package/app/client/src/components/BackButton.tsx +13 -0
- package/app/client/src/components/DemoPage.tsx +20 -0
- package/app/client/src/components/LiveUploadWidget.tsx +204 -0
- package/app/client/src/lib/eden-api.ts +85 -60
- package/app/client/src/live/ChatDemo.tsx +107 -0
- package/app/client/src/live/CounterDemo.tsx +206 -0
- package/app/client/src/live/FormDemo.tsx +119 -0
- package/app/client/src/live/RoomChatDemo.tsx +242 -0
- package/app/client/src/live/UploadDemo.tsx +21 -0
- package/app/client/src/main.tsx +4 -1
- package/app/client/src/pages/ApiTestPage.tsx +108 -0
- package/app/client/src/pages/HomePage.tsx +76 -0
- package/app/server/app.ts +1 -4
- package/app/server/controllers/users.controller.ts +36 -44
- package/app/server/index.ts +25 -35
- package/app/server/live/LiveChat.ts +77 -0
- package/app/server/live/LiveCounter.ts +67 -0
- package/app/server/live/LiveForm.ts +63 -0
- package/app/server/live/LiveLocalCounter.ts +32 -0
- package/app/server/live/LiveRoomChat.ts +285 -0
- package/app/server/live/LiveUpload.ts +81 -0
- package/app/server/routes/index.ts +3 -1
- package/app/server/routes/room.routes.ts +117 -0
- package/app/server/routes/users.routes.ts +35 -27
- package/app/shared/types/index.ts +14 -2
- package/config/app.config.ts +2 -62
- package/config/client.config.ts +2 -95
- package/config/database.config.ts +2 -99
- package/config/fluxstack.config.ts +25 -45
- package/config/index.ts +57 -38
- package/config/monitoring.config.ts +2 -114
- package/config/plugins.config.ts +2 -80
- package/config/server.config.ts +2 -68
- package/config/services.config.ts +2 -130
- package/config/system/app.config.ts +29 -0
- package/config/system/build.config.ts +49 -0
- package/config/system/client.config.ts +68 -0
- package/config/system/database.config.ts +17 -0
- package/config/system/fluxstack.config.ts +114 -0
- package/config/{logger.config.ts → system/logger.config.ts} +3 -1
- package/config/system/monitoring.config.ts +114 -0
- package/config/system/plugins.config.ts +84 -0
- package/config/{runtime.config.ts → system/runtime.config.ts} +1 -1
- package/config/system/server.config.ts +68 -0
- package/config/system/services.config.ts +46 -0
- package/config/{system.config.ts → system/system.config.ts} +1 -1
- package/core/build/flux-plugins-generator.ts +325 -325
- package/core/build/index.ts +39 -27
- package/core/build/live-components-generator.ts +3 -3
- package/core/build/optimizer.ts +235 -235
- package/core/cli/command-registry.ts +6 -4
- package/core/cli/commands/build.ts +79 -0
- package/core/cli/commands/create.ts +54 -0
- package/core/cli/commands/dev.ts +101 -0
- package/core/cli/commands/help.ts +34 -0
- package/core/cli/commands/index.ts +34 -0
- package/core/cli/commands/make-plugin.ts +90 -0
- package/core/cli/commands/plugin-add.ts +197 -0
- package/core/cli/commands/plugin-deps.ts +2 -2
- package/core/cli/commands/plugin-list.ts +208 -0
- package/core/cli/commands/plugin-remove.ts +170 -0
- package/core/cli/generators/component.ts +769 -769
- package/core/cli/generators/controller.ts +1 -1
- package/core/cli/generators/index.ts +146 -146
- package/core/cli/generators/interactive.ts +227 -227
- package/core/cli/generators/plugin.ts +2 -2
- package/core/cli/generators/prompts.ts +82 -82
- package/core/cli/generators/route.ts +6 -6
- package/core/cli/generators/service.ts +2 -2
- package/core/cli/generators/template-engine.ts +4 -3
- package/core/cli/generators/types.ts +2 -2
- package/core/cli/generators/utils.ts +191 -191
- package/core/cli/index.ts +115 -686
- package/core/cli/plugin-discovery.ts +2 -2
- package/core/client/LiveComponentsProvider.tsx +60 -8
- package/core/client/api/eden.ts +183 -0
- package/core/client/api/index.ts +11 -0
- package/core/client/components/Live.tsx +104 -0
- package/core/client/fluxstack.ts +1 -9
- package/core/client/hooks/AdaptiveChunkSizer.ts +215 -215
- package/core/client/hooks/state-validator.ts +1 -1
- package/core/client/hooks/useAuth.ts +48 -48
- package/core/client/hooks/useChunkedUpload.ts +85 -35
- package/core/client/hooks/useLiveChunkedUpload.ts +87 -0
- package/core/client/hooks/useLiveComponent.ts +800 -0
- package/core/client/hooks/useLiveUpload.ts +71 -0
- package/core/client/hooks/useRoom.ts +409 -0
- package/core/client/hooks/useRoomProxy.ts +382 -0
- package/core/client/index.ts +17 -68
- package/core/client/standalone-entry.ts +8 -0
- package/core/client/standalone.ts +74 -53
- package/core/client/state/createStore.ts +192 -192
- package/core/client/state/index.ts +14 -14
- package/core/config/index.ts +70 -291
- package/core/config/schema.ts +42 -723
- package/core/framework/client.ts +131 -131
- package/core/framework/index.ts +7 -7
- package/core/framework/server.ts +47 -40
- package/core/framework/types.ts +2 -2
- package/core/index.ts +23 -4
- package/core/live/ComponentRegistry.ts +3 -3
- package/core/live/types.ts +77 -0
- package/core/plugins/built-in/index.ts +134 -134
- package/core/plugins/built-in/live-components/commands/create-live-component.ts +242 -1066
- package/core/plugins/built-in/live-components/index.ts +1 -1
- package/core/plugins/built-in/monitoring/index.ts +111 -47
- package/core/plugins/built-in/static/index.ts +1 -1
- package/core/plugins/built-in/swagger/index.ts +68 -265
- package/core/plugins/built-in/vite/index.ts +85 -185
- package/core/plugins/built-in/vite/vite-dev.ts +10 -16
- package/core/plugins/config.ts +9 -7
- package/core/plugins/dependency-manager.ts +31 -1
- package/core/plugins/discovery.ts +19 -7
- package/core/plugins/executor.ts +2 -2
- package/core/plugins/index.ts +203 -203
- package/core/plugins/manager.ts +27 -39
- package/core/plugins/module-resolver.ts +19 -8
- package/core/plugins/registry.ts +255 -19
- package/core/plugins/types.ts +20 -53
- package/core/server/framework.ts +66 -43
- package/core/server/index.ts +15 -15
- package/core/server/live/ComponentRegistry.ts +78 -71
- package/core/server/live/FileUploadManager.ts +23 -10
- package/core/server/live/LiveComponentPerformanceMonitor.ts +1 -1
- package/core/server/live/LiveRoomManager.ts +261 -0
- package/core/server/live/RoomEventBus.ts +234 -0
- package/core/server/live/RoomStateManager.ts +172 -0
- package/core/server/live/StateSignature.ts +643 -643
- package/core/server/live/WebSocketConnectionManager.ts +30 -19
- package/core/server/live/auto-generated-components.ts +21 -9
- package/core/server/live/index.ts +14 -0
- package/core/server/live/websocket-plugin.ts +214 -67
- package/core/server/middleware/elysia-helpers.ts +7 -2
- package/core/server/middleware/errorHandling.ts +1 -1
- package/core/server/middleware/index.ts +31 -31
- package/core/server/plugins/database.ts +180 -180
- package/core/server/plugins/static-files-plugin.ts +69 -69
- package/core/server/plugins/swagger.ts +1 -1
- package/core/server/rooms/RoomBroadcaster.ts +357 -0
- package/core/server/rooms/RoomSystem.ts +463 -0
- package/core/server/rooms/index.ts +13 -0
- package/core/server/services/BaseService.ts +1 -1
- package/core/server/services/ServiceContainer.ts +1 -1
- package/core/server/services/index.ts +8 -8
- package/core/templates/create-project.ts +12 -12
- package/core/testing/index.ts +9 -9
- package/core/testing/setup.ts +73 -73
- package/core/types/api.ts +168 -168
- package/core/types/build.ts +219 -219
- package/core/types/config.ts +56 -26
- package/core/types/index.ts +4 -4
- package/core/types/plugin.ts +107 -107
- package/core/types/types.ts +353 -14
- package/core/utils/build-logger.ts +324 -324
- package/core/utils/config-schema.ts +480 -480
- package/core/utils/env.ts +2 -8
- package/core/utils/errors/codes.ts +114 -114
- package/core/utils/errors/handlers.ts +36 -1
- package/core/utils/errors/index.ts +49 -5
- package/core/utils/errors/middleware.ts +113 -113
- package/core/utils/helpers.ts +6 -16
- package/core/utils/index.ts +17 -17
- package/core/utils/logger/colors.ts +114 -114
- package/core/utils/logger/config.ts +13 -9
- package/core/utils/logger/formatter.ts +82 -82
- package/core/utils/logger/group-logger.ts +101 -101
- package/core/utils/logger/index.ts +6 -1
- package/core/utils/logger/stack-trace.ts +3 -1
- package/core/utils/logger/startup-banner.ts +82 -82
- package/core/utils/logger/winston-logger.ts +152 -152
- package/core/utils/monitoring/index.ts +211 -211
- package/core/utils/sync-version.ts +66 -66
- package/core/utils/version.ts +1 -1
- package/create-fluxstack.ts +8 -7
- package/package.json +12 -13
- package/plugins/crypto-auth/cli/make-protected-route.command.ts +1 -1
- package/plugins/crypto-auth/client/CryptoAuthClient.ts +302 -302
- package/plugins/crypto-auth/client/components/index.ts +11 -11
- package/plugins/crypto-auth/client/index.ts +11 -11
- package/plugins/crypto-auth/config/index.ts +1 -1
- package/plugins/crypto-auth/index.ts +4 -4
- package/plugins/crypto-auth/package.json +65 -65
- package/plugins/crypto-auth/server/AuthMiddleware.ts +1 -1
- package/plugins/crypto-auth/server/CryptoAuthService.ts +185 -185
- package/plugins/crypto-auth/server/index.ts +21 -21
- package/plugins/crypto-auth/server/middlewares/cryptoAuthAdmin.ts +3 -3
- package/plugins/crypto-auth/server/middlewares/cryptoAuthOptional.ts +1 -1
- package/plugins/crypto-auth/server/middlewares/cryptoAuthPermissions.ts +2 -2
- package/plugins/crypto-auth/server/middlewares/cryptoAuthRequired.ts +2 -2
- package/plugins/crypto-auth/server/middlewares/helpers.ts +1 -1
- package/plugins/crypto-auth/server/middlewares/index.ts +22 -22
- package/tsconfig.api-strict.json +16 -0
- package/tsconfig.json +48 -52
- package/{app/client/tsconfig.node.json → tsconfig.node.json} +25 -25
- package/types/global.d.ts +29 -29
- package/types/vitest.d.ts +8 -8
- package/vite.config.ts +38 -62
- package/vitest.config.live.ts +10 -9
- package/vitest.config.ts +29 -17
- package/app/client/README.md +0 -69
- package/app/client/SIMPLIFICATION.md +0 -140
- package/app/client/frontend-only.ts +0 -12
- package/app/client/src/live/FileUploadExample.tsx +0 -359
- package/app/client/src/live/MinimalLiveClock.tsx +0 -47
- package/app/client/src/live/QuickUploadTest.tsx +0 -193
- package/app/client/tsconfig.app.json +0 -45
- package/app/client/tsconfig.json +0 -7
- package/app/client/zustand-setup.md +0 -65
- package/app/server/backend-only.ts +0 -18
- package/app/server/live/LiveClockComponent.ts +0 -215
- package/app/server/live/LiveFileUploadComponent.ts +0 -77
- package/app/server/routes/env-test.ts +0 -110
- package/core/client/hooks/index.ts +0 -7
- package/core/client/hooks/useHybridLiveComponent.ts +0 -685
- package/core/client/hooks/useTypedLiveComponent.ts +0 -133
- package/core/client/hooks/useWebSocket.ts +0 -361
- package/core/config/env.ts +0 -546
- package/core/config/loader.ts +0 -522
- package/core/config/runtime-config.ts +0 -327
- package/core/config/validator.ts +0 -540
- package/core/server/backend-entry.ts +0 -51
- package/core/server/standalone.ts +0 -106
- package/core/utils/regenerate-files.ts +0 -69
- package/fluxstack.config.ts +0 -354
package/core/types/build.ts
CHANGED
|
@@ -1,220 +1,220 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Build system types
|
|
3
|
-
* Type definitions for build processes, bundling, and optimization
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
export type BuildTarget = 'bun' | 'node' | 'docker' | 'static'
|
|
7
|
-
export type BuildMode = 'development' | 'production' | 'test'
|
|
8
|
-
export type BundleFormat = 'esm' | 'cjs' | 'iife' | 'umd'
|
|
9
|
-
|
|
10
|
-
export interface BuildOptions {
|
|
11
|
-
target: BuildTarget
|
|
12
|
-
mode: BuildMode
|
|
13
|
-
outDir: string
|
|
14
|
-
sourceMaps: boolean
|
|
15
|
-
minify: boolean
|
|
16
|
-
treeshake: boolean
|
|
17
|
-
splitting: boolean
|
|
18
|
-
watch: boolean
|
|
19
|
-
clean: boolean
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export interface BuildResult {
|
|
23
|
-
success: boolean
|
|
24
|
-
duration: number
|
|
25
|
-
outputFiles: BuildOutputFile[]
|
|
26
|
-
warnings: BuildWarning[]
|
|
27
|
-
errors: BuildError[]
|
|
28
|
-
stats: BuildStats
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export interface BuildOutputFile {
|
|
32
|
-
path: string
|
|
33
|
-
size: number
|
|
34
|
-
type: 'js' | 'css' | 'html' | 'asset'
|
|
35
|
-
hash?: string
|
|
36
|
-
sourcemap?: string
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export interface BuildWarning {
|
|
40
|
-
message: string
|
|
41
|
-
file?: string
|
|
42
|
-
line?: number
|
|
43
|
-
column?: number
|
|
44
|
-
code?: string
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export interface BuildError {
|
|
48
|
-
message: string
|
|
49
|
-
file?: string
|
|
50
|
-
line?: number
|
|
51
|
-
column?: number
|
|
52
|
-
code?: string
|
|
53
|
-
stack?: string
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
export interface BuildStats {
|
|
57
|
-
totalSize: number
|
|
58
|
-
gzippedSize: number
|
|
59
|
-
chunkCount: number
|
|
60
|
-
assetCount: number
|
|
61
|
-
entryPoints: string[]
|
|
62
|
-
dependencies: string[]
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
export interface BundleResult {
|
|
68
|
-
success: boolean
|
|
69
|
-
duration: number
|
|
70
|
-
outputPath?: string
|
|
71
|
-
entryPoint?: string
|
|
72
|
-
assets?: string[]
|
|
73
|
-
error?: string
|
|
74
|
-
code?: string
|
|
75
|
-
map?: string
|
|
76
|
-
imports?: string[]
|
|
77
|
-
exports?: string[]
|
|
78
|
-
warnings?: BuildWarning[]
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export interface BundleOptions {
|
|
82
|
-
env?: Record<string, string>
|
|
83
|
-
external?: string[]
|
|
84
|
-
minify?: boolean
|
|
85
|
-
sourceMaps?: boolean
|
|
86
|
-
target?: string
|
|
87
|
-
executable?: ExecutableOptions
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* Options for compiling standalone executables
|
|
92
|
-
* Note: Cross-platform compilation is limited - executables are built for the current platform.
|
|
93
|
-
* To build for different platforms, run the build on that platform.
|
|
94
|
-
*/
|
|
95
|
-
export interface ExecutableOptions {
|
|
96
|
-
// Windows-specific options
|
|
97
|
-
windows?: {
|
|
98
|
-
hideConsole?: boolean
|
|
99
|
-
icon?: string
|
|
100
|
-
title?: string
|
|
101
|
-
publisher?: string
|
|
102
|
-
version?: string
|
|
103
|
-
description?: string
|
|
104
|
-
copyright?: string
|
|
105
|
-
}
|
|
106
|
-
// Additional custom build arguments
|
|
107
|
-
customArgs?: string[]
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
export interface OptimizationOptions {
|
|
111
|
-
minify: boolean
|
|
112
|
-
treeshake: boolean
|
|
113
|
-
deadCodeElimination: boolean
|
|
114
|
-
constantFolding: boolean
|
|
115
|
-
inlining: boolean
|
|
116
|
-
compression: boolean
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
export interface OptimizationResult {
|
|
120
|
-
success: boolean
|
|
121
|
-
duration: number
|
|
122
|
-
originalSize: number
|
|
123
|
-
optimizedSize: number
|
|
124
|
-
compressionRatio: number
|
|
125
|
-
optimizations: OptimizationStep[]
|
|
126
|
-
error?: string
|
|
127
|
-
warnings?: BuildWarning[]
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
export interface OptimizationStep {
|
|
131
|
-
type: string
|
|
132
|
-
description: string
|
|
133
|
-
sizeSaved: number
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
export interface OptimizationConfig {
|
|
137
|
-
minify: boolean
|
|
138
|
-
treeshake: boolean
|
|
139
|
-
compress: boolean
|
|
140
|
-
removeUnusedCSS: boolean
|
|
141
|
-
optimizeImages: boolean
|
|
142
|
-
bundleAnalysis: boolean
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
export interface BuildManifest {
|
|
146
|
-
version: string
|
|
147
|
-
timestamp: string
|
|
148
|
-
target: BuildTarget
|
|
149
|
-
mode: BuildMode
|
|
150
|
-
client: ClientBuildManifest
|
|
151
|
-
server: ServerBuildManifest
|
|
152
|
-
assets: AssetManifest[]
|
|
153
|
-
optimization: OptimizationManifest
|
|
154
|
-
metrics: BuildMetrics
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
export interface ClientBuildManifest {
|
|
158
|
-
entryPoints: string[]
|
|
159
|
-
chunks: ChunkManifest[]
|
|
160
|
-
assets: AssetManifest[]
|
|
161
|
-
publicPath: string
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
export interface ServerBuildManifest {
|
|
165
|
-
entryPoint: string
|
|
166
|
-
dependencies: string[]
|
|
167
|
-
externals: string[]
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
export interface ChunkManifest {
|
|
171
|
-
name: string
|
|
172
|
-
file: string
|
|
173
|
-
size: number
|
|
174
|
-
hash: string
|
|
175
|
-
imports: string[]
|
|
176
|
-
dynamicImports: string[]
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
export interface AssetManifest {
|
|
180
|
-
name: string
|
|
181
|
-
file: string
|
|
182
|
-
size: number
|
|
183
|
-
hash: string
|
|
184
|
-
type: string
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
export interface OptimizationManifest {
|
|
188
|
-
minified: boolean
|
|
189
|
-
treeshaken: boolean
|
|
190
|
-
compressed: boolean
|
|
191
|
-
originalSize: number
|
|
192
|
-
optimizedSize: number
|
|
193
|
-
compressionRatio: number
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
export interface BuildMetrics {
|
|
197
|
-
buildTime: number
|
|
198
|
-
bundleTime: number
|
|
199
|
-
optimizationTime: number
|
|
200
|
-
totalSize: number
|
|
201
|
-
gzippedSize: number
|
|
202
|
-
chunkCount: number
|
|
203
|
-
assetCount: number
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
export interface BuildCache {
|
|
207
|
-
enabled: boolean
|
|
208
|
-
directory: string
|
|
209
|
-
strategy: 'filesystem' | 'memory' | 'hybrid'
|
|
210
|
-
maxSize: number
|
|
211
|
-
ttl: number
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
export interface BuildWatcher {
|
|
215
|
-
enabled: boolean
|
|
216
|
-
ignored: string[]
|
|
217
|
-
polling: boolean
|
|
218
|
-
interval: number
|
|
219
|
-
debounce: number
|
|
1
|
+
/**
|
|
2
|
+
* Build system types
|
|
3
|
+
* Type definitions for build processes, bundling, and optimization
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export type BuildTarget = 'bun' | 'node' | 'docker' | 'static'
|
|
7
|
+
export type BuildMode = 'development' | 'production' | 'test'
|
|
8
|
+
export type BundleFormat = 'esm' | 'cjs' | 'iife' | 'umd'
|
|
9
|
+
|
|
10
|
+
export interface BuildOptions {
|
|
11
|
+
target: BuildTarget
|
|
12
|
+
mode: BuildMode
|
|
13
|
+
outDir: string
|
|
14
|
+
sourceMaps: boolean
|
|
15
|
+
minify: boolean
|
|
16
|
+
treeshake: boolean
|
|
17
|
+
splitting: boolean
|
|
18
|
+
watch: boolean
|
|
19
|
+
clean: boolean
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface BuildResult {
|
|
23
|
+
success: boolean
|
|
24
|
+
duration: number
|
|
25
|
+
outputFiles: BuildOutputFile[]
|
|
26
|
+
warnings: BuildWarning[]
|
|
27
|
+
errors: BuildError[]
|
|
28
|
+
stats: BuildStats
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export interface BuildOutputFile {
|
|
32
|
+
path: string
|
|
33
|
+
size: number
|
|
34
|
+
type: 'js' | 'css' | 'html' | 'asset'
|
|
35
|
+
hash?: string
|
|
36
|
+
sourcemap?: string
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface BuildWarning {
|
|
40
|
+
message: string
|
|
41
|
+
file?: string
|
|
42
|
+
line?: number
|
|
43
|
+
column?: number
|
|
44
|
+
code?: string
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export interface BuildError {
|
|
48
|
+
message: string
|
|
49
|
+
file?: string
|
|
50
|
+
line?: number
|
|
51
|
+
column?: number
|
|
52
|
+
code?: string
|
|
53
|
+
stack?: string
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export interface BuildStats {
|
|
57
|
+
totalSize: number
|
|
58
|
+
gzippedSize: number
|
|
59
|
+
chunkCount: number
|
|
60
|
+
assetCount: number
|
|
61
|
+
entryPoints: string[]
|
|
62
|
+
dependencies: string[]
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
export interface BundleResult {
|
|
68
|
+
success: boolean
|
|
69
|
+
duration: number
|
|
70
|
+
outputPath?: string
|
|
71
|
+
entryPoint?: string
|
|
72
|
+
assets?: string[]
|
|
73
|
+
error?: string
|
|
74
|
+
code?: string
|
|
75
|
+
map?: string
|
|
76
|
+
imports?: string[]
|
|
77
|
+
exports?: string[]
|
|
78
|
+
warnings?: BuildWarning[]
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export interface BundleOptions {
|
|
82
|
+
env?: Record<string, string>
|
|
83
|
+
external?: string[]
|
|
84
|
+
minify?: boolean
|
|
85
|
+
sourceMaps?: boolean
|
|
86
|
+
target?: string
|
|
87
|
+
executable?: ExecutableOptions
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Options for compiling standalone executables
|
|
92
|
+
* Note: Cross-platform compilation is limited - executables are built for the current platform.
|
|
93
|
+
* To build for different platforms, run the build on that platform.
|
|
94
|
+
*/
|
|
95
|
+
export interface ExecutableOptions {
|
|
96
|
+
// Windows-specific options
|
|
97
|
+
windows?: {
|
|
98
|
+
hideConsole?: boolean
|
|
99
|
+
icon?: string
|
|
100
|
+
title?: string
|
|
101
|
+
publisher?: string
|
|
102
|
+
version?: string
|
|
103
|
+
description?: string
|
|
104
|
+
copyright?: string
|
|
105
|
+
}
|
|
106
|
+
// Additional custom build arguments
|
|
107
|
+
customArgs?: string[]
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export interface OptimizationOptions {
|
|
111
|
+
minify: boolean
|
|
112
|
+
treeshake: boolean
|
|
113
|
+
deadCodeElimination: boolean
|
|
114
|
+
constantFolding: boolean
|
|
115
|
+
inlining: boolean
|
|
116
|
+
compression: boolean
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export interface OptimizationResult {
|
|
120
|
+
success: boolean
|
|
121
|
+
duration: number
|
|
122
|
+
originalSize: number
|
|
123
|
+
optimizedSize: number
|
|
124
|
+
compressionRatio: number
|
|
125
|
+
optimizations: OptimizationStep[]
|
|
126
|
+
error?: string
|
|
127
|
+
warnings?: BuildWarning[]
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
export interface OptimizationStep {
|
|
131
|
+
type: string
|
|
132
|
+
description: string
|
|
133
|
+
sizeSaved: number
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export interface OptimizationConfig {
|
|
137
|
+
minify: boolean
|
|
138
|
+
treeshake: boolean
|
|
139
|
+
compress: boolean
|
|
140
|
+
removeUnusedCSS: boolean
|
|
141
|
+
optimizeImages: boolean
|
|
142
|
+
bundleAnalysis: boolean
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export interface BuildManifest {
|
|
146
|
+
version: string
|
|
147
|
+
timestamp: string
|
|
148
|
+
target: BuildTarget
|
|
149
|
+
mode: BuildMode
|
|
150
|
+
client: ClientBuildManifest
|
|
151
|
+
server: ServerBuildManifest
|
|
152
|
+
assets: AssetManifest[]
|
|
153
|
+
optimization: OptimizationManifest
|
|
154
|
+
metrics: BuildMetrics
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
export interface ClientBuildManifest {
|
|
158
|
+
entryPoints: string[]
|
|
159
|
+
chunks: ChunkManifest[]
|
|
160
|
+
assets: AssetManifest[]
|
|
161
|
+
publicPath: string
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
export interface ServerBuildManifest {
|
|
165
|
+
entryPoint: string
|
|
166
|
+
dependencies: string[]
|
|
167
|
+
externals: string[]
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
export interface ChunkManifest {
|
|
171
|
+
name: string
|
|
172
|
+
file: string
|
|
173
|
+
size: number
|
|
174
|
+
hash: string
|
|
175
|
+
imports: string[]
|
|
176
|
+
dynamicImports: string[]
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
export interface AssetManifest {
|
|
180
|
+
name: string
|
|
181
|
+
file: string
|
|
182
|
+
size: number
|
|
183
|
+
hash: string
|
|
184
|
+
type: string
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
export interface OptimizationManifest {
|
|
188
|
+
minified: boolean
|
|
189
|
+
treeshaken: boolean
|
|
190
|
+
compressed: boolean
|
|
191
|
+
originalSize: number
|
|
192
|
+
optimizedSize: number
|
|
193
|
+
compressionRatio: number
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
export interface BuildMetrics {
|
|
197
|
+
buildTime: number
|
|
198
|
+
bundleTime: number
|
|
199
|
+
optimizationTime: number
|
|
200
|
+
totalSize: number
|
|
201
|
+
gzippedSize: number
|
|
202
|
+
chunkCount: number
|
|
203
|
+
assetCount: number
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
export interface BuildCache {
|
|
207
|
+
enabled: boolean
|
|
208
|
+
directory: string
|
|
209
|
+
strategy: 'filesystem' | 'memory' | 'hybrid'
|
|
210
|
+
maxSize: number
|
|
211
|
+
ttl: number
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
export interface BuildWatcher {
|
|
215
|
+
enabled: boolean
|
|
216
|
+
ignored: string[]
|
|
217
|
+
polling: boolean
|
|
218
|
+
interval: number
|
|
219
|
+
debounce: number
|
|
220
220
|
}
|
package/core/types/config.ts
CHANGED
|
@@ -3,42 +3,72 @@
|
|
|
3
3
|
* Centralized type definitions for all configuration interfaces
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
import type {
|
|
7
|
+
LoggerConfig,
|
|
8
|
+
PluginsConfig
|
|
9
|
+
} from "@config"
|
|
10
|
+
|
|
11
|
+
// Re-export all configuration types from @config
|
|
7
12
|
export type {
|
|
8
13
|
FluxStackConfig,
|
|
9
14
|
AppConfig,
|
|
10
15
|
ServerConfig,
|
|
11
16
|
ClientConfig,
|
|
12
17
|
BuildConfig,
|
|
13
|
-
|
|
14
|
-
MonitoringConfig,
|
|
15
|
-
PluginConfig,
|
|
16
|
-
DatabaseConfig,
|
|
17
|
-
AuthConfig,
|
|
18
|
-
EmailConfig,
|
|
19
|
-
StorageConfig,
|
|
20
|
-
LogLevel,
|
|
21
|
-
BuildTarget,
|
|
22
|
-
LogFormat,
|
|
23
|
-
CorsConfig,
|
|
24
|
-
MiddlewareConfig,
|
|
25
|
-
ProxyConfig,
|
|
18
|
+
ViteConfig,
|
|
26
19
|
ClientBuildConfig,
|
|
27
20
|
OptimizationConfig,
|
|
28
|
-
|
|
21
|
+
BuildFullConfig,
|
|
22
|
+
CorsConfig,
|
|
23
|
+
ServerFullConfig,
|
|
24
|
+
LoggerConfig,
|
|
25
|
+
PluginsConfig,
|
|
26
|
+
MonitoringConfig,
|
|
29
27
|
MetricsConfig,
|
|
30
|
-
ProfilingConfig
|
|
31
|
-
|
|
28
|
+
ProfilingConfig,
|
|
29
|
+
MonitoringFullConfig,
|
|
30
|
+
SystemConfig,
|
|
31
|
+
SystemRuntimeInfo,
|
|
32
|
+
AppRuntimeConfig
|
|
33
|
+
} from "@config"
|
|
32
34
|
|
|
33
|
-
//
|
|
34
|
-
export type
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
35
|
+
// Legacy type aliases (for backward compatibility)
|
|
36
|
+
export type LogLevel = 'debug' | 'info' | 'warn' | 'error'
|
|
37
|
+
export type BuildTarget = 'bun' | 'node' | 'docker'
|
|
38
|
+
export type LogFormat = 'json' | 'pretty'
|
|
39
|
+
export type LoggingConfig = LoggerConfig
|
|
40
|
+
export type PluginConfig = PluginsConfig
|
|
41
|
+
|
|
42
|
+
// Configuration loading types (deprecated - kept for backward compatibility)
|
|
43
|
+
export interface ConfigLoadOptions {
|
|
44
|
+
env?: string
|
|
45
|
+
validate?: boolean
|
|
46
|
+
strict?: boolean
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export interface ConfigLoadResult<T = any> {
|
|
50
|
+
config: T
|
|
51
|
+
errors: ValidationError[]
|
|
52
|
+
warnings: ValidationWarning[]
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export interface ValidationResult {
|
|
56
|
+
valid: boolean
|
|
57
|
+
errors: ValidationError[]
|
|
58
|
+
warnings: ValidationWarning[]
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export interface ValidationError {
|
|
62
|
+
path: string
|
|
63
|
+
message: string
|
|
64
|
+
value?: any
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export interface ValidationWarning {
|
|
68
|
+
path: string
|
|
69
|
+
message: string
|
|
70
|
+
value?: any
|
|
71
|
+
}
|
|
42
72
|
|
|
43
73
|
// Additional configuration utility types
|
|
44
74
|
export interface ConfigOverride {
|
package/core/types/index.ts
CHANGED
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
export * from "./config"
|
|
3
3
|
|
|
4
4
|
// Ensure critical types are explicitly exported
|
|
5
|
-
export type {
|
|
5
|
+
export type {
|
|
6
6
|
FluxStackConfig,
|
|
7
7
|
AppConfig,
|
|
8
8
|
ServerConfig,
|
|
9
9
|
ClientConfig,
|
|
10
10
|
BuildConfig,
|
|
11
|
-
|
|
11
|
+
LoggerConfig,
|
|
12
12
|
MonitoringConfig,
|
|
13
|
-
|
|
14
|
-
} from "
|
|
13
|
+
PluginsConfig
|
|
14
|
+
} from "@config"
|
|
15
15
|
|
|
16
16
|
// Re-export plugin types (explicitly handling conflicts)
|
|
17
17
|
export type {
|