fragment-ts 2.0.2 → 2.0.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/API.md +1 -8
- package/DOCS.md +1 -5
- package/README.md +2 -11
- package/SETUP.md +4 -14
- package/USAGE.md +11 -4
- package/dist/core/decorators/middleware.decorator.d.ts +10 -1
- package/dist/core/decorators/middleware.decorator.d.ts.map +1 -1
- package/dist/core/decorators/middleware.decorator.js +35 -7
- package/dist/core/decorators/middleware.decorator.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/platform/cli/commands/install/command.d.ts +14 -0
- package/dist/platform/cli/commands/install/command.d.ts.map +1 -0
- package/dist/platform/cli/commands/install/command.js +145 -0
- package/dist/platform/cli/commands/install/command.js.map +1 -0
- package/dist/platform/cli/commands/register.d.ts.map +1 -1
- package/dist/platform/cli/commands/register.js +39 -32
- package/dist/platform/cli/commands/register.js.map +1 -1
- package/dist/platform/cli/commands/serve/command.d.ts.map +1 -1
- package/dist/platform/cli/commands/serve/command.js +9 -3
- package/dist/platform/cli/commands/serve/command.js.map +1 -1
- package/dist/platform/cli/index.js +77 -10
- package/dist/platform/cli/index.js.map +1 -1
- package/dist/platform/cli/scaffold/generate/component-generator.js +1 -1
- package/dist/platform/cli/scaffold/init/init.scaffold.d.ts.map +1 -1
- package/dist/platform/cli/scaffold/init/init.scaffold.js +1 -8
- package/dist/platform/cli/scaffold/init/init.scaffold.js.map +1 -1
- package/dist/platform/cli/web/commands/create/feature.d.ts +11 -0
- package/dist/platform/cli/web/commands/create/feature.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/create/feature.js +43 -0
- package/dist/platform/cli/web/commands/create/feature.js.map +1 -0
- package/dist/platform/cli/web/commands/create/module.d.ts +11 -0
- package/dist/platform/cli/web/commands/create/module.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/create/module.js +44 -0
- package/dist/platform/cli/web/commands/create/module.js.map +1 -0
- package/dist/platform/cli/web/commands/create/mvvm.d.ts +11 -0
- package/dist/platform/cli/web/commands/create/mvvm.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/create/mvvm.js +43 -0
- package/dist/platform/cli/web/commands/create/mvvm.js.map +1 -0
- package/dist/platform/cli/web/commands/init-fullstack.d.ts +12 -0
- package/dist/platform/cli/web/commands/init-fullstack.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/init-fullstack.js +42 -0
- package/dist/platform/cli/web/commands/init-fullstack.js.map +1 -0
- package/dist/platform/cli/web/commands/init-web.d.ts +12 -0
- package/dist/platform/cli/web/commands/init-web.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/init-web.js +70 -0
- package/dist/platform/cli/web/commands/init-web.js.map +1 -0
- package/dist/platform/cli/web/commands/install-api.d.ts +11 -0
- package/dist/platform/cli/web/commands/install-api.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/install-api.js +92 -0
- package/dist/platform/cli/web/commands/install-api.js.map +1 -0
- package/dist/platform/cli/web/commands/install-web.d.ts +13 -0
- package/dist/platform/cli/web/commands/install-web.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/install-web.js +102 -0
- package/dist/platform/cli/web/commands/install-web.js.map +1 -0
- package/dist/platform/cli/web/commands/install.d.ts +3 -0
- package/dist/platform/cli/web/commands/install.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/install.js +23 -0
- package/dist/platform/cli/web/commands/install.js.map +1 -0
- package/dist/platform/cli/web/commands/make/component.d.ts +16 -0
- package/dist/platform/cli/web/commands/make/component.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/make/component.js +73 -0
- package/dist/platform/cli/web/commands/make/component.js.map +1 -0
- package/dist/platform/cli/web/commands/make/guard.d.ts +13 -0
- package/dist/platform/cli/web/commands/make/guard.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/make/guard.js +46 -0
- package/dist/platform/cli/web/commands/make/guard.js.map +1 -0
- package/dist/platform/cli/web/commands/make/layout.d.ts +12 -0
- package/dist/platform/cli/web/commands/make/layout.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/make/layout.js +44 -0
- package/dist/platform/cli/web/commands/make/layout.js.map +1 -0
- package/dist/platform/cli/web/commands/make/page.d.ts +17 -0
- package/dist/platform/cli/web/commands/make/page.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/make/page.js +66 -0
- package/dist/platform/cli/web/commands/make/page.js.map +1 -0
- package/dist/platform/cli/web/commands/make/resource.d.ts +17 -0
- package/dist/platform/cli/web/commands/make/resource.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/make/resource.js +37 -0
- package/dist/platform/cli/web/commands/make/resource.js.map +1 -0
- package/dist/platform/cli/web/commands/make/service.d.ts +16 -0
- package/dist/platform/cli/web/commands/make/service.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/make/service.js +137 -0
- package/dist/platform/cli/web/commands/make/service.js.map +1 -0
- package/dist/platform/cli/web/commands/make/store.d.ts +16 -0
- package/dist/platform/cli/web/commands/make/store.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/make/store.js +72 -0
- package/dist/platform/cli/web/commands/make/store.js.map +1 -0
- package/dist/platform/cli/web/commands/web-sync.d.ts +10 -0
- package/dist/platform/cli/web/commands/web-sync.d.ts.map +1 -0
- package/dist/platform/cli/web/commands/web-sync.js +307 -0
- package/dist/platform/cli/web/commands/web-sync.js.map +1 -0
- package/dist/platform/cli/web/index.d.ts +3 -0
- package/dist/platform/cli/web/index.d.ts.map +1 -0
- package/dist/platform/cli/web/index.js +40 -0
- package/dist/platform/cli/web/index.js.map +1 -0
- package/dist/platform/cli/web/utils/config.d.ts +52 -0
- package/dist/platform/cli/web/utils/config.d.ts.map +1 -0
- package/dist/platform/cli/web/utils/config.js +89 -0
- package/dist/platform/cli/web/utils/config.js.map +1 -0
- package/dist/platform/cli/web/utils/format.d.ts +2 -0
- package/dist/platform/cli/web/utils/format.d.ts.map +1 -0
- package/dist/platform/cli/web/utils/format.js +28 -0
- package/dist/platform/cli/web/utils/format.js.map +1 -0
- package/dist/platform/cli/web/utils/header.d.ts +3 -0
- package/dist/platform/cli/web/utils/header.d.ts.map +1 -0
- package/dist/platform/cli/web/utils/header.js +11 -0
- package/dist/platform/cli/web/utils/header.js.map +1 -0
- package/dist/platform/cli/web/utils/logger.d.ts +10 -0
- package/dist/platform/cli/web/utils/logger.d.ts.map +1 -0
- package/dist/platform/cli/web/utils/logger.js +47 -0
- package/dist/platform/cli/web/utils/logger.js.map +1 -0
- package/dist/platform/cli/web/utils/names.d.ts +7 -0
- package/dist/platform/cli/web/utils/names.d.ts.map +1 -0
- package/dist/platform/cli/web/utils/names.js +43 -0
- package/dist/platform/cli/web/utils/names.js.map +1 -0
- package/dist/platform/cli/web/utils/resolve-paths.d.ts +10 -0
- package/dist/platform/cli/web/utils/resolve-paths.d.ts.map +1 -0
- package/dist/platform/cli/web/utils/resolve-paths.js +87 -0
- package/dist/platform/cli/web/utils/resolve-paths.js.map +1 -0
- package/dist/platform/cli/web/utils/write-file.d.ts +7 -0
- package/dist/platform/cli/web/utils/write-file.d.ts.map +1 -0
- package/dist/platform/cli/web/utils/write-file.js +31 -0
- package/dist/platform/cli/web/utils/write-file.js.map +1 -0
- package/dist/platform/web/application.d.ts.map +1 -1
- package/dist/platform/web/application.js +2 -0
- package/dist/platform/web/application.js.map +1 -1
- package/dist/platform/web/bootstrap/RouteRegistrar.d.ts +2 -0
- package/dist/platform/web/bootstrap/RouteRegistrar.d.ts.map +1 -1
- package/dist/platform/web/bootstrap/RouteRegistrar.js +33 -4
- package/dist/platform/web/bootstrap/RouteRegistrar.js.map +1 -1
- package/dist/shared/config.utils.d.ts +1 -0
- package/dist/shared/config.utils.d.ts.map +1 -1
- package/dist/shared/config.utils.js +36 -11
- package/dist/shared/config.utils.js.map +1 -1
- package/dist/shared/env.utils.d.ts +6 -1
- package/dist/shared/env.utils.d.ts.map +1 -1
- package/dist/shared/env.utils.js +92 -9
- package/dist/shared/env.utils.js.map +1 -1
- package/dist/shared/runtime.resolver.d.ts +1 -0
- package/dist/shared/runtime.resolver.d.ts.map +1 -1
- package/dist/shared/runtime.resolver.js +27 -6
- package/dist/shared/runtime.resolver.js.map +1 -1
- package/dist/web/cli/commands/create/feature.d.ts +11 -0
- package/dist/web/cli/commands/create/feature.d.ts.map +1 -0
- package/dist/web/cli/commands/create/feature.js +43 -0
- package/dist/web/cli/commands/create/feature.js.map +1 -0
- package/dist/web/cli/commands/create/module.d.ts +11 -0
- package/dist/web/cli/commands/create/module.d.ts.map +1 -0
- package/dist/web/cli/commands/create/module.js +44 -0
- package/dist/web/cli/commands/create/module.js.map +1 -0
- package/dist/web/cli/commands/create/mvvm.d.ts +11 -0
- package/dist/web/cli/commands/create/mvvm.d.ts.map +1 -0
- package/dist/web/cli/commands/create/mvvm.js +43 -0
- package/dist/web/cli/commands/create/mvvm.js.map +1 -0
- package/dist/web/cli/commands/init-fullstack.d.ts +12 -0
- package/dist/web/cli/commands/init-fullstack.d.ts.map +1 -0
- package/dist/web/cli/commands/init-fullstack.js +42 -0
- package/dist/web/cli/commands/init-fullstack.js.map +1 -0
- package/dist/web/cli/commands/init-web.d.ts +12 -0
- package/dist/web/cli/commands/init-web.d.ts.map +1 -0
- package/dist/web/cli/commands/init-web.js +70 -0
- package/dist/web/cli/commands/init-web.js.map +1 -0
- package/dist/web/cli/commands/install-api.d.ts +10 -0
- package/dist/web/cli/commands/install-api.d.ts.map +1 -0
- package/dist/web/cli/commands/install-api.js +91 -0
- package/dist/web/cli/commands/install-api.js.map +1 -0
- package/dist/web/cli/commands/install-web.d.ts +12 -0
- package/dist/web/cli/commands/install-web.d.ts.map +1 -0
- package/dist/web/cli/commands/install-web.js +101 -0
- package/dist/web/cli/commands/install-web.js.map +1 -0
- package/dist/web/cli/commands/make/component.d.ts +13 -0
- package/dist/web/cli/commands/make/component.d.ts.map +1 -0
- package/dist/web/cli/commands/make/component.js +40 -0
- package/dist/web/cli/commands/make/component.js.map +1 -0
- package/dist/web/cli/commands/make/guard.d.ts +11 -0
- package/dist/web/cli/commands/make/guard.d.ts.map +1 -0
- package/dist/web/cli/commands/make/guard.js +37 -0
- package/dist/web/cli/commands/make/guard.js.map +1 -0
- package/dist/web/cli/commands/make/layout.d.ts +11 -0
- package/dist/web/cli/commands/make/layout.d.ts.map +1 -0
- package/dist/web/cli/commands/make/layout.js +37 -0
- package/dist/web/cli/commands/make/layout.js.map +1 -0
- package/dist/web/cli/commands/make/page.d.ts +14 -0
- package/dist/web/cli/commands/make/page.d.ts.map +1 -0
- package/dist/web/cli/commands/make/page.js +42 -0
- package/dist/web/cli/commands/make/page.js.map +1 -0
- package/dist/web/cli/commands/make/resource.d.ts +13 -0
- package/dist/web/cli/commands/make/resource.d.ts.map +1 -0
- package/dist/web/cli/commands/make/resource.js +33 -0
- package/dist/web/cli/commands/make/resource.js.map +1 -0
- package/dist/web/cli/commands/make/service.d.ts +14 -0
- package/dist/web/cli/commands/make/service.d.ts.map +1 -0
- package/dist/web/cli/commands/make/service.js +56 -0
- package/dist/web/cli/commands/make/service.js.map +1 -0
- package/dist/web/cli/commands/make/store.d.ts +14 -0
- package/dist/web/cli/commands/make/store.d.ts.map +1 -0
- package/dist/web/cli/commands/make/store.js +47 -0
- package/dist/web/cli/commands/make/store.js.map +1 -0
- package/dist/web/cli/commands/web-sync.d.ts +10 -0
- package/dist/web/cli/commands/web-sync.d.ts.map +1 -0
- package/dist/web/cli/commands/web-sync.js +48 -0
- package/dist/web/cli/commands/web-sync.js.map +1 -0
- package/dist/web/cli/index.d.mts +5 -0
- package/dist/web/cli/index.d.ts +5 -0
- package/dist/web/cli/index.d.ts.map +1 -0
- package/dist/web/cli/index.js +36 -0
- package/dist/web/cli/index.js.map +1 -0
- package/dist/web/cli/index.mjs +984 -0
- package/dist/web/cli/utils/config.d.ts +52 -0
- package/dist/web/cli/utils/config.d.ts.map +1 -0
- package/dist/web/cli/utils/config.js +89 -0
- package/dist/web/cli/utils/config.js.map +1 -0
- package/dist/web/cli/utils/format.d.ts +2 -0
- package/dist/web/cli/utils/format.d.ts.map +1 -0
- package/dist/web/cli/utils/format.js +28 -0
- package/dist/web/cli/utils/format.js.map +1 -0
- package/dist/web/cli/utils/logger.d.ts +10 -0
- package/dist/web/cli/utils/logger.d.ts.map +1 -0
- package/dist/web/cli/utils/logger.js +34 -0
- package/dist/web/cli/utils/logger.js.map +1 -0
- package/dist/web/cli/utils/names.d.ts +7 -0
- package/dist/web/cli/utils/names.d.ts.map +1 -0
- package/dist/web/cli/utils/names.js +43 -0
- package/dist/web/cli/utils/names.js.map +1 -0
- package/dist/web/cli/utils/resolve-paths.d.ts +10 -0
- package/dist/web/cli/utils/resolve-paths.d.ts.map +1 -0
- package/dist/web/cli/utils/resolve-paths.js +87 -0
- package/dist/web/cli/utils/resolve-paths.js.map +1 -0
- package/dist/web/cli/utils/write-file.d.ts +7 -0
- package/dist/web/cli/utils/write-file.d.ts.map +1 -0
- package/dist/web/cli/utils/write-file.js +31 -0
- package/dist/web/cli/utils/write-file.js.map +1 -0
- package/dist/web/platform/cli/web/index.d.mts +5 -0
- package/dist/web/platform/cli/web/index.d.ts +5 -0
- package/dist/web/platform/cli/web/index.js +2035 -0
- package/dist/web/platform/cli/web/index.mjs +1998 -0
- package/dist/web/src/adapters/jotai.d.ts +2 -0
- package/dist/web/src/adapters/jotai.d.ts.map +1 -0
- package/dist/web/src/adapters/jotai.js +7 -0
- package/dist/web/src/adapters/jotai.js.map +1 -0
- package/dist/web/src/adapters/mobx.d.ts +2 -0
- package/dist/web/src/adapters/mobx.d.ts.map +1 -0
- package/dist/web/src/adapters/mobx.js +7 -0
- package/dist/web/src/adapters/mobx.js.map +1 -0
- package/dist/web/src/adapters/redux.d.ts +2 -0
- package/dist/web/src/adapters/redux.d.ts.map +1 -0
- package/dist/web/src/adapters/redux.js +7 -0
- package/dist/web/src/adapters/redux.js.map +1 -0
- package/dist/web/src/adapters/zustand.d.ts +2 -0
- package/dist/web/src/adapters/zustand.d.ts.map +1 -0
- package/dist/web/src/adapters/zustand.js +7 -0
- package/dist/web/src/adapters/zustand.js.map +1 -0
- package/dist/web/src/config/web-config.d.ts +34 -0
- package/dist/web/src/config/web-config.d.ts.map +1 -0
- package/dist/web/src/config/web-config.js +73 -0
- package/dist/web/src/config/web-config.js.map +1 -0
- package/dist/web/src/core/application.d.ts +8 -0
- package/dist/web/src/core/application.d.ts.map +1 -0
- package/dist/web/src/core/application.js +45 -0
- package/dist/web/src/core/application.js.map +1 -0
- package/dist/web/src/core/decorators/component.d.ts +20 -0
- package/dist/web/src/core/decorators/component.d.ts.map +1 -0
- package/dist/web/src/core/decorators/component.js +83 -0
- package/dist/web/src/core/decorators/component.js.map +1 -0
- package/dist/web/src/core/decorators/page.d.ts +27 -0
- package/dist/web/src/core/decorators/page.d.ts.map +1 -0
- package/dist/web/src/core/decorators/page.js +58 -0
- package/dist/web/src/core/decorators/page.js.map +1 -0
- package/dist/web/src/core/di/container.d.ts +8 -0
- package/dist/web/src/core/di/container.d.ts.map +1 -0
- package/dist/web/src/core/di/container.js +26 -0
- package/dist/web/src/core/di/container.js.map +1 -0
- package/dist/web/src/core/runtime.d.ts +3 -0
- package/dist/web/src/core/runtime.d.ts.map +1 -0
- package/dist/web/src/core/runtime.js +15 -0
- package/dist/web/src/core/runtime.js.map +1 -0
- package/dist/web/src/http/fragment-fetch.d.ts +55 -0
- package/dist/web/src/http/fragment-fetch.d.ts.map +1 -0
- package/dist/web/src/http/fragment-fetch.js +290 -0
- package/dist/web/src/http/fragment-fetch.js.map +1 -0
- package/dist/web/src/index.d.mts +137 -0
- package/dist/web/src/index.d.ts +7 -0
- package/dist/web/src/index.d.ts.map +1 -0
- package/dist/web/src/index.js +31 -0
- package/dist/web/src/index.js.map +1 -0
- package/dist/web/src/index.mjs +643 -0
- package/dist/web/src/router/fragment-router.d.ts +14 -0
- package/dist/web/src/router/fragment-router.d.ts.map +1 -0
- package/dist/web/src/router/fragment-router.js +94 -0
- package/dist/web/src/router/fragment-router.js.map +1 -0
- package/dist/web/web/src/index.d.mts +137 -0
- package/dist/web/web/src/index.d.ts +137 -0
- package/dist/web/web/src/index.js +702 -0
- package/dist/web/web/src/index.mjs +644 -0
- package/package.json +15 -3
package/API.md
CHANGED
|
@@ -55,6 +55,7 @@ Each item is documented on its own line for easy search and indexing.
|
|
|
55
55
|
## Pipeline Decorators
|
|
56
56
|
|
|
57
57
|
- `@FragmentMiddleware(MiddlewareClass)`
|
|
58
|
+
- `@FragmentMiddleware(MiddlewareClass, { order? })`
|
|
58
59
|
- `@FragmentGuard(GuardClass)`
|
|
59
60
|
- `@FragmentInterceptor(InterceptorClass)`
|
|
60
61
|
- `@FragmentExceptionFilter(ExceptionFilterClass)`
|
|
@@ -192,10 +193,6 @@ Each item is documented on its own line for easy search and indexing.
|
|
|
192
193
|
- `fragment route:list`
|
|
193
194
|
- `fragment config:cache`
|
|
194
195
|
- `fragment cache:clear`
|
|
195
|
-
- `fragment env:init`
|
|
196
|
-
- `fragment env:list`
|
|
197
|
-
- `fragment env:use <file>`
|
|
198
|
-
- `fragment env:diff [file]`
|
|
199
196
|
- `fragment doc:generate`
|
|
200
197
|
- `fragment plugin:list`
|
|
201
198
|
- `fragment plugin:info <name>`
|
|
@@ -288,10 +285,6 @@ Each item is documented on its own line for easy search and indexing.
|
|
|
288
285
|
- CLI: `fragment route:list` is supported by the framework binary.
|
|
289
286
|
- CLI: `fragment config:cache` is supported by the framework binary.
|
|
290
287
|
- CLI: `fragment cache:clear` is supported by the framework binary.
|
|
291
|
-
- CLI: `fragment env:init` is supported by the framework binary.
|
|
292
|
-
- CLI: `fragment env:list` is supported by the framework binary.
|
|
293
|
-
- CLI: `fragment env:use <file>` is supported by the framework binary.
|
|
294
|
-
- CLI: `fragment env:diff [file]` is supported by the framework binary.
|
|
295
288
|
- CLI: `fragment doc:generate` is supported by the framework binary.
|
|
296
289
|
- CLI: `fragment plugin:list` is supported by the framework binary.
|
|
297
290
|
- CLI: `fragment plugin:info <name>` is supported by the framework binary.
|
package/DOCS.md
CHANGED
|
@@ -165,10 +165,6 @@ Logging level is configured in `fragment.json`.
|
|
|
165
165
|
- fragment route:list
|
|
166
166
|
- fragment config:cache
|
|
167
167
|
- fragment cache:clear
|
|
168
|
-
- fragment env:init
|
|
169
|
-
- fragment env:list
|
|
170
|
-
- fragment env:use <file>
|
|
171
|
-
- fragment env:diff [file]
|
|
172
168
|
- fragment doc:generate
|
|
173
169
|
- fragment plugin:list
|
|
174
170
|
- fragment plugin:info <name>
|
|
@@ -216,7 +212,7 @@ Logging level is configured in `fragment.json`.
|
|
|
216
212
|
- @Header(name?)
|
|
217
213
|
- @Req()
|
|
218
214
|
- @Res()
|
|
219
|
-
- @FragmentMiddleware(MiddlewareClass)
|
|
215
|
+
- @FragmentMiddleware(MiddlewareClass, { order? })
|
|
220
216
|
- @FragmentGuard(GuardClass)
|
|
221
217
|
- @FragmentInterceptor(InterceptorClass)
|
|
222
218
|
- @FragmentExceptionFilter(ExceptionFilterClass)
|
package/README.md
CHANGED
|
@@ -44,7 +44,6 @@ Key ideas:
|
|
|
44
44
|
1. Install the CLI: `npm install -g fragment-ts`
|
|
45
45
|
2. Initialize: `fragment init my-app`
|
|
46
46
|
3. Move into the directory: `cd my-app`
|
|
47
|
-
4. Initialize Env: `fragment env:init`
|
|
48
47
|
5. Run the dev server: `fragment serve`
|
|
49
48
|
|
|
50
49
|
Hello World example:
|
|
@@ -198,10 +197,6 @@ Selected commands:
|
|
|
198
197
|
- fragment route:list
|
|
199
198
|
- fragment config:cache
|
|
200
199
|
- fragment cache:clear
|
|
201
|
-
- fragment env:init
|
|
202
|
-
- fragment env:list
|
|
203
|
-
- fragment env:use <file>
|
|
204
|
-
- fragment env:diff [file]
|
|
205
200
|
- fragment doc:generate
|
|
206
201
|
- fragment plugin:list
|
|
207
202
|
- fragment plugin:info <name>
|
|
@@ -343,7 +338,7 @@ HTTP decorators:
|
|
|
343
338
|
|
|
344
339
|
Pipeline decorators:
|
|
345
340
|
|
|
346
|
-
- @FragmentMiddleware(MiddlewareClass)
|
|
341
|
+
- @FragmentMiddleware(MiddlewareClass, { order? })
|
|
347
342
|
- @FragmentGuard(GuardClass)
|
|
348
343
|
- @FragmentInterceptor(InterceptorClass)
|
|
349
344
|
- @FragmentExceptionFilter(ExceptionFilterClass)
|
|
@@ -433,7 +428,7 @@ A: Set `docs.enabled` to `false` in `fragment.json`.
|
|
|
433
428
|
- `@Header(name?)` defines routing and request binding explicitly.
|
|
434
429
|
- `@Req()` defines routing and request binding explicitly.
|
|
435
430
|
- `@Res()` defines routing and request binding explicitly.
|
|
436
|
-
- `@FragmentMiddleware(MiddlewareClass)` keeps cross-cutting concerns declarative.
|
|
431
|
+
- `@FragmentMiddleware(MiddlewareClass, { order? })` keeps cross-cutting concerns declarative.
|
|
437
432
|
- `@FragmentGuard(GuardClass)` keeps cross-cutting concerns declarative.
|
|
438
433
|
- `@FragmentInterceptor(InterceptorClass)` keeps cross-cutting concerns declarative.
|
|
439
434
|
- `@FragmentExceptionFilter(ExceptionFilterClass)` keeps cross-cutting concerns declarative.
|
|
@@ -464,10 +459,6 @@ A: Set `docs.enabled` to `false` in `fragment.json`.
|
|
|
464
459
|
- CLI: `fragment route:list` is part of the primary workflow.
|
|
465
460
|
- CLI: `fragment config:cache` is part of the primary workflow.
|
|
466
461
|
- CLI: `fragment cache:clear` is part of the primary workflow.
|
|
467
|
-
- CLI: `fragment env:init` is part of the primary workflow.
|
|
468
|
-
- CLI: `fragment env:list` is part of the primary workflow.
|
|
469
|
-
- CLI: `fragment env:use <file>` is part of the primary workflow.
|
|
470
|
-
- CLI: `fragment env:diff [file]` is part of the primary workflow.
|
|
471
462
|
- CLI: `fragment doc:generate` is part of the primary workflow.
|
|
472
463
|
- CLI: `fragment plugin:list` is part of the primary workflow.
|
|
473
464
|
- CLI: `fragment plugin:info <name>` is part of the primary workflow.
|
package/SETUP.md
CHANGED
|
@@ -103,8 +103,7 @@ Each line below represents a documented configuration key.
|
|
|
103
103
|
|
|
104
104
|
## Environment Files
|
|
105
105
|
|
|
106
|
-
Fragment
|
|
107
|
-
`fragment env:init` creates a `.env` file from `.env.example`.
|
|
106
|
+
Fragment uses a single `.env` file for runtime configuration.
|
|
108
107
|
|
|
109
108
|
Recommended defaults:
|
|
110
109
|
|
|
@@ -266,10 +265,6 @@ To install a plugin:
|
|
|
266
265
|
- fragment route:list
|
|
267
266
|
- fragment config:cache
|
|
268
267
|
- fragment cache:clear
|
|
269
|
-
- fragment env:init
|
|
270
|
-
- fragment env:list
|
|
271
|
-
- fragment env:use <file>
|
|
272
|
-
- fragment env:diff [file]
|
|
273
268
|
- fragment doc:generate
|
|
274
269
|
- fragment plugin:list
|
|
275
270
|
- fragment plugin:info <name>
|
|
@@ -350,10 +345,6 @@ To install a plugin:
|
|
|
350
345
|
- Command `fragment route:list` may be used during initialization.
|
|
351
346
|
- Command `fragment config:cache` may be used during initialization.
|
|
352
347
|
- Command `fragment cache:clear` may be used during initialization.
|
|
353
|
-
- Command `fragment env:init` may be used during initialization.
|
|
354
|
-
- Command `fragment env:list` may be used during initialization.
|
|
355
|
-
- Command `fragment env:use <file>` may be used during initialization.
|
|
356
|
-
- Command `fragment env:diff [file]` may be used during initialization.
|
|
357
348
|
- Command `fragment doc:generate` may be used during initialization.
|
|
358
349
|
- Command `fragment plugin:list` may be used during initialization.
|
|
359
350
|
- Command `fragment plugin:info <name>` may be used during initialization.
|
|
@@ -377,9 +368,8 @@ To install a plugin:
|
|
|
377
368
|
|
|
378
369
|
## Extended Setup Notes
|
|
379
370
|
|
|
380
|
-
- Keep `.env
|
|
371
|
+
- Keep `.env` and `fragment.json` synchronized.
|
|
381
372
|
- Favor environment interpolation with `${VAR}` for secrets.
|
|
382
|
-
- Use `fragment env:diff` when switching environments.
|
|
383
373
|
|
|
384
374
|
## Setup FAQ
|
|
385
375
|
|
|
@@ -407,7 +397,7 @@ Use this as a concrete, end-to-end setup flow.
|
|
|
407
397
|
1. Install Node.js 18+.
|
|
408
398
|
2. Install Fragment CLI: `npm i -g fragment-ts`.
|
|
409
399
|
3. Create a new project: `fragment init my-app`.
|
|
410
|
-
4. Verify `fragment.json` and `.env
|
|
400
|
+
4. Verify `fragment.json` and `.env`.
|
|
411
401
|
5. Run `fragment build` and `fragment serve`.
|
|
412
402
|
|
|
413
403
|
## Example fragment.json (Complete)
|
|
@@ -457,7 +447,7 @@ Use this as a concrete, end-to-end setup flow.
|
|
|
457
447
|
|
|
458
448
|
## Environment File Template
|
|
459
449
|
|
|
460
|
-
The init scaffolder writes `.env.
|
|
450
|
+
The init scaffolder writes `.env` directly. Update values in place.
|
|
461
451
|
|
|
462
452
|
```env
|
|
463
453
|
DATABASE_FILE=database.sqlite
|
package/USAGE.md
CHANGED
|
@@ -141,6 +141,17 @@ class AppFilter {
|
|
|
141
141
|
class DemoController {}
|
|
142
142
|
```
|
|
143
143
|
|
|
144
|
+
Middleware execution order can be prioritized:
|
|
145
|
+
|
|
146
|
+
```ts
|
|
147
|
+
@FragmentMiddleware(CorsMiddleware, { order: -100 })
|
|
148
|
+
@FragmentMiddleware(AuthMiddleware, { order: 10 })
|
|
149
|
+
@FragmentMiddleware(AuditMiddleware, { order: 20 })
|
|
150
|
+
class DemoController {}
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
Lower `order` runs earlier. Default order is `0`.
|
|
154
|
+
|
|
144
155
|
## Lifecycle Hooks
|
|
145
156
|
|
|
146
157
|
```ts
|
|
@@ -332,10 +343,6 @@ await CommandRunner.run("lint", { fix: true });
|
|
|
332
343
|
- fragment route:list
|
|
333
344
|
- fragment config:cache
|
|
334
345
|
- fragment cache:clear
|
|
335
|
-
- fragment env:init
|
|
336
|
-
- fragment env:list
|
|
337
|
-
- fragment env:use <file>
|
|
338
|
-
- fragment env:diff [file]
|
|
339
346
|
- fragment doc:generate
|
|
340
347
|
- fragment plugin:list
|
|
341
348
|
- fragment plugin:info <name>
|
|
@@ -1,8 +1,17 @@
|
|
|
1
|
+
export interface FragmentMiddlewareOptions {
|
|
2
|
+
order?: number;
|
|
3
|
+
}
|
|
4
|
+
export interface MiddlewareBinding {
|
|
5
|
+
middleware: new () => any;
|
|
6
|
+
order: number;
|
|
7
|
+
sequence: number;
|
|
8
|
+
}
|
|
1
9
|
/**
|
|
2
10
|
* @Middleware - Apply Express-compatible middleware at class or method level
|
|
3
11
|
* Usage:
|
|
4
12
|
* @Middleware(AuthMiddleware) class MyController { }
|
|
5
13
|
* @Middleware(AuthMiddleware) @Get('/') handler() { }
|
|
14
|
+
* @Middleware(AuthMiddleware, { order: -100 }) class MyController { }
|
|
6
15
|
*/
|
|
7
|
-
export declare function FragmentMiddleware(middlewareClass: new () => any): ClassDecorator & MethodDecorator;
|
|
16
|
+
export declare function FragmentMiddleware(middlewareClass: new () => any, options?: FragmentMiddlewareOptions): ClassDecorator & MethodDecorator;
|
|
8
17
|
//# sourceMappingURL=middleware.decorator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.decorator.d.ts","sourceRoot":"","sources":["../../../src/core/decorators/middleware.decorator.ts"],"names":[],"mappings":"AAIA
|
|
1
|
+
{"version":3,"file":"middleware.decorator.d.ts","sourceRoot":"","sources":["../../../src/core/decorators/middleware.decorator.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,UAAU,GAAG,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AA4BD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,eAAe,EAAE,UAAU,GAAG,EAC9B,OAAO,GAAE,yBAA8B,GACtC,cAAc,GAAG,eAAe,CA4ClC"}
|
|
@@ -3,29 +3,57 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.FragmentMiddleware = FragmentMiddleware;
|
|
4
4
|
const metadata_keys_1 = require("../metadata/metadata-keys");
|
|
5
5
|
const metadata_storage_1 = require("../metadata/metadata-storage");
|
|
6
|
+
let middlewareSequence = 0;
|
|
7
|
+
function normalizeBindings(existing) {
|
|
8
|
+
return existing
|
|
9
|
+
.map((entry, index) => {
|
|
10
|
+
if (typeof entry === "function") {
|
|
11
|
+
return {
|
|
12
|
+
middleware: entry,
|
|
13
|
+
order: 0,
|
|
14
|
+
sequence: index,
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
if (entry && typeof entry.middleware === "function") {
|
|
18
|
+
return {
|
|
19
|
+
middleware: entry.middleware,
|
|
20
|
+
order: Number(entry.order) || 0,
|
|
21
|
+
sequence: Number(entry.sequence) || index,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
return undefined;
|
|
25
|
+
})
|
|
26
|
+
.filter((entry) => Boolean(entry));
|
|
27
|
+
}
|
|
6
28
|
/**
|
|
7
29
|
* @Middleware - Apply Express-compatible middleware at class or method level
|
|
8
30
|
* Usage:
|
|
9
31
|
* @Middleware(AuthMiddleware) class MyController { }
|
|
10
32
|
* @Middleware(AuthMiddleware) @Get('/') handler() { }
|
|
33
|
+
* @Middleware(AuthMiddleware, { order: -100 }) class MyController { }
|
|
11
34
|
*/
|
|
12
|
-
function FragmentMiddleware(middlewareClass) {
|
|
35
|
+
function FragmentMiddleware(middlewareClass, options = {}) {
|
|
13
36
|
return (target, propertyKey) => {
|
|
37
|
+
const binding = {
|
|
38
|
+
middleware: middlewareClass,
|
|
39
|
+
order: options.order ?? 0,
|
|
40
|
+
sequence: middlewareSequence++,
|
|
41
|
+
};
|
|
14
42
|
if (propertyKey === undefined) {
|
|
15
43
|
// Class-level
|
|
16
|
-
const existing = Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_MIDDLEWARE, target) || [];
|
|
17
|
-
const updated = [...existing,
|
|
44
|
+
const existing = normalizeBindings(Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_MIDDLEWARE, target) || []);
|
|
45
|
+
const updated = [...existing, binding];
|
|
18
46
|
Reflect.defineMetadata(metadata_keys_1.METADATA_KEYS.USE_MIDDLEWARE, updated, target);
|
|
19
47
|
const storage = metadata_storage_1.MetadataStorage.getInstance();
|
|
20
|
-
storage.addClassMetadata?.(target, "middleware",
|
|
48
|
+
storage.addClassMetadata?.(target, "middleware", binding);
|
|
21
49
|
}
|
|
22
50
|
else {
|
|
23
51
|
// Method-level
|
|
24
|
-
const existing = Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_MIDDLEWARE, target, propertyKey) || [];
|
|
25
|
-
const updated = [...existing,
|
|
52
|
+
const existing = normalizeBindings(Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_MIDDLEWARE, target, propertyKey) || []);
|
|
53
|
+
const updated = [...existing, binding];
|
|
26
54
|
Reflect.defineMetadata(metadata_keys_1.METADATA_KEYS.USE_MIDDLEWARE, updated, target, propertyKey);
|
|
27
55
|
const storage = metadata_storage_1.MetadataStorage.getInstance();
|
|
28
|
-
storage.addMethodMetadata?.(target.constructor, propertyKey.toString(), "middleware",
|
|
56
|
+
storage.addMethodMetadata?.(target.constructor, propertyKey.toString(), "middleware", binding);
|
|
29
57
|
}
|
|
30
58
|
};
|
|
31
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.decorator.js","sourceRoot":"","sources":["../../../src/core/decorators/middleware.decorator.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"middleware.decorator.js","sourceRoot":"","sources":["../../../src/core/decorators/middleware.decorator.ts"],"names":[],"mappings":";;AA+CA,gDA+CC;AA7FD,6DAA0D;AAC1D,mEAA+D;AAY/D,IAAI,kBAAkB,GAAG,CAAC,CAAC;AAE3B,SAAS,iBAAiB,CAAC,QAAe;IACxC,OAAO,QAAQ;SACZ,GAAG,CAAC,CAAC,KAAU,EAAE,KAAa,EAAE,EAAE;QACjC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;YAChC,OAAO;gBACL,UAAU,EAAE,KAAK;gBACjB,KAAK,EAAE,CAAC;gBACR,QAAQ,EAAE,KAAK;aAChB,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACpD,OAAO;gBACL,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC/B,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK;aAC1C,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,KAAK,EAA8B,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAChC,eAA8B,EAC9B,UAAqC,EAAE;IAEvC,OAAO,CAAC,MAAW,EAAE,WAA6B,EAAE,EAAE;QACpD,MAAM,OAAO,GAAsB;YACjC,UAAU,EAAE,eAAe;YAC3B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;YACzB,QAAQ,EAAE,kBAAkB,EAAE;SAC/B,CAAC;QAEF,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,cAAc;YACd,MAAM,QAAQ,GAAG,iBAAiB,CAChC,OAAO,CAAC,WAAW,CAAC,6BAAa,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,EAAE,CAChE,CAAC;YACF,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;YACvC,OAAO,CAAC,cAAc,CAAC,6BAAa,CAAC,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAEtE,MAAM,OAAO,GAAG,kCAAe,CAAC,WAAW,EAAE,CAAC;YAC9C,OAAO,CAAC,gBAAgB,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,eAAe;YACf,MAAM,QAAQ,GAAG,iBAAiB,CAChC,OAAO,CAAC,WAAW,CACjB,6BAAa,CAAC,cAAc,EAC5B,MAAM,EACN,WAAW,CACZ,IAAI,EAAE,CACR,CAAC;YACF,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;YACvC,OAAO,CAAC,cAAc,CACpB,6BAAa,CAAC,cAAc,EAC5B,OAAO,EACP,MAAM,EACN,WAAW,CACZ,CAAC;YAEF,MAAM,OAAO,GAAG,kCAAe,CAAC,WAAW,EAAE,CAAC;YAC9C,OAAO,CAAC,iBAAiB,EAAE,CACzB,MAAM,CAAC,WAAW,EAClB,WAAW,CAAC,QAAQ,EAAE,EACtB,YAAY,EACZ,OAAO,CACR,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,kBAAkB,CAAC;AAO1B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,yCAAyC,CAAC;AACxD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,0CAA0C,CAAC;AACzD,cAAc,wCAAwC,CAAC;AACvD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,oCAAoC,CAAC;AACnD,cAAc,wCAAwC,CAAC;AACvD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AAGjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAG1C,cAAc,uCAAuC,CAAC;AAGtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,kCAAkC,CAAC;AACjD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,OAAO,EACL,cAAc,EACd,KAAK,QAAQ,IAAI,gBAAgB,EACjC,KAAK,cAAc,GACpB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAGvE,YAAY,EACV,WAAW,EACX,aAAa,EACb,OAAO,EACP,mBAAmB,EACnB,OAAO,EACP,OAAO,EACP,MAAM,EACN,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,SAAS,EACT,YAAY,EACZ,OAAO,EACP,cAAc,EACd,mBAAmB,EACnB,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,UAAU,EACV,IAAI,GACL,MAAM,SAAS,CAAC;AAGjB,cAAc,SAAS,CAAC;AAGxB,cAAc,QAAQ,CAAC;AAGvB,OAAO,EACL,YAAY,EACZ,WAAW,EACX,WAAW,EACX,MAAM,EACN,iBAAiB,EACjB,SAAS,EACT,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,MAAM,EACN,mBAAmB,EACnB,kBAAkB,EAClB,GAAG,EACH,MAAM,EACN,MAAM,EACN,UAAU,EACV,GAAG,EACH,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,KAAK,EACL,KAAK,EACL,MAAM,EACN,IAAI,EACJ,GAAG,EACH,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,EACH,OAAO,EACP,KAAK,GACN,MAAM,QAAQ,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.Value = exports.Service = exports.Res = exports.Req = exports.Query = exports.Qualifier = exports.Put = exports.Post = exports.Plugin = exports.Patch = exports.Param = exports.OnStartup = exports.OnShutdown = exports.OnPluginShutdown = exports.OnPluginInit = exports.NotificationChannel = exports.MailTemplate = exports.Mailer = exports.Mail = exports.Job = exports.Injectable = exports.Inject = exports.Header = exports.Get = exports.FragmentRepository = exports.FragmentApplication = exports.Delete = exports.Cron = exports.Controller = exports.Body = exports.Autowired = exports.AutoConfiguration = exports.ApiTag = exports.ApiResponse = exports.ApiProperty = exports.ApiOperation = exports.RequestContextStorage = exports.FragmentLogger = void 0;
|
|
19
19
|
require("reflect-metadata");
|
|
20
|
+
const env_utils_1 = require("./shared/env.utils");
|
|
21
|
+
// Load environment files before exporting modules with static env initializers.
|
|
22
|
+
env_utils_1.EnvUtils.loadEnvironment();
|
|
20
23
|
// Core exports
|
|
21
24
|
__exportStar(require("./core/container/di-container"), exports);
|
|
22
25
|
__exportStar(require("./core/decorators/api.decorator"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,kDAAkD;;;;;;;;;;;;;;;;;AAElD,4BAA0B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,kDAAkD;;;;;;;;;;;;;;;;;AAElD,4BAA0B;AAC1B,kDAA8C;AAE9C,gFAAgF;AAChF,oBAAQ,CAAC,eAAe,EAAE,CAAC;AAE3B,eAAe;AACf,gEAA8C;AAC9C,kEAAgD;AAChD,0EAAwD;AACxD,iFAA+D;AAC/D,2EAAyD;AACzD,yEAAuD;AACvD,+EAA6D;AAC7D,oEAAkD;AAClD,oEAAkD;AAClD,yEAAuD;AACvD,yEAAuD;AACvD,0EAAwD;AACxD,kEAAgD;AAChD,wEAAsD;AACtD,mEAAiD;AACjD,yEAAuD;AACvD,2EAAyD;AACzD,+EAA6D;AAC7D,qEAAmD;AACnD,yEAAuD;AACvD,8EAA4D;AAC5D,sEAAoD;AACpD,mEAAiD;AAEjD,cAAc;AACd,6DAA2C;AAC3C,4DAA0C;AAE1C,kBAAkB;AAClB,wEAAsD;AAEtD,iBAAiB;AACjB,8DAA4C;AAC5C,kEAAgD;AAChD,sDAAoC;AACpC,sDAAoC;AACpC,sDAAoC;AACpC,+DAA6C;AAC7C,2DAAyC;AACzC,4DAA0C;AAE1C,iBAAiB;AACjB,mEAAiD;AACjD,gFAA8D;AAC9D,8EAA4D;AAC5D,gFAA8D;AAC9D,4DAA0C;AAC1C,kDAAgC;AAChC,0CAIyB;AAHvB,wGAAA,cAAc,OAAA;AAKhB,kBAAkB;AAClB,kEAAuE;AAA9D,wHAAA,qBAAqB,OAAA;AA2B9B,qBAAqB;AACrB,0CAAwB;AAExB,SAAS;AACT,yCAAuB;AAEvB,wBAAwB;AACxB,+BAqCgB;AApCd,oGAAA,YAAY,OAAA;AACZ,mGAAA,WAAW,OAAA;AACX,mGAAA,WAAW,OAAA;AACX,8FAAA,MAAM,OAAA;AACN,yGAAA,iBAAiB,OAAA;AACjB,iGAAA,SAAS,OAAA;AACT,4FAAA,IAAI,OAAA;AACJ,kGAAA,UAAU,OAAA;AACV,4FAAA,IAAI,OAAA;AACJ,8FAAA,MAAM,OAAA;AACN,2GAAA,mBAAmB,OAAA;AACnB,0GAAA,kBAAkB,OAAA;AAClB,2FAAA,GAAG,OAAA;AACH,8FAAA,MAAM,OAAA;AACN,8FAAA,MAAM,OAAA;AACN,kGAAA,UAAU,OAAA;AACV,2FAAA,GAAG,OAAA;AACH,4FAAA,IAAI,OAAA;AACJ,8FAAA,MAAM,OAAA;AACN,oGAAA,YAAY,OAAA;AACZ,2GAAA,mBAAmB,OAAA;AACnB,oGAAA,YAAY,OAAA;AACZ,wGAAA,gBAAgB,OAAA;AAChB,kGAAA,UAAU,OAAA;AACV,iGAAA,SAAS,OAAA;AACT,6FAAA,KAAK,OAAA;AACL,6FAAA,KAAK,OAAA;AACL,8FAAA,MAAM,OAAA;AACN,4FAAA,IAAI,OAAA;AACJ,2FAAA,GAAG,OAAA;AACH,iGAAA,SAAS,OAAA;AACT,6FAAA,KAAK,OAAA;AACL,2FAAA,GAAG,OAAA;AACH,2FAAA,GAAG,OAAA;AACH,+FAAA,OAAO,OAAA;AACP,6FAAA,KAAK,OAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { FragmentCommand } from "../base/fragment-command";
|
|
2
|
+
export declare class InstallCommand extends FragmentCommand<[string | undefined, any]> {
|
|
3
|
+
name: string;
|
|
4
|
+
description: string;
|
|
5
|
+
protected configure(command: import("commander").Command): void;
|
|
6
|
+
protected execute(directory: string | undefined, options: any): Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
export declare class InitAliasCommand extends FragmentCommand<[string | undefined, any]> {
|
|
9
|
+
name: string;
|
|
10
|
+
description: string;
|
|
11
|
+
protected configure(command: import("commander").Command): void;
|
|
12
|
+
protected execute(directory: string | undefined, options: any): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../../src/platform/cli/commands/install/command.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AA0F3D,qBAAa,cAAe,SAAQ,eAAe,CAAC,CAAC,MAAM,GAAG,SAAS,EAAE,GAAG,CAAC,CAAC;IAC5E,IAAI,SAAyB;IAC7B,WAAW,SAAoD;IAE/D,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,WAAW,EAAE,OAAO,GAAG,IAAI;cAI/C,OAAO,CAAC,SAAS,EAAE,MAAM,YAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAG9E;AAED,qBAAa,gBAAiB,SAAQ,eAAe,CAAC,CAAC,MAAM,GAAG,SAAS,EAAE,GAAG,CAAC,CAAC;IAC9E,IAAI,SAAsB;IAC1B,WAAW,SAAuB;IAElC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,WAAW,EAAE,OAAO,GAAG,IAAI;cAI/C,OAAO,CAAC,SAAS,EAAE,MAAM,YAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAG9E"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.InitAliasCommand = exports.InstallCommand = void 0;
|
|
40
|
+
const fs = __importStar(require("fs-extra"));
|
|
41
|
+
const path = __importStar(require("path"));
|
|
42
|
+
const ora_1 = __importDefault(require("ora"));
|
|
43
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
44
|
+
const child_process_1 = require("child_process");
|
|
45
|
+
const fragment_command_1 = require("../base/fragment-command");
|
|
46
|
+
const init_scaffold_1 = require("../../scaffold/init/init.scaffold");
|
|
47
|
+
const prompts_1 = require("../../scaffold/init/prompts");
|
|
48
|
+
async function runScaffoldInstall(directory = ".", options) {
|
|
49
|
+
const spinner = (0, ora_1.default)();
|
|
50
|
+
try {
|
|
51
|
+
const projectPath = path.resolve(process.cwd(), directory);
|
|
52
|
+
const projectName = path.basename(projectPath);
|
|
53
|
+
spinner.start("Creating project directory...");
|
|
54
|
+
await fs.ensureDir(projectPath);
|
|
55
|
+
spinner.succeed();
|
|
56
|
+
if (options.type === "plugin") {
|
|
57
|
+
const pluginConfig = await (0, prompts_1.promptPluginConfig)(projectName);
|
|
58
|
+
spinner.start("Generating plugin files...");
|
|
59
|
+
await (0, init_scaffold_1.generatePluginProject)(projectPath, pluginConfig);
|
|
60
|
+
spinner.succeed();
|
|
61
|
+
if (!options.skipInstall && process.env.FRAGMENT_SKIP_PACKAGE_INSTALL !== "1") {
|
|
62
|
+
spinner.start("Installing dependencies...");
|
|
63
|
+
try {
|
|
64
|
+
(0, child_process_1.execSync)("npm install", { cwd: projectPath, stdio: "ignore" });
|
|
65
|
+
spinner.succeed();
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
spinner.fail("Failed to install dependencies");
|
|
69
|
+
console.log(chalk_1.default.yellow("You can install them manually by running: npm install"));
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
console.log("\n" + chalk_1.default.green("✨ Project installed successfully!"));
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
const projectConfig = await (0, prompts_1.promptProjectConfig)(projectName, options);
|
|
76
|
+
spinner.start("Generating project files...");
|
|
77
|
+
await (0, init_scaffold_1.generateProjectStructure)(projectPath, projectConfig);
|
|
78
|
+
spinner.succeed();
|
|
79
|
+
spinner.start("Creating configuration files...");
|
|
80
|
+
await (0, init_scaffold_1.createConfigFiles)(projectPath, projectConfig.name, projectConfig);
|
|
81
|
+
spinner.succeed();
|
|
82
|
+
if (!options.skipInstall && process.env.FRAGMENT_SKIP_PACKAGE_INSTALL !== "1") {
|
|
83
|
+
spinner.start("Installing dependencies...");
|
|
84
|
+
try {
|
|
85
|
+
(0, child_process_1.execSync)("npm install", { cwd: projectPath, stdio: "ignore" });
|
|
86
|
+
spinner.succeed();
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
spinner.fail("Failed to install dependencies");
|
|
90
|
+
console.log(chalk_1.default.yellow("You can install them manually by running: npm install"));
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
console.log("\n" + chalk_1.default.green("✨ Project installed successfully!"));
|
|
94
|
+
console.log("\nNext steps:");
|
|
95
|
+
if (directory !== ".") {
|
|
96
|
+
console.log(chalk_1.default.cyan(` cd ${directory}`));
|
|
97
|
+
}
|
|
98
|
+
if (options.skipInstall) {
|
|
99
|
+
console.log(chalk_1.default.cyan(" npm install"));
|
|
100
|
+
}
|
|
101
|
+
console.log(chalk_1.default.cyan(" fragment serve"));
|
|
102
|
+
console.log("");
|
|
103
|
+
}
|
|
104
|
+
catch (error) {
|
|
105
|
+
spinner.fail("Failed to install project");
|
|
106
|
+
console.error(chalk_1.default.red(error));
|
|
107
|
+
process.exit(1);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
function configureInstallOptions(command) {
|
|
111
|
+
command
|
|
112
|
+
.option("-t, --template <template>", "Project template", "api")
|
|
113
|
+
.option("-f, --features <features>", "Features to include (comma-separated)")
|
|
114
|
+
.option("--type <type>", "Project structure type (module|layered|feature|plugin)")
|
|
115
|
+
.option("--skip-install", "Skip npm install");
|
|
116
|
+
}
|
|
117
|
+
class InstallCommand extends fragment_command_1.FragmentCommand {
|
|
118
|
+
constructor() {
|
|
119
|
+
super(...arguments);
|
|
120
|
+
this.name = "install [directory]";
|
|
121
|
+
this.description = "Install a new Fragment project (replaces init)";
|
|
122
|
+
}
|
|
123
|
+
configure(command) {
|
|
124
|
+
configureInstallOptions(command);
|
|
125
|
+
}
|
|
126
|
+
async execute(directory = ".", options) {
|
|
127
|
+
await runScaffoldInstall(directory, options);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
exports.InstallCommand = InstallCommand;
|
|
131
|
+
class InitAliasCommand extends fragment_command_1.FragmentCommand {
|
|
132
|
+
constructor() {
|
|
133
|
+
super(...arguments);
|
|
134
|
+
this.name = "init [directory]";
|
|
135
|
+
this.description = "Alias for install";
|
|
136
|
+
}
|
|
137
|
+
configure(command) {
|
|
138
|
+
configureInstallOptions(command);
|
|
139
|
+
}
|
|
140
|
+
async execute(directory = ".", options) {
|
|
141
|
+
await runScaffoldInstall(directory, options);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
exports.InitAliasCommand = InitAliasCommand;
|
|
145
|
+
//# sourceMappingURL=command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../../../../src/platform/cli/commands/install/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../src/platform/cli/commands/register.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../src/platform/cli/commands/register.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBzC,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CA0B3D"}
|
|
@@ -1,41 +1,48 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.registerAllCommands = registerAllCommands;
|
|
4
|
-
const command_1 = require("./
|
|
5
|
-
const command_2 = require("./
|
|
6
|
-
const command_3 = require("./
|
|
7
|
-
const command_4 = require("./
|
|
8
|
-
const command_5 = require("./
|
|
9
|
-
const command_6 = require("./
|
|
10
|
-
const command_7 = require("./
|
|
11
|
-
const command_8 = require("./
|
|
12
|
-
const command_9 = require("./
|
|
13
|
-
const command_10 = require("./
|
|
14
|
-
const command_11 = require("./
|
|
15
|
-
const command_12 = require("./
|
|
16
|
-
const command_13 = require("./
|
|
17
|
-
const command_14 = require("./
|
|
18
|
-
const command_15 = require("./
|
|
19
|
-
const
|
|
4
|
+
const command_1 = require("./add/command");
|
|
5
|
+
const command_2 = require("./build/command");
|
|
6
|
+
const command_3 = require("./cache/command");
|
|
7
|
+
const command_4 = require("./config/command");
|
|
8
|
+
const command_5 = require("./diagnostics/command");
|
|
9
|
+
const command_6 = require("./docs/command");
|
|
10
|
+
const command_7 = require("./generate/command");
|
|
11
|
+
const command_8 = require("./install/command");
|
|
12
|
+
const command_9 = require("./lint/command");
|
|
13
|
+
const command_10 = require("./make/command");
|
|
14
|
+
const command_11 = require("./migrate/command");
|
|
15
|
+
const command_12 = require("./plugin/command");
|
|
16
|
+
const command_13 = require("./route/command");
|
|
17
|
+
const command_14 = require("./serve/command");
|
|
18
|
+
const command_15 = require("./test/command");
|
|
19
|
+
const install_api_1 = require("../web/commands/install-api");
|
|
20
|
+
const install_web_1 = require("../web/commands/install-web");
|
|
21
|
+
const web_1 = require("../web");
|
|
20
22
|
function registerAllCommands(program) {
|
|
21
23
|
const commands = [
|
|
22
|
-
new
|
|
23
|
-
new
|
|
24
|
-
new
|
|
25
|
-
new
|
|
26
|
-
new
|
|
27
|
-
|
|
28
|
-
...(0,
|
|
29
|
-
...(0,
|
|
30
|
-
new
|
|
31
|
-
new
|
|
32
|
-
new
|
|
33
|
-
new
|
|
34
|
-
new
|
|
35
|
-
new
|
|
36
|
-
...(0,
|
|
37
|
-
...(0,
|
|
24
|
+
new command_8.InstallCommand(),
|
|
25
|
+
new command_8.InitAliasCommand(),
|
|
26
|
+
new command_7.GenerateCommand(),
|
|
27
|
+
new command_14.ServeCommand(),
|
|
28
|
+
new command_2.BuildCommand(),
|
|
29
|
+
new command_15.TestCommand(),
|
|
30
|
+
...(0, command_11.getMigrateCommands)(),
|
|
31
|
+
...(0, command_5.getDiagnosticsCommands)(),
|
|
32
|
+
new command_1.AddCommand(),
|
|
33
|
+
new command_13.RouteCommand(),
|
|
34
|
+
new command_4.ConfigCommand(),
|
|
35
|
+
new command_3.CacheCommand(),
|
|
36
|
+
new command_9.LintCommand(),
|
|
37
|
+
new command_6.DocsCommand(),
|
|
38
|
+
...(0, command_12.getPluginCommands)(),
|
|
39
|
+
...(0, command_10.getMakeCommands)(),
|
|
38
40
|
];
|
|
39
41
|
commands.forEach((command) => command.register(program));
|
|
42
|
+
if (program) {
|
|
43
|
+
(0, install_web_1.registerInstallWeb)(program);
|
|
44
|
+
(0, install_api_1.registerInstallApi)(program);
|
|
45
|
+
(0, web_1.registerWebCommands)(program);
|
|
46
|
+
}
|
|
40
47
|
}
|
|
41
48
|
//# sourceMappingURL=register.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../../../src/platform/cli/commands/register.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../../../src/platform/cli/commands/register.ts"],"names":[],"mappings":";;AAoBA,kDA0BC;AA7CD,2CAA2C;AAC3C,6CAA+C;AAC/C,6CAA+C;AAC/C,8CAAiD;AACjD,mDAA+D;AAC/D,4CAA6C;AAC7C,gDAAqD;AACrD,+CAAqE;AACrE,4CAA6C;AAC7C,6CAAiD;AACjD,gDAAuD;AACvD,+CAAqD;AACrD,8CAA+C;AAC/C,8CAA+C;AAC/C,6CAA6C;AAC7C,6DAAiE;AACjE,6DAAiE;AACjE,gCAA6C;AAE7C,SAAgB,mBAAmB,CAAC,OAAiB;IACnD,MAAM,QAAQ,GAAG;QACf,IAAI,wBAAc,EAAE;QACpB,IAAI,0BAAgB,EAAE;QACtB,IAAI,yBAAe,EAAE;QACrB,IAAI,uBAAY,EAAE;QAClB,IAAI,sBAAY,EAAE;QAClB,IAAI,sBAAW,EAAE;QACjB,GAAG,IAAA,6BAAkB,GAAE;QACvB,GAAG,IAAA,gCAAsB,GAAE;QAC3B,IAAI,oBAAU,EAAE;QAChB,IAAI,uBAAY,EAAE;QAClB,IAAI,uBAAa,EAAE;QACnB,IAAI,sBAAY,EAAE;QAClB,IAAI,qBAAW,EAAE;QACjB,IAAI,qBAAW,EAAE;QACjB,GAAG,IAAA,4BAAiB,GAAE;QACtB,GAAG,IAAA,0BAAe,GAAE;KACrB,CAAC;IAEF,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,IAAI,OAAO,EAAE,CAAC;QACZ,IAAA,gCAAkB,EAAC,OAAO,CAAC,CAAC;QAC5B,IAAA,gCAAkB,EAAC,OAAO,CAAC,CAAC;QAC5B,IAAA,yBAAmB,EAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../../src/platform/cli/commands/serve/command.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,qBAAa,YAAa,SAAQ,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC;IACtD,IAAI,SAAW;IACf,WAAW,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../../src/platform/cli/commands/serve/command.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,qBAAa,YAAa,SAAQ,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC;IACtD,IAAI,SAAW;IACf,WAAW,SAAsB;IAEjC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,WAAW,EAAE,OAAO,GAAG,IAAI;cAQ/C,OAAO,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAwGrD"}
|
|
@@ -48,15 +48,21 @@ class ServeCommand extends fragment_command_1.FragmentCommand {
|
|
|
48
48
|
constructor() {
|
|
49
49
|
super(...arguments);
|
|
50
50
|
this.name = "serve";
|
|
51
|
-
this.description = "Start the
|
|
51
|
+
this.description = "Start the server";
|
|
52
52
|
}
|
|
53
53
|
configure(command) {
|
|
54
54
|
command
|
|
55
55
|
.option("-w, --watch", "Watch for changes", true)
|
|
56
|
-
.option("-p, --port <port>", "Port to run on", "3000")
|
|
56
|
+
.option("-p, --port <port>", "Port to run on", "3000")
|
|
57
|
+
.option("--prod", "Run production server via npm start")
|
|
58
|
+
.option("--dev", "Force development server (ts-node)");
|
|
57
59
|
}
|
|
58
60
|
async execute(options) {
|
|
59
|
-
if (
|
|
61
|
+
if (options.prod && options.dev) {
|
|
62
|
+
console.error(chalk_1.default.red("❌ Choose either --prod or --dev, not both"));
|
|
63
|
+
process.exit(1);
|
|
64
|
+
}
|
|
65
|
+
if (options.prod) {
|
|
60
66
|
const pkg = require(path.join(process.cwd(), "package.json"));
|
|
61
67
|
if (!pkg.scripts?.start) {
|
|
62
68
|
console.error(chalk_1.default.red("❌ package.json missing 'start' script for production"));
|