@effect-app/infra 0.7.0 → 0.8.1
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 +19 -0
- package/_cjs/{lib/RequestContext.cjs → RequestContext.cjs} +0 -0
- package/_cjs/{lib/RequestContext.cjs.map → RequestContext.cjs.map} +1 -1
- package/_cjs/{lib/api → api}/authorization.jwt.cjs +1 -1
- package/_cjs/{lib/api → api}/authorization.jwt.cjs.map +1 -1
- package/_cjs/{vendor/Cache/Cache/operations/makeWith.cjs → api/codec.cjs} +16 -13
- package/_cjs/api/codec.cjs.map +1 -0
- package/_cjs/{lib/api → api}/defaultErrorHandler.cjs +1 -1
- package/_cjs/{lib/api → api}/defaultErrorHandler.cjs.map +1 -1
- package/_cjs/{services/memQueue.cjs → api/express/makeJsonSchema.cjs} +42 -22
- package/_cjs/api/express/makeJsonSchema.cjs.map +1 -0
- package/_cjs/api/express/makeOpenApiSpecs.cjs +66 -0
- package/_cjs/api/express/makeOpenApiSpecs.cjs.map +1 -0
- package/_cjs/api/express/schema/jwt.cjs +43 -0
- package/_cjs/api/express/schema/jwt.cjs.map +1 -0
- package/_cjs/api/express/schema/requestHandler.cjs +166 -0
- package/_cjs/api/express/schema/requestHandler.cjs.map +1 -0
- package/_cjs/api/express/schema/routing.cjs +121 -0
- package/_cjs/api/express/schema/routing.cjs.map +1 -0
- package/_cjs/{lib/api → api}/reportError.cjs +5 -5
- package/_cjs/{lib/api → api}/reportError.cjs.map +1 -1
- package/_cjs/{lib/api → api}/routing.cjs +32 -32
- package/_cjs/{lib/api → api}/routing.cjs.map +1 -1
- package/_cjs/{lib/api → api}/setupRequest.cjs +2 -2
- package/_cjs/{lib/api → api}/setupRequest.cjs.map +1 -1
- package/_cjs/{lib/api → api}/util.cjs +0 -0
- package/_cjs/{lib/api → api}/util.cjs.map +1 -1
- package/_cjs/{lib/api → api}/writeDocs.cjs +5 -5
- package/_cjs/{lib/api → api}/writeDocs.cjs.map +1 -1
- package/_cjs/{lib/errorReporter.cjs → errorReporter.cjs} +1 -1
- package/_cjs/{lib/errorReporter.cjs.map → errorReporter.cjs.map} +1 -1
- package/_cjs/errors.cjs +21 -22
- package/_cjs/errors.cjs.map +1 -1
- package/_cjs/{lib/ext → ext}/Array.cjs +1 -1
- package/_cjs/{lib/ext → ext}/Array.cjs.map +1 -1
- package/_cjs/{lib/filter → filter}/types/errors.cjs +0 -0
- package/_cjs/{lib/filter → filter}/types/errors.cjs.map +0 -0
- package/_cjs/{lib/filter → filter}/types/fields.cjs +0 -0
- package/_cjs/{lib/filter → filter}/types/fields.cjs.map +0 -0
- package/_cjs/{lib/filter → filter}/types/index.cjs +0 -0
- package/_cjs/{lib/filter → filter}/types/index.cjs.map +1 -1
- package/_cjs/{lib/filter → filter}/types/path/common.cjs +0 -0
- package/_cjs/{lib/filter → filter}/types/path/common.cjs.map +0 -0
- package/_cjs/{lib/filter → filter}/types/path/eager.cjs +0 -0
- package/_cjs/{lib/filter → filter}/types/path/eager.cjs.map +0 -0
- package/_cjs/{lib/filter → filter}/types/path/index.cjs +0 -0
- package/_cjs/filter/types/path/index.cjs.map +1 -0
- package/_cjs/{lib/filter → filter}/types/utils.cjs +0 -0
- package/_cjs/{lib/filter → filter}/types/utils.cjs.map +0 -0
- package/_cjs/{lib/filter → filter}/types/validator.cjs +0 -0
- package/_cjs/{lib/filter → filter}/types/validator.cjs.map +0 -0
- package/_cjs/{lib/filter.cjs → filter.cjs} +0 -0
- package/_cjs/{lib/filter.cjs.map → filter.cjs.map} +1 -1
- package/_cjs/{lib/instrument.cjs → instrument.cjs} +1 -1
- package/_cjs/{lib/instrument.cjs.map → instrument.cjs.map} +1 -1
- package/_cjs/{lib/rateLimit.cjs → rateLimit.cjs} +1 -1
- package/_cjs/{lib/rateLimit.cjs.map → rateLimit.cjs.map} +1 -1
- package/_cjs/services/Emailer/Sendgrid.cjs +1 -1
- package/_cjs/services/Emailer/fake.cjs +1 -1
- package/_cjs/services/Repository.cjs +1 -1
- package/_cjs/services/Store/Cosmos.cjs +2 -2
- package/_cjs/services/Store/Cosmos.test.cjs +2 -2
- package/_cjs/services/Store/Disk.cjs +2 -2
- package/_cjs/services/Store/Memory.cjs +1 -1
- package/_cjs/services/Store/Redis.cjs +1 -1
- package/_cjs/services/Store/codeFilter.test.cjs +2 -2
- package/_cjs/services/Store/index.cjs +1 -1
- package/_cjs/services/Store/service.cjs +1 -1
- package/_cjs/services/Store/utils.cjs +1 -1
- package/_cjs/services/simpledb/cosmosdb.cjs +98 -0
- package/_cjs/services/simpledb/cosmosdb.cjs.map +1 -0
- package/_cjs/services/simpledb/diskdb.cjs +118 -0
- package/_cjs/services/simpledb/diskdb.cjs.map +1 -0
- package/_cjs/services/simpledb/fileutil.cjs +36 -0
- package/_cjs/services/simpledb/fileutil.cjs.map +1 -0
- package/_cjs/{vendor/Cache/Cache/_internal/CacheState.cjs → services/simpledb/index.cjs} +31 -24
- package/_cjs/services/simpledb/index.cjs.map +1 -0
- package/_cjs/services/simpledb/memdb.cjs +74 -0
- package/_cjs/services/simpledb/memdb.cjs.map +1 -0
- package/_cjs/services/simpledb/mongodb.cjs +86 -0
- package/_cjs/services/simpledb/mongodb.cjs.map +1 -0
- package/_cjs/services/simpledb/redisdb.cjs +120 -0
- package/_cjs/services/simpledb/redisdb.cjs.map +1 -0
- package/_cjs/services/simpledb/shared.cjs +80 -0
- package/_cjs/services/simpledb/shared.cjs.map +1 -0
- package/_cjs/services/simpledb/simpledb.cjs +77 -0
- package/_cjs/services/simpledb/simpledb.cjs.map +1 -0
- package/_src/{lib/RequestContext.ts → RequestContext.ts} +0 -0
- package/_src/_global.ext.ts +5 -5
- package/_src/api/app.ts.bak +125 -0
- package/_src/{lib/api → api}/authorization.jwt.ts +1 -1
- package/_src/api/codec.ts +27 -0
- package/_src/{lib/api → api}/defaultErrorHandler.ts +1 -1
- package/_src/api/errors.ts.bak +20 -0
- package/_src/api/express/makeJsonSchema.ts +49 -0
- package/_src/api/express/makeOpenApiSpecs.ts +60 -0
- package/_src/api/express/routing.ts.bak +460 -0
- package/_src/api/express/schema/jwt.ts +38 -0
- package/_src/api/express/schema/requestHandler.ts +360 -0
- package/_src/api/express/schema/routing.ts +202 -0
- package/_src/{lib/api → api}/reportError.ts +3 -3
- package/_src/{lib/api → api}/routing.ts +7 -12
- package/_src/{lib/api → api}/setupRequest.ts +0 -0
- package/_src/{lib/api → api}/util.ts +0 -0
- package/_src/{lib/api → api}/writeDocs.ts +4 -5
- package/_src/{lib/errorReporter.ts → errorReporter.ts} +1 -1
- package/_src/errors.ts +12 -3
- package/_src/{lib/ext → ext}/Array.ts +1 -1
- package/_src/{lib/filter → filter}/types/errors.ts +0 -0
- package/_src/{lib/filter → filter}/types/fields.ts +0 -0
- package/_src/{lib/filter → filter}/types/index.ts +0 -0
- package/_src/{lib/filter → filter}/types/path/common.ts +0 -0
- package/_src/{lib/filter → filter}/types/path/eager.ts +0 -0
- package/_src/{lib/filter → filter}/types/path/index.ts +0 -0
- package/_src/{lib/filter → filter}/types/utils.ts +0 -0
- package/_src/{lib/filter → filter}/types/validator.ts +0 -0
- package/_src/{lib/filter.ts → filter.ts} +1 -1
- package/_src/{lib/instrument.ts → instrument.ts} +0 -0
- package/_src/{lib/rateLimit.ts → rateLimit.ts} +0 -0
- package/_src/services/Emailer/service.ts +1 -1
- package/_src/services/Repository.ts +1 -1
- package/_src/services/Store/Cosmos.test.ts +1 -1
- package/_src/services/Store/Disk.ts +1 -1
- package/_src/services/Store/codeFilter.test.ts +1 -1
- package/_src/services/simpledb/cosmosdb.ts +134 -0
- package/_src/services/simpledb/diskdb.ts +158 -0
- package/_src/services/simpledb/fileutil.ts +28 -0
- package/_src/services/simpledb/index.ts +6 -0
- package/_src/services/simpledb/memdb.ts +79 -0
- package/_src/services/simpledb/mongodb.ts +99 -0
- package/_src/services/simpledb/redisdb.ts +182 -0
- package/_src/services/simpledb/shared.ts +117 -0
- package/_src/services/simpledb/simpledb.ts +117 -0
- package/dist/{lib/RequestContext.d.ts → RequestContext.d.ts} +1 -1
- package/dist/RequestContext.d.ts.map +1 -0
- package/dist/RequestContext.js +52 -0
- package/dist/_global.ext.d.ts +5 -5
- package/dist/_global.ext.d.ts.map +1 -1
- package/dist/{lib/api → api}/authorization.jwt.d.ts +1 -1
- package/dist/api/authorization.jwt.d.ts.map +1 -0
- package/dist/{lib/api → api}/authorization.jwt.js +2 -2
- package/dist/api/codec.d.ts +7 -0
- package/dist/api/codec.d.ts.map +1 -0
- package/dist/api/codec.js +19 -0
- package/dist/{lib/api → api}/defaultErrorHandler.d.ts +1 -1
- package/dist/api/defaultErrorHandler.d.ts.map +1 -0
- package/dist/{lib/api → api}/defaultErrorHandler.js +2 -2
- package/dist/api/express/makeJsonSchema.d.ts +30 -0
- package/dist/api/express/makeJsonSchema.d.ts.map +1 -0
- package/dist/api/express/makeJsonSchema.js +40 -0
- package/dist/api/express/makeOpenApiSpecs.d.ts +55 -0
- package/dist/api/express/makeOpenApiSpecs.d.ts.map +1 -0
- package/dist/api/express/makeOpenApiSpecs.js +56 -0
- package/dist/api/express/schema/jwt.d.ts +5 -0
- package/dist/api/express/schema/jwt.d.ts.map +1 -0
- package/dist/api/express/schema/jwt.js +32 -0
- package/dist/api/express/schema/requestHandler.d.ts +71 -0
- package/dist/api/express/schema/requestHandler.d.ts.map +1 -0
- package/dist/api/express/schema/requestHandler.js +140 -0
- package/dist/api/express/schema/routing.d.ts +45 -0
- package/dist/api/express/schema/routing.d.ts.map +1 -0
- package/dist/api/express/schema/routing.js +95 -0
- package/dist/{lib/api → api}/reportError.d.ts +4 -4
- package/dist/api/reportError.d.ts.map +1 -0
- package/dist/{lib/api → api}/reportError.js +6 -6
- package/dist/{lib/api → api}/routing.d.ts +7 -7
- package/dist/api/routing.d.ts.map +1 -0
- package/dist/api/routing.js +249 -0
- package/dist/{lib/api → api}/setupRequest.d.ts +2 -2
- package/dist/api/setupRequest.d.ts.map +1 -0
- package/dist/{lib/api → api}/setupRequest.js +3 -3
- package/dist/{lib/api → api}/util.d.ts +0 -0
- package/dist/api/util.d.ts.map +1 -0
- package/dist/api/util.js +14 -0
- package/dist/{lib/api → api}/writeDocs.d.ts +1 -1
- package/dist/api/writeDocs.d.ts.map +1 -0
- package/dist/api/writeDocs.js +23 -0
- package/dist/{lib/errorReporter.d.ts → errorReporter.d.ts} +1 -1
- package/dist/errorReporter.d.ts.map +1 -0
- package/dist/errorReporter.js +45 -0
- package/dist/errors.d.ts +11 -2
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +17 -3
- package/dist/{lib/ext → ext}/Array.d.ts +3 -3
- package/dist/ext/Array.d.ts.map +1 -0
- package/dist/{lib/ext → ext}/Array.js +2 -2
- package/dist/{lib/filter → filter}/types/errors.d.ts +0 -0
- package/dist/filter/types/errors.d.ts.map +1 -0
- package/dist/{lib/filter → filter}/types/errors.js +1 -1
- package/dist/{lib/filter → filter}/types/fields.d.ts +0 -0
- package/dist/filter/types/fields.d.ts.map +1 -0
- package/dist/{lib/filter → filter}/types/fields.js +1 -1
- package/dist/{lib/filter → filter}/types/index.d.ts +0 -0
- package/dist/filter/types/index.d.ts.map +1 -0
- package/dist/{lib/filter → filter}/types/index.js +1 -1
- package/dist/{lib/filter → filter}/types/path/common.d.ts +0 -0
- package/dist/filter/types/path/common.d.ts.map +1 -0
- package/dist/{lib/filter → filter}/types/path/common.js +1 -1
- package/dist/{lib/filter → filter}/types/path/eager.d.ts +0 -0
- package/dist/filter/types/path/eager.d.ts.map +1 -0
- package/dist/{lib/filter → filter}/types/path/eager.js +1 -1
- package/dist/{lib/filter → filter}/types/path/index.d.ts +0 -0
- package/dist/filter/types/path/index.d.ts.map +1 -0
- package/dist/{lib/filter → filter}/types/path/index.js +1 -1
- package/dist/{lib/filter → filter}/types/utils.d.ts +0 -0
- package/dist/filter/types/utils.d.ts.map +1 -0
- package/dist/{lib/filter → filter}/types/utils.js +1 -1
- package/dist/{lib/filter → filter}/types/validator.d.ts +0 -0
- package/dist/filter/types/validator.d.ts.map +1 -0
- package/dist/{lib/filter → filter}/types/validator.js +1 -1
- package/dist/{lib/filter.d.ts → filter.d.ts} +9 -9
- package/dist/filter.d.ts.map +1 -0
- package/dist/filter.js +171 -0
- package/dist/{lib/instrument.d.ts → instrument.d.ts} +1 -1
- package/dist/instrument.d.ts.map +1 -0
- package/dist/{lib/instrument.js → instrument.js} +2 -2
- package/dist/{lib/rateLimit.d.ts → rateLimit.d.ts} +5 -5
- package/dist/rateLimit.d.ts.map +1 -0
- package/dist/{lib/rateLimit.js → rateLimit.js} +2 -2
- package/dist/services/Emailer/Sendgrid.js +1 -1
- package/dist/services/Emailer/fake.js +1 -1
- package/dist/services/Emailer/service.d.ts +1 -1
- package/dist/services/Emailer/service.d.ts.map +1 -1
- package/dist/services/Repository.d.ts +1 -1
- package/dist/services/Repository.d.ts.map +1 -1
- package/dist/services/Repository.js +1 -1
- package/dist/services/Store/Cosmos.js +2 -2
- package/dist/services/Store/Disk.js +3 -3
- package/dist/services/Store/Memory.js +1 -1
- package/dist/services/Store/Redis.js +1 -1
- package/dist/services/Store/index.js +1 -1
- package/dist/services/Store/service.js +1 -1
- package/dist/services/Store/utils.js +1 -1
- package/dist/services/simpledb/cosmosdb.d.ts +13 -0
- package/dist/services/simpledb/cosmosdb.d.ts.map +1 -0
- package/dist/services/simpledb/cosmosdb.js +88 -0
- package/dist/services/simpledb/diskdb.d.ts +12 -0
- package/dist/services/simpledb/diskdb.d.ts.map +1 -0
- package/dist/services/simpledb/diskdb.js +96 -0
- package/dist/services/simpledb/fileutil.d.ts +7 -0
- package/dist/services/simpledb/fileutil.d.ts.map +1 -0
- package/dist/services/simpledb/fileutil.js +25 -0
- package/dist/services/simpledb/index.d.ts +7 -0
- package/dist/services/simpledb/index.d.ts.map +1 -0
- package/dist/services/simpledb/index.js +7 -0
- package/dist/services/simpledb/memdb.d.ts +12 -0
- package/dist/services/simpledb/memdb.d.ts.map +1 -0
- package/dist/services/simpledb/memdb.js +55 -0
- package/dist/services/simpledb/mongodb.d.ts +13 -0
- package/dist/services/simpledb/mongodb.d.ts.map +1 -0
- package/dist/services/simpledb/mongodb.js +55 -0
- package/dist/services/simpledb/redisdb.d.ts +25 -0
- package/dist/services/simpledb/redisdb.d.ts.map +1 -0
- package/dist/services/simpledb/redisdb.js +105 -0
- package/dist/services/simpledb/shared.d.ts +63 -0
- package/dist/services/simpledb/shared.d.ts.map +1 -0
- package/dist/services/simpledb/shared.js +65 -0
- package/dist/services/simpledb/simpledb.d.ts +23 -0
- package/dist/services/simpledb/simpledb.d.ts.map +1 -0
- package/dist/services/simpledb/simpledb.js +56 -0
- package/package.json +216 -328
- package/_cjs/ext.cjs +0 -4
- package/_cjs/ext.cjs.map +0 -1
- package/_cjs/lib/fileUtil.cjs +0 -36
- package/_cjs/lib/fileUtil.cjs.map +0 -1
- package/_cjs/lib/filter/types/path/index.cjs.map +0 -1
- package/_cjs/services/CUPS/service.cjs +0 -15
- package/_cjs/services/CUPS/service.cjs.map +0 -1
- package/_cjs/services/CUPS.cjs +0 -113
- package/_cjs/services/CUPS.cjs.map +0 -1
- package/_cjs/services/Cache.cjs +0 -39
- package/_cjs/services/Cache.cjs.map +0 -1
- package/_cjs/services/ServiceBus.cjs +0 -69
- package/_cjs/services/ServiceBus.cjs.map +0 -1
- package/_cjs/services/memQueue.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/_internal/AtomicBoolean.cjs +0 -14
- package/_cjs/vendor/Cache/Cache/_internal/AtomicBoolean.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/_internal/AtomicNumber.cjs +0 -29
- package/_cjs/vendor/Cache/Cache/_internal/AtomicNumber.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/_internal/AtomicReference.cjs +0 -32
- package/_cjs/vendor/Cache/Cache/_internal/AtomicReference.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/_internal/CacheInternal.cjs +0 -266
- package/_cjs/vendor/Cache/Cache/_internal/CacheInternal.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/_internal/CacheState.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/_internal/KeySet.cjs +0 -67
- package/_cjs/vendor/Cache/Cache/_internal/KeySet.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/_internal/MapKey.cjs +0 -44
- package/_cjs/vendor/Cache/Cache/_internal/MapKey.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/_internal/MapValue.cjs +0 -33
- package/_cjs/vendor/Cache/Cache/_internal/MapValue.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/definition.cjs +0 -13
- package/_cjs/vendor/Cache/Cache/definition.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/operations/make.cjs +0 -20
- package/_cjs/vendor/Cache/Cache/operations/make.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/operations/makeWith.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache/operations.cjs +0 -28
- package/_cjs/vendor/Cache/Cache/operations.cjs.map +0 -1
- package/_cjs/vendor/Cache/Cache.cjs +0 -28
- package/_cjs/vendor/Cache/Cache.cjs.map +0 -1
- package/_cjs/vendor/Cache/CacheStats/definition.cjs +0 -13
- package/_cjs/vendor/Cache/CacheStats/definition.cjs.map +0 -1
- package/_cjs/vendor/Cache/CacheStats.cjs +0 -17
- package/_cjs/vendor/Cache/CacheStats.cjs.map +0 -1
- package/_cjs/vendor/Cache/EntryStats/definition.cjs +0 -11
- package/_cjs/vendor/Cache/EntryStats/definition.cjs.map +0 -1
- package/_cjs/vendor/Cache/EntryStats.cjs +0 -17
- package/_cjs/vendor/Cache/EntryStats.cjs.map +0 -1
- package/_cjs/vendor/Cache/Lookup/definition.cjs +0 -6
- package/_cjs/vendor/Cache/Lookup/definition.cjs.map +0 -1
- package/_cjs/vendor/Cache/Lookup.cjs +0 -17
- package/_cjs/vendor/Cache/Lookup.cjs.map +0 -1
- package/_cjs/vendor/Cache/index.cjs +0 -17
- package/_cjs/vendor/Cache/index.cjs.map +0 -1
- package/_src/ext.ts +0 -1
- package/_src/lib/fileUtil.ts +0 -56
- package/_src/services/CUPS/service.ts +0 -16
- package/_src/services/CUPS.ts +0 -105
- package/_src/services/Cache.ts +0 -45
- package/_src/services/ServiceBus.ts +0 -111
- package/_src/services/memQueue.ts +0 -30
- package/_src/vendor/Cache/Cache/_internal/AtomicBoolean.ts +0 -7
- package/_src/vendor/Cache/Cache/_internal/AtomicNumber.ts +0 -28
- package/_src/vendor/Cache/Cache/_internal/AtomicReference.ts +0 -30
- package/_src/vendor/Cache/Cache/_internal/CacheInternal.ts +0 -293
- package/_src/vendor/Cache/Cache/_internal/CacheState.ts +0 -56
- package/_src/vendor/Cache/Cache/_internal/KeySet.ts +0 -58
- package/_src/vendor/Cache/Cache/_internal/MapKey.ts +0 -43
- package/_src/vendor/Cache/Cache/_internal/MapValue.ts +0 -39
- package/_src/vendor/Cache/Cache/definition.ts +0 -112
- package/_src/vendor/Cache/Cache/operations/make.ts +0 -17
- package/_src/vendor/Cache/Cache/operations/makeWith.ts +0 -32
- package/_src/vendor/Cache/Cache/operations.ts +0 -4
- package/_src/vendor/Cache/Cache.ts +0 -4
- package/_src/vendor/Cache/CacheStats/definition.ts +0 -23
- package/_src/vendor/Cache/CacheStats.ts +0 -3
- package/_src/vendor/Cache/EntryStats/definition.ts +0 -19
- package/_src/vendor/Cache/EntryStats.ts +0 -3
- package/_src/vendor/Cache/Lookup/definition.ts +0 -15
- package/_src/vendor/Cache/Lookup.ts +0 -3
- package/_src/vendor/Cache/global.ts.bak +0 -23
- package/_src/vendor/Cache/index.ts +0 -4
- package/dist/ext.d.ts +0 -2
- package/dist/ext.d.ts.map +0 -1
- package/dist/ext.js +0 -2
- package/dist/lib/RequestContext.d.ts.map +0 -1
- package/dist/lib/RequestContext.js +0 -52
- package/dist/lib/api/authorization.jwt.d.ts.map +0 -1
- package/dist/lib/api/defaultErrorHandler.d.ts.map +0 -1
- package/dist/lib/api/reportError.d.ts.map +0 -1
- package/dist/lib/api/routing.d.ts.map +0 -1
- package/dist/lib/api/routing.js +0 -248
- package/dist/lib/api/setupRequest.d.ts.map +0 -1
- package/dist/lib/api/util.d.ts.map +0 -1
- package/dist/lib/api/util.js +0 -14
- package/dist/lib/api/writeDocs.d.ts.map +0 -1
- package/dist/lib/api/writeDocs.js +0 -23
- package/dist/lib/errorReporter.d.ts.map +0 -1
- package/dist/lib/errorReporter.js +0 -45
- package/dist/lib/ext/Array.d.ts.map +0 -1
- package/dist/lib/fileUtil.d.ts +0 -22
- package/dist/lib/fileUtil.d.ts.map +0 -1
- package/dist/lib/fileUtil.js +0 -23
- package/dist/lib/filter/types/errors.d.ts.map +0 -1
- package/dist/lib/filter/types/fields.d.ts.map +0 -1
- package/dist/lib/filter/types/index.d.ts.map +0 -1
- package/dist/lib/filter/types/path/common.d.ts.map +0 -1
- package/dist/lib/filter/types/path/eager.d.ts.map +0 -1
- package/dist/lib/filter/types/path/index.d.ts.map +0 -1
- package/dist/lib/filter/types/utils.d.ts.map +0 -1
- package/dist/lib/filter/types/validator.d.ts.map +0 -1
- package/dist/lib/filter.d.ts.map +0 -1
- package/dist/lib/filter.js +0 -171
- package/dist/lib/instrument.d.ts.map +0 -1
- package/dist/lib/rateLimit.d.ts.map +0 -1
- package/dist/services/CUPS/service.d.ts +0 -19
- package/dist/services/CUPS/service.d.ts.map +0 -1
- package/dist/services/CUPS/service.js +0 -5
- package/dist/services/CUPS.d.ts +0 -10
- package/dist/services/CUPS.d.ts.map +0 -1
- package/dist/services/CUPS.js +0 -89
- package/dist/services/Cache.d.ts +0 -28
- package/dist/services/Cache.d.ts.map +0 -1
- package/dist/services/Cache.js +0 -28
- package/dist/services/ServiceBus.d.ts +0 -26
- package/dist/services/ServiceBus.d.ts.map +0 -1
- package/dist/services/ServiceBus.js +0 -53
- package/dist/services/memQueue.d.ts +0 -18
- package/dist/services/memQueue.d.ts.map +0 -1
- package/dist/services/memQueue.js +0 -24
- package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.d.ts +0 -5
- package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/_internal/AtomicBoolean.js +0 -7
- package/dist/vendor/Cache/Cache/_internal/AtomicNumber.d.ts +0 -8
- package/dist/vendor/Cache/Cache/_internal/AtomicNumber.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/_internal/AtomicNumber.js +0 -22
- package/dist/vendor/Cache/Cache/_internal/AtomicReference.d.ts +0 -10
- package/dist/vendor/Cache/Cache/_internal/AtomicReference.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/_internal/AtomicReference.js +0 -25
- package/dist/vendor/Cache/Cache/_internal/CacheInternal.d.ts +0 -51
- package/dist/vendor/Cache/Cache/_internal/CacheInternal.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/_internal/CacheInternal.js +0 -253
- package/dist/vendor/Cache/Cache/_internal/CacheState.d.ts +0 -33
- package/dist/vendor/Cache/Cache/_internal/CacheState.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/_internal/CacheState.js +0 -21
- package/dist/vendor/Cache/Cache/_internal/KeySet.d.ts +0 -20
- package/dist/vendor/Cache/Cache/_internal/KeySet.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/_internal/KeySet.js +0 -61
- package/dist/vendor/Cache/Cache/_internal/MapKey.d.ts +0 -24
- package/dist/vendor/Cache/Cache/_internal/MapKey.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/_internal/MapKey.js +0 -37
- package/dist/vendor/Cache/Cache/_internal/MapValue.d.ts +0 -32
- package/dist/vendor/Cache/Cache/_internal/MapValue.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/_internal/MapValue.js +0 -24
- package/dist/vendor/Cache/Cache/definition.d.ts +0 -100
- package/dist/vendor/Cache/Cache/definition.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/definition.js +0 -5
- package/dist/vendor/Cache/Cache/operations/make.d.ts +0 -12
- package/dist/vendor/Cache/Cache/operations/make.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/operations/make.js +0 -12
- package/dist/vendor/Cache/Cache/operations/makeWith.d.ts +0 -14
- package/dist/vendor/Cache/Cache/operations/makeWith.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/operations/makeWith.js +0 -15
- package/dist/vendor/Cache/Cache/operations.d.ts +0 -3
- package/dist/vendor/Cache/Cache/operations.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache/operations.js +0 -4
- package/dist/vendor/Cache/Cache.d.ts +0 -3
- package/dist/vendor/Cache/Cache.d.ts.map +0 -1
- package/dist/vendor/Cache/Cache.js +0 -4
- package/dist/vendor/Cache/CacheStats/definition.d.ts +0 -19
- package/dist/vendor/Cache/CacheStats/definition.d.ts.map +0 -1
- package/dist/vendor/Cache/CacheStats/definition.js +0 -6
- package/dist/vendor/Cache/CacheStats.d.ts +0 -2
- package/dist/vendor/Cache/CacheStats.d.ts.map +0 -1
- package/dist/vendor/Cache/CacheStats.js +0 -3
- package/dist/vendor/Cache/EntryStats/definition.d.ts +0 -17
- package/dist/vendor/Cache/EntryStats/definition.d.ts.map +0 -1
- package/dist/vendor/Cache/EntryStats/definition.js +0 -4
- package/dist/vendor/Cache/EntryStats.d.ts +0 -2
- package/dist/vendor/Cache/EntryStats.d.ts.map +0 -1
- package/dist/vendor/Cache/EntryStats.js +0 -3
- package/dist/vendor/Cache/Lookup/definition.d.ts +0 -17
- package/dist/vendor/Cache/Lookup/definition.d.ts.map +0 -1
- package/dist/vendor/Cache/Lookup/definition.js +0 -2
- package/dist/vendor/Cache/Lookup.d.ts +0 -2
- package/dist/vendor/Cache/Lookup.d.ts.map +0 -1
- package/dist/vendor/Cache/Lookup.js +0 -3
- package/dist/vendor/Cache/index.d.ts +0 -5
- package/dist/vendor/Cache/index.d.ts.map +0 -1
- package/dist/vendor/Cache/index.js +0 -5
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"definition.cjs","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var _definition = require("./Lookup/definition.cjs");
|
|
7
|
-
Object.keys(_definition).forEach(function (key) {
|
|
8
|
-
if (key === "default" || key === "__esModule") return;
|
|
9
|
-
if (key in exports && exports[key] === _definition[key]) return;
|
|
10
|
-
Object.defineProperty(exports, key, {
|
|
11
|
-
enumerable: true,
|
|
12
|
-
get: function () {
|
|
13
|
-
return _definition[key];
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
});
|
|
17
|
-
//# sourceMappingURL=Lookup.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Lookup.cjs","mappings":";;;;;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA","names":[],"sourceRoot":"","sources":["../../../_src/vendor/Cache/Lookup.ts"],"sourcesContent":[null]}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.lookup = exports.entryStats = exports.cacheStats = exports.cache = void 0;
|
|
7
|
-
var _cache = _interopRequireWildcard(require("./Cache.cjs"));
|
|
8
|
-
exports.cache = _cache;
|
|
9
|
-
var _cacheStats = _interopRequireWildcard(require("./CacheStats.cjs"));
|
|
10
|
-
exports.cacheStats = _cacheStats;
|
|
11
|
-
var _entryStats = _interopRequireWildcard(require("./EntryStats.cjs"));
|
|
12
|
-
exports.entryStats = _entryStats;
|
|
13
|
-
var _lookup = _interopRequireWildcard(require("./Lookup.cjs"));
|
|
14
|
-
exports.lookup = _lookup;
|
|
15
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
16
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
17
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
|
package/_src/ext.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import "./lib/ext/Array.js"
|
package/_src/lib/fileUtil.ts
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import crypto from "crypto"
|
|
2
|
-
import type { Abortable } from "events"
|
|
3
|
-
import type { Mode, ObjectEncodingOptions, OpenMode } from "fs"
|
|
4
|
-
import fs from "fs/promises"
|
|
5
|
-
import os from "os"
|
|
6
|
-
import path from "path"
|
|
7
|
-
import type internal from "stream"
|
|
8
|
-
|
|
9
|
-
export function readFile(fileName: string) {
|
|
10
|
-
return Effect.tryPromise(() => fs.readFile(fileName))
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export function createReadableStream(fileName: string) {
|
|
14
|
-
return openFile(fileName)
|
|
15
|
-
.map(file => file.createReadStream())
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function openFile(fileName: string) {
|
|
19
|
-
return Effect.tryPromise(() => fs.open(fileName)).acquireRelease(f => Effect.promise(() => f.close()))
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export function tempFile(
|
|
23
|
-
folder: string
|
|
24
|
-
) {
|
|
25
|
-
return (prefix: string) => (data: Data, options?: Options) => tempFile_(folder, prefix, data, options)
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
type Data =
|
|
29
|
-
| string
|
|
30
|
-
| NodeJS.ArrayBufferView
|
|
31
|
-
| Iterable<string | NodeJS.ArrayBufferView>
|
|
32
|
-
| AsyncIterable<string | NodeJS.ArrayBufferView>
|
|
33
|
-
| internal.Stream
|
|
34
|
-
|
|
35
|
-
type Options =
|
|
36
|
-
| (ObjectEncodingOptions & {
|
|
37
|
-
mode?: Mode | undefined
|
|
38
|
-
flag?: OpenMode | undefined
|
|
39
|
-
} & Abortable)
|
|
40
|
-
| BufferEncoding
|
|
41
|
-
| null
|
|
42
|
-
export function tempFile_(
|
|
43
|
-
folder: string,
|
|
44
|
-
prefix: string,
|
|
45
|
-
data: Data,
|
|
46
|
-
options?: Options
|
|
47
|
-
) {
|
|
48
|
-
return Effect(() => path.join(os.tmpdir(), folder, `${prefix}-` + crypto.randomUUID()))
|
|
49
|
-
.flatMap(fp =>
|
|
50
|
-
Effect.tryPromise(() => fs.writeFile(fp, data, options))
|
|
51
|
-
.map(_ => fp)
|
|
52
|
-
.acquireRelease(
|
|
53
|
-
p => Effect.promise(() => fs.unlink(p))
|
|
54
|
-
)
|
|
55
|
-
)
|
|
56
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export const PrinterId = ReasonableString
|
|
2
|
-
export type PrinterId = ReasonableString
|
|
3
|
-
|
|
4
|
-
export interface CUPS {
|
|
5
|
-
print: (buffer: ArrayBuffer, printerId: PrinterId, ...options: string[]) => Effect<never, unknown, {
|
|
6
|
-
stdout: string
|
|
7
|
-
stderr: string
|
|
8
|
-
}>
|
|
9
|
-
getAvailablePrinters: Effect<never, unknown, ReasonableString[]>
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* @tsplus type CUPS.Ops
|
|
14
|
-
*/
|
|
15
|
-
export interface CUPSOps extends Tag<CUPS> {}
|
|
16
|
-
export const CUPS: CUPSOps = Tag<CUPS>()
|
package/_src/services/CUPS.ts
DELETED
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import cp from "child_process"
|
|
2
|
-
import util from "util"
|
|
3
|
-
import { tempFile } from "../lib/fileUtil.js"
|
|
4
|
-
|
|
5
|
-
import { isTruthy } from "@effect-app/core/utils"
|
|
6
|
-
import { ReasonableString } from "@effect-app/schema"
|
|
7
|
-
import { Effect } from "@effect/io/Effect"
|
|
8
|
-
import fs from "fs"
|
|
9
|
-
import os from "os"
|
|
10
|
-
import path from "path"
|
|
11
|
-
import type { PrinterId } from "./CUPS/service.js"
|
|
12
|
-
import { CUPS } from "./CUPS/service.js"
|
|
13
|
-
|
|
14
|
-
export * from "./CUPS/service.js"
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* @tsplus static CUPS.Ops Live
|
|
18
|
-
*/
|
|
19
|
-
export function LiveCUPS(cupsServer?: URL) {
|
|
20
|
-
return makeCUPS(cupsServer).toLayer(CUPS)
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
function makeCUPS(cupsServer?: URL) {
|
|
24
|
-
return Effect(() => {
|
|
25
|
-
function print_(buffer: ArrayBuffer, printerId: PrinterId, ...options: string[]) {
|
|
26
|
-
const print = printBuffer({
|
|
27
|
-
id: printerId,
|
|
28
|
-
url: cupsServer
|
|
29
|
-
}, options)
|
|
30
|
-
return print(buffer)
|
|
31
|
-
}
|
|
32
|
-
return {
|
|
33
|
-
print: print_,
|
|
34
|
-
getAvailablePrinters: getAvailablePrinters(cupsServer?.host)
|
|
35
|
-
}
|
|
36
|
-
})
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
const exec_ = util.promisify(cp.exec)
|
|
40
|
-
const exec = (command: string) =>
|
|
41
|
-
Effect.logDebug(`Executing: ${command}`)
|
|
42
|
-
> Effect.tryPromise(() => exec_(command))
|
|
43
|
-
.tap(r => (Effect.logDebug(`Executed`).logAnnotate("result", r.$$.pretty)))
|
|
44
|
-
type PrinterConfig = { url?: URL; id: string }
|
|
45
|
-
|
|
46
|
-
function printFile(printer: PrinterConfig | undefined, options: string[]) {
|
|
47
|
-
return (filePath: string) => printFile_(filePath, printer, options)
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
function printFile_(filePath: string, printer: PrinterConfig | undefined, options: string[]) {
|
|
51
|
-
return exec(["lp", ...buildPrintArgs(filePath, printer, options)].join(" "))
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
function* buildPrintArgs(filePath: string, printer: PrinterConfig | undefined, options: string[]) {
|
|
55
|
-
if (printer) {
|
|
56
|
-
if (printer.url) {
|
|
57
|
-
yield `-h ${printer.url.host}`
|
|
58
|
-
if (printer.url.username) {
|
|
59
|
-
yield `-U ${printer.url.username}`
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
yield `-d "${printer.id}"`
|
|
63
|
-
for (const o of options) {
|
|
64
|
-
yield `-o ${o}`
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
yield `"${filePath}"`
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
export const prepareTempDir = Effect(() => {
|
|
71
|
-
// TODO
|
|
72
|
-
try {
|
|
73
|
-
fs.mkdirSync(path.join(os.tmpdir(), "effect-ts-app"))
|
|
74
|
-
} catch (err) {
|
|
75
|
-
if (`${err}`.includes("EEXIST")) {
|
|
76
|
-
return
|
|
77
|
-
}
|
|
78
|
-
throw err
|
|
79
|
-
}
|
|
80
|
-
})
|
|
81
|
-
|
|
82
|
-
const makeTempFile = tempFile("effect-ts-app")
|
|
83
|
-
const makePrintJobTempFile = makeTempFile("print-job")
|
|
84
|
-
|
|
85
|
-
function printBuffer(printer: PrinterConfig, options: string[]) {
|
|
86
|
-
return (buffer: ArrayBuffer) =>
|
|
87
|
-
makePrintJobTempFile(Buffer.from(buffer))
|
|
88
|
-
.flatMapScoped(printFile(printer, options))
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
function getAvailablePrinters(host?: string) {
|
|
92
|
-
return Do($ => {
|
|
93
|
-
const { stdout } = $(exec(["lpstat", ...buildListArgs({ host }), "-s"].join(" ")))
|
|
94
|
-
return [...stdout.matchAll(/device for (\w+):/g)]
|
|
95
|
-
.map(_ => _[1])
|
|
96
|
-
.filter(isTruthy)
|
|
97
|
-
.map(ReasonableString)
|
|
98
|
-
})
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
function* buildListArgs(config?: { host?: string }) {
|
|
102
|
-
if (config?.host) {
|
|
103
|
-
yield `-h ${config.host}`
|
|
104
|
-
}
|
|
105
|
-
}
|
package/_src/services/Cache.ts
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import type { Cache as _Cache } from "../vendor/Cache/Cache.js"
|
|
2
|
-
import { make as _make } from "../vendor/Cache/Cache.js"
|
|
3
|
-
import type { CacheState } from "../vendor/Cache/Cache/_internal/CacheState.js"
|
|
4
|
-
import type { Lookup } from "../vendor/Cache/Lookup.js"
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* @tsplus type ets/cache/Cache
|
|
8
|
-
*/
|
|
9
|
-
export interface Cache<Key, Error, Value> extends _Cache<Key, Error, Value> {}
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* @tsplus type ets/cache/CacheOps
|
|
13
|
-
*/
|
|
14
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
|
|
15
|
-
export interface CacheOps {}
|
|
16
|
-
|
|
17
|
-
export const Cache: CacheOps = {}
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* @tsplus static ets/cache/CacheOps make
|
|
21
|
-
*/
|
|
22
|
-
export function make<Key, Environment, Error, Value>(
|
|
23
|
-
capacity: number,
|
|
24
|
-
duration: DUR,
|
|
25
|
-
lookup: Lookup<Key, Environment, Error, Value>
|
|
26
|
-
) {
|
|
27
|
-
return _make(capacity, duration, lookup) as Effect<Environment, never, Cache<Key, Error, Value>>
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* @tsplus getter ets/cache/Cache results
|
|
32
|
-
*/
|
|
33
|
-
export function results<Key, Error, Value>(
|
|
34
|
-
self: Cache<Key, Error, Value>
|
|
35
|
-
): Effect<never, never, Chunk<[Key, Exit<Error, Value>]>> {
|
|
36
|
-
return Effect(() => {
|
|
37
|
-
const values: Array<[Key, Exit<Error, Value>]> = []
|
|
38
|
-
for (const [key, value] of ((self as any).cacheState as CacheState<Key, Error, Value>).map) {
|
|
39
|
-
if (value._tag === "Complete") {
|
|
40
|
-
values.push([key, value.exit])
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return Chunk.fromIterable(values)
|
|
44
|
-
})
|
|
45
|
-
}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
OperationOptionsBase,
|
|
3
|
-
ProcessErrorArgs,
|
|
4
|
-
ServiceBusMessage,
|
|
5
|
-
ServiceBusMessageBatch,
|
|
6
|
-
ServiceBusReceivedMessage,
|
|
7
|
-
ServiceBusReceiver,
|
|
8
|
-
ServiceBusSender
|
|
9
|
-
} from "@azure/service-bus"
|
|
10
|
-
import { ServiceBusClient } from "@azure/service-bus"
|
|
11
|
-
|
|
12
|
-
function makeClient(url: string) {
|
|
13
|
-
return Effect(() => new ServiceBusClient(url)).acquireRelease(
|
|
14
|
-
client => Effect.promise(() => client.close())
|
|
15
|
-
)
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
const Client = Tag<ServiceBusClient>()
|
|
19
|
-
export const LiveServiceBusClient = (url: string) => makeClient(url).toScopedLayer(Client)
|
|
20
|
-
|
|
21
|
-
function makeSender(queueName: string) {
|
|
22
|
-
return Effect.gen(function*($) {
|
|
23
|
-
const serviceBusClient = yield* $(Client.access)
|
|
24
|
-
|
|
25
|
-
return yield* $(
|
|
26
|
-
Effect(() => serviceBusClient.createSender(queueName)).acquireRelease(
|
|
27
|
-
subscription => Effect.promise(() => subscription.close())
|
|
28
|
-
)
|
|
29
|
-
)
|
|
30
|
-
})
|
|
31
|
-
}
|
|
32
|
-
export const Sender = Tag<ServiceBusSender>()
|
|
33
|
-
|
|
34
|
-
export function LiveSender(queueName: string) {
|
|
35
|
-
return makeSender(queueName).toScopedLayer(Sender)
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
function makeReceiver(queueName: string) {
|
|
39
|
-
return Effect.gen(function*($) {
|
|
40
|
-
const serviceBusClient = yield* $(Client.access)
|
|
41
|
-
|
|
42
|
-
return yield* $(
|
|
43
|
-
Effect(() => serviceBusClient.createReceiver(queueName)).acquireRelease(
|
|
44
|
-
r => Effect.promise(() => r.close())
|
|
45
|
-
)
|
|
46
|
-
)
|
|
47
|
-
})
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export const Receiver = Tag<ServiceBusReceiver>()
|
|
51
|
-
export function LiveReceiver(queueName: string) {
|
|
52
|
-
return makeReceiver(queueName).toScopedLayer(Receiver)
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export function sendMessages(
|
|
56
|
-
messages: ServiceBusMessage | ServiceBusMessage[] | ServiceBusMessageBatch,
|
|
57
|
-
options?: OperationOptionsBase
|
|
58
|
-
) {
|
|
59
|
-
return Effect.gen(function*($) {
|
|
60
|
-
const s = yield* $(Sender.access)
|
|
61
|
-
return yield* $(Effect.promise(() => s.sendMessages(messages, options)))
|
|
62
|
-
})
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export function subscribe<RMsg, RErr>(hndlr: MessageHandlers<RMsg, RErr>) {
|
|
66
|
-
return Effect.gen(function*($) {
|
|
67
|
-
const r = yield* $(Receiver.access)
|
|
68
|
-
|
|
69
|
-
const env = yield* $(Effect.environment<RMsg | RErr>())
|
|
70
|
-
|
|
71
|
-
yield* $(
|
|
72
|
-
Effect(() =>
|
|
73
|
-
r.subscribe({
|
|
74
|
-
processError: err =>
|
|
75
|
-
hndlr.processError(err)
|
|
76
|
-
.provideEnvironment(env)
|
|
77
|
-
.unsafeRunPromise
|
|
78
|
-
.catch(console.error),
|
|
79
|
-
processMessage: msg =>
|
|
80
|
-
hndlr.processMessage(msg)
|
|
81
|
-
.provideEnvironment(env)
|
|
82
|
-
.unsafeRunPromise
|
|
83
|
-
// DO NOT CATCH ERRORS here as they should return to the queue!
|
|
84
|
-
})
|
|
85
|
-
).acquireRelease(
|
|
86
|
-
subscription => Effect.promise(() => subscription.close())
|
|
87
|
-
)
|
|
88
|
-
)
|
|
89
|
-
})
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
const SubscribeTag = Tag<Effect.Success<ReturnType<typeof subscribe>>>()
|
|
93
|
-
|
|
94
|
-
export function Subscription<RMsg, RErr>(hndlr: MessageHandlers<RMsg, RErr>) {
|
|
95
|
-
return subscribe(hndlr).toScopedLayer(SubscribeTag)
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
export interface MessageHandlers<RMsg, RErr> {
|
|
99
|
-
/**
|
|
100
|
-
* Handler that processes messages from service bus.
|
|
101
|
-
*
|
|
102
|
-
* @param message - A message received from Service Bus.
|
|
103
|
-
*/
|
|
104
|
-
processMessage(message: ServiceBusReceivedMessage): Effect<RMsg, never, void>
|
|
105
|
-
/**
|
|
106
|
-
* Handler that processes errors that occur during receiving.
|
|
107
|
-
* @param args - The error and additional context to indicate where
|
|
108
|
-
* the error originated.
|
|
109
|
-
*/
|
|
110
|
-
processError(args: ProcessErrorArgs): Effect<RErr, never, void>
|
|
111
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Queue as Q } from "@effect/io/Queue"
|
|
2
|
-
|
|
3
|
-
export interface MemQueue {
|
|
4
|
-
getOrCreateQueue: (k: string) => Effect<never, never, Queue<string>>
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @tsplus type MemQueue.Ops
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
export interface MemQueueOps extends Tag<MemQueue> {}
|
|
12
|
-
export const MemQueue: MemQueueOps = Tag<MemQueue>()
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* @tsplus static MemQueue.Ops Live
|
|
16
|
-
*/
|
|
17
|
-
export const LiveMemQueue = Effect.gen(function*($) {
|
|
18
|
-
const store = yield* $(Effect(new Map<string, Queue<string>>()))
|
|
19
|
-
|
|
20
|
-
return {
|
|
21
|
-
getOrCreateQueue: (k: string) =>
|
|
22
|
-
Effect.gen(function*($) {
|
|
23
|
-
const q = store.get(k)
|
|
24
|
-
if (q) return q
|
|
25
|
-
const newQ = yield* $(Q.unbounded<string>())
|
|
26
|
-
store.set(k, newQ)
|
|
27
|
-
return newQ
|
|
28
|
-
})
|
|
29
|
-
}
|
|
30
|
-
}).toLayer(MemQueue)
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { AtomicReference } from "./AtomicReference.js"
|
|
2
|
-
|
|
3
|
-
export class AtomicNumber extends AtomicReference<number> {
|
|
4
|
-
constructor(n: number) {
|
|
5
|
-
super(n)
|
|
6
|
-
|
|
7
|
-
this.incrementAndGet = this.incrementAndGet.bind(this)
|
|
8
|
-
this.decrementAndGet = this.decrementAndGet.bind(this)
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
incrementAndGet() {
|
|
12
|
-
this.set(this.get + 1)
|
|
13
|
-
return this.get
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
decrementAndGet() {
|
|
17
|
-
this.set(this.get - 1)
|
|
18
|
-
return this.get
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
getAndIncrement(): number {
|
|
22
|
-
const ret = this.get
|
|
23
|
-
|
|
24
|
-
this.set(this.get + 1)
|
|
25
|
-
|
|
26
|
-
return ret
|
|
27
|
-
}
|
|
28
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
export class AtomicReference<A> {
|
|
2
|
-
private current: A
|
|
3
|
-
|
|
4
|
-
constructor(readonly initial: A) {
|
|
5
|
-
this.current = initial
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
get get() {
|
|
9
|
-
return this.current
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
getAndSet(value: A) {
|
|
13
|
-
const old = this.current
|
|
14
|
-
|
|
15
|
-
this.set(value)
|
|
16
|
-
return old
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
set(value: A) {
|
|
20
|
-
this.current = value
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
compareAndSet(old: A, value: A) {
|
|
24
|
-
if (this.get === old) {
|
|
25
|
-
this.set(value)
|
|
26
|
-
return true
|
|
27
|
-
}
|
|
28
|
-
return false
|
|
29
|
-
}
|
|
30
|
-
}
|