@bett3r-dev/pv3 1.0.0 → 1.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +329 -0
- package/build/adapters/cache/memory/index.d.ts.map +1 -1
- package/build/adapters/cache/memory/index.js +93 -20
- package/build/adapters/cache/memory/index.js.map +1 -1
- package/build/adapters/cache/memory/index.test.d.ts +2 -0
- package/build/adapters/cache/memory/index.test.d.ts.map +1 -0
- package/build/adapters/cache/memory/index.test.js +98 -0
- package/build/adapters/cache/memory/index.test.js.map +1 -0
- package/build/adapters/configuration/dotEnv.d.ts.map +1 -1
- package/build/adapters/configuration/dotEnv.js.map +1 -1
- package/build/adapters/database/memory/index.d.ts +5 -1
- package/build/adapters/database/memory/index.d.ts.map +1 -1
- package/build/adapters/database/memory/index.js +336 -44
- package/build/adapters/database/memory/index.js.map +1 -1
- package/build/adapters/database/memory/index.test.d.ts +2 -0
- package/build/adapters/database/memory/index.test.d.ts.map +1 -0
- package/build/adapters/database/memory/index.test.js +167 -0
- package/build/adapters/database/memory/index.test.js.map +1 -0
- package/build/adapters/database/memory/pagingCursorZero.test.d.ts +2 -0
- package/build/adapters/database/memory/pagingCursorZero.test.d.ts.map +1 -0
- package/build/adapters/database/memory/pagingCursorZero.test.js +60 -0
- package/build/adapters/database/memory/pagingCursorZero.test.js.map +1 -0
- package/build/adapters/database/memory/pagingVanishedCursor.test.d.ts +2 -0
- package/build/adapters/database/memory/pagingVanishedCursor.test.d.ts.map +1 -0
- package/build/adapters/database/memory/pagingVanishedCursor.test.js +72 -0
- package/build/adapters/database/memory/pagingVanishedCursor.test.js.map +1 -0
- package/build/adapters/endpoints/addAuthUser/index.d.ts +6 -4
- package/build/adapters/endpoints/addAuthUser/index.d.ts.map +1 -1
- package/build/adapters/endpoints/addAuthUser/index.js +12 -31
- package/build/adapters/endpoints/addAuthUser/index.js.map +1 -1
- package/build/adapters/endpoints/addDevAuthUser/index.d.ts +32 -0
- package/build/adapters/endpoints/addDevAuthUser/index.d.ts.map +1 -0
- package/build/adapters/endpoints/addDevAuthUser/index.js +39 -0
- package/build/adapters/endpoints/addDevAuthUser/index.js.map +1 -0
- package/build/adapters/endpoints/asyncLocalStorage/__tests__/asyncLocalStorage.test.d.ts +2 -0
- package/build/adapters/endpoints/asyncLocalStorage/__tests__/asyncLocalStorage.test.d.ts.map +1 -0
- package/build/adapters/endpoints/asyncLocalStorage/__tests__/asyncLocalStorage.test.js +97 -0
- package/build/adapters/endpoints/asyncLocalStorage/__tests__/asyncLocalStorage.test.js.map +1 -0
- package/build/adapters/endpoints/asyncLocalStorage/index.d.ts +22 -0
- package/build/adapters/endpoints/asyncLocalStorage/index.d.ts.map +1 -0
- package/build/adapters/endpoints/asyncLocalStorage/index.js +62 -0
- package/build/adapters/endpoints/asyncLocalStorage/index.js.map +1 -0
- package/build/adapters/endpoints/endpointValidation/__tests__/endpointValidation.test.d.ts +2 -0
- package/build/adapters/endpoints/endpointValidation/__tests__/endpointValidation.test.d.ts.map +1 -0
- package/build/adapters/endpoints/endpointValidation/__tests__/endpointValidation.test.js +98 -0
- package/build/adapters/endpoints/endpointValidation/__tests__/endpointValidation.test.js.map +1 -0
- package/build/adapters/endpoints/endpointValidation/index.d.ts +2 -2
- package/build/adapters/endpoints/endpointValidation/index.d.ts.map +1 -1
- package/build/adapters/endpoints/endpointValidation/index.js +19 -9
- package/build/adapters/endpoints/endpointValidation/index.js.map +1 -1
- package/build/adapters/endpoints/genericMiddleware/index.d.ts +23 -0
- package/build/adapters/endpoints/genericMiddleware/index.d.ts.map +1 -0
- package/build/adapters/endpoints/genericMiddleware/index.js +30 -0
- package/build/adapters/endpoints/genericMiddleware/index.js.map +1 -0
- package/build/adapters/endpoints/httpMethodOverride/index.d.ts +8 -0
- package/build/adapters/endpoints/httpMethodOverride/index.d.ts.map +1 -0
- package/build/adapters/endpoints/httpMethodOverride/index.js +44 -0
- package/build/adapters/endpoints/httpMethodOverride/index.js.map +1 -0
- package/build/adapters/endpoints/index.d.ts +5 -0
- package/build/adapters/endpoints/index.d.ts.map +1 -1
- package/build/adapters/endpoints/index.js +5 -1
- package/build/adapters/endpoints/index.js.map +1 -1
- package/build/adapters/endpoints/localAuthorization/index.d.ts +1 -0
- package/build/adapters/endpoints/localAuthorization/index.js +2 -0
- package/build/adapters/endpoints/localAuthorization/index.js.map +1 -1
- package/build/adapters/endpoints/mapQueryFromHeaders/index.d.ts +8 -0
- package/build/adapters/endpoints/mapQueryFromHeaders/index.d.ts.map +1 -0
- package/build/adapters/endpoints/mapQueryFromHeaders/index.js +36 -0
- package/build/adapters/endpoints/mapQueryFromHeaders/index.js.map +1 -0
- package/build/adapters/endpoints/tcpConsumer/index.d.ts.map +1 -1
- package/build/adapters/endpoints/tcpConsumer/index.js +8 -7
- package/build/adapters/endpoints/tcpConsumer/index.js.map +1 -1
- package/build/adapters/endpoints/userSession/__tests__/userSession.test.d.ts +2 -0
- package/build/adapters/endpoints/userSession/__tests__/userSession.test.d.ts.map +1 -0
- package/build/adapters/endpoints/userSession/__tests__/userSession.test.js +175 -0
- package/build/adapters/endpoints/userSession/__tests__/userSession.test.js.map +1 -0
- package/build/adapters/endpoints/userSession/index.d.ts +2 -2
- package/build/adapters/endpoints/userSession/index.d.ts.map +1 -1
- package/build/adapters/endpoints/userSession/index.js +36 -2
- package/build/adapters/endpoints/userSession/index.js.map +1 -1
- package/build/adapters/eventstore/database.d.ts.map +1 -1
- package/build/adapters/eventstore/database.js +261 -58
- package/build/adapters/eventstore/database.js.map +1 -1
- package/build/adapters/eventstore/database.test.d.ts +2 -0
- package/build/adapters/eventstore/database.test.d.ts.map +1 -0
- package/build/adapters/eventstore/database.test.js +123 -0
- package/build/adapters/eventstore/database.test.js.map +1 -0
- package/build/adapters/infrastructure/local/index.d.ts +2 -2
- package/build/adapters/infrastructure/local/index.d.ts.map +1 -1
- package/build/adapters/infrastructure/local/index.js +3 -3
- package/build/adapters/infrastructure/local/index.js.map +1 -1
- package/build/adapters/logger/__tests__/json.test.d.ts +2 -0
- package/build/adapters/logger/__tests__/json.test.d.ts.map +1 -0
- package/build/adapters/logger/__tests__/json.test.js +125 -0
- package/build/adapters/logger/__tests__/json.test.js.map +1 -0
- package/build/adapters/logger/console.d.ts.map +1 -1
- package/build/adapters/logger/console.js +4 -2
- package/build/adapters/logger/console.js.map +1 -1
- package/build/adapters/logger/http.d.ts +3 -0
- package/build/adapters/logger/http.d.ts.map +1 -0
- package/build/adapters/logger/http.js +49 -0
- package/build/adapters/logger/http.js.map +1 -0
- package/build/adapters/logger/index.d.ts +3 -0
- package/build/adapters/logger/index.d.ts.map +1 -1
- package/build/adapters/logger/index.js +3 -0
- package/build/adapters/logger/index.js.map +1 -1
- package/build/adapters/logger/json.d.ts +3 -0
- package/build/adapters/logger/json.d.ts.map +1 -0
- package/build/adapters/logger/json.js +41 -0
- package/build/adapters/logger/json.js.map +1 -0
- package/build/adapters/logger/stdout.d.ts +3 -0
- package/build/adapters/logger/stdout.d.ts.map +1 -0
- package/build/adapters/logger/stdout.js +52 -0
- package/build/adapters/logger/stdout.js.map +1 -0
- package/build/index.d.ts +3 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +3 -1
- package/build/index.js.map +1 -1
- package/build/libraries/deployment-units/computeMDUs.d.ts +11 -0
- package/build/libraries/deployment-units/computeMDUs.d.ts.map +1 -0
- package/build/libraries/deployment-units/computeMDUs.js +695 -0
- package/build/libraries/deployment-units/computeMDUs.js.map +1 -0
- package/build/libraries/deployment-units/computeMDUs.test.d.ts +2 -0
- package/build/libraries/deployment-units/computeMDUs.test.d.ts.map +1 -0
- package/build/libraries/deployment-units/computeMDUs.test.js +996 -0
- package/build/libraries/deployment-units/computeMDUs.test.js.map +1 -0
- package/build/libraries/deployment-units/index.d.ts +6 -0
- package/build/libraries/deployment-units/index.d.ts.map +1 -0
- package/build/libraries/deployment-units/index.js +8 -0
- package/build/libraries/deployment-units/index.js.map +1 -0
- package/build/libraries/deployment-units/manifestWriter.d.ts +11 -0
- package/build/libraries/deployment-units/manifestWriter.d.ts.map +1 -0
- package/build/libraries/deployment-units/manifestWriter.js +28 -0
- package/build/libraries/deployment-units/manifestWriter.js.map +1 -0
- package/build/libraries/deployment-units/types.d.ts +43 -0
- package/build/libraries/deployment-units/types.d.ts.map +1 -0
- package/build/libraries/deployment-units/types.js +3 -0
- package/build/libraries/deployment-units/types.js.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/defaultVisibilityThings.readmodel.d.ts +2 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/defaultVisibilityThings.readmodel.d.ts.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/defaultVisibilityThings.readmodel.js +17 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/defaultVisibilityThings.readmodel.js.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/dupA/things.readmodel.d.ts +2 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/dupA/things.readmodel.d.ts.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/dupA/things.readmodel.js +13 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/dupA/things.readmodel.js.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/dupB/things.readmodel.d.ts +2 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/dupB/things.readmodel.d.ts.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/dupB/things.readmodel.js +12 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/dupB/things.readmodel.js.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/publicThings.readmodel.d.ts +2 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/publicThings.readmodel.d.ts.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/publicThings.readmodel.js +21 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/publicThings.readmodel.js.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/queryOnlyThings.readmodel.d.ts +2 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/queryOnlyThings.readmodel.d.ts.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/queryOnlyThings.readmodel.js +16 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/queryOnlyThings.readmodel.js.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/subscribingThings.readmodel.d.ts +2 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/subscribingThings.readmodel.d.ts.map +1 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/subscribingThings.readmodel.js +14 -0
- package/build/libraries/eventsourcing/__tests__/fixtures/subscribingThings.readmodel.js.map +1 -0
- package/build/libraries/eventsourcing/__tests__/queryOnlyReadmodel.test.d.ts +2 -0
- package/build/libraries/eventsourcing/__tests__/queryOnlyReadmodel.test.d.ts.map +1 -0
- package/build/libraries/eventsourcing/__tests__/queryOnlyReadmodel.test.js +88 -0
- package/build/libraries/eventsourcing/__tests__/queryOnlyReadmodel.test.js.map +1 -0
- package/build/libraries/eventsourcing/__tests__/queryVisibility.test.d.ts +2 -0
- package/build/libraries/eventsourcing/__tests__/queryVisibility.test.d.ts.map +1 -0
- package/build/libraries/eventsourcing/__tests__/queryVisibility.test.js +82 -0
- package/build/libraries/eventsourcing/__tests__/queryVisibility.test.js.map +1 -0
- package/build/libraries/eventsourcing/commandHandlers/index.d.ts +40 -0
- package/build/libraries/eventsourcing/commandHandlers/index.d.ts.map +1 -0
- package/build/libraries/eventsourcing/commandHandlers/index.js +1065 -0
- package/build/libraries/eventsourcing/commandHandlers/index.js.map +1 -0
- package/build/libraries/eventsourcing/commandTemplates/index.d.ts.map +1 -0
- package/build/libraries/eventsourcing/commandTemplates/index.js.map +1 -0
- package/build/libraries/eventsourcing/commandTemplates/multiStream.d.ts +7 -0
- package/build/libraries/eventsourcing/commandTemplates/multiStream.d.ts.map +1 -0
- package/build/libraries/eventsourcing/commandTemplates/multiStream.js +116 -0
- package/build/libraries/eventsourcing/commandTemplates/multiStream.js.map +1 -0
- package/build/libraries/eventsourcing/commandTemplates/snapshot.d.ts +108 -0
- package/build/libraries/eventsourcing/commandTemplates/snapshot.d.ts.map +1 -0
- package/build/libraries/eventsourcing/commandTemplates/snapshot.js +127 -0
- package/build/libraries/eventsourcing/commandTemplates/snapshot.js.map +1 -0
- package/build/libraries/eventsourcing/eventHandlers/__tests__/queryResponseFormatterCaller.test.d.ts +2 -0
- package/build/libraries/eventsourcing/eventHandlers/__tests__/queryResponseFormatterCaller.test.d.ts.map +1 -0
- package/build/libraries/eventsourcing/eventHandlers/__tests__/queryResponseFormatterCaller.test.js +77 -0
- package/build/libraries/eventsourcing/eventHandlers/__tests__/queryResponseFormatterCaller.test.js.map +1 -0
- package/build/libraries/eventsourcing/eventHandlers/index.d.ts +52 -0
- package/build/libraries/eventsourcing/eventHandlers/index.d.ts.map +1 -0
- package/build/libraries/eventsourcing/eventHandlers/index.js +474 -0
- package/build/libraries/eventsourcing/eventHandlers/index.js.map +1 -0
- package/build/libraries/eventsourcing/executionContext.d.ts +50 -0
- package/build/libraries/eventsourcing/executionContext.d.ts.map +1 -0
- package/build/libraries/eventsourcing/executionContext.js +10 -0
- package/build/libraries/eventsourcing/executionContext.js.map +1 -0
- package/build/libraries/eventsourcing/idempotencyChecks/index.d.ts +5 -0
- package/build/libraries/eventsourcing/idempotencyChecks/index.d.ts.map +1 -0
- package/build/libraries/eventsourcing/idempotencyChecks/index.js +26 -0
- package/build/libraries/eventsourcing/idempotencyChecks/index.js.map +1 -0
- package/build/libraries/eventsourcing/index.d.ts +14 -0
- package/build/libraries/eventsourcing/index.d.ts.map +1 -0
- package/build/{ports → libraries}/eventsourcing/index.js +50 -15
- package/build/{ports → libraries}/eventsourcing/index.js.map +1 -1
- package/build/libraries/eventsourcing/invariants/combinators.d.ts +4 -0
- package/build/libraries/eventsourcing/invariants/combinators.d.ts.map +1 -0
- package/build/{ports → libraries}/eventsourcing/invariants/combinators.js +3 -3
- package/build/libraries/eventsourcing/invariants/combinators.js.map +1 -0
- package/build/libraries/eventsourcing/invariants/common.d.ts +15 -0
- package/build/libraries/eventsourcing/invariants/common.d.ts.map +1 -0
- package/build/libraries/eventsourcing/invariants/common.js +27 -0
- package/build/libraries/eventsourcing/invariants/common.js.map +1 -0
- package/build/libraries/eventsourcing/invariants/comparisons.d.ts +16 -0
- package/build/libraries/eventsourcing/invariants/comparisons.d.ts.map +1 -0
- package/build/libraries/eventsourcing/invariants/comparisons.js +35 -0
- package/build/libraries/eventsourcing/invariants/comparisons.js.map +1 -0
- package/build/libraries/eventsourcing/invariants/comparisons.test.d.ts +2 -0
- package/build/libraries/eventsourcing/invariants/comparisons.test.d.ts.map +1 -0
- package/build/libraries/eventsourcing/invariants/comparisons.test.js +25 -0
- package/build/libraries/eventsourcing/invariants/comparisons.test.js.map +1 -0
- package/build/libraries/eventsourcing/invariants/index.d.ts +17 -0
- package/build/libraries/eventsourcing/invariants/index.d.ts.map +1 -0
- package/build/libraries/eventsourcing/invariants/index.js +47 -0
- package/build/libraries/eventsourcing/invariants/index.js.map +1 -0
- package/build/libraries/eventsourcing/invariants/stateExistance.d.ts +4 -0
- package/build/libraries/eventsourcing/invariants/stateExistance.d.ts.map +1 -0
- package/build/libraries/eventsourcing/invariants/stateExistance.js +22 -0
- package/build/libraries/eventsourcing/invariants/stateExistance.js.map +1 -0
- package/build/libraries/eventsourcing/subscriptions/__tests__/sseSubscriptions.test.d.ts +2 -0
- package/build/libraries/eventsourcing/subscriptions/__tests__/sseSubscriptions.test.d.ts.map +1 -0
- package/build/libraries/eventsourcing/subscriptions/__tests__/sseSubscriptions.test.js +563 -0
- package/build/libraries/eventsourcing/subscriptions/__tests__/sseSubscriptions.test.js.map +1 -0
- package/build/libraries/eventsourcing/subscriptions/index.d.ts.map +1 -0
- package/build/libraries/eventsourcing/subscriptions/index.js.map +1 -0
- package/build/libraries/eventsourcing/subscriptions/sseSubscriptions.d.ts +5 -0
- package/build/libraries/eventsourcing/subscriptions/sseSubscriptions.d.ts.map +1 -0
- package/build/libraries/eventsourcing/subscriptions/sseSubscriptions.js +198 -0
- package/build/libraries/eventsourcing/subscriptions/sseSubscriptions.js.map +1 -0
- package/build/libraries/eventsourcing/utils/aggregateBuilder.d.ts +5 -0
- package/build/libraries/eventsourcing/utils/aggregateBuilder.d.ts.map +1 -0
- package/build/{ports → libraries}/eventsourcing/utils/aggregateBuilder.js +17 -3
- package/build/libraries/eventsourcing/utils/aggregateBuilder.js.map +1 -0
- package/build/libraries/eventsourcing/utils/commandBuilder.d.ts +3 -0
- package/build/libraries/eventsourcing/utils/commandBuilder.d.ts.map +1 -0
- package/build/{ports → libraries}/eventsourcing/utils/commandBuilder.js +44 -1
- package/build/libraries/eventsourcing/utils/commandBuilder.js.map +1 -0
- package/build/{ports → libraries}/eventsourcing/utils/eventHandlerBuilder.d.ts +2 -2
- package/build/libraries/eventsourcing/utils/eventHandlerBuilder.d.ts.map +1 -0
- package/build/libraries/eventsourcing/utils/eventHandlerBuilder.js.map +1 -0
- package/build/libraries/eventsourcing/utils/externalSystemBuilder.d.ts +5 -0
- package/build/libraries/eventsourcing/utils/externalSystemBuilder.d.ts.map +1 -0
- package/build/libraries/eventsourcing/utils/externalSystemBuilder.js +43 -0
- package/build/libraries/eventsourcing/utils/externalSystemBuilder.js.map +1 -0
- package/build/libraries/eventsourcing/utils/index.d.ts +22 -0
- package/build/libraries/eventsourcing/utils/index.d.ts.map +1 -0
- package/build/libraries/eventsourcing/utils/index.js +88 -0
- package/build/libraries/eventsourcing/utils/index.js.map +1 -0
- package/build/libraries/eventsourcing/utils/policyBuilder.d.ts +4 -0
- package/build/libraries/eventsourcing/utils/policyBuilder.d.ts.map +1 -0
- package/build/libraries/eventsourcing/utils/policyBuilder.js +53 -0
- package/build/libraries/eventsourcing/utils/policyBuilder.js.map +1 -0
- package/build/libraries/eventsourcing/utils/readmodelBuilder.d.ts +6 -0
- package/build/libraries/eventsourcing/utils/readmodelBuilder.d.ts.map +1 -0
- package/build/libraries/eventsourcing/utils/readmodelBuilder.js +68 -0
- package/build/libraries/eventsourcing/utils/readmodelBuilder.js.map +1 -0
- package/build/libraries/localOutbox/index.d.ts +6 -0
- package/build/libraries/localOutbox/index.d.ts.map +1 -0
- package/build/libraries/localOutbox/index.js +72 -0
- package/build/libraries/localOutbox/index.js.map +1 -0
- package/build/libraries/modulePath.d.ts +14 -0
- package/build/libraries/modulePath.d.ts.map +1 -0
- package/build/libraries/modulePath.js +21 -0
- package/build/libraries/modulePath.js.map +1 -0
- package/build/libraries/modules/fs.d.ts +2 -4
- package/build/libraries/modules/fs.d.ts.map +1 -1
- package/build/libraries/modules/fs.js +21 -84
- package/build/libraries/modules/fs.js.map +1 -1
- package/build/libraries/modules/index.d.ts +2 -0
- package/build/libraries/modules/index.d.ts.map +1 -1
- package/build/libraries/modules/index.js +2 -0
- package/build/libraries/modules/index.js.map +1 -1
- package/build/libraries/modules/scopedPortsView.d.ts +42 -0
- package/build/libraries/modules/scopedPortsView.d.ts.map +1 -0
- package/build/libraries/modules/scopedPortsView.js +55 -0
- package/build/libraries/modules/scopedPortsView.js.map +1 -0
- package/build/libraries/modules/scopedPortsView.test.d.ts +10 -0
- package/build/libraries/modules/scopedPortsView.test.d.ts.map +1 -0
- package/build/libraries/modules/scopedPortsView.test.js +103 -0
- package/build/libraries/modules/scopedPortsView.test.js.map +1 -0
- package/build/libraries/modules/selectiveLoader.d.ts +21 -0
- package/build/libraries/modules/selectiveLoader.d.ts.map +1 -0
- package/build/libraries/modules/selectiveLoader.js +164 -0
- package/build/libraries/modules/selectiveLoader.js.map +1 -0
- package/build/libraries/modules/selectiveLoader.test.d.ts +2 -0
- package/build/libraries/modules/selectiveLoader.test.d.ts.map +1 -0
- package/build/libraries/modules/selectiveLoader.test.js +471 -0
- package/build/libraries/modules/selectiveLoader.test.js.map +1 -0
- package/build/libraries/openApi/pruneUnusedRef.d.ts.map +1 -1
- package/build/libraries/openApi/pruneUnusedRef.js.map +1 -1
- package/build/libraries/tcp/index.d.ts +0 -1
- package/build/libraries/tcp/index.d.ts.map +1 -1
- package/build/libraries/tcp/index.js +32 -9
- package/build/libraries/tcp/index.js.map +1 -1
- package/build/libraries/tcp/types.d.ts +0 -1
- package/build/libraries/tcp/types.d.ts.map +1 -1
- package/build/libraries/validation/__tests__/readmodelQuerySchema.test.d.ts +2 -0
- package/build/libraries/validation/__tests__/readmodelQuerySchema.test.d.ts.map +1 -0
- package/build/libraries/validation/__tests__/readmodelQuerySchema.test.js +100 -0
- package/build/libraries/validation/__tests__/readmodelQuerySchema.test.js.map +1 -0
- package/build/libraries/validation/__tests__/validation.test.js +17 -7
- package/build/libraries/validation/__tests__/validation.test.js.map +1 -1
- package/build/libraries/validation/index.d.ts +3 -3
- package/build/libraries/validation/index.d.ts.map +1 -1
- package/build/libraries/validation/index.js +49 -15
- package/build/libraries/validation/index.js.map +1 -1
- package/build/ports/authentication/index.js.map +1 -1
- package/build/ports/authentication/index.test.d.ts +2 -0
- package/build/ports/authentication/index.test.d.ts.map +1 -0
- package/build/ports/authentication/index.test.js +38 -0
- package/build/ports/authentication/index.test.js.map +1 -0
- package/build/ports/base.d.ts.map +1 -1
- package/build/ports/base.js +39 -5
- package/build/ports/base.js.map +1 -1
- package/build/ports/base.test.d.ts +2 -0
- package/build/ports/base.test.d.ts.map +1 -0
- package/build/ports/base.test.js +92 -0
- package/build/ports/base.test.js.map +1 -0
- package/build/ports/cache/index.js.map +1 -1
- package/build/ports/cache/index.test.d.ts +2 -0
- package/build/ports/cache/index.test.d.ts.map +1 -0
- package/build/ports/cache/index.test.js +43 -0
- package/build/ports/cache/index.test.js.map +1 -0
- package/build/ports/configuration/__tests__/cliArgs.test.d.ts +2 -0
- package/build/ports/configuration/__tests__/cliArgs.test.d.ts.map +1 -0
- package/build/ports/configuration/__tests__/cliArgs.test.js +158 -0
- package/build/ports/configuration/__tests__/cliArgs.test.js.map +1 -0
- package/build/ports/configuration/__tests__/configurationPortEmitter.test.d.ts +2 -0
- package/build/ports/configuration/__tests__/configurationPortEmitter.test.d.ts.map +1 -0
- package/build/ports/configuration/__tests__/configurationPortEmitter.test.js +63 -0
- package/build/ports/configuration/__tests__/configurationPortEmitter.test.js.map +1 -0
- package/build/ports/configuration/__tests__/getArgsSync.test.d.ts +2 -0
- package/build/ports/configuration/__tests__/getArgsSync.test.d.ts.map +1 -0
- package/build/ports/configuration/__tests__/getArgsSync.test.js +85 -0
- package/build/ports/configuration/__tests__/getArgsSync.test.js.map +1 -0
- package/build/ports/configuration/args.d.ts +50 -43
- package/build/ports/configuration/args.d.ts.map +1 -1
- package/build/ports/configuration/args.js +76 -13
- package/build/ports/configuration/args.js.map +1 -1
- package/build/ports/configuration/common.js +1 -2
- package/build/ports/configuration/common.js.map +1 -1
- package/build/ports/configuration/index.d.ts +1 -1
- package/build/ports/configuration/index.d.ts.map +1 -1
- package/build/ports/configuration/index.js +85 -17
- package/build/ports/configuration/index.js.map +1 -1
- package/build/ports/configuration/localConfig.d.ts.map +1 -1
- package/build/ports/configuration/localConfig.js +46 -27
- package/build/ports/configuration/localConfig.js.map +1 -1
- package/build/ports/database/index.d.ts +1 -2
- package/build/ports/database/index.d.ts.map +1 -1
- package/build/ports/database/index.js +23 -17
- package/build/ports/database/index.js.map +1 -1
- package/build/ports/database/index.test.d.ts +2 -0
- package/build/ports/database/index.test.d.ts.map +1 -0
- package/build/ports/database/index.test.js +43 -0
- package/build/ports/database/index.test.js.map +1 -0
- package/build/ports/endpoints/__tests__/declarationSite.test.d.ts +2 -0
- package/build/ports/endpoints/__tests__/declarationSite.test.d.ts.map +1 -0
- package/build/ports/endpoints/__tests__/declarationSite.test.js +165 -0
- package/build/ports/endpoints/__tests__/declarationSite.test.js.map +1 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/appLoginUrl.d.ts +9 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/appLoginUrl.d.ts.map +1 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/appLoginUrl.js +20 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/appLoginUrl.js.map +1 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/index.d.ts +10 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/index.d.ts.map +1 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/index.js +21 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/index.js.map +1 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/orders.endpoints.d.ts +15 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/orders.endpoints.d.ts.map +1 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/orders.endpoints.js +46 -0
- package/build/ports/endpoints/__tests__/fixtures/modules/sales/orders.endpoints.js.map +1 -0
- package/build/ports/endpoints/__tests__/manifestEndpoints.test.d.ts +2 -0
- package/build/ports/endpoints/__tests__/manifestEndpoints.test.d.ts.map +1 -0
- package/build/ports/endpoints/__tests__/manifestEndpoints.test.js +117 -0
- package/build/ports/endpoints/__tests__/manifestEndpoints.test.js.map +1 -0
- package/build/ports/endpoints/declarationSite.d.ts +63 -0
- package/build/ports/endpoints/declarationSite.d.ts.map +1 -0
- package/build/ports/endpoints/declarationSite.js +126 -0
- package/build/ports/endpoints/declarationSite.js.map +1 -0
- package/build/ports/endpoints/health.d.ts +26 -0
- package/build/ports/endpoints/health.d.ts.map +1 -0
- package/build/ports/endpoints/health.js +96 -0
- package/build/ports/endpoints/health.js.map +1 -0
- package/build/ports/endpoints/index.d.ts +43 -7
- package/build/ports/endpoints/index.d.ts.map +1 -1
- package/build/ports/endpoints/index.js +317 -67
- package/build/ports/endpoints/index.js.map +1 -1
- package/build/ports/endpoints/openApi.d.ts +3 -2
- package/build/ports/endpoints/openApi.d.ts.map +1 -1
- package/build/ports/endpoints/openApi.js +184 -55
- package/build/ports/endpoints/openApi.js.map +1 -1
- package/build/ports/endpoints/utils.d.ts.map +1 -1
- package/build/ports/endpoints/utils.js.map +1 -1
- package/build/ports/eventstore/index.d.ts.map +1 -1
- package/build/ports/eventstore/index.js +37 -5
- package/build/ports/eventstore/index.js.map +1 -1
- package/build/ports/eventstore/index.test.d.ts +2 -0
- package/build/ports/eventstore/index.test.d.ts.map +1 -0
- package/build/ports/eventstore/index.test.js +68 -0
- package/build/ports/eventstore/index.test.js.map +1 -0
- package/build/ports/infrastructure/index.d.ts +61 -23
- package/build/ports/infrastructure/index.d.ts.map +1 -1
- package/build/ports/infrastructure/index.js +187 -37
- package/build/ports/infrastructure/index.js.map +1 -1
- package/build/ports/infrastructure/index.test.d.ts +2 -0
- package/build/ports/infrastructure/index.test.d.ts.map +1 -0
- package/build/ports/infrastructure/index.test.js +228 -0
- package/build/ports/infrastructure/index.test.js.map +1 -0
- package/build/ports/infrastructure/utils.d.ts +2 -1
- package/build/ports/infrastructure/utils.d.ts.map +1 -1
- package/build/ports/infrastructure/utils.js +48 -22
- package/build/ports/infrastructure/utils.js.map +1 -1
- package/build/ports/logger/__tests__/logger.test.d.ts +2 -0
- package/build/ports/logger/__tests__/logger.test.d.ts.map +1 -0
- package/build/ports/logger/__tests__/logger.test.js +69 -0
- package/build/ports/logger/__tests__/logger.test.js.map +1 -0
- package/build/ports/logger/index.d.ts.map +1 -1
- package/build/ports/logger/index.js +3 -2
- package/build/ports/logger/index.js.map +1 -1
- package/build/utils/__tests__/applyCollectionFilterInMemory.test.d.ts +2 -0
- package/build/utils/__tests__/applyCollectionFilterInMemory.test.d.ts.map +1 -0
- package/build/utils/__tests__/applyCollectionFilterInMemory.test.js +33 -0
- package/build/utils/__tests__/applyCollectionFilterInMemory.test.js.map +1 -0
- package/build/utils/__tests__/decodeObjectQueryParams.test.d.ts +2 -0
- package/build/utils/__tests__/decodeObjectQueryParams.test.d.ts.map +1 -0
- package/build/utils/__tests__/decodeObjectQueryParams.test.js +118 -0
- package/build/utils/__tests__/decodeObjectQueryParams.test.js.map +1 -0
- package/build/utils/index.d.ts +26 -34
- package/build/utils/index.d.ts.map +1 -1
- package/build/utils/index.js +159 -170
- package/build/utils/index.js.map +1 -1
- package/package.json +31 -11
- package/build/adapters/cache/memory/__tests__/memoryCache.test.d.ts +0 -1
- package/build/adapters/cache/memory/__tests__/memoryCache.test.d.ts.map +0 -1
- package/build/adapters/cache/memory/__tests__/memoryCache.test.js +0 -6
- package/build/adapters/cache/memory/__tests__/memoryCache.test.js.map +0 -1
- package/build/adapters/database/memory/__tests__/memoryDb.test.d.ts +0 -1
- package/build/adapters/database/memory/__tests__/memoryDb.test.d.ts.map +0 -1
- package/build/adapters/database/memory/__tests__/memoryDb.test.js +0 -36
- package/build/adapters/database/memory/__tests__/memoryDb.test.js.map +0 -1
- package/build/ports/endpoints/__tests__/endpointsCall.test.d.ts +0 -2
- package/build/ports/endpoints/__tests__/endpointsCall.test.d.ts.map +0 -1
- package/build/ports/endpoints/__tests__/endpointsCall.test.js +0 -21
- package/build/ports/endpoints/__tests__/endpointsCall.test.js.map +0 -1
- package/build/ports/endpoints/__tests__/test-client-library/base.d.ts +0 -77
- package/build/ports/endpoints/__tests__/test-client-library/base.d.ts.map +0 -1
- package/build/ports/endpoints/__tests__/test-client-library/base.js +0 -91
- package/build/ports/endpoints/__tests__/test-client-library/base.js.map +0 -1
- package/build/ports/endpoints/__tests__/test-client-library/index.d.ts +0 -29
- package/build/ports/endpoints/__tests__/test-client-library/index.d.ts.map +0 -1
- package/build/ports/endpoints/__tests__/test-client-library/index.js +0 -43
- package/build/ports/endpoints/__tests__/test-client-library/index.js.map +0 -1
- package/build/ports/endpoints/__tests__/test-client-library/services/service.d.ts +0 -106
- package/build/ports/endpoints/__tests__/test-client-library/services/service.d.ts.map +0 -1
- package/build/ports/endpoints/__tests__/test-client-library/services/service.js +0 -62
- package/build/ports/endpoints/__tests__/test-client-library/services/service.js.map +0 -1
- package/build/ports/endpoints/__tests__/utils.test.d.ts +0 -1
- package/build/ports/endpoints/__tests__/utils.test.d.ts.map +0 -1
- package/build/ports/endpoints/__tests__/utils.test.js +0 -53
- package/build/ports/endpoints/__tests__/utils.test.js.map +0 -1
- package/build/ports/eventsourcing/__tests__/eventhandlers.test.d.ts +0 -2
- package/build/ports/eventsourcing/__tests__/eventhandlers.test.d.ts.map +0 -1
- package/build/ports/eventsourcing/__tests__/eventhandlers.test.js +0 -35
- package/build/ports/eventsourcing/__tests__/eventhandlers.test.js.map +0 -1
- package/build/ports/eventsourcing/__tests__/invariants.test.d.ts +0 -2
- package/build/ports/eventsourcing/__tests__/invariants.test.d.ts.map +0 -1
- package/build/ports/eventsourcing/__tests__/invariants.test.js +0 -210
- package/build/ports/eventsourcing/__tests__/invariants.test.js.map +0 -1
- package/build/ports/eventsourcing/commandHandlers/index.d.ts +0 -25
- package/build/ports/eventsourcing/commandHandlers/index.d.ts.map +0 -1
- package/build/ports/eventsourcing/commandHandlers/index.js +0 -392
- package/build/ports/eventsourcing/commandHandlers/index.js.map +0 -1
- package/build/ports/eventsourcing/commandTemplates/index.d.ts.map +0 -1
- package/build/ports/eventsourcing/commandTemplates/index.js.map +0 -1
- package/build/ports/eventsourcing/commandTemplates/multiStream.d.ts +0 -4
- package/build/ports/eventsourcing/commandTemplates/multiStream.d.ts.map +0 -1
- package/build/ports/eventsourcing/commandTemplates/multiStream.js +0 -73
- package/build/ports/eventsourcing/commandTemplates/multiStream.js.map +0 -1
- package/build/ports/eventsourcing/commandTemplates/snapshot.d.ts +0 -9
- package/build/ports/eventsourcing/commandTemplates/snapshot.d.ts.map +0 -1
- package/build/ports/eventsourcing/commandTemplates/snapshot.js +0 -39
- package/build/ports/eventsourcing/commandTemplates/snapshot.js.map +0 -1
- package/build/ports/eventsourcing/eventHandlers/index.d.ts +0 -33
- package/build/ports/eventsourcing/eventHandlers/index.d.ts.map +0 -1
- package/build/ports/eventsourcing/eventHandlers/index.js +0 -276
- package/build/ports/eventsourcing/eventHandlers/index.js.map +0 -1
- package/build/ports/eventsourcing/index.d.ts +0 -9
- package/build/ports/eventsourcing/index.d.ts.map +0 -1
- package/build/ports/eventsourcing/invariants/combinators.d.ts +0 -4
- package/build/ports/eventsourcing/invariants/combinators.d.ts.map +0 -1
- package/build/ports/eventsourcing/invariants/combinators.js.map +0 -1
- package/build/ports/eventsourcing/invariants/common.d.ts +0 -10
- package/build/ports/eventsourcing/invariants/common.d.ts.map +0 -1
- package/build/ports/eventsourcing/invariants/common.js +0 -37
- package/build/ports/eventsourcing/invariants/common.js.map +0 -1
- package/build/ports/eventsourcing/invariants/comparisons.d.ts +0 -19
- package/build/ports/eventsourcing/invariants/comparisons.d.ts.map +0 -1
- package/build/ports/eventsourcing/invariants/comparisons.js +0 -83
- package/build/ports/eventsourcing/invariants/comparisons.js.map +0 -1
- package/build/ports/eventsourcing/invariants/index.d.ts +0 -5
- package/build/ports/eventsourcing/invariants/index.d.ts.map +0 -1
- package/build/ports/eventsourcing/invariants/index.js +0 -21
- package/build/ports/eventsourcing/invariants/index.js.map +0 -1
- package/build/ports/eventsourcing/invariants/stateExistance.d.ts +0 -4
- package/build/ports/eventsourcing/invariants/stateExistance.d.ts.map +0 -1
- package/build/ports/eventsourcing/invariants/stateExistance.js +0 -33
- package/build/ports/eventsourcing/invariants/stateExistance.js.map +0 -1
- package/build/ports/eventsourcing/subscriptions/index.d.ts.map +0 -1
- package/build/ports/eventsourcing/subscriptions/index.js.map +0 -1
- package/build/ports/eventsourcing/subscriptions/sseSubscriptions.d.ts +0 -3
- package/build/ports/eventsourcing/subscriptions/sseSubscriptions.d.ts.map +0 -1
- package/build/ports/eventsourcing/subscriptions/sseSubscriptions.js +0 -81
- package/build/ports/eventsourcing/subscriptions/sseSubscriptions.js.map +0 -1
- package/build/ports/eventsourcing/utils/aggregateBuilder.d.ts +0 -4
- package/build/ports/eventsourcing/utils/aggregateBuilder.d.ts.map +0 -1
- package/build/ports/eventsourcing/utils/aggregateBuilder.js.map +0 -1
- package/build/ports/eventsourcing/utils/commandBuilder.d.ts +0 -3
- package/build/ports/eventsourcing/utils/commandBuilder.d.ts.map +0 -1
- package/build/ports/eventsourcing/utils/commandBuilder.js.map +0 -1
- package/build/ports/eventsourcing/utils/eventHandlerBuilder.d.ts.map +0 -1
- package/build/ports/eventsourcing/utils/eventHandlerBuilder.js.map +0 -1
- package/build/ports/eventsourcing/utils/externalSystemBuilder.d.ts +0 -4
- package/build/ports/eventsourcing/utils/externalSystemBuilder.d.ts.map +0 -1
- package/build/ports/eventsourcing/utils/externalSystemBuilder.js +0 -34
- package/build/ports/eventsourcing/utils/externalSystemBuilder.js.map +0 -1
- package/build/ports/eventsourcing/utils/index.d.ts +0 -13
- package/build/ports/eventsourcing/utils/index.d.ts.map +0 -1
- package/build/ports/eventsourcing/utils/index.js +0 -45
- package/build/ports/eventsourcing/utils/index.js.map +0 -1
- package/build/ports/eventsourcing/utils/policyBuilder.d.ts +0 -3
- package/build/ports/eventsourcing/utils/policyBuilder.d.ts.map +0 -1
- package/build/ports/eventsourcing/utils/policyBuilder.js +0 -29
- package/build/ports/eventsourcing/utils/policyBuilder.js.map +0 -1
- package/build/ports/eventsourcing/utils/readmodelBuilder.d.ts +0 -5
- package/build/ports/eventsourcing/utils/readmodelBuilder.d.ts.map +0 -1
- package/build/ports/eventsourcing/utils/readmodelBuilder.js +0 -45
- package/build/ports/eventsourcing/utils/readmodelBuilder.js.map +0 -1
- package/build/ports/infrastructure/__tests__/fixture/index.d.ts +0 -3
- package/build/ports/infrastructure/__tests__/fixture/index.d.ts.map +0 -1
- package/build/ports/infrastructure/__tests__/fixture/index.js +0 -19
- package/build/ports/infrastructure/__tests__/fixture/index.js.map +0 -1
- package/build/ports/infrastructure/__tests__/fixture/infrastructureServices.d.ts +0 -19
- package/build/ports/infrastructure/__tests__/fixture/infrastructureServices.d.ts.map +0 -1
- package/build/ports/infrastructure/__tests__/fixture/infrastructureServices.js +0 -76
- package/build/ports/infrastructure/__tests__/fixture/infrastructureServices.js.map +0 -1
- package/build/ports/infrastructure/__tests__/fixture/structureState.d.ts +0 -177
- package/build/ports/infrastructure/__tests__/fixture/structureState.d.ts.map +0 -1
- package/build/ports/infrastructure/__tests__/fixture/structureState.js +0 -258
- package/build/ports/infrastructure/__tests__/fixture/structureState.js.map +0 -1
- package/build/ports/infrastructure/__tests__/infrastructure.test.d.ts +0 -2
- package/build/ports/infrastructure/__tests__/infrastructure.test.d.ts.map +0 -1
- package/build/ports/infrastructure/__tests__/infrastructure.test.js +0 -11
- package/build/ports/infrastructure/__tests__/infrastructure.test.js.map +0 -1
- package/src/adapters/cache/index.ts +0 -1
- package/src/adapters/cache/memory/__tests__/memoryCache.test.ts +0 -6
- package/src/adapters/cache/memory/index.ts +0 -142
- package/src/adapters/configuration/__tests__/.env +0 -4
- package/src/adapters/configuration/__tests__/dotEnv.test.ts +0 -38
- package/src/adapters/configuration/dotEnv.ts +0 -33
- package/src/adapters/configuration/index.ts +0 -1
- package/src/adapters/database/index.ts +0 -1
- package/src/adapters/database/memory/__tests__/memoryDb.test.ts +0 -37
- package/src/adapters/database/memory/index.ts +0 -279
- package/src/adapters/endpoints/addAuthUser/index.ts +0 -55
- package/src/adapters/endpoints/endpointValidation/index.ts +0 -26
- package/src/adapters/endpoints/index.ts +0 -4
- package/src/adapters/endpoints/localAuthorization/index.ts +0 -75
- package/src/adapters/endpoints/tcpConsumer/index.ts +0 -69
- package/src/adapters/endpoints/userSession/index.ts +0 -40
- package/src/adapters/eventstore/database.ts +0 -178
- package/src/adapters/eventstore/index.ts +0 -1
- package/src/adapters/infrastructure/index.ts +0 -1
- package/src/adapters/infrastructure/local/index.ts +0 -40
- package/src/adapters/logger/console.ts +0 -42
- package/src/adapters/logger/index.ts +0 -1
- package/src/index.ts +0 -25
- package/src/libraries/modules/fs.ts +0 -88
- package/src/libraries/modules/index.ts +0 -1
- package/src/libraries/openApi/index.ts +0 -1
- package/src/libraries/openApi/pruneUnusedRef.ts +0 -35
- package/src/libraries/tcp/index.ts +0 -98
- package/src/libraries/tcp/types.ts +0 -43
- package/src/libraries/validation/__tests__/validation.test.ts +0 -25
- package/src/libraries/validation/index.ts +0 -48
- package/src/ports/authentication/index.ts +0 -25
- package/src/ports/base.ts +0 -20
- package/src/ports/cache/index.ts +0 -17
- package/src/ports/configuration/__tests__/configurationPort.test.ts +0 -47
- package/src/ports/configuration/args.ts +0 -39
- package/src/ports/configuration/common.ts +0 -12
- package/src/ports/configuration/index.ts +0 -110
- package/src/ports/configuration/localConfig.ts +0 -117
- package/src/ports/database/index.ts +0 -25
- package/src/ports/endpoints/__tests__/endpointsCall.test.ts +0 -20
- package/src/ports/endpoints/__tests__/test-client-library/base.ts +0 -167
- package/src/ports/endpoints/__tests__/test-client-library/index.ts +0 -23
- package/src/ports/endpoints/__tests__/test-client-library/services/service.ts +0 -181
- package/src/ports/endpoints/__tests__/utils.test.ts +0 -54
- package/src/ports/endpoints/index.ts +0 -272
- package/src/ports/endpoints/openApi.ts +0 -191
- package/src/ports/endpoints/utils.ts +0 -31
- package/src/ports/eventsourcing/__tests__/eventhandlers.test.ts +0 -30
- package/src/ports/eventsourcing/__tests__/invariants.test.ts +0 -213
- package/src/ports/eventsourcing/commandHandlers/index.ts +0 -625
- package/src/ports/eventsourcing/commandTemplates/index.ts +0 -2
- package/src/ports/eventsourcing/commandTemplates/multiStream.ts +0 -70
- package/src/ports/eventsourcing/commandTemplates/snapshot.ts +0 -43
- package/src/ports/eventsourcing/eventHandlers/index.ts +0 -429
- package/src/ports/eventsourcing/index.ts +0 -98
- package/src/ports/eventsourcing/invariants/combinators.ts +0 -25
- package/src/ports/eventsourcing/invariants/common.ts +0 -42
- package/src/ports/eventsourcing/invariants/comparisons.ts +0 -90
- package/src/ports/eventsourcing/invariants/index.ts +0 -4
- package/src/ports/eventsourcing/invariants/stateExistance.ts +0 -34
- package/src/ports/eventsourcing/subscriptions/index.ts +0 -1
- package/src/ports/eventsourcing/subscriptions/sseSubscriptions.ts +0 -103
- package/src/ports/eventsourcing/utils/aggregateBuilder.ts +0 -49
- package/src/ports/eventsourcing/utils/commandBuilder.ts +0 -113
- package/src/ports/eventsourcing/utils/eventHandlerBuilder.ts +0 -22
- package/src/ports/eventsourcing/utils/externalSystemBuilder.ts +0 -42
- package/src/ports/eventsourcing/utils/index.ts +0 -25
- package/src/ports/eventsourcing/utils/policyBuilder.ts +0 -31
- package/src/ports/eventsourcing/utils/readmodelBuilder.ts +0 -52
- package/src/ports/eventstore/index.ts +0 -11
- package/src/ports/infrastructure/__tests__/fixture/index.ts +0 -2
- package/src/ports/infrastructure/__tests__/fixture/infrastructureServices.ts +0 -72
- package/src/ports/infrastructure/__tests__/fixture/structureState.ts +0 -254
- package/src/ports/infrastructure/__tests__/infrastructure.test.ts +0 -11
- package/src/ports/infrastructure/index.ts +0 -162
- package/src/ports/infrastructure/utils.ts +0 -130
- package/src/ports/logger/index.ts +0 -34
- package/src/utils/index.ts +0 -186
- package/tsconfig.json +0 -19
- /package/build/{ports → libraries}/eventsourcing/commandTemplates/index.d.ts +0 -0
- /package/build/{ports → libraries}/eventsourcing/commandTemplates/index.js +0 -0
- /package/build/{ports → libraries}/eventsourcing/subscriptions/index.d.ts +0 -0
- /package/build/{ports → libraries}/eventsourcing/subscriptions/index.js +0 -0
- /package/build/{ports → libraries}/eventsourcing/utils/eventHandlerBuilder.js +0 -0
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { mergeDeepRight } from 'ramda';
|
|
2
|
-
import { ConfigurationAdapter } from '@bett3r-dev/pv3-types';
|
|
3
|
-
|
|
4
|
-
const deepFilterUndefined = ( obj: Record<string, any> ): Record<string, any> => {
|
|
5
|
-
const result: Record<string, any> = {};
|
|
6
|
-
Object.keys( obj ).forEach(( key ) => {
|
|
7
|
-
if ( typeof obj[key] === 'object' && !Array.isArray( obj[key])) {
|
|
8
|
-
const value = deepFilterUndefined( obj[key]);
|
|
9
|
-
if ( Object.keys( value ).length > 0 ) {
|
|
10
|
-
result[key] = value;
|
|
11
|
-
}
|
|
12
|
-
} else if ( typeof obj[key] !== 'undefined' ) {
|
|
13
|
-
result[key] = obj[key];
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
return result;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export const DotEnv = ( envFilePath:string, configMap: ( env: Record<string, any>, previous: Record<string, any> ) => Record<string, any> ): ConfigurationAdapter => {
|
|
20
|
-
require( 'dotenv' ).config({ path: envFilePath });
|
|
21
|
-
const applyConfig = async <CONFIG extends object>( config: CONFIG ): Promise<CONFIG> => {
|
|
22
|
-
const envConfig = configMap( process.env, config );
|
|
23
|
-
return mergeDeepRight( config, deepFilterUndefined( envConfig )) as CONFIG;
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
return {
|
|
27
|
-
_adapter: () => {},
|
|
28
|
-
start: async()=>{},
|
|
29
|
-
stop: async()=>{},
|
|
30
|
-
name: 'dotEnv',
|
|
31
|
-
applyConfig
|
|
32
|
-
};
|
|
33
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './dotEnv';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './memory';
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
// import { Database } from '../../../../ports/database';
|
|
2
|
-
// import { DatabaseAdapterTest } from '@bett3r-dev/pv3-library-tests';
|
|
3
|
-
// import { MemoryDb } from '../index';
|
|
4
|
-
|
|
5
|
-
// describe( 'MemoryDb tests', () => {
|
|
6
|
-
// DatabaseAdapterTest( MemoryDb());
|
|
7
|
-
// });
|
|
8
|
-
|
|
9
|
-
// describe( 'Upsert', () => {
|
|
10
|
-
// it( 'when upserting a dot notation nested value then it stores it respecting the structure', async () => {
|
|
11
|
-
// const database = Database( MemoryDb());
|
|
12
|
-
// await database.getCollection( 'test' ).upsert( '1', { 'id': '1', 'string.nested.value': 4 });
|
|
13
|
-
// const result = await database.getCollection( 'test' ).readById( '1' );
|
|
14
|
-
// expect( result ).toEqual({ id: '1', string: { nested: { value: 4 }}}
|
|
15
|
-
// );
|
|
16
|
-
// });
|
|
17
|
-
// it( 'when upserting a dot notation nested value then it stores it respecting the structure', async () => {
|
|
18
|
-
// const database = Database( MemoryDb());
|
|
19
|
-
// await database.getCollection( 'test' ).upsert( 'processing', { events:
|
|
20
|
-
// { 2: 'Carts-CartsReadmodel-1',
|
|
21
|
-
// 3: null,
|
|
22
|
-
// 4: 'Carts-CartsReadmodel-3',
|
|
23
|
-
// 5: 'Carts-CartsReadmodel-0' },
|
|
24
|
-
// lastProcessed: 3 });
|
|
25
|
-
// const result = await database.getCollection( 'test' ).readById( 'processing' );
|
|
26
|
-
// expect( result ).toEqual({
|
|
27
|
-
// events: {
|
|
28
|
-
// 2: 'Carts-CartsReadmodel-1',
|
|
29
|
-
// 3: null,
|
|
30
|
-
// 4: 'Carts-CartsReadmodel-3',
|
|
31
|
-
// 5: 'Carts-CartsReadmodel-0'
|
|
32
|
-
// },
|
|
33
|
-
// id: 'processing',
|
|
34
|
-
// lastProcessed: 3
|
|
35
|
-
// });
|
|
36
|
-
// });
|
|
37
|
-
// });
|
|
@@ -1,279 +0,0 @@
|
|
|
1
|
-
import { ensureArray, TypedEventEmitter } from '@bett3r-dev/bett3r-utils';
|
|
2
|
-
import { Collection, CollectionFilter, CollectionFilterInstance, CollectionOperations, CollectionQueryParams, DatabaseAdapter, DatabaseChange, Document, filterOpMap, IndexOptions } from '@bett3r-dev/pv3-types';
|
|
3
|
-
import { randomUUID } from 'crypto';
|
|
4
|
-
import { assocPath, clone, path, pick, props } from 'ramda';
|
|
5
|
-
import { DuplicatedValueInIndex } from '../../../ports/database';
|
|
6
|
-
import { createError } from '../../../utils';
|
|
7
|
-
|
|
8
|
-
export const MemoryDb = (): DatabaseAdapter => {
|
|
9
|
-
let _db = {};
|
|
10
|
-
const changeEmitters: Record<string, TypedEventEmitter<{'change': DatabaseChange}>> = {};
|
|
11
|
-
type UniqueIndexes = {
|
|
12
|
-
[collection: string]:{
|
|
13
|
-
[index: string] : string[]
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
const uniqueIndexes: UniqueIndexes = {};
|
|
18
|
-
|
|
19
|
-
const start = async () => {
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const stop = async () => {
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
const getCollection = <Model extends Document>( collection:string ): Collection<Model> => {
|
|
27
|
-
const coll = _db[collection] ||= {};
|
|
28
|
-
|
|
29
|
-
const validateIndex = ( data: any ) => {
|
|
30
|
-
if ( !uniqueIndexes[collection]) return;
|
|
31
|
-
const duplicatedIndex = Object.keys( uniqueIndexes[collection]).find( index => {
|
|
32
|
-
const properties = uniqueIndexes[collection][index];
|
|
33
|
-
const recordComparison = Object.values( coll ).find(( d: any )=> {
|
|
34
|
-
const valueComparison = properties.every( p =>{
|
|
35
|
-
return path( p.split( '.' ), d ) === path( p.split( '.' ), data );
|
|
36
|
-
});
|
|
37
|
-
return valueComparison;
|
|
38
|
-
});
|
|
39
|
-
return recordComparison;
|
|
40
|
-
});
|
|
41
|
-
return duplicatedIndex && {
|
|
42
|
-
index: duplicatedIndex,
|
|
43
|
-
properties: uniqueIndexes[collection][duplicatedIndex]
|
|
44
|
-
};
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
const readById = async ( id: string|number ): Promise<Model | null> => {
|
|
48
|
-
return coll[id] || null;
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
const filterData = ( results: any[], filter: CollectionFilter<Model>[]) => {
|
|
52
|
-
const shouldFilter = ( row: any, filter: CollectionFilter<Model>[]) => filter.every( f=> {
|
|
53
|
-
if ( f.AND ){
|
|
54
|
-
return f.AND.every( andFilters=> shouldFilter( row, [andFilters]));
|
|
55
|
-
}
|
|
56
|
-
if ( f.OR ){
|
|
57
|
-
return f.OR.some( orFilters=> shouldFilter( row, [orFilters]));
|
|
58
|
-
}
|
|
59
|
-
return filterOpMap[( f as any ).op]( path([f.field as string], row ), f.value );
|
|
60
|
-
});
|
|
61
|
-
return results.filter( row => shouldFilter( row, filter ));
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
const hashId = ( id: string|number ) => {
|
|
65
|
-
let intId = Number( id );
|
|
66
|
-
if ( !isNaN( intId )) return intId;
|
|
67
|
-
const factor = 2;
|
|
68
|
-
let hash = 0;
|
|
69
|
-
for ( let i = 0; i < ( id as string ).length; i++ ) {
|
|
70
|
-
hash = hash * factor + ( id as string ).charCodeAt( i );
|
|
71
|
-
}
|
|
72
|
-
return Math.abs( hash );
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
const query = async (
|
|
76
|
-
queryParams: CollectionQueryParams<Model>
|
|
77
|
-
): Promise<Model[]> => {
|
|
78
|
-
const { limit, filter, sort, after, select } = queryParams;
|
|
79
|
-
let result = Object.values( coll );
|
|
80
|
-
|
|
81
|
-
if ( after ){
|
|
82
|
-
const sortedKeys = Object.keys( coll ).map(( key ) => [ key, hashId( key ) ])
|
|
83
|
-
.sort(( a:any, b:any ) => a[1] - b[1])
|
|
84
|
-
.map(( a:any ) => a[0]);
|
|
85
|
-
const index = sortedKeys.indexOf( after.toString());
|
|
86
|
-
result = props( sortedKeys.slice( index + 1 ), coll );
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
result = !filter ? result : filterData( result, filter );
|
|
90
|
-
|
|
91
|
-
result = !sort ? result : sort
|
|
92
|
-
.reduce(( result, sort ) => {
|
|
93
|
-
return result.sort(( a: any, b: any ) => {
|
|
94
|
-
return sort.direction === 'desc'
|
|
95
|
-
? ( a[sort.field] < b[sort.field] ? 1 : -1 )
|
|
96
|
-
: ( a[sort.field] >= b[sort.field] ? 1 : -1 );
|
|
97
|
-
});
|
|
98
|
-
}, result );
|
|
99
|
-
|
|
100
|
-
result = !limit ? result : result.slice( 0, limit );
|
|
101
|
-
|
|
102
|
-
result = !select ? result : result.map( pick( ensureArray( select as string )));
|
|
103
|
-
|
|
104
|
-
return result as Model[];
|
|
105
|
-
};
|
|
106
|
-
|
|
107
|
-
const forEach = async (
|
|
108
|
-
queryParams: CollectionQueryParams<Model>,
|
|
109
|
-
callback: ( record: Model, stop: () => void ) => void | Promise<void>
|
|
110
|
-
): Promise<void> => {
|
|
111
|
-
let shouldStop = false;
|
|
112
|
-
const stop = () => {
|
|
113
|
-
shouldStop = true;
|
|
114
|
-
};
|
|
115
|
-
await query( queryParams )
|
|
116
|
-
.then( async records =>{
|
|
117
|
-
for ( let index = 0; index < records.length; index++ ) {
|
|
118
|
-
const element = records[index];
|
|
119
|
-
if ( shouldStop ) return;
|
|
120
|
-
await callback( element, stop );
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
const upsert = async (
|
|
126
|
-
id: string|number,
|
|
127
|
-
data: Partial<Model>
|
|
128
|
-
): Promise<Model> => {
|
|
129
|
-
const _data = clone( data );
|
|
130
|
-
const changeType = coll[id] ? 'update' : 'insert';
|
|
131
|
-
if ( changeType === 'insert' ){
|
|
132
|
-
const index = validateIndex( _data );
|
|
133
|
-
if ( index ) return Promise.reject( createError( DuplicatedValueInIndex(), {
|
|
134
|
-
details: index.properties.reduce(( details, p ) => {
|
|
135
|
-
details[p] = path( p.split( '.' ), _data );
|
|
136
|
-
return details;
|
|
137
|
-
}, {})
|
|
138
|
-
}));
|
|
139
|
-
}
|
|
140
|
-
const previous = clone( coll[id]);
|
|
141
|
-
const formatedData = Object.keys( _data ).reduce(( response, key ) => {
|
|
142
|
-
return assocPath( key.split( '.' ), _data[key], response );
|
|
143
|
-
}, clone( coll[id]) || {});
|
|
144
|
-
|
|
145
|
-
coll[id] = { ...formatedData, id };
|
|
146
|
-
changeEmitters[collection]?.emit( 'change', { changeType, data: coll[id], previous });
|
|
147
|
-
return coll[id] as Model;
|
|
148
|
-
};
|
|
149
|
-
|
|
150
|
-
const destroyById = async ( id: string|number ) =>{
|
|
151
|
-
const previous = coll[id];
|
|
152
|
-
changeEmitters[collection]?.emit( 'change', { changeType: 'delete', previous });
|
|
153
|
-
delete coll[id];
|
|
154
|
-
};
|
|
155
|
-
|
|
156
|
-
const createMany = async ( documents: Model[]): Promise<Model[]> => {
|
|
157
|
-
return documents.map( data=>{
|
|
158
|
-
const _data = clone( data );
|
|
159
|
-
validateIndex( _data );
|
|
160
|
-
coll[_data.id] = _data;
|
|
161
|
-
changeEmitters[collection]?.emit( 'change', { changeType: 'insert', data: _data });
|
|
162
|
-
return _data as Model;
|
|
163
|
-
});
|
|
164
|
-
};
|
|
165
|
-
|
|
166
|
-
const updateMany = async ( filter: CollectionFilterInstance<Model>[], data: Partial<Model> ) => {
|
|
167
|
-
return Object.keys( coll )
|
|
168
|
-
.reduce(( response, rowId ) => {
|
|
169
|
-
if ( filter.every( f=> filterOpMap[( f as any ).op]( path([f.field], coll[rowId]), f.value ))){
|
|
170
|
-
const previous = coll[rowId];
|
|
171
|
-
coll[rowId] = { ...coll[rowId], ...clone( data ) };
|
|
172
|
-
changeEmitters[collection]?.emit( 'change', { changeType: 'update', previous, data: coll[rowId] });
|
|
173
|
-
response.push( coll[rowId]);
|
|
174
|
-
}
|
|
175
|
-
return response;
|
|
176
|
-
}, [] as any[]) as Model[];
|
|
177
|
-
};
|
|
178
|
-
|
|
179
|
-
const destroyMany = async ( filter: CollectionFilterInstance<Model>[]) => {
|
|
180
|
-
return Object.keys( coll )
|
|
181
|
-
.reduce(( response, rowId ) => {
|
|
182
|
-
if ( filter.every( f=> filterOpMap[( f as any ).op]( path([f.field], coll[rowId]), f.value ))){
|
|
183
|
-
const previous = coll[rowId];
|
|
184
|
-
delete coll[rowId];
|
|
185
|
-
changeEmitters[collection]?.emit( 'change', { changeType: 'delete', previous });
|
|
186
|
-
response.push( rowId );
|
|
187
|
-
}
|
|
188
|
-
return response;
|
|
189
|
-
}, [] as any[])
|
|
190
|
-
.length;
|
|
191
|
-
};
|
|
192
|
-
|
|
193
|
-
const atomicIncrement = async ( name: string, filter: CollectionFilterInstance<Model>, amount = 1 ): Promise<number> => {
|
|
194
|
-
const fnMap = filterOpMap[( filter as any ).op];
|
|
195
|
-
const key = Object.keys( coll ).find( id => fnMap( path([filter.field], coll[id]), filter.value ));
|
|
196
|
-
if ( !key ){
|
|
197
|
-
const id = randomUUID();
|
|
198
|
-
coll[id] = {
|
|
199
|
-
[filter.field]: filter.value,
|
|
200
|
-
[name]: amount
|
|
201
|
-
};
|
|
202
|
-
changeEmitters[collection]?.emit( 'change', { changeType: 'insert', data: coll[id] });
|
|
203
|
-
return amount;
|
|
204
|
-
} else {
|
|
205
|
-
const previous = coll[key];
|
|
206
|
-
coll[key][name] = ( coll[key][name] || 0 ) + amount;
|
|
207
|
-
changeEmitters[collection]?.emit( 'change', { changeType: 'update', data: coll[key], previous });
|
|
208
|
-
return coll[key][name];
|
|
209
|
-
}
|
|
210
|
-
};
|
|
211
|
-
|
|
212
|
-
const ensureIndex = async ( properties: string[], options: IndexOptions = {} as IndexOptions ) =>{
|
|
213
|
-
if ( options.isUnique === true ){
|
|
214
|
-
uniqueIndexes[collection] ||= {};
|
|
215
|
-
uniqueIndexes[collection][properties.join( '_' )] = properties;
|
|
216
|
-
}
|
|
217
|
-
};
|
|
218
|
-
|
|
219
|
-
const destroyIndex = async ( properties: string[]) =>{
|
|
220
|
-
if ( uniqueIndexes[collection] && uniqueIndexes[collection][properties.join( '_' )]){
|
|
221
|
-
delete uniqueIndexes[collection][properties.join( '_' )];
|
|
222
|
-
}
|
|
223
|
-
};
|
|
224
|
-
|
|
225
|
-
const watch = ( changeTypes: ( 'insert'|'update'|'delete' )[] = ['insert'], onData:( data: DatabaseChange<Model> )=>void, onError: ( e: Error ) => void ) => {
|
|
226
|
-
changeEmitters[collection] ||= new TypedEventEmitter<{'change': DatabaseChange}>();
|
|
227
|
-
|
|
228
|
-
const callback = ( change ) => {
|
|
229
|
-
if ( changeTypes.includes( change.changeType ))
|
|
230
|
-
onData( change );
|
|
231
|
-
};
|
|
232
|
-
changeEmitters[collection].on( 'change', callback );
|
|
233
|
-
|
|
234
|
-
return Promise.resolve({
|
|
235
|
-
close: () => changeEmitters[collection].off( 'change', callback )
|
|
236
|
-
});
|
|
237
|
-
};
|
|
238
|
-
|
|
239
|
-
return {
|
|
240
|
-
readById,
|
|
241
|
-
query,
|
|
242
|
-
upsert,
|
|
243
|
-
forEach,
|
|
244
|
-
destroyById,
|
|
245
|
-
createMany,
|
|
246
|
-
updateMany,
|
|
247
|
-
destroyMany,
|
|
248
|
-
atomicIncrement,
|
|
249
|
-
ensureIndex,
|
|
250
|
-
destroyIndex,
|
|
251
|
-
watch
|
|
252
|
-
};
|
|
253
|
-
};
|
|
254
|
-
|
|
255
|
-
const initTransaction = <Result = any>( operations: ( getCollection: <Model extends Document>( collection: string ) => CollectionOperations<Model> ) => Promise<Result | undefined> ): Promise<Result> => {
|
|
256
|
-
let backupDb = clone( _db );
|
|
257
|
-
const commitTransaction = async ( docs?: Result ) =>{
|
|
258
|
-
return docs || null as Result;
|
|
259
|
-
};
|
|
260
|
-
|
|
261
|
-
const rollbackTransaction = async ( error: Error ) =>{
|
|
262
|
-
_db = backupDb;
|
|
263
|
-
return Promise.reject( error );
|
|
264
|
-
};
|
|
265
|
-
|
|
266
|
-
return operations( getCollection )
|
|
267
|
-
.then( commitTransaction )
|
|
268
|
-
.catch( rollbackTransaction );
|
|
269
|
-
};
|
|
270
|
-
|
|
271
|
-
return {
|
|
272
|
-
_adapter: () => _db,
|
|
273
|
-
name: 'memoryDb',
|
|
274
|
-
start,
|
|
275
|
-
stop,
|
|
276
|
-
getCollection,
|
|
277
|
-
initTransaction
|
|
278
|
-
};
|
|
279
|
-
};
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { Endpoint, EndpointActionParams, EndpointsAdapter } from '@bett3r-dev/pv3-types';
|
|
2
|
-
import { path } from 'ramda';
|
|
3
|
-
import { AuthenticationError, createError } from '../../..';
|
|
4
|
-
|
|
5
|
-
const propMapper = ( map: Record<string, string>, object: Record<string, any> ) => {
|
|
6
|
-
const result = {};
|
|
7
|
-
Object.keys( map ).forEach( key => {
|
|
8
|
-
result[map[key]] = path( key.split( '.' ), object );
|
|
9
|
-
});
|
|
10
|
-
return result;
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Adds the user object to the request context
|
|
15
|
-
* @param customTokenAttributes - Object with key as the path to the attribute in the token and value as the name of the attribute in the user object
|
|
16
|
-
* @returns
|
|
17
|
-
*/
|
|
18
|
-
export const AddAuthUserToRequest = ( customTokenAttributes: Record<string, string> ): EndpointsAdapter => {
|
|
19
|
-
const addUserToContext = async ( params: EndpointActionParams ): Promise<EndpointActionParams> =>{
|
|
20
|
-
const token: string = params.context?.req?.headers?.authorization as string || params.query?.access_token;
|
|
21
|
-
if ( !token ) return params;
|
|
22
|
-
try{
|
|
23
|
-
const payload = JSON.parse( Buffer.from( token.split( '.' )[1], 'base64' ).toString());
|
|
24
|
-
if ( !params.context )
|
|
25
|
-
params.context = {};
|
|
26
|
-
params.context.token = token.slice( token.lastIndexOf( ' ' ) + 1 );
|
|
27
|
-
params.context.user = propMapper({
|
|
28
|
-
'email': 'email',
|
|
29
|
-
'realm_access.roles': 'roles',
|
|
30
|
-
'app_id': 'id',
|
|
31
|
-
...customTokenAttributes
|
|
32
|
-
}, payload );
|
|
33
|
-
return Promise.resolve( params );
|
|
34
|
-
} catch ( err ) {
|
|
35
|
-
return Promise.reject( createError( AuthenticationError(), { description: 'Invalid Token' }));
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
const registerEndpoint = ( endpoint: Endpoint ) => {
|
|
40
|
-
const originalAction = endpoint.action;
|
|
41
|
-
endpoint.action = ( params: EndpointActionParams<any, any, any> ) => {
|
|
42
|
-
return addUserToContext( params )
|
|
43
|
-
.then( originalAction );
|
|
44
|
-
};
|
|
45
|
-
return endpoint;
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
return {
|
|
49
|
-
_adapter: () => {},
|
|
50
|
-
name: 'addAuthUser',
|
|
51
|
-
start: async()=>{},
|
|
52
|
-
stop: async()=>{},
|
|
53
|
-
registerEndpoint
|
|
54
|
-
};
|
|
55
|
-
};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { BaseSchema } from '@bett3r-dev/jsonschema-definer';
|
|
2
|
-
import { Endpoint, EndpointActionParams, EndpointsAdapter } from '@bett3r-dev/pv3-types';
|
|
3
|
-
import { validateEndpoint } from '../../../libraries/validation';
|
|
4
|
-
|
|
5
|
-
export const EndpointValidation = ( validateSchema: <T>( schema: BaseSchema<T> ) => ( value:T ) => T, onError: ( err:any, endpoint: Endpoint ) => void = () => {}): EndpointsAdapter => {
|
|
6
|
-
const registerEndpoint = ( endpoint: Endpoint ) => {
|
|
7
|
-
if ( endpoint.shouldValidate === false ) return endpoint;
|
|
8
|
-
const originalAction = endpoint.action;
|
|
9
|
-
endpoint.action = ( params: EndpointActionParams ) =>
|
|
10
|
-
validateEndpoint( validateSchema, endpoint.schemas )( params )
|
|
11
|
-
.catch( e => {
|
|
12
|
-
onError( e, endpoint );
|
|
13
|
-
return Promise.reject( e );
|
|
14
|
-
})
|
|
15
|
-
.then( originalAction );
|
|
16
|
-
return endpoint;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
return {
|
|
20
|
-
_adapter: () => {},
|
|
21
|
-
name: 'endpointValidation',
|
|
22
|
-
start: async()=>{},
|
|
23
|
-
stop: async()=>{},
|
|
24
|
-
registerEndpoint
|
|
25
|
-
};
|
|
26
|
-
};
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
// import S from '@bett3r-dev/jsonschema-definer';
|
|
2
|
-
// import { compose, mergeRight } from 'ramda';
|
|
3
|
-
// import { AuthenticationPort, /* EndpointMarkedAsPublicSchema, EndpointRolesUpsertedSchema, RouteManagerEndpointAuth */ } from '../../../ports/authentication';
|
|
4
|
-
// import { DatabasePort } from '../../../ports/database';
|
|
5
|
-
// import { Endpoint, EndpointActionParams, EndpointsAdapter, EndpointsPort } from '../../../ports/endpoints';
|
|
6
|
-
|
|
7
|
-
// export type LocalAuthorizationType = EndpointsAdapter & {
|
|
8
|
-
// registerRouteManagementEndpoints: ( endpoints: EndpointsPort ) => void;
|
|
9
|
-
// }
|
|
10
|
-
|
|
11
|
-
// /**
|
|
12
|
-
// * Performs a local authorization of the incoming request by validating the JWT and performing RBAC authorization
|
|
13
|
-
// * @param authentication Authentication Port
|
|
14
|
-
// * @returns
|
|
15
|
-
// */
|
|
16
|
-
// export const LocalAuthorization = ( authentication: AuthenticationPort, database: DatabasePort ): LocalAuthorizationType => {
|
|
17
|
-
// const routeManager = authentication.RouteManager( database );
|
|
18
|
-
// const _authorizeRequest = authentication.authorizeRequest( routeManager );
|
|
19
|
-
|
|
20
|
-
// const authorizeRequest = async ( params: EndpointActionParams<any, any, any> ) => {
|
|
21
|
-
// await _authorizeRequest( params.context.token!, params.context.req?.method!, params.context.req?.route! );
|
|
22
|
-
// return params;
|
|
23
|
-
// };
|
|
24
|
-
|
|
25
|
-
// const registerEndpoint = ( endpoint: Endpoint ) => {
|
|
26
|
-
// const originalAction = endpoint.action;
|
|
27
|
-
// endpoint.action = ( params: EndpointActionParams<any, any, any> ) => {
|
|
28
|
-
// return authorizeRequest( params )
|
|
29
|
-
// .then( originalAction );
|
|
30
|
-
// };
|
|
31
|
-
// return endpoint;
|
|
32
|
-
// };
|
|
33
|
-
|
|
34
|
-
// const registerRouteManagementEndpoints = ( endpoints: EndpointsPort ) => {
|
|
35
|
-
// const upsertEndpointAuth = ( patchValue?: Partial<RouteManagerEndpointAuth> ) => ({ body } : {body: {id: string}[]}) => {
|
|
36
|
-
// return Promise.all( body.map( compose(
|
|
37
|
-
// routeManager.upsertRoute,
|
|
38
|
-
// mergeRight( patchValue || {})
|
|
39
|
-
// )));
|
|
40
|
-
// };
|
|
41
|
-
|
|
42
|
-
// endpoints.registerEndpoint({
|
|
43
|
-
// module: 'Authorization',
|
|
44
|
-
// name: 'Mark as Public',
|
|
45
|
-
// description: 'Mark an endpoint as public',
|
|
46
|
-
// route: '/authorization/mark-as-public',
|
|
47
|
-
// method: 'POST',
|
|
48
|
-
// schemas: {
|
|
49
|
-
// body: S.array().items( EndpointMarkedAsPublicSchema )
|
|
50
|
-
// },
|
|
51
|
-
// action: upsertEndpointAuth({ isPublic:true })
|
|
52
|
-
// });
|
|
53
|
-
|
|
54
|
-
// endpoints.registerEndpoint({
|
|
55
|
-
// module: 'Authorization',
|
|
56
|
-
// name: 'Upsert Roles',
|
|
57
|
-
// description: 'Upsert roles for endpoint',
|
|
58
|
-
// route: '/authorization/upsert-roles',
|
|
59
|
-
// method: 'POST',
|
|
60
|
-
// schemas: {
|
|
61
|
-
// body: S.array().items( EndpointRolesUpsertedSchema )
|
|
62
|
-
// },
|
|
63
|
-
// action: upsertEndpointAuth()
|
|
64
|
-
// });
|
|
65
|
-
// };
|
|
66
|
-
|
|
67
|
-
// return {
|
|
68
|
-
// _adapter: () => {},
|
|
69
|
-
// name: 'localAuthorization',
|
|
70
|
-
// registerRouteManagementEndpoints,
|
|
71
|
-
// start: async()=>{},
|
|
72
|
-
// stop: async()=>{},
|
|
73
|
-
// registerEndpoint
|
|
74
|
-
// };
|
|
75
|
-
// };
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import S from '@bett3r-dev/jsonschema-definer';
|
|
2
|
-
import {
|
|
3
|
-
AppErrorInstance, ConfigurationPort, Endpoint,
|
|
4
|
-
EndpointAction,
|
|
5
|
-
EndpointsAdapter, LoggerPort,
|
|
6
|
-
TcpEventMessageRequest, TcpEventMessageResponse
|
|
7
|
-
} from '@bett3r-dev/pv3-types';
|
|
8
|
-
import { Socket } from 'net';
|
|
9
|
-
import { Tcp as TcpLib, TcpServerObject } from '../../../libraries/tcp';
|
|
10
|
-
|
|
11
|
-
const TcpConsumerConfigSchema = S.shape({
|
|
12
|
-
port: S.number().optional().default( 9520 ),
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
export const TcpConsumer = ( configuration: ConfigurationPort, loggerPort: LoggerPort ): EndpointsAdapter => {
|
|
17
|
-
const { config } = configuration.getModuleConfig( 'tcpConsumer', TcpConsumerConfigSchema.optional());
|
|
18
|
-
const logger = loggerPort.createLoggerInstance( 'TcpConsumer' );
|
|
19
|
-
const tcp = TcpLib( loggerPort );
|
|
20
|
-
let server: TcpServerObject;
|
|
21
|
-
const endpointMap: Map<string, EndpointAction> = new Map();
|
|
22
|
-
|
|
23
|
-
const registerEndpoint = ( endpoint: Endpoint ): Endpoint => {
|
|
24
|
-
const { route, module, action } = endpoint;
|
|
25
|
-
logger.log( 'Registering TCP Consumer endpoint:', module, route );
|
|
26
|
-
endpointMap.set( route, action );
|
|
27
|
-
return endpoint;
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
const start = async ( port: number | undefined = config.port || 9520 ): Promise<void> =>{
|
|
31
|
-
tcp.createTCPServer( port ).then( _server => {
|
|
32
|
-
server = _server;
|
|
33
|
-
let broker: Socket;
|
|
34
|
-
logger.info( 'TCP server listening on port', port );
|
|
35
|
-
server.connectedStream.map(({ socket }) => broker = socket );
|
|
36
|
-
server.dataStream.map(({ message }) => {
|
|
37
|
-
const { endpoint, event } = JSON.parse( message ) as TcpEventMessageRequest;
|
|
38
|
-
const action = endpointMap.get( endpoint );
|
|
39
|
-
if ( !action ) logger.error( 'No endpoint found for', endpoint );
|
|
40
|
-
action!({
|
|
41
|
-
body: event,
|
|
42
|
-
params: {},
|
|
43
|
-
query: {},
|
|
44
|
-
// TODO: Contemplar el contexto que viene del event?
|
|
45
|
-
context: {},
|
|
46
|
-
})
|
|
47
|
-
.then(() => {
|
|
48
|
-
broker.write( JSON.stringify({ id: event.id, status: 200 } as TcpEventMessageResponse ));
|
|
49
|
-
})
|
|
50
|
-
.catch(( e: AppErrorInstance ) => {
|
|
51
|
-
broker.write( JSON.stringify({ id: event.id, status: e.status, error: e.message } as TcpEventMessageResponse ));
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
});
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
const stop = () => new Promise<void>(( resolve, reject ) => {
|
|
58
|
-
return server.close();
|
|
59
|
-
});
|
|
60
|
-
|
|
61
|
-
return {
|
|
62
|
-
name: 'express',
|
|
63
|
-
adapterType: 'httpHandler',
|
|
64
|
-
_adapter: () => {},
|
|
65
|
-
registerEndpoint,
|
|
66
|
-
start,
|
|
67
|
-
stop,
|
|
68
|
-
};
|
|
69
|
-
};
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { CachePort, Endpoint, EndpointActionParams, EndpointsAdapter, LoggerPort } from '@bett3r-dev/pv3-types';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Adds the user session object to the request context
|
|
5
|
-
* @param customTokenAttributes - Object with key as the path to the attribute in the token and value as the name of the attribute in the user object
|
|
6
|
-
* @returns
|
|
7
|
-
*/
|
|
8
|
-
export const UserSession = ( logger: LoggerPort, cache: CachePort, keyFormatter: ( user: Record<string, any> ) => string = ( user ) => user.id ): EndpointsAdapter => {
|
|
9
|
-
const log = logger.createLoggerInstance( 'UserSessionEndpointsAdapter' );
|
|
10
|
-
const addUserSessionToContext = async ( params: EndpointActionParams ): Promise<EndpointActionParams> =>{
|
|
11
|
-
if ( !params.context?.user ) return params;
|
|
12
|
-
try{
|
|
13
|
-
const key = keyFormatter( params.context.user );
|
|
14
|
-
const session = await cache.get( key );
|
|
15
|
-
if ( !params.context )
|
|
16
|
-
params.context = {};
|
|
17
|
-
params.context.session = session;
|
|
18
|
-
} catch ( err ) {
|
|
19
|
-
log.error( err );
|
|
20
|
-
}
|
|
21
|
-
return Promise.resolve( params );
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
const registerEndpoint = ( endpoint: Endpoint ) => {
|
|
25
|
-
const originalAction = endpoint.action;
|
|
26
|
-
endpoint.action = ( params: EndpointActionParams<any, any, any> ) => {
|
|
27
|
-
return addUserSessionToContext( params )
|
|
28
|
-
.then( originalAction );
|
|
29
|
-
};
|
|
30
|
-
return endpoint;
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
return {
|
|
34
|
-
_adapter: () => {},
|
|
35
|
-
name: 'addUserSessionToContext',
|
|
36
|
-
start: async()=>{},
|
|
37
|
-
stop: async()=>{},
|
|
38
|
-
registerEndpoint
|
|
39
|
-
};
|
|
40
|
-
};
|