@effect-app/infra 0.7.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/.eslintrc.cjs +11 -0
- package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-314902b6271c341511f7398a50469024 +0 -0
- package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-3f072cc7afa09b6adaead0527ab9df83 +0 -0
- package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-74c3c295c110fc861b6a4c673afc3e24 +0 -0
- package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-bf6dae8cb9ea9740ceb39aefaf12716c +0 -0
- package/.jest-cache/haste-map-369fa5ca2164cc35b19159bd76147276-e7a7ff05756c055cb63be97ba8537525-cf9d1486029526079a5f68f2041dea02 +0 -0
- package/.jest-cache/haste-map-4ca41cc04e60c616a19cbb483cbf487b-e2f1f4b6d87214e3c49442fed31f310c-b4710ed9fb3d0757c4bf23045c585670 +0 -0
- package/.jest-cache/haste-map-4ca41cc04e60c616a19cbb483cbf487b-e2f1f4b6d87214e3c49442fed31f310c-ee17e5395bb1b7b36a4e2e22a6ae1449 +0 -0
- package/.jest-cache/haste-map-7dc16d7fae8c072843ed1c69eae73100-a8a4225b317477b49bca31f54559afb3-c16136699bb7f463be85273162b447c3 +0 -0
- package/.jest-cache/haste-map-9aa1e395a82e108eb49698982c574272-e2f1f4b6d87214e3c49442fed31f310c-f7435f46fc41ac5a13d06a49cae9a650 +0 -0
- package/.jest-cache/haste-map-9d206b45d610536c9ec65eec263c6964-a8a4225b317477b49bca31f54559afb3-3510506a330b44f1ae629033aac8fbb3 +0 -0
- package/.jest-cache/haste-map-a00ab30d0d656f9d3990958a54b9ccfd-87603b0fc921b26b622a5859b4c92bed-17b550b450b18840c25861aa6e835f0c +0 -0
- package/.jest-cache/haste-map-a00ab30d0d656f9d3990958a54b9ccfd-87603b0fc921b26b622a5859b4c92bed-4dc31290b1efc98335eb4c89167d75c3 +0 -0
- package/.jest-cache/haste-map-ab843cb0ffbadfd0deea4adb182c7ecd-87603b0fc921b26b622a5859b4c92bed-997106edf4bbc31567a378146180e45e +0 -0
- package/.jest-cache/haste-map-ab843cb0ffbadfd0deea4adb182c7ecd-87603b0fc921b26b622a5859b4c92bed-f0cd25414f9ed16c446940ca3aa23c1b +0 -0
- package/.jest-cache/haste-map-cf17f2edf0e949eebfdfca561816457c-e7a7ff05756c055cb63be97ba8537525-2cac07d09e6384e2d37c49714edad0ba +0 -0
- package/.jest-cache/haste-map-cf17f2edf0e949eebfdfca561816457c-e7a7ff05756c055cb63be97ba8537525-d7967c2976c5feac7161c964f0aa442f +0 -0
- package/.jest-cache/haste-map-fb1a173276d25bbff02f815600059283-938122bdc1c8836874b6585d7acb2e99-f705929cca05ce95ceaa6d520b560ce8 +0 -0
- package/.prettierignore +6 -0
- package/_cjs/_global.cjs +6 -0
- package/_cjs/_global.cjs.map +1 -0
- package/_cjs/_global.ext.cjs +6 -0
- package/_cjs/_global.ext.cjs.map +1 -0
- package/_cjs/_global.schema.cjs +5 -0
- package/_cjs/_global.schema.cjs.map +1 -0
- package/_cjs/errors.cjs +82 -0
- package/_cjs/errors.cjs.map +1 -0
- package/_cjs/ext.cjs +4 -0
- package/_cjs/ext.cjs.map +1 -0
- package/_cjs/index.cjs +6 -0
- package/_cjs/index.cjs.map +1 -0
- package/_cjs/lib/RequestContext.cjs +70 -0
- package/_cjs/lib/RequestContext.cjs.map +1 -0
- package/_cjs/lib/api/authorization.jwt.cjs +44 -0
- package/_cjs/lib/api/authorization.jwt.cjs.map +1 -0
- package/_cjs/lib/api/defaultErrorHandler.cjs +45 -0
- package/_cjs/lib/api/defaultErrorHandler.cjs.map +1 -0
- package/_cjs/lib/api/reportError.cjs +64 -0
- package/_cjs/lib/api/reportError.cjs.map +1 -0
- package/_cjs/lib/api/routing.cjs +262 -0
- package/_cjs/lib/api/routing.cjs.map +1 -0
- package/_cjs/lib/api/setupRequest.cjs +35 -0
- package/_cjs/lib/api/setupRequest.cjs.map +1 -0
- package/_cjs/lib/api/util.cjs +17 -0
- package/_cjs/lib/api/util.cjs.map +1 -0
- package/_cjs/lib/api/writeDocs.cjs +31 -0
- package/_cjs/lib/api/writeDocs.cjs.map +1 -0
- package/_cjs/lib/errorReporter.cjs +72 -0
- package/_cjs/lib/errorReporter.cjs.map +1 -0
- package/_cjs/lib/ext/Array.cjs +30 -0
- package/_cjs/lib/ext/Array.cjs.map +1 -0
- package/_cjs/lib/fileUtil.cjs +36 -0
- package/_cjs/lib/fileUtil.cjs.map +1 -0
- package/_cjs/lib/filter/types/errors.cjs +6 -0
- package/_cjs/lib/filter/types/errors.cjs.map +1 -0
- package/_cjs/lib/filter/types/fields.cjs +6 -0
- package/_cjs/lib/filter/types/fields.cjs.map +1 -0
- package/_cjs/lib/filter/types/index.cjs +61 -0
- package/_cjs/lib/filter/types/index.cjs.map +1 -0
- package/_cjs/lib/filter/types/path/common.cjs +6 -0
- package/_cjs/lib/filter/types/path/common.cjs.map +1 -0
- package/_cjs/lib/filter/types/path/eager.cjs +6 -0
- package/_cjs/lib/filter/types/path/eager.cjs.map +1 -0
- package/_cjs/lib/filter/types/path/index.cjs +8 -0
- package/_cjs/lib/filter/types/path/index.cjs.map +1 -0
- package/_cjs/lib/filter/types/utils.cjs +6 -0
- package/_cjs/lib/filter/types/utils.cjs.map +1 -0
- package/_cjs/lib/filter/types/validator.cjs +6 -0
- package/_cjs/lib/filter/types/validator.cjs.map +1 -0
- package/_cjs/lib/filter.cjs +238 -0
- package/_cjs/lib/filter.cjs.map +1 -0
- package/_cjs/lib/instrument.cjs +20 -0
- package/_cjs/lib/instrument.cjs.map +1 -0
- package/_cjs/lib/rateLimit.cjs +88 -0
- package/_cjs/lib/rateLimit.cjs.map +1 -0
- package/_cjs/services/CUPS/service.cjs +15 -0
- package/_cjs/services/CUPS/service.cjs.map +1 -0
- package/_cjs/services/CUPS.cjs +113 -0
- package/_cjs/services/CUPS.cjs.map +1 -0
- package/_cjs/services/Cache.cjs +39 -0
- package/_cjs/services/Cache.cjs.map +1 -0
- package/_cjs/services/Emailer/Sendgrid.cjs +112 -0
- package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -0
- package/_cjs/services/Emailer/fake.cjs +24 -0
- package/_cjs/services/Emailer/fake.cjs.map +1 -0
- package/_cjs/services/Emailer/service.cjs +12 -0
- package/_cjs/services/Emailer/service.cjs.map +1 -0
- package/_cjs/services/Emailer.cjs +17 -0
- package/_cjs/services/Emailer.cjs.map +1 -0
- package/_cjs/services/Repository.cjs +247 -0
- package/_cjs/services/Repository.cjs.map +1 -0
- package/_cjs/services/ServiceBus.cjs +69 -0
- package/_cjs/services/ServiceBus.cjs.map +1 -0
- package/_cjs/services/Store/Cosmos.cjs +324 -0
- package/_cjs/services/Store/Cosmos.cjs.map +1 -0
- package/_cjs/services/Store/Cosmos.test.cjs +59 -0
- package/_cjs/services/Store/Cosmos.test.cjs.map +1 -0
- package/_cjs/services/Store/Disk.cjs +62 -0
- package/_cjs/services/Store/Disk.cjs.map +1 -0
- package/_cjs/services/Store/Memory.cjs +70 -0
- package/_cjs/services/Store/Memory.cjs.map +1 -0
- package/_cjs/services/Store/Redis.cjs +72 -0
- package/_cjs/services/Store/Redis.cjs.map +1 -0
- package/_cjs/services/Store/codeFilter.test.cjs +61 -0
- package/_cjs/services/Store/codeFilter.test.cjs.map +1 -0
- package/_cjs/services/Store/index.cjs +72 -0
- package/_cjs/services/Store/index.cjs.map +1 -0
- package/_cjs/services/Store/service.cjs +72 -0
- package/_cjs/services/Store/service.cjs.map +1 -0
- package/_cjs/services/Store/utils.cjs +78 -0
- package/_cjs/services/Store/utils.cjs.map +1 -0
- package/_cjs/services/Store.cjs +17 -0
- package/_cjs/services/Store.cjs.map +1 -0
- package/_cjs/services/memQueue.cjs +32 -0
- package/_cjs/services/memQueue.cjs.map +1 -0
- package/_cjs/test.arbs.cjs +32 -0
- package/_cjs/test.arbs.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/_internal/AtomicBoolean.cjs +14 -0
- package/_cjs/vendor/Cache/Cache/_internal/AtomicBoolean.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/_internal/AtomicNumber.cjs +29 -0
- package/_cjs/vendor/Cache/Cache/_internal/AtomicNumber.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/_internal/AtomicReference.cjs +32 -0
- package/_cjs/vendor/Cache/Cache/_internal/AtomicReference.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/_internal/CacheInternal.cjs +266 -0
- package/_cjs/vendor/Cache/Cache/_internal/CacheInternal.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/_internal/CacheState.cjs +31 -0
- package/_cjs/vendor/Cache/Cache/_internal/CacheState.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/_internal/KeySet.cjs +67 -0
- package/_cjs/vendor/Cache/Cache/_internal/KeySet.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/_internal/MapKey.cjs +44 -0
- package/_cjs/vendor/Cache/Cache/_internal/MapKey.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/_internal/MapValue.cjs +33 -0
- package/_cjs/vendor/Cache/Cache/_internal/MapValue.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/definition.cjs +13 -0
- package/_cjs/vendor/Cache/Cache/definition.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/operations/make.cjs +20 -0
- package/_cjs/vendor/Cache/Cache/operations/make.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/operations/makeWith.cjs +23 -0
- package/_cjs/vendor/Cache/Cache/operations/makeWith.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache/operations.cjs +28 -0
- package/_cjs/vendor/Cache/Cache/operations.cjs.map +1 -0
- package/_cjs/vendor/Cache/Cache.cjs +28 -0
- package/_cjs/vendor/Cache/Cache.cjs.map +1 -0
- package/_cjs/vendor/Cache/CacheStats/definition.cjs +13 -0
- package/_cjs/vendor/Cache/CacheStats/definition.cjs.map +1 -0
- package/_cjs/vendor/Cache/CacheStats.cjs +17 -0
- package/_cjs/vendor/Cache/CacheStats.cjs.map +1 -0
- package/_cjs/vendor/Cache/EntryStats/definition.cjs +11 -0
- package/_cjs/vendor/Cache/EntryStats/definition.cjs.map +1 -0
- package/_cjs/vendor/Cache/EntryStats.cjs +17 -0
- package/_cjs/vendor/Cache/EntryStats.cjs.map +1 -0
- package/_cjs/vendor/Cache/Lookup/definition.cjs +6 -0
- package/_cjs/vendor/Cache/Lookup/definition.cjs.map +1 -0
- package/_cjs/vendor/Cache/Lookup.cjs +17 -0
- package/_cjs/vendor/Cache/Lookup.cjs.map +1 -0
- package/_cjs/vendor/Cache/index.cjs +17 -0
- package/_cjs/vendor/Cache/index.cjs.map +1 -0
- package/_src/_global.ext.ts +34 -0
- package/_src/_global.schema.ts +10 -0
- package/_src/_global.ts +14 -0
- package/_src/errors.ts +50 -0
- package/_src/ext.ts +1 -0
- package/_src/index.ts +0 -0
- package/_src/lib/RequestContext.ts +132 -0
- package/_src/lib/api/authorization.jwt.ts +52 -0
- package/_src/lib/api/defaultErrorHandler.ts +92 -0
- package/_src/lib/api/reportError.ts +50 -0
- package/_src/lib/api/routing.ts +623 -0
- package/_src/lib/api/setupRequest.ts +22 -0
- package/_src/lib/api/util.ts +14 -0
- package/_src/lib/api/writeDocs.ts +26 -0
- package/_src/lib/errorReporter.ts +63 -0
- package/_src/lib/ext/Array.ts +32 -0
- package/_src/lib/fileUtil.ts +56 -0
- package/_src/lib/filter/types/errors.ts +47 -0
- package/_src/lib/filter/types/fields.ts +50 -0
- package/_src/lib/filter/types/index.ts +5 -0
- package/_src/lib/filter/types/path/common.ts +404 -0
- package/_src/lib/filter/types/path/eager.ts +146 -0
- package/_src/lib/filter/types/path/index.ts +14 -0
- package/_src/lib/filter/types/utils.ts +106 -0
- package/_src/lib/filter/types/validator.ts +46 -0
- package/_src/lib/filter.ts +323 -0
- package/_src/lib/instrument.ts +9 -0
- package/_src/lib/rateLimit.ts +126 -0
- package/_src/services/CUPS/service.ts +16 -0
- package/_src/services/CUPS.ts +105 -0
- package/_src/services/Cache.ts +45 -0
- package/_src/services/Emailer/Sendgrid.ts +123 -0
- package/_src/services/Emailer/fake.ts +14 -0
- package/_src/services/Emailer/service.ts +33 -0
- package/_src/services/Emailer.ts +1 -0
- package/_src/services/Repository.ts +513 -0
- package/_src/services/ServiceBus.ts +111 -0
- package/_src/services/Store/Cosmos.test.ts +91 -0
- package/_src/services/Store/Cosmos.ts +545 -0
- package/_src/services/Store/Disk.ts +81 -0
- package/_src/services/Store/Memory.ts +77 -0
- package/_src/services/Store/Redis.ts +92 -0
- package/_src/services/Store/codeFilter.test.ts +74 -0
- package/_src/services/Store/index.test.ts.bak +112 -0
- package/_src/services/Store/index.ts +62 -0
- package/_src/services/Store/service.ts +174 -0
- package/_src/services/Store/utils.ts +126 -0
- package/_src/services/Store.ts +1 -0
- package/_src/services/memQueue.ts +30 -0
- package/_src/test.arbs.ts +27 -0
- package/_src/vendor/Cache/Cache/_internal/AtomicBoolean.ts +7 -0
- package/_src/vendor/Cache/Cache/_internal/AtomicNumber.ts +28 -0
- package/_src/vendor/Cache/Cache/_internal/AtomicReference.ts +30 -0
- package/_src/vendor/Cache/Cache/_internal/CacheInternal.ts +293 -0
- package/_src/vendor/Cache/Cache/_internal/CacheState.ts +56 -0
- package/_src/vendor/Cache/Cache/_internal/KeySet.ts +58 -0
- package/_src/vendor/Cache/Cache/_internal/MapKey.ts +43 -0
- package/_src/vendor/Cache/Cache/_internal/MapValue.ts +39 -0
- package/_src/vendor/Cache/Cache/definition.ts +112 -0
- package/_src/vendor/Cache/Cache/operations/make.ts +17 -0
- package/_src/vendor/Cache/Cache/operations/makeWith.ts +32 -0
- package/_src/vendor/Cache/Cache/operations.ts +4 -0
- package/_src/vendor/Cache/Cache.ts +4 -0
- package/_src/vendor/Cache/CacheStats/definition.ts +23 -0
- package/_src/vendor/Cache/CacheStats.ts +3 -0
- package/_src/vendor/Cache/EntryStats/definition.ts +19 -0
- package/_src/vendor/Cache/EntryStats.ts +3 -0
- package/_src/vendor/Cache/Lookup/definition.ts +15 -0
- package/_src/vendor/Cache/Lookup.ts +3 -0
- package/_src/vendor/Cache/global.ts.bak +23 -0
- package/_src/vendor/Cache/index.ts +4 -0
- package/dist/_global.d.ts +10 -0
- package/dist/_global.d.ts.map +1 -0
- package/dist/_global.ext.d.ts +34 -0
- package/dist/_global.ext.d.ts.map +1 -0
- package/dist/_global.ext.js +2 -0
- package/dist/_global.js +12 -0
- package/dist/_global.schema.d.ts +6 -0
- package/dist/_global.schema.d.ts.map +1 -0
- package/dist/_global.schema.js +9 -0
- package/dist/errors.d.ts +41 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +51 -0
- package/dist/ext.d.ts +2 -0
- package/dist/ext.d.ts.map +1 -0
- package/dist/ext.js +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/lib/RequestContext.d.ts +122 -0
- package/dist/lib/RequestContext.d.ts.map +1 -0
- package/dist/lib/RequestContext.js +52 -0
- package/dist/lib/api/authorization.jwt.d.ts +7 -0
- package/dist/lib/api/authorization.jwt.d.ts.map +1 -0
- package/dist/lib/api/authorization.jwt.js +32 -0
- package/dist/lib/api/defaultErrorHandler.d.ts +8 -0
- package/dist/lib/api/defaultErrorHandler.d.ts.map +1 -0
- package/dist/lib/api/defaultErrorHandler.js +37 -0
- package/dist/lib/api/reportError.d.ts +32 -0
- package/dist/lib/api/reportError.d.ts.map +1 -0
- package/dist/lib/api/reportError.js +44 -0
- package/dist/lib/api/routing.d.ts +100 -0
- package/dist/lib/api/routing.d.ts.map +1 -0
- package/dist/lib/api/routing.js +248 -0
- package/dist/lib/api/setupRequest.d.ts +13 -0
- package/dist/lib/api/setupRequest.d.ts.map +1 -0
- package/dist/lib/api/setupRequest.js +25 -0
- package/dist/lib/api/util.d.ts +3 -0
- package/dist/lib/api/util.d.ts.map +1 -0
- package/dist/lib/api/util.js +14 -0
- package/dist/lib/api/writeDocs.d.ts +3 -0
- package/dist/lib/api/writeDocs.d.ts.map +1 -0
- package/dist/lib/api/writeDocs.js +23 -0
- package/dist/lib/errorReporter.d.ts +8 -0
- package/dist/lib/errorReporter.d.ts.map +1 -0
- package/dist/lib/errorReporter.js +45 -0
- package/dist/lib/ext/Array.d.ts +19 -0
- package/dist/lib/ext/Array.d.ts.map +1 -0
- package/dist/lib/ext/Array.js +21 -0
- package/dist/lib/fileUtil.d.ts +22 -0
- package/dist/lib/fileUtil.d.ts.map +1 -0
- package/dist/lib/fileUtil.js +23 -0
- package/dist/lib/filter/types/errors.d.ts +30 -0
- package/dist/lib/filter/types/errors.d.ts.map +1 -0
- package/dist/lib/filter/types/errors.js +2 -0
- package/dist/lib/filter/types/fields.d.ts +29 -0
- package/dist/lib/filter/types/fields.d.ts.map +1 -0
- package/dist/lib/filter/types/fields.js +2 -0
- package/dist/lib/filter/types/index.d.ts +6 -0
- package/dist/lib/filter/types/index.d.ts.map +1 -0
- package/dist/lib/filter/types/index.js +6 -0
- package/dist/lib/filter/types/path/common.d.ts +316 -0
- package/dist/lib/filter/types/path/common.d.ts.map +1 -0
- package/dist/lib/filter/types/path/common.js +2 -0
- package/dist/lib/filter/types/path/eager.d.ts +95 -0
- package/dist/lib/filter/types/path/eager.d.ts.map +1 -0
- package/dist/lib/filter/types/path/eager.js +2 -0
- package/dist/lib/filter/types/path/index.d.ts +4 -0
- package/dist/lib/filter/types/path/index.d.ts.map +1 -0
- package/dist/lib/filter/types/path/index.js +4 -0
- package/dist/lib/filter/types/utils.d.ts +68 -0
- package/dist/lib/filter/types/utils.d.ts.map +1 -0
- package/dist/lib/filter/types/utils.js +2 -0
- package/dist/lib/filter/types/validator.d.ts +30 -0
- package/dist/lib/filter/types/validator.d.ts.map +1 -0
- package/dist/lib/filter/types/validator.js +2 -0
- package/dist/lib/filter.d.ts +133 -0
- package/dist/lib/filter.d.ts.map +1 -0
- package/dist/lib/filter.js +171 -0
- package/dist/lib/instrument.d.ts +7 -0
- package/dist/lib/instrument.d.ts.map +1 -0
- package/dist/lib/instrument.js +12 -0
- package/dist/lib/rateLimit.d.ts +43 -0
- package/dist/lib/rateLimit.d.ts.map +1 -0
- package/dist/lib/rateLimit.js +76 -0
- package/dist/services/CUPS/service.d.ts +19 -0
- package/dist/services/CUPS/service.d.ts.map +1 -0
- package/dist/services/CUPS/service.js +5 -0
- package/dist/services/CUPS.d.ts +10 -0
- package/dist/services/CUPS.d.ts.map +1 -0
- package/dist/services/CUPS.js +89 -0
- package/dist/services/Cache.d.ts +28 -0
- package/dist/services/Cache.d.ts.map +1 -0
- package/dist/services/Cache.js +28 -0
- package/dist/services/Emailer/Sendgrid.d.ts +180 -0
- package/dist/services/Emailer/Sendgrid.d.ts.map +1 -0
- package/dist/services/Emailer/Sendgrid.js +102 -0
- package/dist/services/Emailer/fake.d.ts +7 -0
- package/dist/services/Emailer/fake.d.ts.map +1 -0
- package/dist/services/Emailer/fake.js +15 -0
- package/dist/services/Emailer/service.d.ts +41 -0
- package/dist/services/Emailer/service.d.ts.map +1 -0
- package/dist/services/Emailer/service.js +3 -0
- package/dist/services/Emailer.d.ts +2 -0
- package/dist/services/Emailer.d.ts.map +1 -0
- package/dist/services/Emailer.js +2 -0
- package/dist/services/Repository.d.ts +300 -0
- package/dist/services/Repository.d.ts.map +1 -0
- package/dist/services/Repository.js +193 -0
- package/dist/services/ServiceBus.d.ts +26 -0
- package/dist/services/ServiceBus.d.ts.map +1 -0
- package/dist/services/ServiceBus.js +53 -0
- package/dist/services/Store/Cosmos.d.ts +56 -0
- package/dist/services/Store/Cosmos.d.ts.map +1 -0
- package/dist/services/Store/Cosmos.js +321 -0
- package/dist/services/Store/Cosmos.test.d.ts.map +1 -0
- package/dist/services/Store/Disk.d.ts +14 -0
- package/dist/services/Store/Disk.d.ts.map +1 -0
- package/dist/services/Store/Disk.js +52 -0
- package/dist/services/Store/Memory.d.ts +17 -0
- package/dist/services/Store/Memory.d.ts.map +1 -0
- package/dist/services/Store/Memory.js +60 -0
- package/dist/services/Store/Redis.d.ts +12 -0
- package/dist/services/Store/Redis.d.ts.map +1 -0
- package/dist/services/Store/Redis.js +59 -0
- package/dist/services/Store/codeFilter.test.d.ts.map +1 -0
- package/dist/services/Store/index.d.ts +10 -0
- package/dist/services/Store/index.d.ts.map +1 -0
- package/dist/services/Store/index.js +52 -0
- package/dist/services/Store/service.d.ts +113 -0
- package/dist/services/Store/service.d.ts.map +1 -0
- package/dist/services/Store/service.js +63 -0
- package/dist/services/Store/utils.d.ts +14 -0
- package/dist/services/Store/utils.d.ts.map +1 -0
- package/dist/services/Store/utils.js +103 -0
- package/dist/services/Store.d.ts +2 -0
- package/dist/services/Store.d.ts.map +1 -0
- package/dist/services/Store.js +2 -0
- package/dist/services/memQueue.d.ts +18 -0
- package/dist/services/memQueue.d.ts.map +1 -0
- package/dist/services/memQueue.js +24 -0
- package/dist/test.arbs.d.ts +13 -0
- package/dist/test.arbs.d.ts.map +1 -0
- package/dist/test.arbs.js +22 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.d.ts +5 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.js +7 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicNumber.d.ts +8 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicNumber.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicNumber.js +22 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicReference.d.ts +10 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicReference.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/_internal/AtomicReference.js +25 -0
- package/dist/vendor/Cache/Cache/_internal/CacheInternal.d.ts +51 -0
- package/dist/vendor/Cache/Cache/_internal/CacheInternal.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/_internal/CacheInternal.js +253 -0
- package/dist/vendor/Cache/Cache/_internal/CacheState.d.ts +33 -0
- package/dist/vendor/Cache/Cache/_internal/CacheState.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/_internal/CacheState.js +21 -0
- package/dist/vendor/Cache/Cache/_internal/KeySet.d.ts +20 -0
- package/dist/vendor/Cache/Cache/_internal/KeySet.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/_internal/KeySet.js +61 -0
- package/dist/vendor/Cache/Cache/_internal/MapKey.d.ts +24 -0
- package/dist/vendor/Cache/Cache/_internal/MapKey.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/_internal/MapKey.js +37 -0
- package/dist/vendor/Cache/Cache/_internal/MapValue.d.ts +32 -0
- package/dist/vendor/Cache/Cache/_internal/MapValue.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/_internal/MapValue.js +24 -0
- package/dist/vendor/Cache/Cache/definition.d.ts +100 -0
- package/dist/vendor/Cache/Cache/definition.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/definition.js +5 -0
- package/dist/vendor/Cache/Cache/operations/make.d.ts +12 -0
- package/dist/vendor/Cache/Cache/operations/make.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/operations/make.js +12 -0
- package/dist/vendor/Cache/Cache/operations/makeWith.d.ts +14 -0
- package/dist/vendor/Cache/Cache/operations/makeWith.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/operations/makeWith.js +15 -0
- package/dist/vendor/Cache/Cache/operations.d.ts +3 -0
- package/dist/vendor/Cache/Cache/operations.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache/operations.js +4 -0
- package/dist/vendor/Cache/Cache.d.ts +3 -0
- package/dist/vendor/Cache/Cache.d.ts.map +1 -0
- package/dist/vendor/Cache/Cache.js +4 -0
- package/dist/vendor/Cache/CacheStats/definition.d.ts +19 -0
- package/dist/vendor/Cache/CacheStats/definition.d.ts.map +1 -0
- package/dist/vendor/Cache/CacheStats/definition.js +6 -0
- package/dist/vendor/Cache/CacheStats.d.ts +2 -0
- package/dist/vendor/Cache/CacheStats.d.ts.map +1 -0
- package/dist/vendor/Cache/CacheStats.js +3 -0
- package/dist/vendor/Cache/EntryStats/definition.d.ts +17 -0
- package/dist/vendor/Cache/EntryStats/definition.d.ts.map +1 -0
- package/dist/vendor/Cache/EntryStats/definition.js +4 -0
- package/dist/vendor/Cache/EntryStats.d.ts +2 -0
- package/dist/vendor/Cache/EntryStats.d.ts.map +1 -0
- package/dist/vendor/Cache/EntryStats.js +3 -0
- package/dist/vendor/Cache/Lookup/definition.d.ts +17 -0
- package/dist/vendor/Cache/Lookup/definition.d.ts.map +1 -0
- package/dist/vendor/Cache/Lookup/definition.js +2 -0
- package/dist/vendor/Cache/Lookup.d.ts +2 -0
- package/dist/vendor/Cache/Lookup.d.ts.map +1 -0
- package/dist/vendor/Cache/Lookup.js +3 -0
- package/dist/vendor/Cache/index.d.ts +5 -0
- package/dist/vendor/Cache/index.d.ts.map +1 -0
- package/dist/vendor/Cache/index.js +5 -0
- package/package.json +756 -0
- package/tsconfig.json +107 -0
- package/tsconfig.json.bak +47 -0
- package/tsplus.config.json +6 -0
- package/types/modules.d.ts +1 -0
- package/vitest.config.ts +5 -0
- package/wallaby.cjs +1 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Effect } from "@effect/io/Effect";
|
|
2
|
+
import { Tag } from "@fp-ts/data/Context";
|
|
3
|
+
import { Email, ReasonableString } from "@effect-app/prelude/schema";
|
|
4
|
+
import { ConfigSecret } from "@effect/io/Config/Secret";
|
|
5
|
+
import { NonEmptyReadonlyArray } from "@fp-ts/data/ReadonlyArray";
|
|
6
|
+
import type { MailContent, MailData } from "@sendgrid/helpers/classes/mail.js";
|
|
7
|
+
import type { ResponseError } from "@sendgrid/mail";
|
|
8
|
+
import type sgMail from "@sendgrid/mail";
|
|
9
|
+
import type { RequestContext } from "../../lib/RequestContext.js";
|
|
10
|
+
export interface Emailer {
|
|
11
|
+
sendMail: (msg: EmailMsgOptionalFrom) => Effect<RequestContext, Error | ResponseError, void>;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* @tsplus type Emailer.Ops
|
|
15
|
+
*/
|
|
16
|
+
export interface EmailerOps extends Tag<Emailer> {
|
|
17
|
+
}
|
|
18
|
+
export interface SendgridConfig {
|
|
19
|
+
subjectPrefix: string;
|
|
20
|
+
realMail: boolean;
|
|
21
|
+
defaultFrom: Email | {
|
|
22
|
+
name?: ReasonableString;
|
|
23
|
+
email: Email;
|
|
24
|
+
};
|
|
25
|
+
apiKey: ConfigSecret;
|
|
26
|
+
}
|
|
27
|
+
export declare const Emailer: EmailerOps;
|
|
28
|
+
export type EmailMsg = sgMail.MailDataRequired;
|
|
29
|
+
export type EmailTemplateMsg = MailData & {
|
|
30
|
+
templateId: string;
|
|
31
|
+
};
|
|
32
|
+
export type EmailMsgOptionalFrom = Omit<MailData, "from"> & ({
|
|
33
|
+
text: string;
|
|
34
|
+
} | {
|
|
35
|
+
html: string;
|
|
36
|
+
} | {
|
|
37
|
+
templateId: string;
|
|
38
|
+
} | {
|
|
39
|
+
content: NonEmptyReadonlyArray<MailContent>;
|
|
40
|
+
}) & Partial<Pick<EmailMsg, "from">>;
|
|
41
|
+
//# sourceMappingURL=service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/service.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAA;AAExC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAEjE,MAAM,WAAW,OAAO;IACtB,QAAQ,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,MAAM,CAAC,cAAc,EAAE,KAAK,GAAG,aAAa,EAAE,IAAI,CAAC,CAAA;CAC7F;AAED;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,GAAG,CAAC,OAAO,CAAC;CAAG;AAEnD,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,EAAE,KAAK,GAAG;QAAE,IAAI,CAAC,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAA;IAC9D,MAAM,EAAE,YAAY,CAAA;CACrB;AAED,eAAO,MAAM,OAAO,EAAE,UAA2B,CAAA;AAEjD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAA;AAC9C,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAA;AAEhE,MAAM,MAAM,oBAAoB,GAC5B,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,GACtB,CACA;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAA;CAAE,CAC/G,GACC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import * as tsplus_module_1 from "@fp-ts/data/Context";
|
|
2
|
+
export const Emailer = tsplus_module_1.Tag();
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvRW1haWxlci9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFzQkEsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFlLGdCQUFBLEdBQUcsRUFBVyxDQUFBIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Emailer.d.ts","sourceRoot":"","sources":["../../_src/services/Emailer.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from "./Emailer/service.js";
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW1haWxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL19zcmMvc2VydmljZXMvRW1haWxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFBIn0=
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
import { Effect } from "@effect/io/Effect";
|
|
2
|
+
import { Opt } from "@effect-app/core/Option";
|
|
3
|
+
import { Chunk } from "@fp-ts/data/Chunk";
|
|
4
|
+
import { Predicate } from "@fp-ts/data/Predicate";
|
|
5
|
+
import { PureEnvEnv } from "@effect-app/prelude/_ext/Pure";
|
|
6
|
+
import { NonEmptyReadonlyArray } from "@fp-ts/data/ReadonlyArray";
|
|
7
|
+
import type { InvalidStateError, OptimisticConcurrencyException } from "../errors.js";
|
|
8
|
+
import { NotFoundError } from "../errors.js";
|
|
9
|
+
import type { RequestContext } from "../lib/RequestContext.js";
|
|
10
|
+
import { ContextMap } from "../services/Store.js";
|
|
11
|
+
import type { Filter } from "../services/Store.js";
|
|
12
|
+
import type { FixEnv, PureLogT } from "@effect-app/prelude/_ext/Pure";
|
|
13
|
+
import { Pure } from "@effect-app/prelude/_ext/Pure";
|
|
14
|
+
import type { ParserEnv } from "@effect-app/schema/custom/Parser";
|
|
15
|
+
/**
|
|
16
|
+
* @tsplus type Repository
|
|
17
|
+
*/
|
|
18
|
+
export interface Repository<T extends {
|
|
19
|
+
id: Id;
|
|
20
|
+
}, PM extends {
|
|
21
|
+
id: string;
|
|
22
|
+
}, Evt, Id extends string, ItemType extends string> {
|
|
23
|
+
itemType: ItemType;
|
|
24
|
+
find: (id: Id) => Effect<ContextMap | RequestContext, never, Opt<T>>;
|
|
25
|
+
all: Effect<ContextMap, never, Chunk<T>>;
|
|
26
|
+
save: (items: Iterable<T>, events?: Iterable<Evt>) => Effect<ContextMap | RequestContext, InvalidStateError | OptimisticConcurrencyException, void>;
|
|
27
|
+
utils: {
|
|
28
|
+
mapReverse: (pm: PM, setEtag: (id: string, eTag: string | undefined) => void) => unknown;
|
|
29
|
+
parse: (a: unknown, env?: ParserEnv | undefined) => T;
|
|
30
|
+
all: Effect<never, never, Chunk<PM>>;
|
|
31
|
+
filter: (filter: Filter<PM>, cursor?: {
|
|
32
|
+
limit?: number;
|
|
33
|
+
skip?: number;
|
|
34
|
+
}) => Effect<never, never, Chunk<PM>>;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
export interface PureDSL<S, S2, W> {
|
|
38
|
+
get: ReturnType<typeof Pure.get<S>>;
|
|
39
|
+
set: typeof Pure.set<S2>;
|
|
40
|
+
log: (...w: W[]) => PureLogT<W>;
|
|
41
|
+
}
|
|
42
|
+
export declare const AnyPureDSL: PureDSL<any, any, any>;
|
|
43
|
+
/**
|
|
44
|
+
* @tsplus fluent Repository get
|
|
45
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
46
|
+
*/
|
|
47
|
+
export declare function get<Id extends string, T extends {
|
|
48
|
+
id: Id;
|
|
49
|
+
}, PM extends {
|
|
50
|
+
id: string;
|
|
51
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, id: Id): import("@effect/io/Effect").Effect<RequestContext | ContextMap, NotFoundError<ItemType>, T>;
|
|
52
|
+
/**
|
|
53
|
+
* @tsplus fluent Repository filter
|
|
54
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
55
|
+
*/
|
|
56
|
+
export declare function filter<Id extends string, T extends {
|
|
57
|
+
id: Id;
|
|
58
|
+
}, PM extends {
|
|
59
|
+
id: string;
|
|
60
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, filter: Predicate<T>): import("@effect/io/Effect").Effect<ContextMap, never, import("@fp-ts/data/Chunk").Chunk<T>>;
|
|
61
|
+
/**
|
|
62
|
+
* @tsplus fluent Repository filterAll
|
|
63
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
64
|
+
*/
|
|
65
|
+
export declare function filterAll<Id extends string, T extends {
|
|
66
|
+
id: Id;
|
|
67
|
+
}, PM extends {
|
|
68
|
+
id: string;
|
|
69
|
+
}, Evt, ItemType extends string, S extends T>(self: Repository<T, PM, Evt, Id, ItemType>, map: (items: Chunk<T>) => Chunk<S>): import("@effect/io/Effect").Effect<ContextMap, never, import("@fp-ts/data/Chunk").Chunk<S>>;
|
|
70
|
+
/**
|
|
71
|
+
* @tsplus fluent Repository collect
|
|
72
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
73
|
+
*/
|
|
74
|
+
export declare function collect<Id extends string, T extends {
|
|
75
|
+
id: Id;
|
|
76
|
+
}, PM extends {
|
|
77
|
+
id: string;
|
|
78
|
+
}, Evt, ItemType extends string, S extends T>(self: Repository<T, PM, Evt, Id, ItemType>, collect: (item: T) => Opt<S>): import("@effect/io/Effect").Effect<ContextMap, never, import("@fp-ts/data/Chunk").Chunk<S>>;
|
|
79
|
+
/**
|
|
80
|
+
* @tsplus getter Repository log
|
|
81
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
82
|
+
*/
|
|
83
|
+
export declare function log<Id extends string, T extends {
|
|
84
|
+
id: Id;
|
|
85
|
+
}, PM extends {
|
|
86
|
+
id: string;
|
|
87
|
+
}, Evt, ItemType extends string>(_: Repository<T, PM, Evt, Id, ItemType>): (evt: Evt) => PureLogT<any>;
|
|
88
|
+
/**
|
|
89
|
+
* TODO: project inside the db.
|
|
90
|
+
* @tsplus fluent Repository projectEffect
|
|
91
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
92
|
+
*/
|
|
93
|
+
export declare function projectEffect<Id extends string, T extends {
|
|
94
|
+
id: Id;
|
|
95
|
+
}, PM extends {
|
|
96
|
+
id: string;
|
|
97
|
+
}, Evt, ItemType extends string, S, R, E>(self: Repository<T, PM, Evt, Id, ItemType>, map: Effect<R, E, {
|
|
98
|
+
filter?: Filter<PM>;
|
|
99
|
+
collect: (t: PM) => Opt<S>;
|
|
100
|
+
limit?: number;
|
|
101
|
+
skip?: number;
|
|
102
|
+
}>): import("@effect/io/Effect").Effect<R, E, import("@fp-ts/data/Chunk").Chunk<S>>;
|
|
103
|
+
/**
|
|
104
|
+
* TODO: project inside the db.
|
|
105
|
+
* @tsplus fluent Repository project
|
|
106
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
107
|
+
*/
|
|
108
|
+
export declare function project<Id extends string, T extends {
|
|
109
|
+
id: Id;
|
|
110
|
+
}, PM extends {
|
|
111
|
+
id: string;
|
|
112
|
+
}, Evt, ItemType extends string, S>(self: Repository<T, PM, Evt, Id, ItemType>, map: {
|
|
113
|
+
filter?: Filter<PM>;
|
|
114
|
+
collect: (t: PM) => Opt<S>;
|
|
115
|
+
limit?: number;
|
|
116
|
+
skip?: number;
|
|
117
|
+
}): import("@effect/io/Effect").Effect<never, never, import("@fp-ts/data/Chunk").Chunk<S>>;
|
|
118
|
+
/**
|
|
119
|
+
* @tsplus fluent Repository queryEffect
|
|
120
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
121
|
+
*/
|
|
122
|
+
export declare function queryEffect<Id extends string, T extends {
|
|
123
|
+
id: Id;
|
|
124
|
+
}, PM extends {
|
|
125
|
+
id: string;
|
|
126
|
+
}, Evt, ItemType extends string, R, E, S>(self: Repository<T, PM, Evt, Id, ItemType>, map: Effect<R, E, {
|
|
127
|
+
filter?: Filter<PM>;
|
|
128
|
+
collect: (t: T) => Opt<S>;
|
|
129
|
+
limit?: number;
|
|
130
|
+
skip?: number;
|
|
131
|
+
}>): import("@effect/io/Effect").Effect<ContextMap | R, E, import("@fp-ts/data/Chunk").Chunk<S>>;
|
|
132
|
+
/**
|
|
133
|
+
* @tsplus fluent Repository queryOneEffect
|
|
134
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
135
|
+
*/
|
|
136
|
+
export declare function queryOneEffect<Id extends string, T extends {
|
|
137
|
+
id: Id;
|
|
138
|
+
}, PM extends {
|
|
139
|
+
id: string;
|
|
140
|
+
}, Evt, ItemType extends string, R, E, S>(self: Repository<T, PM, Evt, Id, ItemType>, map: Effect<R, E, {
|
|
141
|
+
filter?: Filter<PM>;
|
|
142
|
+
collect: (t: T) => Opt<S>;
|
|
143
|
+
}>): import("@effect/io/Effect").Effect<ContextMap | R, E | NotFoundError<ItemType>, S>;
|
|
144
|
+
/**
|
|
145
|
+
* @tsplus fluent Repository query
|
|
146
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
147
|
+
*/
|
|
148
|
+
export declare function query<Id extends string, T extends {
|
|
149
|
+
id: Id;
|
|
150
|
+
}, PM extends {
|
|
151
|
+
id: string;
|
|
152
|
+
}, Evt, ItemType extends string, S>(self: Repository<T, PM, Evt, Id, ItemType>, map: {
|
|
153
|
+
filter?: Filter<PM>;
|
|
154
|
+
collect: (t: T) => Opt<S>;
|
|
155
|
+
limit?: number;
|
|
156
|
+
skip?: number;
|
|
157
|
+
}): import("@effect/io/Effect").Effect<ContextMap, never, import("@fp-ts/data/Chunk").Chunk<S>>;
|
|
158
|
+
/**
|
|
159
|
+
* @tsplus fluent Repository queryOne
|
|
160
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
161
|
+
*/
|
|
162
|
+
export declare function queryOne<Id extends string, T extends {
|
|
163
|
+
id: Id;
|
|
164
|
+
}, PM extends {
|
|
165
|
+
id: string;
|
|
166
|
+
}, Evt, ItemType extends string, S>(self: Repository<T, PM, Evt, Id, ItemType>, map: {
|
|
167
|
+
filter?: Filter<PM>;
|
|
168
|
+
collect: (t: T) => Opt<S>;
|
|
169
|
+
}): import("@effect/io/Effect").Effect<ContextMap, NotFoundError<ItemType>, S>;
|
|
170
|
+
/**
|
|
171
|
+
* @tsplus fluent Repository queryAndSavePureEffect
|
|
172
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
173
|
+
*/
|
|
174
|
+
export declare function queryAndSavePureEffect<Id extends string, T extends {
|
|
175
|
+
id: Id;
|
|
176
|
+
}, PM extends {
|
|
177
|
+
id: string;
|
|
178
|
+
}, Evt, ItemType extends string, R, E, S extends T = T>(self: Repository<T, PM, Evt, Id, ItemType>, map: Effect<R, E, {
|
|
179
|
+
filter: Filter<PM>;
|
|
180
|
+
collect: (t: T) => Opt<S>;
|
|
181
|
+
limit?: number;
|
|
182
|
+
skip?: number;
|
|
183
|
+
}>): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@fp-ts/data/Chunk").Chunk<S>, Iterable<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | R | Exclude<R2, {
|
|
184
|
+
env: import("@effect-app/prelude/_ext/Pure").PureEnv<Evt, import("@fp-ts/data/Chunk").Chunk<S>, Iterable<S2>>;
|
|
185
|
+
}>, InvalidStateError | OptimisticConcurrencyException | E | E2, A>;
|
|
186
|
+
/**
|
|
187
|
+
* @tsplus fluent Repository queryAndSavePure
|
|
188
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
189
|
+
*/
|
|
190
|
+
export declare function queryAndSavePure<Id extends string, T extends {
|
|
191
|
+
id: Id;
|
|
192
|
+
}, PM extends {
|
|
193
|
+
id: string;
|
|
194
|
+
}, Evt, ItemType extends string, S extends T = T>(self: Repository<T, PM, Evt, Id, ItemType>, map: {
|
|
195
|
+
filter: Filter<PM>;
|
|
196
|
+
collect: (t: T) => Opt<S>;
|
|
197
|
+
limit?: number;
|
|
198
|
+
skip?: number;
|
|
199
|
+
}): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@fp-ts/data/Chunk").Chunk<S>, Iterable<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R2, {
|
|
200
|
+
env: import("@effect-app/prelude/_ext/Pure").PureEnv<Evt, import("@fp-ts/data/Chunk").Chunk<S>, Iterable<S2>>;
|
|
201
|
+
}>, InvalidStateError | OptimisticConcurrencyException | E2, A>;
|
|
202
|
+
/**
|
|
203
|
+
* @tsplus getter Repository saveManyWithPure
|
|
204
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
205
|
+
*/
|
|
206
|
+
export declare function saveManyWithPure<Id extends string, T extends {
|
|
207
|
+
id: Id;
|
|
208
|
+
}, PM extends {
|
|
209
|
+
id: string;
|
|
210
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, import("@fp-ts/data/Chunk").Chunk<S1>, Iterable<S2>>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
211
|
+
env: import("@effect-app/prelude/_ext/Pure").PureEnv<Evt, import("@fp-ts/data/Chunk").Chunk<S1>, Iterable<S2>>;
|
|
212
|
+
}>, InvalidStateError | OptimisticConcurrencyException | E, A>;
|
|
213
|
+
/**
|
|
214
|
+
* @tsplus fluent Repository byIdAndSaveWithPure
|
|
215
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
216
|
+
*/
|
|
217
|
+
export declare function byIdAndSaveWithPure<Id extends string, T extends {
|
|
218
|
+
id: Id;
|
|
219
|
+
}, PM extends {
|
|
220
|
+
id: string;
|
|
221
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, id: Id): <R, A, E, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
222
|
+
env: import("@effect-app/prelude/_ext/Pure").PureEnv<Evt, T, S2>;
|
|
223
|
+
}>, InvalidStateError | OptimisticConcurrencyException | E | NotFoundError<ItemType>, A>;
|
|
224
|
+
/**
|
|
225
|
+
* NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
|
|
226
|
+
* @tsplus getter Repository handleByIdAndSaveWithPure
|
|
227
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
228
|
+
*/
|
|
229
|
+
export declare function handleByIdAndSaveWithPure<Id extends string, T extends {
|
|
230
|
+
id: Id;
|
|
231
|
+
}, PM extends {
|
|
232
|
+
id: string;
|
|
233
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): <Req extends {
|
|
234
|
+
id: Id;
|
|
235
|
+
}, Context_1, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
236
|
+
env: import("@effect-app/prelude/_ext/Pure").PureEnv<Evt, T, S2>;
|
|
237
|
+
}>, InvalidStateError | OptimisticConcurrencyException | E | NotFoundError<ItemType>, A>;
|
|
238
|
+
/**
|
|
239
|
+
* @tsplus fluent Repository saveManyWithPure_
|
|
240
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
241
|
+
*/
|
|
242
|
+
export declare function saveManyWithPure_<Id extends string, R, T extends {
|
|
243
|
+
id: Id;
|
|
244
|
+
}, PM extends {
|
|
245
|
+
id: string;
|
|
246
|
+
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, Chunk<S1>, Iterable<S2>>, E, A>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
247
|
+
env: import("@effect-app/prelude/_ext/Pure").PureEnv<Evt, import("@fp-ts/data/Chunk").Chunk<S1>, Iterable<S2>>;
|
|
248
|
+
}>, InvalidStateError | OptimisticConcurrencyException | E, A>;
|
|
249
|
+
/**
|
|
250
|
+
* @tsplus fluent Repository saveWithPure_
|
|
251
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
252
|
+
*/
|
|
253
|
+
export declare function saveWithPure_<Id extends string, R, T extends {
|
|
254
|
+
id: Id;
|
|
255
|
+
}, PM extends {
|
|
256
|
+
id: string;
|
|
257
|
+
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, item: S1, pure: Effect<FixEnv<R, Evt, S1, S2>, E, A>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
258
|
+
env: import("@effect-app/prelude/_ext/Pure").PureEnv<Evt, S1, S2>;
|
|
259
|
+
}>, InvalidStateError | OptimisticConcurrencyException | E, A>;
|
|
260
|
+
export type AllDSL<T, Evt> = (<R, A, E, S1 extends T, S2 extends T>(pure: (dsl: PureDSL<Chunk<S1>, Iterable<S2>, Evt>) => Effect<R, E, A>) => Effect<FixEnv<R, Evt, Chunk<S1>, Iterable<S2>>, E, A>) & AllDSLExt<T, Evt>;
|
|
261
|
+
/**
|
|
262
|
+
* @tsplus type DSLExt
|
|
263
|
+
*/
|
|
264
|
+
export interface AllDSLExt<T, Evt> {
|
|
265
|
+
modify: <R, E, A, S1 extends T, S2 extends T>(pure: (items: Chunk<S1>, dsl: PureDSL<Chunk<S1>, Iterable<S2>, Evt>) => Effect<R, E, A>) => Effect<FixEnv<R, Evt, Chunk<S1>, Iterable<S2>>, E, A>;
|
|
266
|
+
update: <R, E, S1 extends T, S2 extends T>(pure: (items: Chunk<S1>, log: (...evt: Evt[]) => PureLogT<Evt>) => Effect<R, E, Iterable<S2>>) => Effect<FixEnv<R, Evt, Chunk<S1>, Iterable<S2>>, E, Iterable<S2>>;
|
|
267
|
+
}
|
|
268
|
+
export declare function makeAllDSL<T, Evt>(): AllDSL<T, Evt>;
|
|
269
|
+
export type OneDSL<T, Evt> = (<R, A, E, S1 extends T, S2 extends T>(pure: (dsl: PureDSL<S1, S2, Evt>) => Effect<FixEnv<R, Evt, S1, S2>, E, A>) => Effect<FixEnv<R, Evt, S1, S2>, E, A>) & OneDSLExt<T, Evt>;
|
|
270
|
+
/**
|
|
271
|
+
* @tsplus type DSLExt
|
|
272
|
+
*/
|
|
273
|
+
export interface OneDSLExt<T, Evt> {
|
|
274
|
+
modify: <R, E, A, S1 extends T, S2 extends T>(pure: (items: S1, dsl: PureDSL<S1, S2, Evt>) => Effect<FixEnv<R, Evt, S1, S2>, E, A>) => Effect<FixEnv<R, Evt, S1, S2> | PureEnvEnv<Evt, S1, S1>, E, A>;
|
|
275
|
+
update: <R, E, S1 extends T, S2 extends T>(pure: (items: S1, log: (...evt: Evt[]) => PureLogT<Evt>) => Effect<FixEnv<R, Evt, S1, S2>, E, S2>) => Effect<FixEnv<R, Evt, S1, S2>, E, S2>;
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* @tsplus fluent DSLExt updateWith
|
|
279
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
280
|
+
*/
|
|
281
|
+
export declare function updateWithOne<T, Evt, S1 extends T, S2 extends T>(self: OneDSL<T, Evt>, upd: (item: S1) => S2): import("@effect/io/Effect").Effect<import("@effect-app/prelude/_ext/Pure").PureEnvEnv<Evt, S1, S2>, never, S2>;
|
|
282
|
+
/**
|
|
283
|
+
* @tsplus fluent DSLExt updateWith
|
|
284
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
285
|
+
*/
|
|
286
|
+
export declare function updateWith<T, Evt, S1 extends T, S2 extends T>(self: AllDSL<T, Evt>, upd: (item: Chunk<S1>) => Iterable<S2>): import("@effect/io/Effect").Effect<import("@effect-app/prelude/_ext/Pure").PureEnvEnv<Evt, import("@fp-ts/data/Chunk").Chunk<S1>, Iterable<S2>>, never, Iterable<S2>>;
|
|
287
|
+
export declare function makeOneDSL<T, Evt>(): OneDSL<T, Evt>;
|
|
288
|
+
export declare function makeDSL<S1, S2, Evt>(): (<R, A, E>(pure: (dsl: PureDSL<S1, S2, Evt>) => import("@effect/io/Effect").Effect<R, E, A>) => import("@effect/io/Effect").Effect<FixEnv<R, Evt, S1, S2>, E, A>) & {
|
|
289
|
+
modify: <R_1, E_1, A_1>(pure: (items: S1, dsl: PureDSL<S1, S2, Evt>) => import("@effect/io/Effect").Effect<R_1, E_1, A_1>) => import("@effect/io/Effect").Effect<FixEnv<R_1, Evt, S1, S2>, E_1, A_1>;
|
|
290
|
+
update: <R_2, E_2>(pure: (items: S1, log: (...evt: Evt[]) => PureLogT<Evt>) => import("@effect/io/Effect").Effect<R_2, E_2, S2>) => import("@effect/io/Effect").Effect<FixEnv<R_2, Evt, S1, S2>, E_2, S2>;
|
|
291
|
+
};
|
|
292
|
+
export interface DSLExt<S1, S2, Evt> extends ReturnType<typeof makeDSL<S1, S2, Evt>> {
|
|
293
|
+
}
|
|
294
|
+
export declare function ifAny<T, R, E, A>(fn: (items: NonEmptyReadonlyArray<T>) => Effect<R, E, A>): (items: Iterable<T>) => import("@effect/io/Effect").Effect<R, E, import("@fp-ts/data/Option").Option<A>>;
|
|
295
|
+
/**
|
|
296
|
+
* @tsplus fluent Iterable ifAny
|
|
297
|
+
* @tsplus location "@effect-app/infra/services/Repository"
|
|
298
|
+
*/
|
|
299
|
+
export declare function ifAny_<T, R, E, A>(items: Iterable<T>, fn: (items: NonEmptyReadonlyArray<T>) => Effect<R, E, A>): import("@effect/io/Effect").Effect<R, E, import("@fp-ts/data/Option").Option<A>>;
|
|
300
|
+
//# sourceMappingURL=Repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Repository.d.ts","sourceRoot":"","sources":["../../_src/services/Repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import * as tracer_1 from "@effect/io/Debug";
|
|
2
|
+
const fileName_1 = "packages/infra/_src/services/Repository.ts";
|
|
3
|
+
import * as tsplus_module_1 from "@effect-app/prelude/_ext/Pure";
|
|
4
|
+
import * as tsplus_module_2 from "@effect-app/prelude/_ext/Prelude.ext";
|
|
5
|
+
import * as tsplus_module_3 from "@effect/io/Effect";
|
|
6
|
+
import * as tsplus_module_4 from "@fp-ts/data/Chunk";
|
|
7
|
+
import * as tsplus_module_5 from "@effect-app/core/Array";
|
|
8
|
+
import * as tsplus_module_6 from "@effect-app/core/Effect";
|
|
9
|
+
export const get = get_1;
|
|
10
|
+
export const projectEffect = projectEffect_1;
|
|
11
|
+
export const queryEffect = queryEffect_1;
|
|
12
|
+
export const queryOneEffect = queryOneEffect_1;
|
|
13
|
+
export const queryAndSavePureEffect = queryAndSavePureEffect_1;
|
|
14
|
+
export const byIdAndSaveWithPure = byIdAndSaveWithPure_1;
|
|
15
|
+
export const saveManyWithPure_ = saveManyWithPure_1;
|
|
16
|
+
export const saveWithPure_ = saveWithPure_1;
|
|
17
|
+
import { NotFoundError } from "../errors.js";
|
|
18
|
+
import { ContextMap } from "../services/Store.js";
|
|
19
|
+
import "@effect-app/prelude/_ext/Pure";
|
|
20
|
+
export const AnyPureDSL = { get: tsplus_module_1.get(), set: tsplus_module_1.set, log: (...evt) => tsplus_module_1.logMany(evt) };
|
|
21
|
+
/**
|
|
22
|
+
* @tsplus fluent Repository get
|
|
23
|
+
*/
|
|
24
|
+
function get_1(self, id) {
|
|
25
|
+
return tracer_1.withCallTrace(fileName_1 + ":53:24")(tsplus_module_3.flatMap(_ => tsplus_module_2.encaseMaybeInEffect_(_, () => new NotFoundError(self.itemType, id))))(self.find(id));
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @tsplus fluent Repository filter
|
|
29
|
+
*/
|
|
30
|
+
export function filter(self, filter) {
|
|
31
|
+
return tracer_1.withCallTrace(fileName_1 + ":66:19")(tsplus_module_3.map(_ => tsplus_module_4.filter(filter)(_)))(self.all);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @tsplus fluent Repository filterAll
|
|
35
|
+
*/
|
|
36
|
+
export function filterAll(self, map) {
|
|
37
|
+
return tracer_1.withCallTrace(fileName_1 + ":80:19")(tsplus_module_3.map(map))(self.all);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* @tsplus fluent Repository collect
|
|
41
|
+
*/
|
|
42
|
+
export function collect(self, collect) {
|
|
43
|
+
return tracer_1.withCallTrace(fileName_1 + ":95:19")(tsplus_module_3.map(_ => tsplus_module_4.filterMap(collect)(_)))(self.all);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* @tsplus getter Repository log
|
|
47
|
+
*/
|
|
48
|
+
export function log(_) {
|
|
49
|
+
return (evt) => AnyPureDSL.log(evt);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* TODO: project inside the db.
|
|
53
|
+
* @tsplus fluent Repository projectEffect
|
|
54
|
+
*/
|
|
55
|
+
function projectEffect_1(self, map) {
|
|
56
|
+
// TODO: a projection that gets sent to the db instead.
|
|
57
|
+
return tracer_1.withCallTrace(fileName_1 + ":129:14")(tsplus_module_3.flatMap(f => tracer_1.withCallTrace(fileName_1 + ":131:8")(tsplus_module_3.map(_ => tsplus_module_4.filterMap(f.collect)(_)))((f.filter ? self.utils.filter(f.filter, { limit: f.limit, skip: f.skip }) : self.utils.all))))(map);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* TODO: project inside the db.
|
|
61
|
+
* @tsplus fluent Repository project
|
|
62
|
+
*/
|
|
63
|
+
export function project(self, map) {
|
|
64
|
+
return projectEffect_1(self, tracer_1.withCallTrace(fileName_1 + ":150:29")(tsplus_module_3.sync(() => map)));
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* @tsplus fluent Repository queryEffect
|
|
68
|
+
*/
|
|
69
|
+
function queryEffect_1(self,
|
|
70
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
71
|
+
map) {
|
|
72
|
+
return tracer_1.withCallTrace(fileName_1 + ":171:14")(tsplus_module_3.flatMap(f => tracer_1.withCallTrace(fileName_1 + ":180:8")(tsplus_module_3.map(_ => tsplus_module_4.filterMap(f.collect)(_)))(tracer_1.withCallTrace(fileName_1 + ":179:8")(tsplus_module_3.map(_ => _.map(_ => self.utils.parse(_))))(tracer_1.withCallTrace(fileName_1 + ":173:8")(tsplus_module_3.flatMap(items => tsplus_module_3.map(({ set }) => items.map(_ => self.utils.mapReverse(_, set)))(tracer_1.withCallTrace(fileName_1 + ":175:36")(tsplus_module_3.service(ContextMap)))))((f.filter ? self.utils.filter(f.filter, { limit: f.limit, skip: f.skip }) : self.utils.all))))))(map);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* @tsplus fluent Repository queryOneEffect
|
|
76
|
+
*/
|
|
77
|
+
function queryOneEffect_1(self,
|
|
78
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
79
|
+
map) {
|
|
80
|
+
return tracer_1.withCallTrace(fileName_1 + ":201:14")(tsplus_module_3.flatMap(f => tracer_1.withCallTrace(fileName_1 + ":210:8")(tsplus_module_3.flatMap(_ => tracer_1.withCallTrace(fileName_1 + ":210:141")(tsplus_module_3.map(_ => _[0]))(tsplus_module_2.encaseMaybeInEffect_(tsplus_module_5.ChunkToNonEmptyReadonlyArray(tsplus_module_4.filterMap(f.collect)(_)), () => new NotFoundError(self.itemType, JSON.stringify(f.filter))))))(tracer_1.withCallTrace(fileName_1 + ":209:8")(tsplus_module_3.map(_ => _.map(_ => self.utils.parse(_))))(tracer_1.withCallTrace(fileName_1 + ":203:8")(tsplus_module_3.flatMap(items => tsplus_module_3.map(({ set }) => items.map(_ => self.utils.mapReverse(_, set)))(tracer_1.withCallTrace(fileName_1 + ":205:36")(tsplus_module_3.service(ContextMap)))))((f.filter ? self.utils.filter(f.filter, { limit: 1 }) : self.utils.all))))))(map);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* @tsplus fluent Repository query
|
|
84
|
+
*/
|
|
85
|
+
export function query(self,
|
|
86
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
87
|
+
map) {
|
|
88
|
+
return queryEffect_1(self, tracer_1.withCallTrace(fileName_1 + ":229:27")(tsplus_module_3.sync(() => map)));
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* @tsplus fluent Repository queryOne
|
|
92
|
+
*/
|
|
93
|
+
export function queryOne(self,
|
|
94
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
95
|
+
map) {
|
|
96
|
+
return queryOneEffect_1(self, tracer_1.withCallTrace(fileName_1 + ":247:30")(tsplus_module_3.sync(() => map)));
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* @tsplus fluent Repository queryAndSavePureEffect
|
|
100
|
+
*/
|
|
101
|
+
function queryAndSavePureEffect_1(self,
|
|
102
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
103
|
+
map) {
|
|
104
|
+
return (pure) => tracer_1.withCallTrace(fileName_1 + ":269:8")(tsplus_module_3.flatMap(_ => saveManyWithPure_1(self, _, pure)))(queryEffect_1(self, map));
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* @tsplus fluent Repository queryAndSavePure
|
|
108
|
+
*/
|
|
109
|
+
export function queryAndSavePure(self,
|
|
110
|
+
// TODO: think about collectPM, collectE, and collect(Parsed)
|
|
111
|
+
map) {
|
|
112
|
+
return queryAndSavePureEffect_1(self, tracer_1.withCallTrace(fileName_1 + ":287:38")(tsplus_module_3.sync(() => map)));
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* @tsplus getter Repository saveManyWithPure
|
|
116
|
+
*/
|
|
117
|
+
export function saveManyWithPure(self) {
|
|
118
|
+
return (pure) => (items) => saveManyWithPure_1(self, items, pure);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* @tsplus fluent Repository byIdAndSaveWithPure
|
|
122
|
+
*/
|
|
123
|
+
function byIdAndSaveWithPure_1(self, id) {
|
|
124
|
+
return (pure) => tracer_1.withCallTrace(fileName_1 + ":314:94")(tsplus_module_3.flatMap(item => saveWithPure_1(self, item, pure)))(get_1(self, id));
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
|
|
128
|
+
* @tsplus getter Repository handleByIdAndSaveWithPure
|
|
129
|
+
*/
|
|
130
|
+
export function handleByIdAndSaveWithPure(self) {
|
|
131
|
+
return (pure) => (req, ctx) => byIdAndSaveWithPure_1(self, req.id)(pure(req, ctx));
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* @tsplus fluent Repository saveManyWithPure_
|
|
135
|
+
*/
|
|
136
|
+
function saveManyWithPure_1(self, items, pure) {
|
|
137
|
+
return saveAllWithEffectInt(self, tsplus_module_1.runTerm(pure, tsplus_module_5.ext_itToChunk(items)));
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* @tsplus fluent Repository saveWithPure_
|
|
141
|
+
*/
|
|
142
|
+
function saveWithPure_1(self, item, pure) {
|
|
143
|
+
return saveAllWithEffectInt(self, tracer_1.withCallTrace(fileName_1 + ":378:6")(tsplus_module_3.map(([item, events, a]) => [[item], events, a]))(tsplus_module_1.runTerm(pure, item)));
|
|
144
|
+
}
|
|
145
|
+
function saveAllWithEffectInt(self, gen) {
|
|
146
|
+
return tracer_1.withCallTrace(fileName_1 + ":397:6")(tsplus_module_3.flatMap(([items, events, a]) => tracer_1.withCallTrace(fileName_1 + ":400:12")(tsplus_module_3.map(() => a))(self.save(items, events))))(gen);
|
|
147
|
+
}
|
|
148
|
+
const anyDSL = makeDSL();
|
|
149
|
+
export function makeAllDSL() {
|
|
150
|
+
const dsl = anyDSL;
|
|
151
|
+
return dsl;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* @tsplus fluent DSLExt updateWith
|
|
155
|
+
*/
|
|
156
|
+
export function updateWithOne(self, upd) {
|
|
157
|
+
return self.update((_) => tracer_1.withCallTrace(fileName_1 + ":441:33")(tsplus_module_3.sync(() => upd(_))));
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* @tsplus fluent DSLExt updateWith
|
|
161
|
+
*/
|
|
162
|
+
export function updateWith(self, upd) {
|
|
163
|
+
return self.update((_) => tracer_1.withCallTrace(fileName_1 + ":448:40")(tsplus_module_3.sync(() => upd(_))));
|
|
164
|
+
}
|
|
165
|
+
export function makeOneDSL() {
|
|
166
|
+
return anyDSL;
|
|
167
|
+
}
|
|
168
|
+
export function makeDSL() {
|
|
169
|
+
const dsl = AnyPureDSL;
|
|
170
|
+
function modify(pure) {
|
|
171
|
+
return tracer_1.withCallTrace(fileName_1 + ":468:20")(tsplus_module_3.flatMap(items => pure(items, dsl)))(dsl.get);
|
|
172
|
+
}
|
|
173
|
+
function update(pure) {
|
|
174
|
+
return tracer_1.withCallTrace(fileName_1 + ":480:20")(tsplus_module_3.flatMap(items => tracer_1.withCallTrace(fileName_1 + ":480:58")(tsplus_module_3.tap(dsl.set))(pure(items, dsl.log))))(dsl.get);
|
|
175
|
+
}
|
|
176
|
+
function withDSL(pure) {
|
|
177
|
+
return pure(AnyPureDSL);
|
|
178
|
+
}
|
|
179
|
+
return Object.assign(withDSL, {
|
|
180
|
+
modify,
|
|
181
|
+
update,
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
export function ifAny(fn) {
|
|
185
|
+
return (items) => tracer_1.withCallTrace(fileName_1 + ":505:64")(tsplus_module_6.flatMapOpt(tracer_1.withCallTrace(fileName_1 + ":505:34")(tsplus_module_3.sync(() => tsplus_module_5.CollectionToNonEmptyReadonlyArray(items))), fn));
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* @tsplus fluent Iterable ifAny
|
|
189
|
+
*/
|
|
190
|
+
export function ifAny_(items, fn) {
|
|
191
|
+
return tracer_1.withCallTrace(fileName_1 + ":512:40")(tsplus_module_6.flatMapOpt(tracer_1.withCallTrace(fileName_1 + ":512:10")(tsplus_module_3.sync(() => tsplus_module_5.CollectionToNonEmptyReadonlyArray(items))), fn));
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL19zcmMvc2VydmljZXMvUmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OzthQTBDZ0IsR0FBRzthQXdFSCxhQUFhO2FBMENiLFdBQVc7YUE4QlgsY0FBYzthQWtFZCxzQkFBc0I7YUFzRHRCLG1CQUFtQjthQTJCbkIsaUJBQWlCO2FBeUJqQixhQUFhO0FBblc3QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRTVDLE9BQU8sRUFBRSxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUdqRCxPQUFxQiwrQkFBK0IsQ0FBQTtBQTZCcEQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUEyQixFQUFFLEdBQUcsRUFBRSxxQkFBVSxFQUFFLEdBQUcscUJBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQVUsRUFBRSxFQUFFLENBQUMsd0JBQWEsR0FBRyxDQUFDLEVBQUUsQ0FBQTtBQUUvSDs7R0FFRztBQUNILGVBT0UsSUFBMEMsRUFDMUMsRUFBTTtJQUVOLE9BQU8sc0VBQXNCLENBQUMsQ0FBQyxFQUFFLENBQUMscUNBQUEsQ0FBQyxFQUFnQixHQUFHLEVBQUUsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQXZGLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQTJFLENBQUE7QUFDakcsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLE1BQU0sQ0FNcEIsSUFBMEMsRUFBRSxNQUFvQjtJQUNoRSxPQUFPLGtFQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsdUJBQVMsTUFBTSxFQUFmLENBQUMsQ0FBZSxHQUFsQyxJQUFJLENBQUMsR0FBRyxDQUEyQixDQUFBO0FBQzVDLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxTQUFTLENBT3ZCLElBQTBDLEVBQUUsR0FBa0M7SUFDOUUsT0FBTyxrRUFBYSxHQUFHLEdBQWhCLElBQUksQ0FBQyxHQUFHLENBQVMsQ0FBQTtBQUMxQixDQUFDO0FBR0Q7O0dBRUc7QUFDSCxNQUFNLFVBQVUsT0FBTyxDQU9yQixJQUEwQyxFQUFFLE9BQTRCO0lBQ3hFLE9BQU8sa0VBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQywwQkFBWSxPQUFPLEVBQW5CLENBQUMsQ0FBbUIsR0FBdEMsSUFBSSxDQUFDLEdBQUcsQ0FBK0IsQ0FBQTtBQUNoRCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsR0FBRyxDQU1qQixDQUF1QztJQUN2QyxPQUFPLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBQzFDLENBQUM7QUFFRDs7O0dBR0c7QUFDSCx5QkFVRSxJQUEwQyxFQUMxQyxHQUFxRztJQUVyRyx1REFBdUQ7SUFDdkQsT0FBTyx1RUFBWSxDQUFDLENBQUMsRUFBRSxDQUNyQixrRUFDTyxDQUFDLENBQUMsRUFBRSxDQUFDLDBCQUFZLENBQUMsQ0FBQyxPQUFPLEVBQXJCLENBQUMsQ0FBcUIsR0FEbEMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUN2RCxHQUY5QixHQUFHLENBR1QsQ0FBQTtBQUNILENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsT0FBTyxDQVFyQixJQUEwQyxFQUMxQyxHQUF1RjtJQUV2RixPQUFPLGdCQUFBLElBQUksaURBQWUsMkJBQU8sR0FBRyxDQUFDLEVBQUMsQ0FBQTtBQUN4QyxDQUFDO0FBR0Q7O0dBRUc7QUFDSCx1QkFVRSxJQUEwQztBQUMxQyw2REFBNkQ7QUFDN0QsR0FBb0c7SUFFcEcsT0FBTyx1RUFBWSxDQUFDLENBQUMsRUFBRSxDQUNyQixrRUFRTyxDQUFDLENBQUMsRUFBRSxDQUFDLDBCQUFZLENBQUMsQ0FBQyxPQUFPLEVBQXJCLENBQUMsQ0FBcUIsR0FSbEMsa0VBT08sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FQM0Msc0VBQ1csS0FBSyxDQUFDLEVBQUUsc0JBRVAsRUFBRSxHQUFHLEVBQUUsS0FDTixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLGlEQURsQyx3QkFBZSxVQUFVLENBQUMsRUFFNUMsR0FMTixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBTXZGLENBQ3lDLENBQ1QsR0FUOUIsR0FBRyxDQVVULENBQUE7QUFDSCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCwwQkFVRSxJQUEwQztBQUMxQyw2REFBNkQ7QUFDN0QsR0FBcUU7SUFFckUsT0FBTyx1RUFBWSxDQUFDLENBQUMsRUFBRSxDQUNyQixzRUFRVyxDQUFDLENBQUMsRUFBRSxDQUFDLG9FQUE0SCxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBckksa0ZBQUEsMEJBQVksQ0FBQyxDQUFDLE9BQU8sRUFBckIsQ0FBQyxDQUFxQixHQUFnQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBZSxHQVJ0SixrRUFPTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQVAzQyxzRUFDVyxLQUFLLENBQUMsRUFBRSxzQkFFUCxFQUFFLEdBQUcsRUFBRSxLQUNOLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsaURBRGxDLHdCQUFlLFVBQVUsQ0FBQyxFQUU1QyxHQUxOLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQU1wRSxDQUN5QyxDQUMyRyxHQVRsSixHQUFHLENBVVQsQ0FBQTtBQUNILENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxLQUFLLENBUW5CLElBQTBDO0FBQzFDLDZEQUE2RDtBQUM3RCxHQUFzRjtJQUV0RixPQUFPLGNBQUEsSUFBSSxpREFBYSwyQkFBTyxHQUFHLENBQUMsRUFBQyxDQUFBO0FBQ3RDLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxRQUFRLENBUXRCLElBQTBDO0FBQzFDLDZEQUE2RDtBQUM3RCxHQUF1RDtJQUV2RCxPQUFPLGlCQUFBLElBQUksaURBQWdCLDJCQUFPLEdBQUcsQ0FBQyxFQUFDLENBQUE7QUFDekMsQ0FBQztBQUVEOztHQUVHO0FBQ0gsa0NBVUUsSUFBMEM7QUFDMUMsNkRBQTZEO0FBQzdELEdBQW1HO0lBRW5HLE9BQU8sQ0FBMEIsSUFBNEQsRUFBRSxFQUFFLENBQy9GLHNFQUNXLENBQUMsQ0FBQyxFQUFFLENBQUMsbUJBQUEsSUFBSSxFQUFtQixDQUFDLEVBQUUsSUFBSSxDQUFDLEdBRC9DLGNBQVksSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUMwQixDQUFBO0FBQ3BELENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FROUIsSUFBMEM7QUFDMUMsNkRBQTZEO0FBQzdELEdBQXFGO0lBRXJGLE9BQU8seUJBQUEsSUFBSSxpREFBd0IsMkJBQU8sR0FBRyxDQUFDLEVBQUMsQ0FBQTtBQUNqRCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBTTlCLElBQTBDO0lBQzFDLE9BQU8sQ0FBc0MsSUFBMkQsRUFBRSxFQUFFLENBQzFHLENBQUMsS0FBbUIsRUFBRSxFQUFFLENBQUMsbUJBQWtCLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUE7QUFDakUsQ0FBQztBQUVEOztHQUVHO0FBQ0gsK0JBTUUsSUFBMEMsRUFBRSxFQUFNO0lBQ2xELE9BQU8sQ0FBd0IsSUFBeUMsRUFBRSxFQUFFLENBQUMsdUVBQXNCLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBYyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUE3RCxNQUFJLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBaUQsQ0FBQTtBQUM3SSxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLHlCQUF5QixDQU12QyxJQUEwQztJQUMxQyxPQUFPLENBQXlELElBQXFFLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBUSxFQUFFLEdBQVksRUFBRSxFQUFFLENBQUMsc0JBQW9CLElBQUksRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFBO0FBQ3pOLENBQUM7QUFFRDs7R0FFRztBQUNILDRCQVlFLElBQTBDLEVBQzFDLEtBQW1CLEVBQ25CLElBQTJEO0lBRTNELE9BQU8sb0JBQW9CLENBQ3pCLElBQUksRUFDSix3QkFBQSxJQUFJLGdDQUFTLEtBQUssRUFBUyxDQUM1QixDQUFBO0FBQ0gsQ0FBQztBQUVEOztHQUVHO0FBQ0gsd0JBWUUsSUFBMEMsRUFDMUMsSUFBUSxFQUNSLElBQTBDO0lBRTFDLE9BQU8sb0JBQW9CLENBQ3pCLElBQUksRUFDSixrRUFDSyxDQUFDLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FEL0Msd0JBQUEsSUFBSSxFQUFTLElBQUksQ0FBQyxDQUM4QixDQUNqRCxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsb0JBQW9CLENBVzNCLElBQTBDLEVBQzFDLEdBQTJEO0lBRTNELE9BQU8sc0VBRUgsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNyQixtRUFDTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBRGQsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQ1QsR0FKZCxHQUFHLENBS1AsQ0FBQTtBQUNMLENBQUM7QUFFRCxNQUFNLE1BQU0sR0FBRyxPQUFPLEVBQWlCLENBQUE7QUFldkMsTUFBTSxVQUFVLFVBQVU7SUFDeEIsTUFBTSxHQUFHLEdBQW1CLE1BQU0sQ0FBQTtJQUNsQyxPQUFPLEdBQUcsQ0FBQTtBQUNaLENBQUM7QUFlRDs7R0FFRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQXFDLElBQW9CLEVBQUUsR0FBcUI7SUFDM0csT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBSyxFQUFFLEVBQUUsZ0RBQUMsMkJBQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFBO0FBQy9DLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQXFDLElBQW9CLEVBQUUsR0FBc0M7SUFDekgsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBWSxFQUFFLEVBQUUsZ0RBQUMsMkJBQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFBO0FBQ3RELENBQUM7QUFFRCxNQUFNLFVBQVUsVUFBVTtJQUN4QixPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUM7QUFFRCxNQUFNLFVBQVUsT0FBTztJQUNyQixNQUFNLEdBQUcsR0FBeUIsVUFBVSxDQUFBO0lBRTVDLFNBQVMsTUFBTSxDQUtiLElBR29CO1FBRXBCLE9BQU8sdUVBQWdCLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsR0FBekMsR0FBRyxDQUFDLEdBQUcsQ0FBMEMsQ0FBQTtJQUMxRCxDQUFDO0lBRUQsU0FBUyxNQUFNLENBSWIsSUFHcUI7UUFFckIsT0FBTyx1RUFBZ0IsS0FBSyxDQUFDLEVBQUUsQ0FBQyxtRUFBeUIsR0FBRyxDQUFDLEdBQUcsR0FBaEMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQWEsR0FBMUQsR0FBRyxDQUFDLEdBQUcsQ0FBMkQsQ0FBQTtJQUMzRSxDQUFDO0lBRUQsU0FBUyxPQUFPLENBS2QsSUFBb0Q7UUFFcEQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFRLENBQUE7SUFDaEMsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsT0FBTyxFQUFFO1FBQ1AsTUFBTTtRQUNOLE1BQU07S0FDUCxDQUNGLENBQUE7QUFDSCxDQUFDO0FBS0QsTUFBTSxVQUFVLEtBQUssQ0FBYSxFQUF3RDtJQUN4RixPQUFPLENBQUMsS0FBa0IsRUFBRSxFQUFFLGdEQUFDLDBFQUFBLDZFQUFPLEtBQUssRUFBaUIsR0FBWSxFQUFFLENBQUMsQ0FBQSxDQUFBO0FBQzdFLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxNQUFNLENBQWEsS0FBa0IsRUFBRSxFQUF3RDtJQUM3RyxzREFBTywwRUFBQSw2RUFBTyxLQUFLLEVBQWlCLEdBQVksRUFBRSxDQUFDLEVBQUE7QUFDckQsQ0FBQyJ9
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Effect } from "@effect/io/Effect";
|
|
2
|
+
import type { OperationOptionsBase, ProcessErrorArgs, ServiceBusMessage, ServiceBusMessageBatch, ServiceBusReceivedMessage, ServiceBusReceiver, ServiceBusSender } from "@azure/service-bus";
|
|
3
|
+
import { ServiceBusClient } from "@azure/service-bus";
|
|
4
|
+
export declare const LiveServiceBusClient: (url: string) => import("@effect/io/Layer").Layer<never, never, ServiceBusClient>;
|
|
5
|
+
export declare const Sender: import("@fp-ts/data/Context").Tag<ServiceBusSender>;
|
|
6
|
+
export declare function LiveSender(queueName: string): import("@effect/io/Layer").Layer<ServiceBusClient, never, ServiceBusSender>;
|
|
7
|
+
export declare const Receiver: import("@fp-ts/data/Context").Tag<ServiceBusReceiver>;
|
|
8
|
+
export declare function LiveReceiver(queueName: string): import("@effect/io/Layer").Layer<ServiceBusClient, never, ServiceBusReceiver>;
|
|
9
|
+
export declare function sendMessages(messages: ServiceBusMessage | ServiceBusMessage[] | ServiceBusMessageBatch, options?: OperationOptionsBase): import("@effect/io/Effect").Effect<ServiceBusSender, never, void>;
|
|
10
|
+
export declare function subscribe<RMsg, RErr>(hndlr: MessageHandlers<RMsg, RErr>): import("@effect/io/Effect").Effect<import("@effect/io/Scope").Scope | ServiceBusReceiver | RMsg | RErr, never, void>;
|
|
11
|
+
export declare function Subscription<RMsg, RErr>(hndlr: MessageHandlers<RMsg, RErr>): import("@effect/io/Layer").Layer<ServiceBusReceiver | Exclude<RMsg, import("@effect/io/Scope").Scope> | Exclude<RErr, import("@effect/io/Scope").Scope>, never, void>;
|
|
12
|
+
export interface MessageHandlers<RMsg, RErr> {
|
|
13
|
+
/**
|
|
14
|
+
* Handler that processes messages from service bus.
|
|
15
|
+
*
|
|
16
|
+
* @param message - A message received from Service Bus.
|
|
17
|
+
*/
|
|
18
|
+
processMessage(message: ServiceBusReceivedMessage): Effect<RMsg, never, void>;
|
|
19
|
+
/**
|
|
20
|
+
* Handler that processes errors that occur during receiving.
|
|
21
|
+
* @param args - The error and additional context to indicate where
|
|
22
|
+
* the error originated.
|
|
23
|
+
*/
|
|
24
|
+
processError(args: ProcessErrorArgs): Effect<RErr, never, void>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=ServiceBus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceBus.d.ts","sourceRoot":"","sources":["../../_src/services/ServiceBus.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,yBAAyB,EACzB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AASrD,eAAO,MAAM,oBAAoB,QAAS,MAAM,qEAA0C,CAAA;AAa1F,eAAO,MAAM,MAAM,qDAA0B,CAAA;AAE7C,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,+EAE3C;AAcD,eAAO,MAAM,QAAQ,uDAA4B,CAAA;AACjD,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,iFAE7C;AAED,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,GAAG,sBAAsB,EAC1E,OAAO,CAAC,EAAE,oBAAoB,qEAM/B;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,wHAyBvE;AAID,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,yKAE1E;AAED,MAAM,WAAW,eAAe,CAAC,IAAI,EAAE,IAAI;IACzC;;;;OAIG;IACH,cAAc,CAAC,OAAO,EAAE,yBAAyB,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC7E;;;;OAIG;IACH,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;CAChE"}
|