@fougere/core 0.2.0-alpha.2 → 0.3.0-alpha.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/README.md +2 -1
- package/dist/boot/AppLifecycle.d.ts +18 -0
- package/dist/boot/AppLifecycle.d.ts.map +1 -0
- package/dist/boot/AppLifecycle.js +42 -0
- package/dist/boot/AppLifecycle.js.map +1 -0
- package/dist/boot/Emissions.d.ts +126 -0
- package/dist/boot/Emissions.d.ts.map +1 -0
- package/dist/boot/Emissions.js +233 -0
- package/dist/boot/Emissions.js.map +1 -0
- package/dist/boot/HandlerFacade.d.ts +72 -0
- package/dist/boot/HandlerFacade.d.ts.map +1 -0
- package/dist/boot/HandlerFacade.js +174 -0
- package/dist/boot/HandlerFacade.js.map +1 -0
- package/dist/boot/Lifecycle.d.ts +4 -0
- package/dist/boot/Lifecycle.d.ts.map +1 -0
- package/dist/boot/Lifecycle.js +3 -0
- package/dist/boot/Lifecycle.js.map +1 -0
- package/dist/boot/ambient-port.d.ts +38 -0
- package/dist/boot/ambient-port.d.ts.map +1 -0
- package/dist/boot/ambient-port.js +2 -0
- package/dist/boot/ambient-port.js.map +1 -0
- package/dist/boot/ambient.als.d.ts +3 -0
- package/dist/boot/ambient.als.d.ts.map +1 -0
- package/dist/boot/ambient.als.js +34 -0
- package/dist/boot/ambient.als.js.map +1 -0
- package/dist/boot/ambient.queue.d.ts +10 -0
- package/dist/boot/ambient.queue.d.ts.map +1 -0
- package/dist/boot/ambient.queue.js +60 -0
- package/dist/boot/ambient.queue.js.map +1 -0
- package/dist/boot/apply.d.ts +22 -0
- package/dist/boot/apply.d.ts.map +1 -0
- package/dist/boot/apply.js +48 -0
- package/dist/boot/apply.js.map +1 -0
- package/dist/boot/auth.d.ts +53 -0
- package/dist/boot/auth.d.ts.map +1 -0
- package/dist/boot/auth.js +2 -0
- package/dist/boot/auth.js.map +1 -0
- package/dist/{binding.d.ts → boot/binding.d.ts} +14 -17
- package/dist/boot/binding.d.ts.map +1 -0
- package/dist/{binding.js → boot/binding.js} +19 -10
- package/dist/boot/binding.js.map +1 -0
- package/dist/{boot.d.ts → boot/boot.d.ts} +25 -5
- package/dist/boot/boot.d.ts.map +1 -0
- package/dist/boot/boot.js +70 -0
- package/dist/boot/boot.js.map +1 -0
- package/dist/boot/bootstrap.d.ts.map +1 -0
- package/dist/boot/bootstrap.js +721 -0
- package/dist/boot/bootstrap.js.map +1 -0
- package/dist/boot/egress.d.ts +8 -0
- package/dist/boot/egress.d.ts.map +1 -0
- package/dist/boot/egress.js +11 -0
- package/dist/boot/egress.js.map +1 -0
- package/dist/boot/frame.d.ts +44 -0
- package/dist/boot/frame.d.ts.map +1 -0
- package/dist/boot/frame.js +181 -0
- package/dist/boot/frame.js.map +1 -0
- package/dist/boot/ownership.d.ts +42 -0
- package/dist/boot/ownership.d.ts.map +1 -0
- package/dist/boot/ownership.js +127 -0
- package/dist/boot/ownership.js.map +1 -0
- package/dist/boot/ports.d.ts +17 -0
- package/dist/boot/ports.d.ts.map +1 -0
- package/dist/boot/ports.js +57 -0
- package/dist/boot/ports.js.map +1 -0
- package/dist/{remote.d.ts → boot/remote.d.ts} +11 -3
- package/dist/boot/remote.d.ts.map +1 -0
- package/dist/{remote.js → boot/remote.js} +24 -26
- package/dist/boot/remote.js.map +1 -0
- package/dist/{seed.d.ts → boot/seed.d.ts} +13 -1
- package/dist/boot/seed.d.ts.map +1 -0
- package/dist/{seed.js → boot/seed.js} +24 -3
- package/dist/boot/seed.js.map +1 -0
- package/dist/boot/together.d.ts +26 -0
- package/dist/boot/together.d.ts.map +1 -0
- package/dist/boot/together.js +163 -0
- package/dist/boot/together.js.map +1 -0
- package/dist/boot/types.d.ts +260 -0
- package/dist/boot/types.d.ts.map +1 -0
- package/dist/boot/types.js.map +1 -0
- package/dist/builtins/config.d.ts +9 -0
- package/dist/builtins/config.d.ts.map +1 -1
- package/dist/builtins/config.js +16 -1
- package/dist/builtins/config.js.map +1 -1
- package/dist/builtins/logger.d.ts +37 -4
- package/dist/builtins/logger.d.ts.map +1 -1
- package/dist/builtins/logger.js +66 -7
- package/dist/builtins/logger.js.map +1 -1
- package/dist/config-loader.d.ts +39 -35
- package/dist/config-loader.d.ts.map +1 -1
- package/dist/config-loader.js +15 -54
- package/dist/config-loader.js.map +1 -1
- package/dist/contract/Call.d.ts +10 -0
- package/dist/contract/Call.d.ts.map +1 -0
- package/dist/contract/Call.js +15 -0
- package/dist/contract/Call.js.map +1 -0
- package/dist/contract/Invocation.d.ts +27 -0
- package/dist/contract/Invocation.d.ts.map +1 -0
- package/dist/contract/Invocation.js +59 -0
- package/dist/contract/Invocation.js.map +1 -0
- package/dist/contract/RouteAddress.d.ts +17 -0
- package/dist/contract/RouteAddress.d.ts.map +1 -0
- package/dist/contract/RouteAddress.js +38 -0
- package/dist/contract/RouteAddress.js.map +1 -0
- package/dist/contract.d.ts +25 -19
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +25 -10
- package/dist/contract.js.map +1 -1
- package/dist/crypto/encoding.d.ts +25 -0
- package/dist/crypto/encoding.d.ts.map +1 -0
- package/dist/crypto/encoding.js +58 -0
- package/dist/crypto/encoding.js.map +1 -0
- package/dist/crypto/node.d.ts +4 -0
- package/dist/crypto/node.d.ts.map +1 -0
- package/dist/crypto/node.js +25 -0
- package/dist/crypto/node.js.map +1 -0
- package/dist/crypto/port.d.ts +42 -0
- package/dist/crypto/port.d.ts.map +1 -0
- package/dist/crypto/port.js +19 -0
- package/dist/crypto/port.js.map +1 -0
- package/dist/crypto/webcrypto.d.ts +4 -0
- package/dist/crypto/webcrypto.d.ts.map +1 -0
- package/dist/crypto/webcrypto.js +34 -0
- package/dist/crypto/webcrypto.js.map +1 -0
- package/dist/dispatch/ArgumentResolver.d.ts +10 -0
- package/dist/dispatch/ArgumentResolver.d.ts.map +1 -0
- package/dist/dispatch/ArgumentResolver.js +12 -0
- package/dist/dispatch/ArgumentResolver.js.map +1 -0
- package/dist/dispatch/ArrayResult.d.ts +3 -0
- package/dist/dispatch/ArrayResult.d.ts.map +1 -0
- package/dist/dispatch/ArrayResult.js +11 -0
- package/dist/dispatch/ArrayResult.js.map +1 -0
- package/dist/dispatch/DispatchEvent.d.ts +18 -0
- package/dist/dispatch/DispatchEvent.d.ts.map +1 -0
- package/dist/dispatch/DispatchEvent.js +30 -0
- package/dist/dispatch/DispatchEvent.js.map +1 -0
- package/dist/dispatch/DispatchLifecycle.d.ts +9 -0
- package/dist/dispatch/DispatchLifecycle.d.ts.map +1 -0
- package/dist/dispatch/DispatchLifecycle.js +25 -0
- package/dist/dispatch/DispatchLifecycle.js.map +1 -0
- package/dist/dispatch/DispatchPort.d.ts +6 -0
- package/dist/dispatch/DispatchPort.d.ts.map +1 -0
- package/dist/dispatch/DispatchPort.js +2 -0
- package/dist/dispatch/DispatchPort.js.map +1 -0
- package/dist/dispatch/Dispatcher.d.ts +16 -0
- package/dist/dispatch/Dispatcher.d.ts.map +1 -0
- package/dist/dispatch/Dispatcher.js +44 -0
- package/dist/dispatch/Dispatcher.js.map +1 -0
- package/dist/dispatch/InFlight.d.ts +12 -0
- package/dist/dispatch/InFlight.d.ts.map +1 -0
- package/dist/dispatch/InFlight.js +46 -0
- package/dist/dispatch/InFlight.js.map +1 -0
- package/dist/dispatch/InputValidator.d.ts +7 -0
- package/dist/dispatch/InputValidator.d.ts.map +1 -0
- package/dist/dispatch/InputValidator.js +21 -0
- package/dist/dispatch/InputValidator.js.map +1 -0
- package/dist/dispatch/LocalRoutePolicy.d.ts +11 -0
- package/dist/dispatch/LocalRoutePolicy.d.ts.map +1 -0
- package/dist/dispatch/LocalRoutePolicy.js +32 -0
- package/dist/dispatch/LocalRoutePolicy.js.map +1 -0
- package/dist/dispatch/OperationExecutor.d.ts +25 -0
- package/dist/dispatch/OperationExecutor.d.ts.map +1 -0
- package/dist/dispatch/OperationExecutor.js +32 -0
- package/dist/dispatch/OperationExecutor.js.map +1 -0
- package/dist/dispatch/OperationRoute.d.ts +13 -0
- package/dist/dispatch/OperationRoute.d.ts.map +1 -0
- package/dist/dispatch/OperationRoute.js +15 -0
- package/dist/dispatch/OperationRoute.js.map +1 -0
- package/dist/dispatch/OutputProjector.d.ts +12 -0
- package/dist/dispatch/OutputProjector.d.ts.map +1 -0
- package/dist/dispatch/OutputProjector.js +30 -0
- package/dist/dispatch/OutputProjector.js.map +1 -0
- package/dist/dispatch/OutputView.d.ts +8 -0
- package/dist/dispatch/OutputView.d.ts.map +1 -0
- package/dist/dispatch/OutputView.js +10 -0
- package/dist/dispatch/OutputView.js.map +1 -0
- package/dist/dispatch/PresenterArgumentResolver.d.ts +12 -0
- package/dist/dispatch/PresenterArgumentResolver.d.ts.map +1 -0
- package/dist/dispatch/PresenterArgumentResolver.js +20 -0
- package/dist/dispatch/PresenterArgumentResolver.js.map +1 -0
- package/dist/dispatch/PresenterExecutor.d.ts +11 -0
- package/dist/dispatch/PresenterExecutor.d.ts.map +1 -0
- package/dist/dispatch/PresenterExecutor.js +56 -0
- package/dist/dispatch/PresenterExecutor.js.map +1 -0
- package/dist/dispatch/RemoteRouteResolver.d.ts +13 -0
- package/dist/dispatch/RemoteRouteResolver.d.ts.map +1 -0
- package/dist/dispatch/RemoteRouteResolver.js +18 -0
- package/dist/dispatch/RemoteRouteResolver.js.map +1 -0
- package/dist/dispatch/Route.d.ts +10 -0
- package/dist/dispatch/Route.d.ts.map +1 -0
- package/dist/dispatch/Route.js +2 -0
- package/dist/dispatch/Route.js.map +1 -0
- package/dist/dispatch/RouteNotFoundError.d.ts +10 -0
- package/dist/dispatch/RouteNotFoundError.d.ts.map +1 -0
- package/dist/dispatch/RouteNotFoundError.js +24 -0
- package/dist/dispatch/RouteNotFoundError.js.map +1 -0
- package/dist/dispatch/RoutePolicy.d.ts +8 -0
- package/dist/dispatch/RoutePolicy.d.ts.map +1 -0
- package/dist/dispatch/RoutePolicy.js +2 -0
- package/dist/dispatch/RoutePolicy.js.map +1 -0
- package/dist/dispatch/RouteRegistry.d.ts +18 -0
- package/dist/dispatch/RouteRegistry.d.ts.map +1 -0
- package/dist/dispatch/RouteRegistry.js +62 -0
- package/dist/dispatch/RouteRegistry.js.map +1 -0
- package/dist/dispatch/RouteResolver.d.ts +7 -0
- package/dist/dispatch/RouteResolver.d.ts.map +1 -0
- package/dist/dispatch/RouteResolver.js +2 -0
- package/dist/dispatch/RouteResolver.js.map +1 -0
- package/dist/dispatch/StorageGuard.d.ts +15 -0
- package/dist/dispatch/StorageGuard.d.ts.map +1 -0
- package/dist/dispatch/StorageGuard.js +63 -0
- package/dist/dispatch/StorageGuard.js.map +1 -0
- package/dist/effective-operation.d.ts +90 -0
- package/dist/effective-operation.d.ts.map +1 -0
- package/dist/effective-operation.js +450 -0
- package/dist/effective-operation.js.map +1 -0
- package/dist/emit.js +2 -2
- package/dist/emit.js.map +1 -1
- package/dist/entry/DynamicFacade.d.ts +10 -0
- package/dist/entry/DynamicFacade.d.ts.map +1 -0
- package/dist/entry/DynamicFacade.js +27 -0
- package/dist/entry/DynamicFacade.js.map +1 -0
- package/dist/entry/FacadeEntry.d.ts +11 -0
- package/dist/entry/FacadeEntry.d.ts.map +1 -0
- package/dist/entry/FacadeEntry.js +26 -0
- package/dist/entry/FacadeEntry.js.map +1 -0
- package/dist/entry/TransportEntry.d.ts +13 -0
- package/dist/entry/TransportEntry.d.ts.map +1 -0
- package/dist/entry/TransportEntry.js +24 -0
- package/dist/entry/TransportEntry.js.map +1 -0
- package/dist/frond-config.d.ts +24 -7
- package/dist/frond-config.d.ts.map +1 -1
- package/dist/frond-config.js.map +1 -1
- package/dist/graph.d.ts +1 -1
- package/dist/graph.d.ts.map +1 -1
- package/dist/graph.js +3 -2
- package/dist/graph.js.map +1 -1
- package/dist/identity-keys.d.ts +14 -0
- package/dist/identity-keys.d.ts.map +1 -0
- package/dist/identity-keys.js +37 -0
- package/dist/identity-keys.js.map +1 -0
- package/dist/identity.d.ts +58 -0
- package/dist/identity.d.ts.map +1 -0
- package/dist/identity.js +182 -0
- package/dist/identity.js.map +1 -0
- package/dist/imports.d.ts +1 -1
- package/dist/imports.d.ts.map +1 -1
- package/dist/imports.js +7 -3
- package/dist/imports.js.map +1 -1
- package/dist/index.d.ts +57 -38
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +38 -32
- package/dist/index.js.map +1 -1
- package/dist/loader.d.ts +16 -0
- package/dist/loader.d.ts.map +1 -0
- package/dist/loader.js +25 -0
- package/dist/loader.js.map +1 -0
- package/dist/node.d.ts +21 -0
- package/dist/node.d.ts.map +1 -0
- package/dist/node.js +24 -0
- package/dist/node.js.map +1 -0
- package/dist/orm.d.ts +69 -8
- package/dist/orm.d.ts.map +1 -1
- package/dist/orm.js +35 -2
- package/dist/orm.js.map +1 -1
- package/dist/prefab/collector.d.ts +29 -0
- package/dist/prefab/collector.d.ts.map +1 -0
- package/dist/prefab/collector.js +34 -0
- package/dist/prefab/collector.js.map +1 -0
- package/dist/{crud.d.ts → prefab/crud.d.ts} +7 -8
- package/dist/prefab/crud.d.ts.map +1 -0
- package/dist/{crud.js → prefab/crud.js} +39 -5
- package/dist/prefab/crud.js.map +1 -0
- package/dist/prefab/mirror.d.ts +52 -0
- package/dist/prefab/mirror.d.ts.map +1 -0
- package/dist/prefab/mirror.js +66 -0
- package/dist/prefab/mirror.js.map +1 -0
- package/dist/prefab/prefab.d.ts +15 -0
- package/dist/prefab/prefab.d.ts.map +1 -0
- package/dist/prefab/prefab.js +19 -0
- package/dist/prefab/prefab.js.map +1 -0
- package/dist/{presenter.d.ts → prefab/presenter.d.ts} +6 -17
- package/dist/prefab/presenter.d.ts.map +1 -0
- package/dist/{presenter.js → prefab/presenter.js} +5 -23
- package/dist/prefab/presenter.js.map +1 -0
- package/dist/prefab/repository.d.ts +104 -0
- package/dist/prefab/repository.d.ts.map +1 -0
- package/dist/prefab/repository.js +62 -0
- package/dist/prefab/repository.js.map +1 -0
- package/dist/scan/Fronds.d.ts +45 -0
- package/dist/scan/Fronds.d.ts.map +1 -0
- package/dist/scan/Fronds.js +66 -0
- package/dist/scan/Fronds.js.map +1 -0
- package/dist/scan/conventions.d.ts +74 -0
- package/dist/scan/conventions.d.ts.map +1 -0
- package/dist/scan/conventions.js +82 -0
- package/dist/scan/conventions.js.map +1 -0
- package/dist/scan/emit.d.ts +14 -0
- package/dist/scan/emit.d.ts.map +1 -0
- package/dist/scan/emit.js +211 -0
- package/dist/scan/emit.js.map +1 -0
- package/dist/scan/frond.d.ts +224 -0
- package/dist/scan/frond.d.ts.map +1 -0
- package/dist/scan/frond.js +2 -0
- package/dist/scan/frond.js.map +1 -0
- package/dist/{handler-parser.d.ts → scan/handler-parser.d.ts} +18 -9
- package/dist/scan/handler-parser.d.ts.map +1 -0
- package/dist/scan/handler-parser.js +625 -0
- package/dist/scan/handler-parser.js.map +1 -0
- package/dist/scan/scan-cache.d.ts +16 -0
- package/dist/scan/scan-cache.d.ts.map +1 -0
- package/dist/{scan-cache.js → scan/scan-cache.js} +27 -20
- package/dist/scan/scan-cache.js.map +1 -0
- package/dist/scan/scanner.d.ts +20 -0
- package/dist/scan/scanner.d.ts.map +1 -0
- package/dist/{scanner.js → scan/scanner.js} +185 -167
- package/dist/scan/scanner.js.map +1 -0
- package/dist/verify.d.ts +16 -3
- package/dist/verify.d.ts.map +1 -1
- package/dist/verify.js +21 -18
- package/dist/verify.js.map +1 -1
- package/dist/{call.d.ts → wire/call.d.ts} +70 -1
- package/dist/wire/call.d.ts.map +1 -0
- package/dist/{call.js → wire/call.js} +48 -75
- package/dist/wire/call.js.map +1 -0
- package/dist/{middleware.d.ts → wire/errors.d.ts} +18 -19
- package/dist/wire/errors.d.ts.map +1 -0
- package/dist/{middleware.js → wire/errors.js} +26 -14
- package/dist/wire/errors.js.map +1 -0
- package/dist/{errors.d.ts → wire/http-error.d.ts} +5 -6
- package/dist/wire/http-error.d.ts.map +1 -0
- package/dist/{errors.js → wire/http-error.js} +7 -6
- package/dist/wire/http-error.js.map +1 -0
- package/dist/wire/invocation.d.ts +4 -0
- package/dist/wire/invocation.d.ts.map +1 -0
- package/dist/wire/invocation.js +3 -0
- package/dist/wire/invocation.js.map +1 -0
- package/dist/{middleware/logger.d.ts → wire/loggerMiddleware.d.ts} +3 -3
- package/dist/wire/loggerMiddleware.d.ts.map +1 -0
- package/dist/{middleware/logger.js → wire/loggerMiddleware.js} +2 -2
- package/dist/wire/loggerMiddleware.js.map +1 -0
- package/dist/wire/middleware.d.ts +29 -0
- package/dist/wire/middleware.d.ts.map +1 -0
- package/dist/wire/middleware.js +20 -0
- package/dist/wire/middleware.js.map +1 -0
- package/dist/{operation.d.ts → wire/operation.d.ts} +39 -10
- package/dist/wire/operation.d.ts.map +1 -0
- package/dist/wire/operation.js +167 -0
- package/dist/wire/operation.js.map +1 -0
- package/package.json +24 -7
- package/dist/binding.d.ts.map +0 -1
- package/dist/binding.js.map +0 -1
- package/dist/boot.d.ts.map +0 -1
- package/dist/boot.js +0 -53
- package/dist/boot.js.map +0 -1
- package/dist/bootstrap.d.ts.map +0 -1
- package/dist/bootstrap.js +0 -879
- package/dist/bootstrap.js.map +0 -1
- package/dist/call.d.ts.map +0 -1
- package/dist/call.js.map +0 -1
- package/dist/collector.d.ts +0 -28
- package/dist/collector.d.ts.map +0 -1
- package/dist/collector.js +0 -32
- package/dist/collector.js.map +0 -1
- package/dist/crud.d.ts.map +0 -1
- package/dist/crud.js.map +0 -1
- package/dist/egress.d.ts +0 -52
- package/dist/egress.d.ts.map +0 -1
- package/dist/egress.js +0 -186
- package/dist/egress.js.map +0 -1
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js.map +0 -1
- package/dist/handler-parser.d.ts.map +0 -1
- package/dist/handler-parser.js +0 -505
- package/dist/handler-parser.js.map +0 -1
- package/dist/invocation.d.ts +0 -20
- package/dist/invocation.d.ts.map +0 -1
- package/dist/invocation.js +0 -15
- package/dist/invocation.js.map +0 -1
- package/dist/middleware/error-handler.d.ts +0 -15
- package/dist/middleware/error-handler.d.ts.map +0 -1
- package/dist/middleware/error-handler.js +0 -29
- package/dist/middleware/error-handler.js.map +0 -1
- package/dist/middleware/logger.d.ts.map +0 -1
- package/dist/middleware/logger.js.map +0 -1
- package/dist/middleware.d.ts.map +0 -1
- package/dist/middleware.js.map +0 -1
- package/dist/mirror.d.ts +0 -93
- package/dist/mirror.d.ts.map +0 -1
- package/dist/mirror.js +0 -96
- package/dist/mirror.js.map +0 -1
- package/dist/operation.d.ts.map +0 -1
- package/dist/operation.js +0 -95
- package/dist/operation.js.map +0 -1
- package/dist/presenter.d.ts.map +0 -1
- package/dist/presenter.js.map +0 -1
- package/dist/remote.d.ts.map +0 -1
- package/dist/remote.js.map +0 -1
- package/dist/repository.d.ts +0 -55
- package/dist/repository.d.ts.map +0 -1
- package/dist/repository.js +0 -26
- package/dist/repository.js.map +0 -1
- package/dist/scan-cache.d.ts +0 -10
- package/dist/scan-cache.d.ts.map +0 -1
- package/dist/scan-cache.js.map +0 -1
- package/dist/scanner.d.ts +0 -34
- package/dist/scanner.d.ts.map +0 -1
- package/dist/scanner.js.map +0 -1
- package/dist/seed.d.ts.map +0 -1
- package/dist/seed.js.map +0 -1
- package/dist/types.d.ts +0 -421
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- /package/dist/{bootstrap.d.ts → boot/bootstrap.d.ts} +0 -0
- /package/dist/{types.js → boot/types.js} +0 -0
package/dist/imports.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imports.js","sourceRoot":"","sources":["../src/imports.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGzE,IAAI,GAA0B,CAAC;AAC/B,KAAK,UAAU,MAAM;IACnB,IAAI,CAAC,GAAG;QAAE,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"imports.js","sourceRoot":"","sources":["../src/imports.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,45 +1,64 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* What a consumer writes, and nothing else.
|
|
3
|
+
*
|
|
4
|
+
* `exports` publishes this barrel and `./contract`, so an import that is not here
|
|
5
|
+
* cannot be reached from outside the package at all — which is what makes this file
|
|
6
|
+
* the contract rather than a convenience. The machinery the boot uses to keep its own
|
|
7
|
+
* promises stays inside: container keys, the binding plan, the mixin's runtime
|
|
8
|
+
* accessors, the config merge. Measured on 2026-08-16, none of them had a single
|
|
9
|
+
* importer anywhere in the workspace.
|
|
10
|
+
*/
|
|
11
|
+
export { createApp } from './boot/bootstrap.js';
|
|
12
|
+
export { orderSeeds, runSeeds, seeding } from './boot/seed.js';
|
|
13
|
+
export { AppLifecycle, AppLifecycle as Lifecycle, migrating } from './boot/AppLifecycle.js';
|
|
14
|
+
export type { Extension } from './boot/AppLifecycle.js';
|
|
4
15
|
export { defineFougere } from './define.js';
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
16
|
+
export type { AdapterConfig, FougereConfig } from './config-loader.js';
|
|
17
|
+
export type { FrondConfig, OperationOverride } from './frond-config.js';
|
|
7
18
|
export { buildGraph, clusterEntities, suggestSplit, type EntityNode, type DomainCluster } from './graph.js';
|
|
8
|
-
export { Crud } from './crud.js';
|
|
9
|
-
export type { CrudOps, CrudOpName, CrudViews, CrudConstructor } from './crud.js';
|
|
10
|
-
export { Mirror
|
|
11
|
-
export type { MirrorOf, MirrorConstructor, Refreshed } from './mirror.js';
|
|
12
|
-
export { Presenter
|
|
13
|
-
export type { PresenterViews } from './presenter.js';
|
|
14
|
-
export { Collector
|
|
15
|
-
export {
|
|
16
|
-
export
|
|
17
|
-
export type { InvocationContext } from './
|
|
18
|
-
export {
|
|
19
|
-
export {
|
|
20
|
-
export type {
|
|
21
|
-
export {
|
|
22
|
-
export {
|
|
23
|
-
export {
|
|
24
|
-
export {
|
|
25
|
-
export {
|
|
26
|
-
export {
|
|
27
|
-
export
|
|
19
|
+
export { Crud } from './prefab/crud.js';
|
|
20
|
+
export type { CrudOps, CrudOpName, CrudViews, CrudConstructor } from './prefab/crud.js';
|
|
21
|
+
export { Mirror } from './prefab/mirror.js';
|
|
22
|
+
export type { MirrorOf, MirrorConstructor, Refreshed } from './prefab/mirror.js';
|
|
23
|
+
export { Presenter } from './prefab/presenter.js';
|
|
24
|
+
export type { PresenterViews } from './prefab/presenter.js';
|
|
25
|
+
export { Collector } from './prefab/collector.js';
|
|
26
|
+
export { Repository, type RepositoryOf, type RepositoryConstructor, type AggregateOf, type AggregateConstructor } from './prefab/repository.js';
|
|
27
|
+
export { Invocation, canonicalInvocation, EMPTY_INVOCATION } from './contract/Invocation.js';
|
|
28
|
+
export type { InvocationContext, InvocationInput } from './contract/Invocation.js';
|
|
29
|
+
export { Call } from './contract/Call.js';
|
|
30
|
+
export { RouteAddress } from './contract/RouteAddress.js';
|
|
31
|
+
export type { RouteAddressInput } from './contract/RouteAddress.js';
|
|
32
|
+
export { DispatchLifecycle } from './dispatch/DispatchLifecycle.js';
|
|
33
|
+
export { Dispatcher } from './dispatch/Dispatcher.js';
|
|
34
|
+
export type { DispatchEvent, DispatchObserver } from './dispatch/DispatchEvent.js';
|
|
35
|
+
export type { DispatchPort } from './dispatch/DispatchPort.js';
|
|
36
|
+
export { inferOperationKind, resolveContracts, resolveIsReadOp, resolveOperationKind, } from './wire/operation.js';
|
|
37
|
+
export type { OperationContract, OperationKind, OperationKindInference, OperationsMap, ParsedParam, ParsedType, } from './wire/operation.js';
|
|
38
|
+
export { EFFECTIVE_OPERATION_SEMANTICS, EffectiveOperationModel, resolveEffectiveOperations, } from './effective-operation.js';
|
|
39
|
+
export type { EffectiveCollector, EffectiveOperation, EffectiveOperationOptions, EffectiveOperationsMap, EffectiveParameter, } from './effective-operation.js';
|
|
40
|
+
export type { ModuleLoader } from './loader.js';
|
|
41
|
+
export { FougereError, ErrorCode, validationErrorsOf, type FougereErrorOptions } from './wire/errors.js';
|
|
42
|
+
export type { OperationContext, AppNext, AppMiddleware } from './wire/middleware.js';
|
|
43
|
+
export { createLocalRunner, createAppRunner, assertIdentityCard } from './wire/call.js';
|
|
44
|
+
export type { FrondCall, Transport, IdentityCard, CardOp, Facade, RpcAnswer, TopologyReport, FrondPlacement, Edge, } from './wire/call.js';
|
|
45
|
+
export { type Emit, type Fact } from './emit.js';
|
|
28
46
|
export { callValueOf } from './contract.js';
|
|
29
47
|
export type { CallValue } from './contract.js';
|
|
30
|
-
export
|
|
31
|
-
export {
|
|
32
|
-
export {
|
|
33
|
-
export {
|
|
34
|
-
export {
|
|
48
|
+
export { toHttpError, toPublicError } from './wire/http-error.js';
|
|
49
|
+
export { loggerMiddleware } from './wire/loggerMiddleware.js';
|
|
50
|
+
export { Logger, setLogLevel, logLevel, envLevel, onLog } from './builtins/logger.js';
|
|
51
|
+
export type { LogLevel, LogRecord, LogSink } from './builtins/logger.js';
|
|
52
|
+
export { applyConfig, type ConfigApplication } from './boot/apply.js';
|
|
35
53
|
export { Config } from './builtins/config.js';
|
|
36
|
-
export type { EntityOrm, OrmFactory, ListOptions, ListResult } from './orm.js';
|
|
37
|
-
export {
|
|
38
|
-
export type { App, CreateAppOptions
|
|
39
|
-
export {
|
|
40
|
-
export {
|
|
41
|
-
export {
|
|
42
|
-
export { Repository, getRepositoryTarget, repositoryKeyOf, type RepositoryOf, type RepositoryConstructor } from './repository.js';
|
|
54
|
+
export type { EntityOrm, OrmFactory, ListOptions, ListResult, Together } from './orm.js';
|
|
55
|
+
export { togetherKeyOf, membersOfTogetherKey } from './orm.js';
|
|
56
|
+
export type { App, CreateAppOptions } from './boot/types.js';
|
|
57
|
+
export type { ScanResult, ScanDiagnostic, FrondDescriptor, FrondSource, ProviderEntry, EntityEntry, HandlerEntry, SeedEntry, SeedFactory, PresenterEntry, PresenterFieldMeta, CollectorEntry, } from './scan/frond.js';
|
|
58
|
+
export type { AuthConfig, AuthContext, AuthRuntime } from './boot/auth.js';
|
|
59
|
+
export { Fronds } from './scan/Fronds.js';
|
|
43
60
|
export { verify, assertSplittable, type Violation } from './verify.js';
|
|
44
|
-
export {
|
|
61
|
+
export type { CrossFrondImport } from './imports.js';
|
|
62
|
+
export { signEnvelope, verifyEnvelope, identityFromEnv } from './identity.js';
|
|
63
|
+
export type { FrondIdentity, VerifiedCall, CallIdentity, SignedCall } from './identity.js';
|
|
45
64
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,38 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* What a consumer writes, and nothing else.
|
|
3
|
+
*
|
|
4
|
+
* `exports` publishes this barrel and `./contract`, so an import that is not here
|
|
5
|
+
* cannot be reached from outside the package at all — which is what makes this file
|
|
6
|
+
* the contract rather than a convenience. The machinery the boot uses to keep its own
|
|
7
|
+
* promises stays inside: container keys, the binding plan, the mixin's runtime
|
|
8
|
+
* accessors, the config merge. Measured on 2026-08-16, none of them had a single
|
|
9
|
+
* importer anywhere in the workspace.
|
|
10
|
+
*/
|
|
11
|
+
export { createApp } from './boot/bootstrap.js';
|
|
12
|
+
export { orderSeeds, runSeeds, seeding } from './boot/seed.js';
|
|
13
|
+
export { AppLifecycle, AppLifecycle as Lifecycle, migrating } from './boot/AppLifecycle.js';
|
|
4
14
|
export { defineFougere } from './define.js';
|
|
5
|
-
export { loadConfig, loadCascadedConfig, loadFrondConfigs, mergeGlobal, mergeConfig, configForFrond, resolveConfig } from './config-loader.js';
|
|
6
|
-
export { defineFrond, loadFrondConfig } from './frond-config.js';
|
|
7
15
|
export { buildGraph, clusterEntities, suggestSplit } from './graph.js';
|
|
8
|
-
export { Crud } from './crud.js';
|
|
9
|
-
export { Mirror
|
|
10
|
-
export { Presenter
|
|
11
|
-
export { Collector
|
|
12
|
-
export {
|
|
13
|
-
export { EMPTY_INVOCATION } from './
|
|
14
|
-
export {
|
|
15
|
-
export {
|
|
16
|
-
export {
|
|
17
|
-
export {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
export {
|
|
22
|
-
export { emitKeyOf, factOfEmitKey, factsAnnouncedBy } from './emit.js';
|
|
23
|
-
export { resolveContracts } from './operation.js';
|
|
16
|
+
export { Crud } from './prefab/crud.js';
|
|
17
|
+
export { Mirror } from './prefab/mirror.js';
|
|
18
|
+
export { Presenter } from './prefab/presenter.js';
|
|
19
|
+
export { Collector } from './prefab/collector.js';
|
|
20
|
+
export { Repository } from './prefab/repository.js';
|
|
21
|
+
export { Invocation, canonicalInvocation, EMPTY_INVOCATION } from './contract/Invocation.js';
|
|
22
|
+
export { Call } from './contract/Call.js';
|
|
23
|
+
export { RouteAddress } from './contract/RouteAddress.js';
|
|
24
|
+
export { DispatchLifecycle } from './dispatch/DispatchLifecycle.js';
|
|
25
|
+
export { Dispatcher } from './dispatch/Dispatcher.js';
|
|
26
|
+
export { inferOperationKind, resolveContracts, resolveIsReadOp, resolveOperationKind, } from './wire/operation.js';
|
|
27
|
+
export { EFFECTIVE_OPERATION_SEMANTICS, EffectiveOperationModel, resolveEffectiveOperations, } from './effective-operation.js';
|
|
28
|
+
export { FougereError, ErrorCode, validationErrorsOf } from './wire/errors.js';
|
|
29
|
+
export { createLocalRunner, createAppRunner, assertIdentityCard } from './wire/call.js';
|
|
24
30
|
export { callValueOf } from './contract.js';
|
|
25
|
-
export { toHttpError, toPublicError
|
|
26
|
-
export { loggerMiddleware } from './
|
|
27
|
-
export {
|
|
28
|
-
|
|
31
|
+
export { toHttpError, toPublicError } from './wire/http-error.js';
|
|
32
|
+
export { loggerMiddleware } from './wire/loggerMiddleware.js';
|
|
33
|
+
export { Logger, setLogLevel, logLevel, envLevel, onLog } from './builtins/logger.js';
|
|
34
|
+
// What a re-read config changes in a running process — and what it cannot.
|
|
35
|
+
export { applyConfig } from './boot/apply.js';
|
|
29
36
|
export { Config } from './builtins/config.js';
|
|
30
|
-
export {
|
|
31
|
-
export {
|
|
32
|
-
export { presenterKeyOf } from './presenter.js';
|
|
33
|
-
export { collectorKeyOf } from './collector.js';
|
|
34
|
-
export { Repository, getRepositoryTarget, repositoryKeyOf } from './repository.js';
|
|
37
|
+
export { togetherKeyOf, membersOfTogetherKey } from './orm.js';
|
|
38
|
+
export { Fronds } from './scan/Fronds.js';
|
|
35
39
|
export { verify, assertSplittable } from './verify.js';
|
|
36
|
-
//
|
|
37
|
-
|
|
40
|
+
// Who is calling, established rather than accepted — the proof beside `state`'s claim.
|
|
41
|
+
// `generateKeyPair` and `issueGrant` are NOT here: they make keys at a deployment and
|
|
42
|
+
// need `node:crypto` for a gesture WebCrypto has no equal of. They sit on `/node`.
|
|
43
|
+
export { signEnvelope, verifyEnvelope, identityFromEnv } from './identity.js';
|
|
38
44
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,YAAY,IAAI,SAAS,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAuC,MAAM,YAAY,CAAC;AAC5G,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,UAAU,EAA8F,MAAM,wBAAwB,CAAC;AAChJ,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE7F,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EACL,6BAA6B,EAC7B,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AASlC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAA4B,MAAM,kBAAkB,CAAC;AAEzG,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAMxF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAEtF,2EAA2E;AAC3E,OAAO,EAAE,WAAW,EAA0B,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAiB/D,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAkB,MAAM,aAAa,CAAC;AAGvE,uFAAuF;AACvF,sFAAsF;AACtF,mFAAmF;AACnF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/loader.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module loader — can be swapped (e.g. jiti for TS files in Nuxt context).
|
|
3
|
+
*
|
|
4
|
+
* `fresh` asks for a file that may have changed since it was last read. Every loader
|
|
5
|
+
* caches, so without it a second read of an EDITED file hands back the first one —
|
|
6
|
+
* which is what re-reading a config is for. A loader that cannot honour it may ignore
|
|
7
|
+
* the flag; it then answers with what it already had.
|
|
8
|
+
*/
|
|
9
|
+
export type ModuleLoader = (filePath: string, options?: {
|
|
10
|
+
fresh?: boolean;
|
|
11
|
+
}) => Promise<Record<string, unknown>>;
|
|
12
|
+
/** Override the module loader used by the scanner (e.g. for jiti/tsx support). */
|
|
13
|
+
export declare function setModuleLoader(loader: ModuleLoader): void;
|
|
14
|
+
/** Used by config-loader to load fougere.config.ts via the same TS-aware loader. */
|
|
15
|
+
export declare function getModuleLoader(): ModuleLoader;
|
|
16
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAUA;;;;;;;GAOG;AACH,MAAM,MAAM,YAAY,GAAG,CACzB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,KAC1B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAWtC,kFAAkF;AAClF,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAE1D;AAED,oFAAoF;AACpF,wBAAgB,eAAe,IAAI,YAAY,CAE9C"}
|
package/dist/loader.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a source file becomes a module — one registry, two readers.
|
|
3
|
+
*
|
|
4
|
+
* The scanner loads fronds and `config-loader` loads a config, and both must use the
|
|
5
|
+
* loader the host installed: a TS file needs jiti under Nuxt and plain `import` under
|
|
6
|
+
* tsx. It lived in `scan/scanner.ts`, so reading a config dragged the scanner, its AST
|
|
7
|
+
* parser and the TypeScript compiler behind it.
|
|
8
|
+
*/
|
|
9
|
+
import { pathToFileURL } from 'node:url';
|
|
10
|
+
const defaultLoader = async (filePath, options) => {
|
|
11
|
+
// On the URL, never on the path: `pathToFileURL` percent-encodes a `?` into the
|
|
12
|
+
// filename, and the import then looks for a file whose name ends in `%3Fv=…`.
|
|
13
|
+
const url = pathToFileURL(filePath).href;
|
|
14
|
+
return await import(options?.fresh ? `${url}?v=${Date.now()}` : url);
|
|
15
|
+
};
|
|
16
|
+
let activeLoader = defaultLoader;
|
|
17
|
+
/** Override the module loader used by the scanner (e.g. for jiti/tsx support). */
|
|
18
|
+
export function setModuleLoader(loader) {
|
|
19
|
+
activeLoader = loader;
|
|
20
|
+
}
|
|
21
|
+
/** Used by config-loader to load fougere.config.ts via the same TS-aware loader. */
|
|
22
|
+
export function getModuleLoader() {
|
|
23
|
+
return activeLoader;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAezC,MAAM,aAAa,GAAiB,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;IAC9D,gFAAgF;IAChF,8EAA8E;IAC9E,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;IACzC,OAAO,MAAM,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,IAAI,YAAY,GAAiB,aAAa,CAAC;AAE/C,kFAAkF;AAClF,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,YAAY,GAAG,MAAM,CAAC;AACxB,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,eAAe;IAC7B,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
package/dist/node.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What Fougere does with a filesystem — the half of core that a Worker cannot run.
|
|
3
|
+
*
|
|
4
|
+
* The line is not "build vs runtime": `boot()` and `loadConfig` run in production, on a
|
|
5
|
+
* server, every time. It is whether the thing reaches for a disk. Everything here does,
|
|
6
|
+
* transitively, and nothing on the main entry does — which is what lets a bundler for a
|
|
7
|
+
* runtime without `node:fs` trace the main entry and find no builtin at all.
|
|
8
|
+
*
|
|
9
|
+
* The third entry, `@fougere/core/contract`, answers a different question: what crosses a
|
|
10
|
+
* process boundary. A foreign frond reads it without reading our boot.
|
|
11
|
+
*/
|
|
12
|
+
export { boot } from './boot/boot.js';
|
|
13
|
+
export { scanProject, frondAliases } from './scan/scanner.js';
|
|
14
|
+
export { type Conventions, type ConventionsInput, DEFAULT_CONVENTIONS, resolveConventions, frondPackage, frondDirsOf, providerDirsOf, watchPathsOf, } from './scan/conventions.js';
|
|
15
|
+
export { emitScan, type EmitOptions } from './scan/emit.js';
|
|
16
|
+
export { setModuleLoader, getModuleLoader } from './loader.js';
|
|
17
|
+
export { loadConfig, loadCascadedConfig } from './config-loader.js';
|
|
18
|
+
export { defineFrond } from './frond-config.js';
|
|
19
|
+
export { crossFrondImports } from './imports.js';
|
|
20
|
+
export { generateKeyPair, issueGrant } from './identity-keys.js';
|
|
21
|
+
//# sourceMappingURL=node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACL,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,mBAAmB,EAC5D,kBAAkB,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,GAC5E,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAKjD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/node.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What Fougere does with a filesystem — the half of core that a Worker cannot run.
|
|
3
|
+
*
|
|
4
|
+
* The line is not "build vs runtime": `boot()` and `loadConfig` run in production, on a
|
|
5
|
+
* server, every time. It is whether the thing reaches for a disk. Everything here does,
|
|
6
|
+
* transitively, and nothing on the main entry does — which is what lets a bundler for a
|
|
7
|
+
* runtime without `node:fs` trace the main entry and find no builtin at all.
|
|
8
|
+
*
|
|
9
|
+
* The third entry, `@fougere/core/contract`, answers a different question: what crosses a
|
|
10
|
+
* process boundary. A foreign frond reads it without reading our boot.
|
|
11
|
+
*/
|
|
12
|
+
export { boot } from './boot/boot.js';
|
|
13
|
+
export { scanProject, frondAliases } from './scan/scanner.js';
|
|
14
|
+
export { DEFAULT_CONVENTIONS, resolveConventions, frondPackage, frondDirsOf, providerDirsOf, watchPathsOf, } from './scan/conventions.js';
|
|
15
|
+
export { emitScan } from './scan/emit.js';
|
|
16
|
+
export { setModuleLoader, getModuleLoader } from './loader.js';
|
|
17
|
+
export { loadConfig, loadCascadedConfig } from './config-loader.js';
|
|
18
|
+
export { defineFrond } from './frond-config.js';
|
|
19
|
+
export { crossFrondImports } from './imports.js';
|
|
20
|
+
// Making a key and binding a name to it happen once, at a deployment, on a machine with
|
|
21
|
+
// a filesystem — the CLI speaking. Verifying happens per call, everywhere, and stays on
|
|
22
|
+
// the main entry behind `#crypto`.
|
|
23
|
+
export { generateKeyPair, issueGrant } from './identity-keys.js';
|
|
24
|
+
//# sourceMappingURL=node.js.map
|
package/dist/node.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACoC,mBAAmB,EAC5D,kBAAkB,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,GAC5E,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAoB,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,wFAAwF;AACxF,wFAAwF;AACxF,mCAAmC;AACnC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/orm.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type SchemaView } from '@fougere/schema';
|
|
2
2
|
/** Options for list queries — pagination, sorting, counting. */
|
|
3
3
|
export interface ListOptions {
|
|
4
4
|
/** Number of records to return. */
|
|
@@ -31,13 +31,6 @@ export interface ListResult<T> extends Array<T> {
|
|
|
31
31
|
/** Whether more records exist after endCursor. */
|
|
32
32
|
hasMore?: boolean;
|
|
33
33
|
}
|
|
34
|
-
/**
|
|
35
|
-
* The keys `list()` answers to. Anything else is a mistake, and saying so is the point:
|
|
36
|
-
* the façade refuses an unknown key in a CLIENT's input (`Unknown field`) — this applies the
|
|
37
|
-
* same rule to the framework's own arguments. `list({ orderId })` used to be accepted and
|
|
38
|
-
* the filter dropped, so a one-to-many relation quietly returned the whole table.
|
|
39
|
-
*/
|
|
40
|
-
export declare const LIST_OPTION_KEYS: readonly ["limit", "offset", "page", "after", "orderBy", "order", "count", "where", "select"];
|
|
41
34
|
/** Refuse an option the port does not answer to, naming it and what was expected. */
|
|
42
35
|
export declare function assertListOptions(options: object | undefined, entity: string): void;
|
|
43
36
|
/** Select option — restrict returned fields to those of a SchemaView. */
|
|
@@ -143,4 +136,72 @@ export type OrmFactory = (entity: SchemaView, name: string) => EntityOrm;
|
|
|
143
136
|
* so a rename would have moved one and left the other resolving to nothing.
|
|
144
137
|
*/
|
|
145
138
|
export declare function ormKeyOf(entity: string): string;
|
|
139
|
+
/**
|
|
140
|
+
* `Together<[Account, Ledger]>` — writes that stand or fall as one.
|
|
141
|
+
*
|
|
142
|
+
* `EntityOrm` is the port whose every gesture is ONE statement, and one statement is
|
|
143
|
+
* atomic in every engine. This is the port whose unit is a BLOCK: what the callback did
|
|
144
|
+
* happens entirely, or not at all. Nothing else separates them — the arity of the unit
|
|
145
|
+
* of work is the whole distinction, which is why this lives here and not in a file of
|
|
146
|
+
* its own.
|
|
147
|
+
*
|
|
148
|
+
* ```ts
|
|
149
|
+
* constructor(private together: Together<[Account, Ledger]>) {}
|
|
150
|
+
*
|
|
151
|
+
* await this.together.run(async ([accounts, ledger]) => {
|
|
152
|
+
* await accounts.update(from, { balance: b - amount });
|
|
153
|
+
* await ledger.create({ from, to, amount });
|
|
154
|
+
* });
|
|
155
|
+
* ```
|
|
156
|
+
*
|
|
157
|
+
* **The second list is providers**, rebuilt inside the frame so that what THEY write is
|
|
158
|
+
* covered too — a `Mirror` writes its pages through `EntityOrm<T>`, so naming it puts
|
|
159
|
+
* them under the same unwind, with no locator and no second injection path:
|
|
160
|
+
*
|
|
161
|
+
* ```ts
|
|
162
|
+
* constructor(private together: Together<[RateCard, Ledger], [RateMirror]>) {}
|
|
163
|
+
*
|
|
164
|
+
* await this.together.run(async ([rates, ledger], [mirror]) => { await mirror.refresh(); });
|
|
165
|
+
* ```
|
|
166
|
+
*
|
|
167
|
+
* Two lists rather than one, because in a signature an entity and a provider are both
|
|
168
|
+
* written as a class name and their instance types do not separate them — the type would
|
|
169
|
+
* have to guess, by looking for methods or for a brand, and both answers are worse than
|
|
170
|
+
* saying it. They are two different facts anyway: what the unwind covers, and what is
|
|
171
|
+
* rebuilt to make that true.
|
|
172
|
+
*
|
|
173
|
+
* **All or nothing is the promise; isolation is not.** On one engine the members are
|
|
174
|
+
* rebuilt over a transaction and the engine gives both. Across engines a transaction
|
|
175
|
+
* cannot exist, so the frame keeps the before-image of each write and replays the
|
|
176
|
+
* inverse in reverse order — the unwind holds, the isolation does not, and a reader
|
|
177
|
+
* between two writes sees the half. The boot says which of the two it built rather
|
|
178
|
+
* than letting the author assume the stronger one.
|
|
179
|
+
*/
|
|
180
|
+
export interface Together<E extends readonly unknown[], P extends readonly unknown[] = []> {
|
|
181
|
+
run<R>(fn: (entities: {
|
|
182
|
+
[K in keyof E]: EntityOrm<E[K]>;
|
|
183
|
+
}, providers: P) => Promise<R>): Promise<R>;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* The container key of a frame — `[['Account', 'Ledger'], ['RateMirror']]` →
|
|
187
|
+
* 'Account+Ledger|RateMirrorTogether'.
|
|
188
|
+
*
|
|
189
|
+
* The DECLARED order, not a sorted one. The tuples are what the callback destructures, so
|
|
190
|
+
* reordering here would hand `[ledger, accounts]` to a signature that says the opposite —
|
|
191
|
+
* the type and the runtime disagreeing about the same line. Two orders of one frame are
|
|
192
|
+
* therefore two keys and two registrations; they cost nothing, a frame holding no state
|
|
193
|
+
* between runs.
|
|
194
|
+
*/
|
|
195
|
+
export declare function togetherKeyOf(entities: readonly string[], providers?: readonly string[]): string;
|
|
196
|
+
/**
|
|
197
|
+
* The members behind a frame key, or `undefined` when the key is not one.
|
|
198
|
+
*
|
|
199
|
+
* The dual of the line above, and here for the reason `factOfEmitKey` is: the boot reads
|
|
200
|
+
* the key back out of a handler's `deps` to know which frames to build. A key and the way
|
|
201
|
+
* to undo it belong together — the pair that is split is the pair that drifts.
|
|
202
|
+
*/
|
|
203
|
+
export declare function membersOfTogetherKey(key: string): {
|
|
204
|
+
entities: string[];
|
|
205
|
+
providers: string[];
|
|
206
|
+
} | undefined;
|
|
146
207
|
//# sourceMappingURL=orm.d.ts.map
|
package/dist/orm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orm.d.ts","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"orm.d.ts","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE/D,gEAAgE;AAChE,MAAM,WAAW,WAAW;IAC1B,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,8BAA8B;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,uCAAuC;IACvC,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAEvB,8DAA8D;IAC9D,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,oEAAoE;AACpE,MAAM,WAAW,UAAU,CAAC,CAAC,CAAE,SAAQ,KAAK,CAAC,CAAC,CAAC;IAC7C,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAYD,qFAAqF;AACrF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CASnF;AAED,yEAAyE;AACzE,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,uEAAuE;AACvE,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpD,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IACrE;;;;;;;;;OASG;IACH,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IACvG,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAChG;;;;;;;;;;;;;;OAcG;IACH,UAAU,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACpF;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzG,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D;;;;;;;;;OASG;IACH,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D;;;;;;;;OAQG;IACH,SAAS,CAAC,MAAM,EAAE,SAAS,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClF,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,8FAA8F;IAC9F,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACzC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC;AAEzE;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,CAAC,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE;IACvF,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE;SAAG,CAAC,IAAI,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,EAAE,SAAS,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACrG;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,GAAE,SAAS,MAAM,EAAO,GAAG,MAAM,CAGpG;AAOD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,SAAS,CAKzG"}
|
package/dist/orm.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import { classNameOf } from '@fougere/schema';
|
|
1
2
|
/**
|
|
2
3
|
* The keys `list()` answers to. Anything else is a mistake, and saying so is the point:
|
|
3
4
|
* the façade refuses an unknown key in a CLIENT's input (`Unknown field`) — this applies the
|
|
4
5
|
* same rule to the framework's own arguments. `list({ orderId })` used to be accepted and
|
|
5
6
|
* the filter dropped, so a one-to-many relation quietly returned the whole table.
|
|
6
7
|
*/
|
|
7
|
-
|
|
8
|
+
const LIST_OPTION_KEYS = [
|
|
8
9
|
'limit', 'offset', 'page', 'after', 'orderBy', 'order', 'count', 'where', 'select',
|
|
9
10
|
];
|
|
10
11
|
/** Refuse an option the port does not answer to, naming it and what was expected. */
|
|
@@ -28,6 +29,38 @@ export function assertListOptions(options, entity) {
|
|
|
28
29
|
* so a rename would have moved one and left the other resolving to nothing.
|
|
29
30
|
*/
|
|
30
31
|
export function ormKeyOf(entity) {
|
|
31
|
-
return `${
|
|
32
|
+
return `${classNameOf(entity)}Orm`;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The container key of a frame — `[['Account', 'Ledger'], ['RateMirror']]` →
|
|
36
|
+
* 'Account+Ledger|RateMirrorTogether'.
|
|
37
|
+
*
|
|
38
|
+
* The DECLARED order, not a sorted one. The tuples are what the callback destructures, so
|
|
39
|
+
* reordering here would hand `[ledger, accounts]` to a signature that says the opposite —
|
|
40
|
+
* the type and the runtime disagreeing about the same line. Two orders of one frame are
|
|
41
|
+
* therefore two keys and two registrations; they cost nothing, a frame holding no state
|
|
42
|
+
* between runs.
|
|
43
|
+
*/
|
|
44
|
+
export function togetherKeyOf(entities, providers = []) {
|
|
45
|
+
const named = entities.map(classNameOf).join(SEPARATOR);
|
|
46
|
+
return `${named}${providers.length ? KINDS + providers.map(classNameOf).join(SEPARATOR) : ''}${FRAME}`;
|
|
47
|
+
}
|
|
48
|
+
const FRAME = 'Together';
|
|
49
|
+
const SEPARATOR = '+';
|
|
50
|
+
/** Separates the two lists — what the unwind covers, and what is rebuilt to make it true. */
|
|
51
|
+
const KINDS = '|';
|
|
52
|
+
/**
|
|
53
|
+
* The members behind a frame key, or `undefined` when the key is not one.
|
|
54
|
+
*
|
|
55
|
+
* The dual of the line above, and here for the reason `factOfEmitKey` is: the boot reads
|
|
56
|
+
* the key back out of a handler's `deps` to know which frames to build. A key and the way
|
|
57
|
+
* to undo it belong together — the pair that is split is the pair that drifts.
|
|
58
|
+
*/
|
|
59
|
+
export function membersOfTogetherKey(key) {
|
|
60
|
+
if (key.length <= FRAME.length || !key.endsWith(FRAME))
|
|
61
|
+
return undefined;
|
|
62
|
+
const [entities, providers = ''] = key.slice(0, -FRAME.length).split(KINDS);
|
|
63
|
+
const split = (list) => list.split(SEPARATOR).filter(Boolean);
|
|
64
|
+
return { entities: split(entities), providers: split(providers) };
|
|
32
65
|
}
|
|
33
66
|
//# sourceMappingURL=orm.js.map
|
package/dist/orm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orm.js","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"orm.js","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAC;AA2C/D;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG;IACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ;CAC1E,CAAC;AAEX,qFAAqF;AACrF,MAAM,UAAU,iBAAiB,CAAC,OAA2B,EAAE,MAAc;IAC3E,IAAI,CAAC,OAAO;QAAE,OAAO;IACrB,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,gBAAgB,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACxE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACnC,MAAM,IAAI,KAAK,CACb,GAAG,MAAM,2BAA2B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACnF,qBAAqB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC,SAAS,CAAC,CAAC,CAAC,UAAU,CACxG,CAAC;AACJ,CAAC;AAkGD;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAc;IACrC,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;AACrC,CAAC;AA+CD;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,QAA2B,EAAE,YAA+B,EAAE;IAC1F,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxD,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;AACzG,CAAC;AAED,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,SAAS,GAAG,GAAG,CAAC;AACtB,6FAA6F;AAC7F,MAAM,KAAK,GAAG,GAAG,CAAC;AAElB;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACzE,MAAM,CAAC,QAAQ,EAAE,SAAS,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5E,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAS,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;AACrE,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Collector(Type) — resolves one handler input parameter from the invocation context.
|
|
3
|
+
*
|
|
4
|
+
* The target is a NAME matched against the parameter's type, never a schema: nothing
|
|
5
|
+
* here nor in the scan reads its fields. So `Ability`, built per call from state, sits
|
|
6
|
+
* beside `User`, loaded from a row.
|
|
7
|
+
*
|
|
8
|
+
* The dual of Presenter only in direction. A presenter's subject is a ROW — it adds
|
|
9
|
+
* computed fields to one, so its target must be an entity. A collector's subject is a
|
|
10
|
+
* PARAMETER.
|
|
11
|
+
*
|
|
12
|
+
* Usage:
|
|
13
|
+
* ```ts
|
|
14
|
+
* export default class UserCollector extends Collector(User) {
|
|
15
|
+
* constructor(private userOrm: UserOrm) { super(); }
|
|
16
|
+
*
|
|
17
|
+
* async collect(ctx: InvocationContext) {
|
|
18
|
+
* return this.userOrm.findById(ctx.state.userId as string);
|
|
19
|
+
* }
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare function Collector<T extends abstract new (...args: any[]) => any>(target: T): {
|
|
24
|
+
new (): {};
|
|
25
|
+
readonly __entity: T;
|
|
26
|
+
};
|
|
27
|
+
/** Container key of a collector — 'user' → 'UserCollector', 'ability' → 'AbilityCollector'. */
|
|
28
|
+
export declare function collectorKeyOf(type: string): string;
|
|
29
|
+
//# sourceMappingURL=collector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/prefab/collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,wBAAgB,SAAS,CAAC,CAAC,SAAS,QAAQ,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,MAAM,EAAE,CAAC;;;EAKlF;AAED,+FAA+F;AAC/F,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Collector(Type) — resolves one handler input parameter from the invocation context.
|
|
3
|
+
*
|
|
4
|
+
* The target is a NAME matched against the parameter's type, never a schema: nothing
|
|
5
|
+
* here nor in the scan reads its fields. So `Ability`, built per call from state, sits
|
|
6
|
+
* beside `User`, loaded from a row.
|
|
7
|
+
*
|
|
8
|
+
* The dual of Presenter only in direction. A presenter's subject is a ROW — it adds
|
|
9
|
+
* computed fields to one, so its target must be an entity. A collector's subject is a
|
|
10
|
+
* PARAMETER.
|
|
11
|
+
*
|
|
12
|
+
* Usage:
|
|
13
|
+
* ```ts
|
|
14
|
+
* export default class UserCollector extends Collector(User) {
|
|
15
|
+
* constructor(private userOrm: UserOrm) { super(); }
|
|
16
|
+
*
|
|
17
|
+
* async collect(ctx: InvocationContext) {
|
|
18
|
+
* return this.userOrm.findById(ctx.state.userId as string);
|
|
19
|
+
* }
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
import { classNameOf } from '@fougere/schema';
|
|
24
|
+
export function Collector(target) {
|
|
25
|
+
class CollectorBase {
|
|
26
|
+
static __entity = target;
|
|
27
|
+
}
|
|
28
|
+
return CollectorBase;
|
|
29
|
+
}
|
|
30
|
+
/** Container key of a collector — 'user' → 'UserCollector', 'ability' → 'AbilityCollector'. */
|
|
31
|
+
export function collectorKeyOf(type) {
|
|
32
|
+
return `${classNameOf(type)}Collector`;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=collector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collector.js","sourceRoot":"","sources":["../../src/prefab/collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,UAAU,SAAS,CAAiD,MAAS;IACjF,MAAM,aAAa;QACjB,MAAM,CAAU,QAAQ,GAAG,MAAM,CAAC;;IAEpC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AACzC,CAAC"}
|