@effect-app/infra 2.7.0 → 2.8.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/CHANGELOG.md +19 -0
- package/_cjs/{services/CUPS.cjs → CUPS.cjs} +1 -1
- package/_cjs/CUPS.cjs.map +1 -0
- package/_cjs/{services/Emailer → Emailer}/Sendgrid.cjs +1 -1
- package/_cjs/Emailer/Sendgrid.cjs.map +1 -0
- package/_cjs/{services/Emailer → Emailer}/fake.cjs +1 -1
- package/_cjs/Emailer/fake.cjs.map +1 -0
- package/_cjs/Emailer/service.cjs.map +1 -0
- package/_cjs/Emailer.cjs.map +1 -0
- package/_cjs/{services/MainFiberSet.cjs → MainFiberSet.cjs} +1 -1
- package/_cjs/MainFiberSet.cjs.map +1 -0
- package/_cjs/{services → Model}/Repository/ext.cjs +1 -1
- package/_cjs/Model/Repository/ext.cjs.map +1 -0
- package/_cjs/{services → Model}/Repository/legacy.cjs +2 -3
- package/_cjs/Model/Repository/legacy.cjs.map +1 -0
- package/_cjs/{services/RepositoryBase.cjs → Model/Repository/makeRepo.cjs} +10 -12
- package/_cjs/Model/Repository/makeRepo.cjs.map +1 -0
- package/_cjs/Model/Repository/service.cjs.map +1 -0
- package/_cjs/{services → Model}/Repository.cjs +12 -10
- package/_cjs/Model/Repository.cjs.map +1 -0
- package/_cjs/Model/dsl.cjs.map +1 -0
- package/_cjs/Model/filter/filterApi.cjs +6 -0
- package/_cjs/Model/filter/filterApi.cjs.map +1 -0
- package/_cjs/Model/filter/types/errors.cjs.map +1 -0
- package/_cjs/Model/filter/types/fields.cjs.map +1 -0
- package/_cjs/Model/filter/types/path/common.cjs.map +1 -0
- package/_cjs/Model/filter/types/path/eager.cjs.map +1 -0
- package/_cjs/Model/filter/types/path/index.cjs.map +1 -0
- package/_cjs/Model/filter/types/utils.cjs.map +1 -0
- package/_cjs/Model/filter/types/validator.cjs.map +1 -0
- package/_cjs/Model/filter/types.cjs.map +1 -0
- package/_cjs/Model/query/dsl.cjs.map +1 -0
- package/_cjs/Model/query/new-kid-interpreter.cjs.map +1 -0
- package/_cjs/Model/query.cjs.map +1 -0
- package/_cjs/Model.cjs +23 -2
- package/_cjs/Model.cjs.map +1 -1
- package/_cjs/{services/Operations.cjs → Operations.cjs} +3 -3
- package/_cjs/Operations.cjs.map +1 -0
- package/_cjs/{services/OperationsRepo.cjs → OperationsRepo.cjs} +2 -2
- package/_cjs/OperationsRepo.cjs.map +1 -0
- package/_cjs/{services/QueueMaker → QueueMaker}/SQLQueue.cjs +3 -3
- package/_cjs/QueueMaker/SQLQueue.cjs.map +1 -0
- package/_cjs/QueueMaker/errors.cjs.map +1 -0
- package/_cjs/{services/QueueMaker → QueueMaker}/memQueue.cjs +2 -2
- package/_cjs/QueueMaker/memQueue.cjs.map +1 -0
- package/_cjs/{services/QueueMaker → QueueMaker}/sbqueue.cjs +2 -2
- package/_cjs/QueueMaker/sbqueue.cjs.map +1 -0
- package/_cjs/{services/QueueMaker → QueueMaker}/service.cjs +1 -1
- package/_cjs/QueueMaker/service.cjs.map +1 -0
- package/_cjs/{services/RequestFiberSet.cjs → RequestFiberSet.cjs} +2 -2
- package/_cjs/RequestFiberSet.cjs.map +1 -0
- package/_cjs/Store/ContextMapContainer.cjs.map +1 -0
- package/_cjs/{services/Store → Store}/Cosmos/query.cjs +1 -1
- package/_cjs/Store/Cosmos/query.cjs.map +1 -0
- package/_cjs/{services/Store → Store}/Cosmos.cjs +2 -2
- package/_cjs/Store/Cosmos.cjs.map +1 -0
- package/_cjs/{services/Store → Store}/Disk.cjs +1 -1
- package/_cjs/Store/Disk.cjs.map +1 -0
- package/_cjs/{services/Store → Store}/Memory.cjs +1 -1
- package/_cjs/Store/Memory.cjs.map +1 -0
- package/_cjs/Store/codeFilter.cjs.map +1 -0
- package/_cjs/Store/index.cjs.map +1 -0
- package/_cjs/Store/service.cjs.map +1 -0
- package/_cjs/{services/Store → Store}/utils.cjs +1 -1
- package/_cjs/Store/utils.cjs.map +1 -0
- package/_cjs/Store.cjs.map +1 -0
- package/_cjs/adapters/SQL/Model.cjs.map +1 -0
- package/_cjs/adapters/SQL.cjs.map +1 -0
- package/_cjs/adapters/ServiceBus.cjs.map +1 -0
- package/_cjs/adapters/cosmos-client.cjs.map +1 -0
- package/_cjs/adapters/index.cjs.map +1 -0
- package/_cjs/adapters/logger.cjs.map +1 -0
- package/_cjs/adapters/memQueue.cjs.map +1 -0
- package/_cjs/adapters/mongo-client.cjs.map +1 -0
- package/_cjs/adapters/redis-client.cjs.map +1 -0
- package/_cjs/api/setupRequest.cjs +2 -2
- package/_cjs/arbs.cjs.map +1 -0
- package/_cjs/logger/shared.cjs +1 -1
- package/_cjs/logger/shared.cjs.map +1 -1
- package/_cjs/test.cjs +1 -1
- package/dist/CUPS.d.ts.map +1 -0
- package/dist/CUPS.js +116 -0
- package/dist/Emailer/Sendgrid.d.ts.map +1 -0
- package/dist/Emailer/Sendgrid.js +99 -0
- package/dist/Emailer/fake.d.ts.map +1 -0
- package/dist/Emailer/fake.js +18 -0
- package/dist/{services/Emailer → Emailer}/service.d.ts +1 -1
- package/dist/Emailer/service.d.ts.map +1 -0
- package/dist/{services/Emailer → Emailer}/service.js +1 -1
- package/dist/Emailer.d.ts.map +1 -0
- package/dist/{services/Emailer.js → Emailer.js} +1 -1
- package/dist/MainFiberSet.d.ts.map +1 -0
- package/dist/MainFiberSet.js +54 -0
- package/dist/{services → Model}/Repository/ext.d.ts +12 -12
- package/dist/Model/Repository/ext.d.ts.map +1 -0
- package/dist/Model/Repository/ext.js +61 -0
- package/dist/{services → Model}/Repository/legacy.d.ts +53 -53
- package/dist/Model/Repository/legacy.d.ts.map +1 -0
- package/dist/Model/Repository/legacy.js +123 -0
- package/dist/{services/RepositoryBase.d.ts → Model/Repository/makeRepo.d.ts} +22 -22
- package/dist/Model/Repository/makeRepo.d.ts.map +1 -0
- package/dist/Model/Repository/makeRepo.js +254 -0
- package/dist/{services → Model}/Repository/service.d.ts +8 -8
- package/dist/Model/Repository/service.d.ts.map +1 -0
- package/dist/{services → Model}/Repository/service.js +1 -1
- package/dist/{services → Model}/Repository.d.ts +1 -1
- package/dist/Model/Repository.d.ts.map +1 -0
- package/dist/Model/Repository.js +5 -0
- package/dist/Model/dsl.d.ts.map +1 -0
- package/dist/Model/dsl.js +46 -0
- package/dist/{services/Store/filterApi/query.d.ts → Model/filter/filterApi.d.ts} +1 -1
- package/dist/Model/filter/filterApi.d.ts.map +1 -0
- package/dist/Model/filter/filterApi.js +2 -0
- package/dist/Model/filter/types/errors.d.ts.map +1 -0
- package/dist/{filter → Model/filter}/types/errors.js +1 -1
- package/dist/Model/filter/types/fields.d.ts.map +1 -0
- package/dist/{filter → Model/filter}/types/fields.js +1 -1
- package/dist/Model/filter/types/path/common.d.ts.map +1 -0
- package/dist/{filter → Model/filter}/types/path/common.js +1 -1
- package/dist/Model/filter/types/path/eager.d.ts.map +1 -0
- package/dist/{filter → Model/filter}/types/path/eager.js +1 -1
- package/dist/Model/filter/types/path/index.d.ts.map +1 -0
- package/dist/{filter → Model/filter}/types/path/index.js +1 -1
- package/dist/Model/filter/types/utils.d.ts.map +1 -0
- package/dist/{filter → Model/filter}/types/utils.js +1 -1
- package/dist/Model/filter/types/validator.d.ts.map +1 -0
- package/dist/{filter → Model/filter}/types/validator.js +1 -1
- package/dist/Model/filter/types.d.ts.map +1 -0
- package/dist/{filter → Model/filter}/types.js +1 -1
- package/dist/{services → Model}/query/dsl.d.ts +6 -6
- package/dist/Model/query/dsl.d.ts.map +1 -0
- package/dist/Model/query/dsl.js +95 -0
- package/dist/{services → Model}/query/new-kid-interpreter.d.ts +4 -4
- package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -0
- package/dist/Model/query/new-kid-interpreter.js +133 -0
- package/dist/Model/query.d.ts.map +1 -0
- package/dist/{services → Model}/query.js +1 -1
- package/dist/Model.d.ts +3 -1
- package/dist/Model.d.ts.map +1 -1
- package/dist/Model.js +4 -2
- package/dist/Operations.d.ts.map +1 -0
- package/dist/Operations.js +102 -0
- package/dist/{services/OperationsRepo.d.ts → OperationsRepo.d.ts} +1 -1
- package/dist/OperationsRepo.d.ts.map +1 -0
- package/dist/OperationsRepo.js +14 -0
- package/dist/QueueMaker/SQLQueue.d.ts.map +1 -0
- package/dist/QueueMaker/SQLQueue.js +136 -0
- package/dist/QueueMaker/errors.d.ts.map +1 -0
- package/dist/QueueMaker/errors.js +20 -0
- package/dist/QueueMaker/memQueue.d.ts.map +1 -0
- package/dist/QueueMaker/memQueue.js +78 -0
- package/dist/QueueMaker/sbqueue.d.ts.map +1 -0
- package/dist/QueueMaker/sbqueue.js +102 -0
- package/dist/{services/QueueMaker → QueueMaker}/service.d.ts +1 -1
- package/dist/QueueMaker/service.d.ts.map +1 -0
- package/dist/QueueMaker/service.js +4 -0
- package/dist/RequestFiberSet.d.ts.map +1 -0
- package/dist/RequestFiberSet.js +79 -0
- package/dist/Store/ContextMapContainer.d.ts.map +1 -0
- package/dist/{services/Store → Store}/ContextMapContainer.js +1 -1
- package/dist/{services/Store → Store}/Cosmos/query.d.ts +1 -1
- package/dist/Store/Cosmos/query.d.ts.map +1 -0
- package/dist/Store/Cosmos/query.js +164 -0
- package/dist/Store/Cosmos.d.ts.map +1 -0
- package/dist/Store/Cosmos.js +258 -0
- package/dist/Store/Disk.d.ts.map +1 -0
- package/dist/Store/Disk.js +109 -0
- package/dist/Store/Memory.d.ts.map +1 -0
- package/dist/Store/Memory.js +170 -0
- package/dist/{services/Store → Store}/codeFilter.d.ts +1 -1
- package/dist/Store/codeFilter.d.ts.map +1 -0
- package/dist/Store/codeFilter.js +117 -0
- package/dist/Store/index.d.ts.map +1 -0
- package/dist/Store/index.js +28 -0
- package/dist/{services/Store → Store}/service.d.ts +5 -5
- package/dist/Store/service.d.ts.map +1 -0
- package/dist/{services/Store → Store}/service.js +1 -1
- package/dist/{services/Store → Store}/utils.d.ts +1 -1
- package/dist/Store/utils.d.ts.map +1 -0
- package/dist/Store/utils.js +44 -0
- package/dist/Store.d.ts.map +1 -0
- package/dist/{services/Store.js → Store.js} +1 -1
- package/dist/{services/adapters → adapters}/SQL/Model.d.ts +23 -23
- package/dist/adapters/SQL/Model.d.ts.map +1 -0
- package/dist/adapters/SQL/Model.js +508 -0
- package/dist/adapters/SQL.d.ts.map +1 -0
- package/dist/{services/adapters → adapters}/SQL.js +1 -1
- package/dist/adapters/ServiceBus.d.ts.map +1 -0
- package/dist/adapters/ServiceBus.js +73 -0
- package/dist/adapters/cosmos-client.d.ts.map +1 -0
- package/dist/adapters/cosmos-client.js +8 -0
- package/dist/{services/adapters → adapters}/index.d.ts.map +1 -1
- package/dist/{services/adapters → adapters}/index.js +1 -1
- package/dist/adapters/logger.d.ts.map +1 -0
- package/dist/{services/adapters → adapters}/logger.js +1 -1
- package/dist/adapters/memQueue.d.ts.map +1 -0
- package/dist/adapters/memQueue.js +24 -0
- package/dist/adapters/mongo-client.d.ts.map +1 -0
- package/dist/adapters/mongo-client.js +12 -0
- package/dist/adapters/redis-client.d.ts.map +1 -0
- package/dist/adapters/redis-client.js +93 -0
- package/dist/api/setupRequest.js +3 -3
- package/dist/arbs.d.ts.map +1 -0
- package/dist/arbs.js +21 -0
- package/dist/logger/shared.js +2 -2
- package/dist/test.d.ts +1 -1
- package/dist/test.d.ts.map +1 -1
- package/dist/test.js +3 -3
- package/examples/query.ts +3 -3
- package/package.json +352 -362
- package/src/{services/CUPS.ts → CUPS.ts} +1 -1
- package/src/{services/Emailer → Emailer}/Sendgrid.ts +1 -1
- package/src/{services/Emailer → Emailer}/fake.ts +1 -1
- package/src/{services/MainFiberSet.ts → MainFiberSet.ts} +1 -1
- package/src/{services → Model}/Repository/ext.ts +23 -11
- package/src/{services → Model}/Repository/legacy.ts +78 -51
- package/src/{services/RepositoryBase.ts → Model/Repository/makeRepo.ts} +40 -38
- package/src/{services → Model}/Repository/service.ts +9 -8
- package/src/{services → Model}/Repository.ts +1 -1
- package/src/{services → Model}/query/dsl.ts +24 -6
- package/src/{services → Model}/query/new-kid-interpreter.ts +3 -3
- package/src/Model.ts +3 -1
- package/src/{services/Operations.ts → Operations.ts} +3 -3
- package/src/{services/OperationsRepo.ts → OperationsRepo.ts} +1 -1
- package/src/{services/QueueMaker → QueueMaker}/SQLQueue.ts +4 -4
- package/src/{services/QueueMaker → QueueMaker}/memQueue.ts +2 -2
- package/src/{services/QueueMaker → QueueMaker}/sbqueue.ts +2 -2
- package/src/{services/QueueMaker → QueueMaker}/service.ts +1 -1
- package/src/{services/RequestFiberSet.ts → RequestFiberSet.ts} +2 -2
- package/src/{services/Store → Store}/Cosmos/query.ts +2 -2
- package/src/{services/Store → Store}/Cosmos.ts +2 -2
- package/src/{services/Store → Store}/Disk.ts +1 -1
- package/src/{services/Store → Store}/Memory.ts +1 -1
- package/src/{services/Store → Store}/codeFilter.ts +1 -1
- package/src/{services/Store → Store}/service.ts +4 -4
- package/src/{services/Store → Store}/utils.ts +1 -1
- package/src/api/setupRequest.ts +2 -2
- package/src/logger/shared.ts +1 -1
- package/src/test.ts +2 -2
- package/test/dist/query.test.d.ts.map +1 -1
- package/test/query.test.ts +32 -5
- package/_cjs/_ext/Array.cjs +0 -22
- package/_cjs/_ext/Array.cjs.map +0 -1
- package/_cjs/filter/types/errors.cjs.map +0 -1
- package/_cjs/filter/types/fields.cjs.map +0 -1
- package/_cjs/filter/types/path/common.cjs.map +0 -1
- package/_cjs/filter/types/path/eager.cjs.map +0 -1
- package/_cjs/filter/types/path/index.cjs.map +0 -1
- package/_cjs/filter/types/utils.cjs.map +0 -1
- package/_cjs/filter/types/validator.cjs.map +0 -1
- package/_cjs/filter/types.cjs.map +0 -1
- package/_cjs/services/CUPS.cjs.map +0 -1
- package/_cjs/services/Emailer/Sendgrid.cjs.map +0 -1
- package/_cjs/services/Emailer/fake.cjs.map +0 -1
- package/_cjs/services/Emailer/service.cjs.map +0 -1
- package/_cjs/services/Emailer.cjs.map +0 -1
- package/_cjs/services/MainFiberSet.cjs.map +0 -1
- package/_cjs/services/Operations.cjs.map +0 -1
- package/_cjs/services/OperationsRepo.cjs.map +0 -1
- package/_cjs/services/QueueMaker/SQLQueue.cjs.map +0 -1
- package/_cjs/services/QueueMaker/errors.cjs.map +0 -1
- package/_cjs/services/QueueMaker/memQueue.cjs.map +0 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +0 -1
- package/_cjs/services/QueueMaker/service.cjs.map +0 -1
- package/_cjs/services/Repository/dsl.cjs.map +0 -1
- package/_cjs/services/Repository/ext.cjs.map +0 -1
- package/_cjs/services/Repository/legacy.cjs.map +0 -1
- package/_cjs/services/Repository/service.cjs.map +0 -1
- package/_cjs/services/Repository.cjs.map +0 -1
- package/_cjs/services/RepositoryBase.cjs.map +0 -1
- package/_cjs/services/RequestFiberSet.cjs.map +0 -1
- package/_cjs/services/Store/ContextMapContainer.cjs.map +0 -1
- package/_cjs/services/Store/Cosmos/query.cjs.map +0 -1
- package/_cjs/services/Store/Cosmos.cjs.map +0 -1
- package/_cjs/services/Store/Disk.cjs.map +0 -1
- package/_cjs/services/Store/Memory.cjs.map +0 -1
- package/_cjs/services/Store/codeFilter.cjs.map +0 -1
- package/_cjs/services/Store/filterApi/query.cjs +0 -6
- package/_cjs/services/Store/filterApi/query.cjs.map +0 -1
- package/_cjs/services/Store/index.cjs.map +0 -1
- package/_cjs/services/Store/service.cjs.map +0 -1
- package/_cjs/services/Store/utils.cjs.map +0 -1
- package/_cjs/services/Store.cjs.map +0 -1
- package/_cjs/services/adapters/SQL/Model.cjs.map +0 -1
- package/_cjs/services/adapters/SQL.cjs.map +0 -1
- package/_cjs/services/adapters/ServiceBus.cjs.map +0 -1
- package/_cjs/services/adapters/cosmos-client.cjs.map +0 -1
- package/_cjs/services/adapters/index.cjs.map +0 -1
- package/_cjs/services/adapters/logger.cjs.map +0 -1
- package/_cjs/services/adapters/memQueue.cjs.map +0 -1
- package/_cjs/services/adapters/mongo-client.cjs.map +0 -1
- package/_cjs/services/adapters/redis-client.cjs.map +0 -1
- package/_cjs/services/query/dsl.cjs.map +0 -1
- package/_cjs/services/query/new-kid-interpreter.cjs.map +0 -1
- package/_cjs/services/query.cjs.map +0 -1
- package/_cjs/test/arbs.cjs.map +0 -1
- package/dist/_ext/Array.d.ts +0 -13
- package/dist/_ext/Array.d.ts.map +0 -1
- package/dist/_ext/Array.js +0 -15
- package/dist/filter/types/errors.d.ts.map +0 -1
- package/dist/filter/types/fields.d.ts.map +0 -1
- package/dist/filter/types/path/common.d.ts.map +0 -1
- package/dist/filter/types/path/eager.d.ts.map +0 -1
- package/dist/filter/types/path/index.d.ts.map +0 -1
- package/dist/filter/types/utils.d.ts.map +0 -1
- package/dist/filter/types/validator.d.ts.map +0 -1
- package/dist/filter/types.d.ts.map +0 -1
- package/dist/services/CUPS.d.ts.map +0 -1
- package/dist/services/CUPS.js +0 -116
- package/dist/services/Emailer/Sendgrid.d.ts.map +0 -1
- package/dist/services/Emailer/Sendgrid.js +0 -99
- package/dist/services/Emailer/fake.d.ts.map +0 -1
- package/dist/services/Emailer/fake.js +0 -18
- package/dist/services/Emailer/service.d.ts.map +0 -1
- package/dist/services/Emailer.d.ts.map +0 -1
- package/dist/services/MainFiberSet.d.ts.map +0 -1
- package/dist/services/MainFiberSet.js +0 -54
- package/dist/services/Operations.d.ts.map +0 -1
- package/dist/services/Operations.js +0 -102
- package/dist/services/OperationsRepo.d.ts.map +0 -1
- package/dist/services/OperationsRepo.js +0 -14
- package/dist/services/QueueMaker/SQLQueue.d.ts.map +0 -1
- package/dist/services/QueueMaker/SQLQueue.js +0 -136
- package/dist/services/QueueMaker/errors.d.ts.map +0 -1
- package/dist/services/QueueMaker/errors.js +0 -20
- package/dist/services/QueueMaker/memQueue.d.ts.map +0 -1
- package/dist/services/QueueMaker/memQueue.js +0 -78
- package/dist/services/QueueMaker/sbqueue.d.ts.map +0 -1
- package/dist/services/QueueMaker/sbqueue.js +0 -102
- package/dist/services/QueueMaker/service.d.ts.map +0 -1
- package/dist/services/QueueMaker/service.js +0 -4
- package/dist/services/Repository/dsl.d.ts.map +0 -1
- package/dist/services/Repository/dsl.js +0 -46
- package/dist/services/Repository/ext.d.ts.map +0 -1
- package/dist/services/Repository/ext.js +0 -61
- package/dist/services/Repository/legacy.d.ts.map +0 -1
- package/dist/services/Repository/legacy.js +0 -124
- package/dist/services/Repository/service.d.ts.map +0 -1
- package/dist/services/Repository.d.ts.map +0 -1
- package/dist/services/Repository.js +0 -5
- package/dist/services/RepositoryBase.d.ts.map +0 -1
- package/dist/services/RepositoryBase.js +0 -256
- package/dist/services/RequestFiberSet.d.ts.map +0 -1
- package/dist/services/RequestFiberSet.js +0 -79
- package/dist/services/Store/ContextMapContainer.d.ts.map +0 -1
- package/dist/services/Store/Cosmos/query.d.ts.map +0 -1
- package/dist/services/Store/Cosmos/query.js +0 -164
- package/dist/services/Store/Cosmos.d.ts.map +0 -1
- package/dist/services/Store/Cosmos.js +0 -258
- package/dist/services/Store/Disk.d.ts.map +0 -1
- package/dist/services/Store/Disk.js +0 -109
- package/dist/services/Store/Memory.d.ts.map +0 -1
- package/dist/services/Store/Memory.js +0 -170
- package/dist/services/Store/codeFilter.d.ts.map +0 -1
- package/dist/services/Store/codeFilter.js +0 -117
- package/dist/services/Store/filterApi/query.d.ts.map +0 -1
- package/dist/services/Store/filterApi/query.js +0 -2
- package/dist/services/Store/index.d.ts.map +0 -1
- package/dist/services/Store/index.js +0 -28
- package/dist/services/Store/service.d.ts.map +0 -1
- package/dist/services/Store/utils.d.ts.map +0 -1
- package/dist/services/Store/utils.js +0 -44
- package/dist/services/Store.d.ts.map +0 -1
- package/dist/services/adapters/SQL/Model.d.ts.map +0 -1
- package/dist/services/adapters/SQL/Model.js +0 -508
- package/dist/services/adapters/SQL.d.ts.map +0 -1
- package/dist/services/adapters/ServiceBus.d.ts.map +0 -1
- package/dist/services/adapters/ServiceBus.js +0 -73
- package/dist/services/adapters/cosmos-client.d.ts.map +0 -1
- package/dist/services/adapters/cosmos-client.js +0 -8
- package/dist/services/adapters/logger.d.ts.map +0 -1
- package/dist/services/adapters/memQueue.d.ts.map +0 -1
- package/dist/services/adapters/memQueue.js +0 -24
- package/dist/services/adapters/mongo-client.d.ts.map +0 -1
- package/dist/services/adapters/mongo-client.js +0 -12
- package/dist/services/adapters/redis-client.d.ts.map +0 -1
- package/dist/services/adapters/redis-client.js +0 -93
- package/dist/services/query/dsl.d.ts.map +0 -1
- package/dist/services/query/dsl.js +0 -95
- package/dist/services/query/new-kid-interpreter.d.ts.map +0 -1
- package/dist/services/query/new-kid-interpreter.js +0 -133
- package/dist/services/query.d.ts.map +0 -1
- package/dist/test/arbs.d.ts.map +0 -1
- package/dist/test/arbs.js +0 -21
- package/src/_ext/Array.ts +0 -22
- /package/_cjs/{services/Emailer → Emailer}/service.cjs +0 -0
- /package/_cjs/{services/Emailer.cjs → Emailer.cjs} +0 -0
- /package/_cjs/{services → Model}/Repository/service.cjs +0 -0
- /package/_cjs/{services/Repository → Model}/dsl.cjs +0 -0
- /package/_cjs/{filter → Model/filter}/types/errors.cjs +0 -0
- /package/_cjs/{filter → Model/filter}/types/fields.cjs +0 -0
- /package/_cjs/{filter → Model/filter}/types/path/common.cjs +0 -0
- /package/_cjs/{filter → Model/filter}/types/path/eager.cjs +0 -0
- /package/_cjs/{filter → Model/filter}/types/path/index.cjs +0 -0
- /package/_cjs/{filter → Model/filter}/types/utils.cjs +0 -0
- /package/_cjs/{filter → Model/filter}/types/validator.cjs +0 -0
- /package/_cjs/{filter → Model/filter}/types.cjs +0 -0
- /package/_cjs/{services → Model}/query/dsl.cjs +0 -0
- /package/_cjs/{services → Model}/query/new-kid-interpreter.cjs +0 -0
- /package/_cjs/{services → Model}/query.cjs +0 -0
- /package/_cjs/{services/QueueMaker → QueueMaker}/errors.cjs +0 -0
- /package/_cjs/{services/Store → Store}/ContextMapContainer.cjs +0 -0
- /package/_cjs/{services/Store → Store}/codeFilter.cjs +0 -0
- /package/_cjs/{services/Store → Store}/index.cjs +0 -0
- /package/_cjs/{services/Store → Store}/service.cjs +0 -0
- /package/_cjs/{services/Store.cjs → Store.cjs} +0 -0
- /package/_cjs/{services/adapters → adapters}/SQL/Model.cjs +0 -0
- /package/_cjs/{services/adapters → adapters}/SQL.cjs +0 -0
- /package/_cjs/{services/adapters → adapters}/ServiceBus.cjs +0 -0
- /package/_cjs/{services/adapters → adapters}/cosmos-client.cjs +0 -0
- /package/_cjs/{services/adapters → adapters}/index.cjs +0 -0
- /package/_cjs/{services/adapters → adapters}/logger.cjs +0 -0
- /package/_cjs/{services/adapters → adapters}/memQueue.cjs +0 -0
- /package/_cjs/{services/adapters → adapters}/mongo-client.cjs +0 -0
- /package/_cjs/{services/adapters → adapters}/redis-client.cjs +0 -0
- /package/_cjs/{test/arbs.cjs → arbs.cjs} +0 -0
- /package/dist/{services/CUPS.d.ts → CUPS.d.ts} +0 -0
- /package/dist/{services/Emailer → Emailer}/Sendgrid.d.ts +0 -0
- /package/dist/{services/Emailer → Emailer}/fake.d.ts +0 -0
- /package/dist/{services/Emailer.d.ts → Emailer.d.ts} +0 -0
- /package/dist/{services/MainFiberSet.d.ts → MainFiberSet.d.ts} +0 -0
- /package/dist/{services/Repository → Model}/dsl.d.ts +0 -0
- /package/dist/{filter → Model/filter}/types/errors.d.ts +0 -0
- /package/dist/{filter → Model/filter}/types/fields.d.ts +0 -0
- /package/dist/{filter → Model/filter}/types/path/common.d.ts +0 -0
- /package/dist/{filter → Model/filter}/types/path/eager.d.ts +0 -0
- /package/dist/{filter → Model/filter}/types/path/index.d.ts +0 -0
- /package/dist/{filter → Model/filter}/types/utils.d.ts +0 -0
- /package/dist/{filter → Model/filter}/types/validator.d.ts +0 -0
- /package/dist/{filter → Model/filter}/types.d.ts +0 -0
- /package/dist/{services → Model}/query.d.ts +0 -0
- /package/dist/{services/Operations.d.ts → Operations.d.ts} +0 -0
- /package/dist/{services/QueueMaker → QueueMaker}/SQLQueue.d.ts +0 -0
- /package/dist/{services/QueueMaker → QueueMaker}/errors.d.ts +0 -0
- /package/dist/{services/QueueMaker → QueueMaker}/memQueue.d.ts +0 -0
- /package/dist/{services/QueueMaker → QueueMaker}/sbqueue.d.ts +0 -0
- /package/dist/{services/RequestFiberSet.d.ts → RequestFiberSet.d.ts} +0 -0
- /package/dist/{services/Store → Store}/ContextMapContainer.d.ts +0 -0
- /package/dist/{services/Store → Store}/Cosmos.d.ts +0 -0
- /package/dist/{services/Store → Store}/Disk.d.ts +0 -0
- /package/dist/{services/Store → Store}/Memory.d.ts +0 -0
- /package/dist/{services/Store → Store}/index.d.ts +0 -0
- /package/dist/{services/Store.d.ts → Store.d.ts} +0 -0
- /package/dist/{services/adapters → adapters}/SQL.d.ts +0 -0
- /package/dist/{services/adapters → adapters}/ServiceBus.d.ts +0 -0
- /package/dist/{services/adapters → adapters}/cosmos-client.d.ts +0 -0
- /package/dist/{services/adapters → adapters}/index.d.ts +0 -0
- /package/dist/{services/adapters → adapters}/logger.d.ts +0 -0
- /package/dist/{services/adapters → adapters}/memQueue.d.ts +0 -0
- /package/dist/{services/adapters → adapters}/mongo-client.d.ts +0 -0
- /package/dist/{services/adapters → adapters}/redis-client.d.ts +0 -0
- /package/dist/{test/arbs.d.ts → arbs.d.ts} +0 -0
- /package/src/{services/Emailer → Emailer}/service.ts +0 -0
- /package/src/{services/Emailer.ts → Emailer.ts} +0 -0
- /package/src/{services/Repository → Model}/dsl.ts +0 -0
- /package/src/{services/Store/filterApi/query.ts → Model/filter/filterApi.ts} +0 -0
- /package/src/{filter → Model/filter}/types/errors.ts +0 -0
- /package/src/{filter → Model/filter}/types/fields.ts +0 -0
- /package/src/{filter → Model/filter}/types/path/common.ts +0 -0
- /package/src/{filter → Model/filter}/types/path/eager.ts +0 -0
- /package/src/{filter → Model/filter}/types/path/index.ts +0 -0
- /package/src/{filter → Model/filter}/types/utils.ts +0 -0
- /package/src/{filter → Model/filter}/types/validator.ts +0 -0
- /package/src/{filter → Model/filter}/types.ts +0 -0
- /package/src/{services → Model}/query.ts +0 -0
- /package/src/{services/QueueMaker → QueueMaker}/errors.ts +0 -0
- /package/src/{services/Store → Store}/ContextMapContainer.ts +0 -0
- /package/src/{services/Store → Store}/index.test.ts.bak +0 -0
- /package/src/{services/Store → Store}/index.ts +0 -0
- /package/src/{services/Store.ts → Store.ts} +0 -0
- /package/src/{services/adapters → adapters}/SQL/Model.ts +0 -0
- /package/src/{services/adapters → adapters}/SQL.ts +0 -0
- /package/src/{services/adapters → adapters}/ServiceBus.ts +0 -0
- /package/src/{services/adapters → adapters}/cosmos-client.ts +0 -0
- /package/src/{services/adapters → adapters}/index.ts +0 -0
- /package/src/{services/adapters → adapters}/logger.ts +0 -0
- /package/src/{services/adapters → adapters}/memQueue.ts +0 -0
- /package/src/{services/adapters → adapters}/mongo-client.ts +0 -0
- /package/src/{services/adapters → adapters}/redis-client.ts +0 -0
- /package/src/{test/arbs.ts → arbs.ts} +0 -0
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import * as fu from "../../fileUtil.js";
|
|
3
|
-
import fs from "fs";
|
|
4
|
-
import { Console, Effect, FiberRef, flow } from "effect-app";
|
|
5
|
-
import { makeMemoryStoreInt, storeId } from "./Memory.js";
|
|
6
|
-
import { StoreMaker } from "./service.js";
|
|
7
|
-
function makeDiskStoreInt(prefix, namespace, dir, name, seed, defaultValues) {
|
|
8
|
-
return Effect.gen(function* () {
|
|
9
|
-
if (namespace !== "primary") {
|
|
10
|
-
dir = dir + "/" + namespace;
|
|
11
|
-
if (!fs.existsSync(dir)) {
|
|
12
|
-
fs.mkdirSync(dir);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
const file = dir + "/" + prefix + name + ".json";
|
|
16
|
-
const fsStore = {
|
|
17
|
-
get: fu
|
|
18
|
-
.readTextFile(file)
|
|
19
|
-
.pipe(Effect.withSpan("Disk.read.readFile [effect-app/infra/Store]", { captureStackTrace: false }), Effect.flatMap((x) => Effect.sync(() => JSON.parse(x)).pipe(Effect.withSpan("Disk.read.parse [effect-app/infra/Store]", { captureStackTrace: false }))), Effect.orDie, Effect.withSpan("Disk.read [effect-app/infra/Store]", {
|
|
20
|
-
captureStackTrace: false,
|
|
21
|
-
attributes: { "disk.file": file }
|
|
22
|
-
})),
|
|
23
|
-
setRaw: (v) => Effect
|
|
24
|
-
.sync(() => JSON.stringify([...v], undefined, 2))
|
|
25
|
-
.pipe(Effect.withSpan("Disk.stringify [effect-app/infra/Store]", {
|
|
26
|
-
captureStackTrace: false,
|
|
27
|
-
attributes: { "disk.file": file }
|
|
28
|
-
}), Effect
|
|
29
|
-
.flatMap((json) => fu
|
|
30
|
-
.writeTextFile(file, json)
|
|
31
|
-
.pipe(Effect
|
|
32
|
-
.withSpan("Disk.write.writeFile [effect-app/infra/Store]", {
|
|
33
|
-
captureStackTrace: false,
|
|
34
|
-
attributes: { "disk.file_size": json.length }
|
|
35
|
-
}))), Effect
|
|
36
|
-
.withSpan("Disk.write [effect-app/infra/Store]", {
|
|
37
|
-
captureStackTrace: false,
|
|
38
|
-
attributes: { "disk.file": file }
|
|
39
|
-
}))
|
|
40
|
-
};
|
|
41
|
-
const store = yield* makeMemoryStoreInt(name, namespace, !fs.existsSync(file)
|
|
42
|
-
? seed
|
|
43
|
-
: fsStore.get, defaultValues);
|
|
44
|
-
yield* store.all.pipe(Effect.flatMap(fsStore.setRaw));
|
|
45
|
-
const sem = Effect.unsafeMakeSemaphore(1);
|
|
46
|
-
const withPermit = sem.withPermits(1);
|
|
47
|
-
const flushToDisk = Effect.flatMap(store.all, fsStore.setRaw).pipe(withPermit);
|
|
48
|
-
const flushToDiskInBackground = flushToDisk
|
|
49
|
-
.pipe(Effect.tapErrorCause(Console.error), Effect.uninterruptible, Effect.forkDaemon);
|
|
50
|
-
return {
|
|
51
|
-
...store,
|
|
52
|
-
batchSet: flow(store.batchSet, Effect.tap(flushToDiskInBackground)),
|
|
53
|
-
bulkSet: flow(store.bulkSet, Effect.tap(flushToDiskInBackground)),
|
|
54
|
-
set: flow(store.set, Effect.tap(flushToDiskInBackground)),
|
|
55
|
-
remove: flow(store.remove, Effect.tap(flushToDiskInBackground))
|
|
56
|
-
};
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* The Disk-backed store, flushes writes in background, but keeps the data in memory
|
|
61
|
-
* and should therefore be as fast as the Memory Store.
|
|
62
|
-
*/
|
|
63
|
-
export function makeDiskStore({ prefix }, dir) {
|
|
64
|
-
return Effect.sync(() => {
|
|
65
|
-
if (!fs.existsSync(dir)) {
|
|
66
|
-
fs.mkdirSync(dir);
|
|
67
|
-
}
|
|
68
|
-
return {
|
|
69
|
-
make: (name, seed, config) => Effect.gen(function* () {
|
|
70
|
-
const storesSem = Effect.unsafeMakeSemaphore(1);
|
|
71
|
-
const primary = yield* makeDiskStoreInt(prefix, "primary", dir, name, seed, config?.defaultValues);
|
|
72
|
-
const stores = new Map([["primary", primary]]);
|
|
73
|
-
const ctx = yield* Effect.context();
|
|
74
|
-
const getStore = !config?.allowNamespace
|
|
75
|
-
? Effect.succeed(primary)
|
|
76
|
-
: FiberRef.get(storeId).pipe(Effect.flatMap((namespace) => {
|
|
77
|
-
const store = stores.get(namespace);
|
|
78
|
-
if (store) {
|
|
79
|
-
return Effect.succeed(store);
|
|
80
|
-
}
|
|
81
|
-
if (!config.allowNamespace(namespace)) {
|
|
82
|
-
throw new Error(`Namespace ${namespace} not allowed!`);
|
|
83
|
-
}
|
|
84
|
-
return storesSem.withPermits(1)(Effect.suspend(() => {
|
|
85
|
-
const existing = stores.get(namespace);
|
|
86
|
-
if (existing)
|
|
87
|
-
return Effect.sync(() => existing);
|
|
88
|
-
return makeDiskStoreInt(prefix, namespace, dir, name, seed, config?.defaultValues)
|
|
89
|
-
.pipe(Effect.orDie, Effect.provide(ctx), Effect.tap((store) => Effect.sync(() => stores.set(namespace, store))));
|
|
90
|
-
}));
|
|
91
|
-
}));
|
|
92
|
-
const s = {
|
|
93
|
-
all: Effect.flatMap(getStore, (_) => _.all),
|
|
94
|
-
find: (...args) => Effect.flatMap(getStore, (_) => _.find(...args)),
|
|
95
|
-
filter: (...args) => Effect.flatMap(getStore, (_) => _.filter(...args)),
|
|
96
|
-
set: (...args) => Effect.flatMap(getStore, (_) => _.set(...args)),
|
|
97
|
-
batchSet: (...args) => Effect.flatMap(getStore, (_) => _.batchSet(...args)),
|
|
98
|
-
bulkSet: (...args) => Effect.flatMap(getStore, (_) => _.bulkSet(...args)),
|
|
99
|
-
remove: (...args) => Effect.flatMap(getStore, (_) => _.remove(...args))
|
|
100
|
-
};
|
|
101
|
-
return s;
|
|
102
|
-
})
|
|
103
|
-
};
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
export function DiskStoreLayer(config, dir) {
|
|
107
|
-
return StoreMaker.toLayer(makeDiskStore(config, dir));
|
|
108
|
-
}
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9TdG9yZS9EaXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRXZDLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQTtBQUVuQixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQzVELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV6QyxTQUFTLGdCQUFnQixDQUN2QixNQUFjLEVBQ2QsU0FBaUIsRUFDakIsR0FBVyxFQUNYLElBQVksRUFDWixJQUFzQyxFQUN0QyxhQUFnQztJQUdoQyxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQ3pCLElBQUksU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVCLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLFNBQVMsQ0FBQTtZQUMzQixJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN4QixFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQ25CLENBQUM7UUFDSCxDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxNQUFNLEdBQUcsSUFBSSxHQUFHLE9BQU8sQ0FBQTtRQUNoRCxNQUFNLE9BQU8sR0FBRztZQUNkLEdBQUcsRUFBRSxFQUFFO2lCQUNKLFlBQVksQ0FBQyxJQUFJLENBQUM7aUJBQ2xCLElBQUksQ0FDSCxNQUFNLENBQUMsUUFBUSxDQUFDLDZDQUE2QyxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxF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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Memory.d.ts","sourceRoot":"","sources":["../../../src/services/Store/Memory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,MAAM,EAAE,QAAQ,EAA0C,MAAM,YAAY,CAAA;AAE5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAIrD,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,wBAAgB,SAAS,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,OAEpF,CAAC,EAAE,KAAG,wCAAG,CA0CtB;AAGD,eAAO,MAAM,OAAO,sCAAoD,CAAA;AAmBxE,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,OAAO,SAAS;IAAE,EAAE,EAAE,EAAE,CAAA;CAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EACpG,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACtC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,0EAgIlC;AAED,eAAO,MAAM,eAAe;WACnB,EAAE,SAAS,MAAM,EAAE,OAAO,SAAS;QAAE,EAAE,EAAE,EAAE,CAAA;KAAE,EAAE,CAAC,UAAU,CAAC,qBACrD,MAAM,SACV,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,WAC7B,WAAW,CAAC,OAAO,CAAC;CAuC/B,CAAA;AAEF,eAAO,MAAM,eAAe,wDAA2D,CAAA"}
|
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { Array, Effect, FiberRef, flow, Option, Order, pipe, Ref, Struct } from "effect-app";
|
|
3
|
-
import { NonEmptyString255 } from "effect-app/Schema";
|
|
4
|
-
import { get } from "effect-app/utils";
|
|
5
|
-
import { InfraLogger } from "../../logger.js";
|
|
6
|
-
import { codeFilter } from "./codeFilter.js";
|
|
7
|
-
import { StoreMaker } from "./service.js";
|
|
8
|
-
import { makeUpdateETag } from "./utils.js";
|
|
9
|
-
export function memFilter(f) {
|
|
10
|
-
return ((c) => {
|
|
11
|
-
const select = (r) => (f.select ? r.map(Struct.pick(...f.select)) : r);
|
|
12
|
-
const skip = f?.skip;
|
|
13
|
-
const limit = f?.limit;
|
|
14
|
-
const ords = Option.map(Option.fromNullable(f.order), (_) => _.map((_) => Order.make((self, that) => {
|
|
15
|
-
// TODO: inspect data types for the right comparison?
|
|
16
|
-
const selfV = get(self, _.key) ?? false;
|
|
17
|
-
const thatV = get(that, _.key) ?? false;
|
|
18
|
-
if (selfV === thatV) {
|
|
19
|
-
return 0;
|
|
20
|
-
}
|
|
21
|
-
if (_.direction === "ASC") {
|
|
22
|
-
return selfV < thatV ? -1 : 1;
|
|
23
|
-
}
|
|
24
|
-
return selfV < thatV ? 1 : -1;
|
|
25
|
-
})));
|
|
26
|
-
if (Option.isSome(ords)) {
|
|
27
|
-
c = Array.sortBy(...ords.value)(c);
|
|
28
|
-
}
|
|
29
|
-
if (!skip && limit === 1) {
|
|
30
|
-
return select(Array.findFirst(c, f.filter ? codeFilter(f.filter) : (_) => Option.some(_)).pipe(Option.map(Array.make), Option.getOrElse(() => [])));
|
|
31
|
-
}
|
|
32
|
-
let r = f.filter ? Array.filterMap(c, codeFilter(f.filter)) : c;
|
|
33
|
-
if (skip) {
|
|
34
|
-
r = Array.drop(r, skip);
|
|
35
|
-
}
|
|
36
|
-
if (limit !== undefined) {
|
|
37
|
-
r = Array.take(r, limit);
|
|
38
|
-
}
|
|
39
|
-
return select(r);
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
const defaultNs = NonEmptyString255("primary");
|
|
43
|
-
export const storeId = FiberRef.unsafeMake(defaultNs);
|
|
44
|
-
function logQuery(f, defaultValues) {
|
|
45
|
-
return InfraLogger
|
|
46
|
-
.logDebug("mem query")
|
|
47
|
-
.pipe(Effect.annotateLogs({
|
|
48
|
-
filter: JSON.stringify(f.filter, undefined, 2),
|
|
49
|
-
order: JSON.stringify(f.order, undefined, 2),
|
|
50
|
-
select: JSON.stringify(f.select, undefined, 2),
|
|
51
|
-
defaultValues: JSON.stringify(defaultValues, undefined, 2),
|
|
52
|
-
skip: f.skip,
|
|
53
|
-
limit: f.limit
|
|
54
|
-
}));
|
|
55
|
-
}
|
|
56
|
-
export function makeMemoryStoreInt(modelName, namespace, seed, _defaultValues) {
|
|
57
|
-
return Effect.gen(function* () {
|
|
58
|
-
const updateETag = makeUpdateETag(modelName);
|
|
59
|
-
const items_ = yield* seed ?? Effect.sync(() => []);
|
|
60
|
-
const defaultValues = _defaultValues ?? {};
|
|
61
|
-
const items = new Map([...items_].map((_) => [_.id, { _etag: undefined, ...defaultValues, ..._ }]));
|
|
62
|
-
const store = Ref.unsafeMake(items);
|
|
63
|
-
const sem = Effect.unsafeMakeSemaphore(1);
|
|
64
|
-
const withPermit = sem.withPermits(1);
|
|
65
|
-
const values = Effect.map(Ref.get(store), (s) => s.values());
|
|
66
|
-
const all = Effect.map(values, Array.fromIterable);
|
|
67
|
-
const batchSet = (items) => Effect
|
|
68
|
-
.forEach(items, (i) => Effect.flatMap(s.find(i.id), (current) => updateETag(i, current)))
|
|
69
|
-
.pipe(Effect
|
|
70
|
-
.tap((items) => Ref
|
|
71
|
-
.get(store)
|
|
72
|
-
.pipe(Effect
|
|
73
|
-
.map((m) => {
|
|
74
|
-
const mut = m;
|
|
75
|
-
items.forEach((e) => mut.set(e.id, e));
|
|
76
|
-
return mut;
|
|
77
|
-
}), Effect
|
|
78
|
-
.flatMap((_) => Ref.set(store, _)))), Effect
|
|
79
|
-
.map((_) => _), withPermit);
|
|
80
|
-
const s = {
|
|
81
|
-
all: all.pipe(Effect.withSpan("Memory.all [effect-app/infra/Store]", {
|
|
82
|
-
captureStackTrace: false,
|
|
83
|
-
attributes: {
|
|
84
|
-
modelName,
|
|
85
|
-
namespace
|
|
86
|
-
}
|
|
87
|
-
})),
|
|
88
|
-
find: (id) => Ref
|
|
89
|
-
.get(store)
|
|
90
|
-
.pipe(Effect.map((_) => Option.fromNullable(_.get(id))), Effect
|
|
91
|
-
.withSpan("Memory.find [effect-app/infra/Store]", {
|
|
92
|
-
captureStackTrace: false,
|
|
93
|
-
attributes: {
|
|
94
|
-
modelName,
|
|
95
|
-
namespace
|
|
96
|
-
}
|
|
97
|
-
})),
|
|
98
|
-
filter: (f) => all
|
|
99
|
-
.pipe(Effect.tap(() => logQuery(f, defaultValues)), Effect.map(memFilter(f)), Effect.withSpan("Memory.filter [effect-app/infra/Store]", {
|
|
100
|
-
captureStackTrace: false,
|
|
101
|
-
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
102
|
-
})),
|
|
103
|
-
set: (e) => s
|
|
104
|
-
.find(e.id)
|
|
105
|
-
.pipe(Effect.flatMap((current) => updateETag(e, current)), Effect
|
|
106
|
-
.tap((e) => Ref.get(store).pipe(Effect.map((_) => new Map([..._, [e.id, e]])), Effect.flatMap((_) => Ref.set(store, _)))), withPermit, Effect
|
|
107
|
-
.withSpan("Memory.set [effect-app/infra/Store]", {
|
|
108
|
-
captureStackTrace: false,
|
|
109
|
-
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
110
|
-
})),
|
|
111
|
-
batchSet: (items) => pipe(Effect
|
|
112
|
-
.sync(() => items)
|
|
113
|
-
// align with CosmosDB
|
|
114
|
-
.pipe(Effect.filterOrDieMessage((_) => _.length <= 100, "BatchSet: a batch may not exceed 100 items"), Effect.andThen(batchSet), Effect
|
|
115
|
-
.withSpan("Memory.batchSet [effect-app/infra/Store]", {
|
|
116
|
-
captureStackTrace: false,
|
|
117
|
-
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
118
|
-
}))),
|
|
119
|
-
bulkSet: flow(batchSet, (_) => _.pipe(Effect.withSpan("Memory.bulkSet [effect-app/infra/Store]", {
|
|
120
|
-
captureStackTrace: false,
|
|
121
|
-
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
122
|
-
}))),
|
|
123
|
-
remove: (e) => Ref
|
|
124
|
-
.get(store)
|
|
125
|
-
.pipe(Effect.map((_) => new Map([..._].filter(([_]) => _ !== e.id))), Effect.flatMap((_) => Ref.set(store, _)), withPermit, Effect.withSpan("Memory.remove [effect-app/infra/Store]", {
|
|
126
|
-
captureStackTrace: false,
|
|
127
|
-
attributes: { "repository.model_name": modelName, "repository.namespace": namespace }
|
|
128
|
-
}))
|
|
129
|
-
};
|
|
130
|
-
return s;
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
export const makeMemoryStore = () => ({
|
|
134
|
-
make: (modelName, seed, config) => Effect.gen(function* () {
|
|
135
|
-
const storesSem = Effect.unsafeMakeSemaphore(1);
|
|
136
|
-
const primary = yield* makeMemoryStoreInt(modelName, "primary", seed, config?.defaultValues);
|
|
137
|
-
const ctx = yield* Effect.context();
|
|
138
|
-
const stores = new Map([["primary", primary]]);
|
|
139
|
-
const getStore = !config?.allowNamespace
|
|
140
|
-
? Effect.succeed(primary)
|
|
141
|
-
: FiberRef.get(storeId).pipe(Effect.flatMap((namespace) => {
|
|
142
|
-
const store = stores.get(namespace);
|
|
143
|
-
if (store) {
|
|
144
|
-
return Effect.succeed(store);
|
|
145
|
-
}
|
|
146
|
-
if (!config.allowNamespace(namespace)) {
|
|
147
|
-
throw new Error(`Namespace ${namespace} not allowed!`);
|
|
148
|
-
}
|
|
149
|
-
return storesSem.withPermits(1)(Effect.suspend(() => {
|
|
150
|
-
const store = stores.get(namespace);
|
|
151
|
-
if (store)
|
|
152
|
-
return Effect.sync(() => store);
|
|
153
|
-
return makeMemoryStoreInt(modelName, namespace, seed, config?.defaultValues)
|
|
154
|
-
.pipe(Effect.orDie, Effect.provide(ctx), Effect.tap((store) => Effect.sync(() => stores.set(namespace, store))));
|
|
155
|
-
}));
|
|
156
|
-
}));
|
|
157
|
-
const s = {
|
|
158
|
-
all: Effect.flatMap(getStore, (_) => _.all),
|
|
159
|
-
find: (...args) => Effect.flatMap(getStore, (_) => _.find(...args)),
|
|
160
|
-
filter: (...args) => Effect.flatMap(getStore, (_) => _.filter(...args)),
|
|
161
|
-
set: (...args) => Effect.flatMap(getStore, (_) => _.set(...args)),
|
|
162
|
-
batchSet: (...args) => Effect.flatMap(getStore, (_) => _.batchSet(...args)),
|
|
163
|
-
bulkSet: (...args) => Effect.flatMap(getStore, (_) => _.bulkSet(...args)),
|
|
164
|
-
remove: (...args) => Effect.flatMap(getStore, (_) => _.remove(...args))
|
|
165
|
-
};
|
|
166
|
-
return s;
|
|
167
|
-
})
|
|
168
|
-
});
|
|
169
|
-
export const MemoryStoreLive = StoreMaker.toLayer(Effect.sync(() => makeMemoryStore()));
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL1N0b3JlL01lbW9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRTVGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRTVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUUzQyxNQUFNLFVBQVUsU0FBUyxDQUFzRCxDQUFtQjtJQUVoRyxPQUFPLENBQUMsQ0FBQyxDQUFNLEVBQU8sRUFBRTtRQUN0QixNQUFNLE1BQU0sR0FBRyxDQUFDLENBQU0sRUFBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFRLENBQUE7UUFDdkYsTUFBTSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQTtRQUNwQixNQUFNLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFBO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVks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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codeFilter.d.ts","sourceRoot":"","sources":["../../../src/services/Store/codeFilter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,MAAM,EAAE,MAAM,YAAY,CAAA;AAE1C,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAK1C,eAAO,MAAM,mBAAmB,GAAI,CAAC,KAAK,OAAO,KAAK,CAAC,YAwDtD,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,SAAS,YAAY,EAAE,WAAW,CAAC,YAA6B,CAAA;AAgDtG,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,SAAS,YAAY,EAAE,OAAO,CAAC,KAAG,OAIxE,CAAA;AAED,wBAAgB,UAAU,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,OACpE,CAAC,uCACb"}
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
/* eslint-disable @typescript-eslint/no-unsafe-argument */
|
|
3
|
-
import { Array, Option } from "effect-app";
|
|
4
|
-
import { assertUnreachable, get } from "effect-app/utils";
|
|
5
|
-
import { compare, greaterThan, greaterThanExclusive, lowerThan, lowerThanExclusive } from "./utils.js";
|
|
6
|
-
const vAsArr = (v) => v;
|
|
7
|
-
export const codeFilterStatement = (p, x) => {
|
|
8
|
-
const k = get(x, p.path);
|
|
9
|
-
switch (p.op) {
|
|
10
|
-
case "in":
|
|
11
|
-
return p.value.includes(k);
|
|
12
|
-
case "notIn":
|
|
13
|
-
return !p.value.includes(k);
|
|
14
|
-
case "lt":
|
|
15
|
-
return lowerThan(k, p.value);
|
|
16
|
-
case "lte":
|
|
17
|
-
return lowerThanExclusive(k, p.value);
|
|
18
|
-
case "gt":
|
|
19
|
-
return greaterThan(k, p.value);
|
|
20
|
-
case "gte":
|
|
21
|
-
return greaterThanExclusive(k, p.value);
|
|
22
|
-
case "includes":
|
|
23
|
-
return k.includes(p.value);
|
|
24
|
-
case "notIncludes":
|
|
25
|
-
return !k.includes(p.value);
|
|
26
|
-
case "includes-any":
|
|
27
|
-
return (vAsArr(p.value)).some((_) => k?.includes(_));
|
|
28
|
-
case "notIncludes-any":
|
|
29
|
-
return !(vAsArr(p.value)).some((_) => k?.includes(_));
|
|
30
|
-
case "includes-all":
|
|
31
|
-
return (vAsArr(p.value)).every((_) => k?.includes(_));
|
|
32
|
-
case "notIncludes-all":
|
|
33
|
-
return !(vAsArr(p.value)).every((_) => k?.includes(_));
|
|
34
|
-
case "contains":
|
|
35
|
-
return k.toLowerCase().includes(p.value.toLowerCase());
|
|
36
|
-
case "endsWith":
|
|
37
|
-
return k.toLowerCase().endsWith(p.value.toLowerCase());
|
|
38
|
-
case "startsWith":
|
|
39
|
-
return k.toLowerCase().startsWith(p.value.toLowerCase());
|
|
40
|
-
case "notContains":
|
|
41
|
-
return !k.toLowerCase().includes(p.value.toLowerCase());
|
|
42
|
-
case "notEndsWith":
|
|
43
|
-
return !k.toLowerCase().endsWith(p.value.toLowerCase());
|
|
44
|
-
case "notStartsWith":
|
|
45
|
-
return !k.toLowerCase().startsWith(p.value.toLowerCase());
|
|
46
|
-
case "neq":
|
|
47
|
-
return p.path.includes(".-1.")
|
|
48
|
-
? get(x, p.path.split(".-1.")[0])
|
|
49
|
-
// TODO: or vs and
|
|
50
|
-
.every((_) => !compare(get(_, p.path.split(".-1.")[1]), p.value))
|
|
51
|
-
: !compare(k, p.value);
|
|
52
|
-
case "eq":
|
|
53
|
-
case undefined:
|
|
54
|
-
return p.path.includes(".-1.")
|
|
55
|
-
? get(x, p.path.split(".-1.")[0])
|
|
56
|
-
// TODO: or vs and
|
|
57
|
-
.some((_) => compare(get(_, p.path.split(".-1.")[1]), p.value))
|
|
58
|
-
: compare(k, p.value);
|
|
59
|
-
default: {
|
|
60
|
-
return assertUnreachable(p.op);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
export const codeFilter3 = (state) => (sut) => codeFilter3_(state, sut);
|
|
65
|
-
const codeFilter3__ = (state, sut, statements) => {
|
|
66
|
-
let s = "";
|
|
67
|
-
let l = 0;
|
|
68
|
-
const printN = (n) => {
|
|
69
|
-
return n === 0 ? "" : Array.range(1, n).map(() => " ").join("");
|
|
70
|
-
};
|
|
71
|
-
// TODO: path str updates
|
|
72
|
-
const process = (e) => codeFilterStatement(e, sut);
|
|
73
|
-
for (const e of state) {
|
|
74
|
-
switch (e.t) {
|
|
75
|
-
case "where":
|
|
76
|
-
statements.push(() => process(e));
|
|
77
|
-
s += `statements[${statements.length - 1}]()`;
|
|
78
|
-
break;
|
|
79
|
-
case "or":
|
|
80
|
-
statements.push(() => process(e));
|
|
81
|
-
s += " || " + `statements[${statements.length - 1}]()`;
|
|
82
|
-
break;
|
|
83
|
-
case "and":
|
|
84
|
-
statements.push(() => process(e));
|
|
85
|
-
s += " && " + `statements[${statements.length - 1}]()`;
|
|
86
|
-
break;
|
|
87
|
-
case "or-scope": {
|
|
88
|
-
++l;
|
|
89
|
-
s += ` || (\n${printN(l + 1)}${codeFilter3__(e.result, sut, statements)}\n${printN(l)})`;
|
|
90
|
-
--l;
|
|
91
|
-
break;
|
|
92
|
-
}
|
|
93
|
-
case "and-scope": {
|
|
94
|
-
++l;
|
|
95
|
-
s += ` && (\n${printN(l + 1)}${codeFilter3__(e.result, sut, statements)}\n${printN(l)})`;
|
|
96
|
-
--l;
|
|
97
|
-
break;
|
|
98
|
-
}
|
|
99
|
-
case "where-scope": {
|
|
100
|
-
// ;++l
|
|
101
|
-
s += `(\n${printN(l + 1)}${codeFilter3__(e.result, sut, statements)}\n)`;
|
|
102
|
-
// ;--l
|
|
103
|
-
break;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
return s;
|
|
108
|
-
};
|
|
109
|
-
export const codeFilter3_ = (state, sut) => {
|
|
110
|
-
const statements = []; // must be defined here to be used by eval.
|
|
111
|
-
const s = codeFilter3__(state, sut, statements);
|
|
112
|
-
return eval(s);
|
|
113
|
-
};
|
|
114
|
-
export function codeFilter(filter) {
|
|
115
|
-
return (x) => codeFilter3_(filter, x) ? Option.some(x) : Option.none();
|
|
116
|
-
}
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZUZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9TdG9yZS9jb2RlRmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCwwREFBMEQ7QUFDMUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBR3pELE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUV0RyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsQ0FBcUIsQ0FBQTtBQUVuRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFJLENBQVUsRUFBRSxDQUFJLEVBQUUsRUFBRTtJQUN6RCxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QixRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNiLEtBQUssSUFBSTtZQUNQLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDNUIsS0FBSyxPQUFPO1lBQ1YsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzdCLEtBQUssSUFBSTtZQUNQLE9BQU8sU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDOUIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3ZDLEtBQUssSUFBSTtZQUNQLE9BQU8sV0FBVyxDQUFDLENBQUMs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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../src/services/Store/filterApi/query.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GACb,IAAI,GACJ,OAAO,CAAA;AAEX,MAAM,MAAM,QAAQ,GAChB,UAAU,GACV,YAAY,GACZ,aAAa,GACb,eAAe,GACf,UAAU,GACV,aAAa,GACb,UAAU,GACV,aAAa,GACb,cAAc,GACd,iBAAiB,GACjB,cAAc,GACd,iBAAiB,GACjB,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,CAAA;AAET,MAAM,MAAM,GAAG,GAAG,QAAQ,GAAG,KAAK,CAAA;AAElC,MAAM,MAAM,YAAY,GAAG;IACzB,CAAC,EAAE,UAAU,CAAA;IACb,MAAM,EAAE,YAAY,EAAE,CAAA;CACvB,GAAG;IACF,CAAC,EAAE,WAAW,CAAA;IACd,MAAM,EAAE,YAAY,EAAE,CAAA;CACvB,GAAG;IACF,CAAC,EAAE,aAAa,CAAA;IAChB,MAAM,EAAE,YAAY,EAAE,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,GAAG,CAAA;IAEP,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,YAAY,GACpB;IACA,CAAC,EAAE,OAAO,CAAA;CACX,GAAG,OAAO,GACT;IACA,CAAC,EAAE,IAAI,CAAA;CACR,GAAG,OAAO,GACT;IACA,CAAC,EAAE,KAAK,CAAA;CACT,GAAG,OAAO,GACT,YAAY,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/Store/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEjD;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,iFAkBjD;AAED,cAAc,cAAc,CAAA"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { Secret } from "effect-app";
|
|
3
|
-
import { CosmosStoreLayer } from "./Cosmos.js";
|
|
4
|
-
import { DiskStoreLayer } from "./Disk.js";
|
|
5
|
-
import { MemoryStoreLive } from "./Memory.js";
|
|
6
|
-
/**
|
|
7
|
-
* @tsplus static StoreMaker.Ops Layer
|
|
8
|
-
*/
|
|
9
|
-
export function StoreMakerLayer(cfg) {
|
|
10
|
-
const storageUrl = Secret.value(cfg.url);
|
|
11
|
-
if (storageUrl.startsWith("mem://")) {
|
|
12
|
-
console.log("Using in memory store");
|
|
13
|
-
return MemoryStoreLive;
|
|
14
|
-
}
|
|
15
|
-
if (storageUrl.startsWith("disk://")) {
|
|
16
|
-
const dir = storageUrl.replace("disk://", "");
|
|
17
|
-
console.log("Using disk store at " + dir);
|
|
18
|
-
return DiskStoreLayer(cfg, dir);
|
|
19
|
-
}
|
|
20
|
-
// if (storageUrl.startsWith("redis://")) {
|
|
21
|
-
// console.log("Using Redis store")
|
|
22
|
-
// return RedisStoreLayer(cfg)
|
|
23
|
-
// }
|
|
24
|
-
console.log("Using Cosmos DB store");
|
|
25
|
-
return CosmosStoreLayer(cfg);
|
|
26
|
-
}
|
|
27
|
-
export * from "./service.js";
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvU3RvcmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUk3Qzs7R0FFRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQUMsR0FBa0I7SUFDaEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDeEMsSUFBSSxVQUFVLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDcEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO1FBQ3BDLE9BQU8sZUFBZSxDQUFBO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFVBQVUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUNyQyxNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUM3QyxPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixHQUFHLEdBQUcsQ0FBQyxDQUFBO1FBQ3pDLE9BQU8sY0FBYyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUNqQyxDQUFDO0lBQ0QsMkNBQTJDO0lBQzNDLHFDQUFxQztJQUNyQyxnQ0FBZ0M7SUFDaEMsSUFBSTtJQUVKLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQTtJQUNwQyxPQUFPLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBQzlCLENBQUM7QUFFRCxjQUFjLGNBQWMsQ0FBQSJ9
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/services/Store/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/services/Store/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAE3C,OAAO,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAA;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE1E,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,oBAAoB,CAAC,EAAE,CAAC,mBACxC,CAAC,KACjB,CAGO,CAAA;AACV,eAAO,MAAM,cAAc,SAClB,MAAM,MAAM,CAAC,SAAS,oBAAoB,CAAC;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,CAAC,CAAC,4DAkBvF,CAAA;AAEN,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,cAK1C;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,WAEnD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,WAEvE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,WAEhF;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,WAEzE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,WAElF"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Effect, Option } from "effect-app";
|
|
2
|
-
import objectHash from "object-hash";
|
|
3
|
-
import { OptimisticConcurrencyException } from "../../errors.js";
|
|
4
|
-
export const makeETag = ({ _etag, ...e }) => ({
|
|
5
|
-
...e,
|
|
6
|
-
_etag: objectHash(e)
|
|
7
|
-
});
|
|
8
|
-
export const makeUpdateETag = (type) => (e, current) => Effect.gen(function* () {
|
|
9
|
-
if (e._etag) {
|
|
10
|
-
yield* Effect.mapError(current, () => new OptimisticConcurrencyException({ type, id: e.id, current: "", found: e._etag }));
|
|
11
|
-
}
|
|
12
|
-
if (Option.isSome(current) && current.value._etag !== e._etag) {
|
|
13
|
-
return yield* new OptimisticConcurrencyException({
|
|
14
|
-
type,
|
|
15
|
-
id: current.value.id,
|
|
16
|
-
current: current.value._etag,
|
|
17
|
-
found: e._etag
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
const newE = makeETag(e);
|
|
21
|
-
return newE;
|
|
22
|
-
});
|
|
23
|
-
export function lowercaseIfString(val) {
|
|
24
|
-
if (typeof val === "string") {
|
|
25
|
-
return val.toLowerCase();
|
|
26
|
-
}
|
|
27
|
-
return val;
|
|
28
|
-
}
|
|
29
|
-
export function compare(valA, valB) {
|
|
30
|
-
return valA === valB;
|
|
31
|
-
}
|
|
32
|
-
export function lowerThan(valA, valB) {
|
|
33
|
-
return valA < valB;
|
|
34
|
-
}
|
|
35
|
-
export function lowerThanExclusive(valA, valB) {
|
|
36
|
-
return valA <= valB;
|
|
37
|
-
}
|
|
38
|
-
export function greaterThan(valA, valB) {
|
|
39
|
-
return valA > valB;
|
|
40
|
-
}
|
|
41
|
-
export function greaterThanExclusive(valA, valB) {
|
|
42
|
-
return valA >= valB;
|
|
43
|
-
}
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvU3RvcmUvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDM0MsT0FBTyxVQUFVLE1BQU0sYUFBYSxDQUFBO0FBQ3BDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBR2hFLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUN0QixFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsRUFBSyxFQUNmLEVBQUUsQ0FBRSxDQUFDO0lBQ1IsR0FBRyxDQUFDO0lBQ0osS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7Q0FDckIsQ0FBUyxDQUFBO0FBQ1YsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUN6QixDQUFDLElBQVksRUFBRSxFQUFFLENBQUMsQ0FBaUQsQ0FBSSxFQUFFLE9BQWtCLEVBQUUsRUFBRSxDQUM3RixNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztJQUNsQixJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNaLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQ3BCLE9BQU8sRUFDUCxHQUFHLEVBQUUsQ0FBQyxJQUFJLDhCQUE4QixDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUMxRixDQUFBO0lBQ0gsQ0FBQztJQUNELElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDOUQsT0FBTyxLQUFLLENBQUMsQ0FBQyxJQUFJLDhCQUE4QixDQUFDO1lBQy9DLElBQUk7WUFDSixFQUFFLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BCLE9BQU8sRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUs7WUFDNUIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO1NBQ2YsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUNELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN4QixPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMsQ0FBQyxDQUFBO0FBRU4sTUFBTSxVQUFVLGlCQUFpQixDQUFJLEdBQU07SUFDekMsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM1QixPQUFPLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUE7QUFDWixDQUFDO0FBRUQsTUFBTSxVQUFVLE9BQU8sQ0FBQyxJQUFhLEVBQUUsSUFBYTtJQUNsRCxPQUFPLElBQUksS0FBSyxJQUFJLENBQUE7QUFDdEIsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQUMsSUFBc0IsRUFBRSxJQUFzQjtJQUN0RSxPQUFPLElBQUksR0FBRyxJQUFJLENBQUE7QUFDcEIsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxJQUFzQixFQUFFLElBQXNCO0lBQy9FLE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBQTtBQUNyQixDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFzQixFQUFFLElBQXNCO0lBQ3hFLE9BQU8sSUFBSSxHQUFHLElBQUksQ0FBQTtBQUNwQixDQUFDO0FBRUQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLElBQXNCLEVBQUUsSUFBc0I7SUFDakYsT0FBTyxJQUFJLElBQUksSUFBSSxDQUFBO0FBQ3JCLENBQUMifQ==
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Store.d.ts","sourceRoot":"","sources":["../../src/services/Store.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Model.d.ts","sourceRoot":"","sources":["../../../../src/services/adapters/SQL/Model.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,aAAa,MAAM,oCAAoC,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAIjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEzC,QAAA,MACE,KAAK;;;;;;;GACL,KAAK,0RACL,WAAW,qcACX,SAAS,kQACT,MAAM,iMACN,KAAK,wOACL,OAAO;;;GACP,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GACX,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIZ,CAAA;AAEF;;;GAGG;AACH,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAA;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA;CACvC,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG;IACtD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAA;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAA;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAA;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAA;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAA;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAA;CAChD,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE7D;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,YAAY,GAAG,YAAY,CAAA;AAE/D,OAAO;AACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,KAAK;AACL;;;GAGG;AACH,OAAO;AACP;;;GAGG;AACH,KAAK;AACL;;;GAGG;AACH,WAAW;AACX;;;GAGG;AACH,WAAW;AACX;;;GAGG;AACH,YAAY;AACZ;;;GAGG;AACH,SAAS;AACT;;;GAGG;AACH,MAAM;AACN;;;GAGG;AACH,KAAK,EACN,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,CAAC,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,CAAwB,CAAA;AAErH;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,UAAU,CAA0B,CAAA;AAEtF;;;GAGG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAE,SACrF,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB,CAAC;CACF;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,UAC1E,CAAC,KACR,SAAS,CAAC,CAAC,CAKV,CAAA;AAEJ;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CACxF,SACE,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB,CAAC;CACJ;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,UAC/E,CAAC,KACR,cAAc,CAAC,CAAC,CAMf,CAAA;AAEJ;;;GAGG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAE,SACrF,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;CACnB,CAAC;CACF;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,UAC1E,CAAC,KACR,SAAS,CAAC,CAAC,CAKV,CAAA;AAEJ;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,CAAE,SACxD,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAA;IACvD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IAC7E,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;CAC9E,CAAC;CACF;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,EAAE,CAAC,KAAK,SAAS,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,EACnF,IAAI,EAAE,KAAK,KACR,KAAK,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,GACrD,KAAK,SAAS,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,aAAa,CAAC,KAAK,CAC9D;IACE,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GACnD,CAAC,SAAS,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAC1D,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,GAC3D,KAAK;CACV,CACF,GACD,KAOO,CAAA;AAEX;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAChC,MAAM,CAAC,SAAS,CACd,OAAO,MAAM,CAAC,iBAAiB,EAC/B,OAAO,MAAM,CAAC,mBAAmB,CAClC;CACD;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,gBAO9B,CAAA;AAED;;;GAGG;AACH,MAAM,WAAW,IAAK,SAAQ,MAAM,CAAC,eAAe,CAAC,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,MAAM,CAAC,mBAAmB,CAAC;CAAG;AAEhH;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,EAAE,IAclB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,yDAKtB,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,yDAK1B,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,kEAKlC,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,yDAKpC,CAAA;AAEF;;;GAGG;AACH,MAAM,WAAW,cAAe,SAC9B,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,MAAM,CAAC,WAAW,CAAA;IAC1C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACjE,QAAQ,CAAC,IAAI,EAAE,OAAO,MAAM,CAAC,WAAW,CAAA;CACzC,CAAC;CACF;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,EAAE,cAI3B,CAAA;AAEF;;;GAGG;AACH,MAAM,WAAW,sBAAuB,SACtC,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;IAC1E,QAAQ,CAAC,IAAI,EAAE,OAAO,MAAM,CAAC,WAAW,CAAA;CACzC,CAAC;CACF;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAInC,CAAA;AAEF;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SACxC,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,MAAM,CAAC,qBAAqB,CAAA;IACpD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACjE,QAAQ,CAAC,IAAI,EAAE,OAAO,MAAM,CAAC,qBAAqB,CAAA;CACnD,CAAC;CACF;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,EAAE,wBAIrC,CAAA;AAEF;;;GAGG;AACH,MAAM,WAAW,cAAe,SAC9B,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,MAAM,CAAC,WAAW,CAAA;IAC1C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACjE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACjE,QAAQ,CAAC,IAAI,EAAE,OAAO,MAAM,CAAC,WAAW,CAAA;CACzC,CAAC;CACF;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,EAAE,cAK3B,CAAA;AAEF;;;GAGG;AACH,MAAM,WAAW,sBAAuB,SACtC,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;IAC1E,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;IAC1E,QAAQ,CAAC,IAAI,EAAE,OAAO,MAAM,CAAC,WAAW,CAAA;CACzC,CAAC;CACF;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAKnC,CAAA;AAEF;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SACxC,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,MAAM,CAAC,qBAAqB,CAAA;IACpD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACjE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACjE,QAAQ,CAAC,IAAI,EAAE,OAAO,MAAM,CAAC,qBAAqB,CAAA;CACnD,CAAC;CACF;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB,EAAE,wBAKrC,CAAA;AAEF;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CACxF,SACE,aAAa,CAAC,KAAK,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACvF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACvF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACvF,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAChB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;IACtB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;CACvB,CAAC;CACJ;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,UAC/E,CAAC,KACR,cAAc,CAAC,CAAC,CAUlB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,CAAC,SAAS,GAAG,EACb,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,SACzE,CAAC,WAAW;IACnB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAA;IACrB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC5C,KAAG,MAAM,CAAC,MAAM,CACf;IACE,QAAQ,CAAC,MAAM,EAAE,CACf,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KACxB,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;IAC3E,QAAQ,CAAC,UAAU,EAAE,CACnB,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KACxB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;IACtE,QAAQ,CAAC,MAAM,EAAE,CACf,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KACxB,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;IAC3E,QAAQ,CAAC,UAAU,EAAE,CACnB,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KACxB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;IACtE,QAAQ,CAAC,QAAQ,EAAE,CACjB,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,KACpC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1G,QAAQ,CAAC,MAAM,EAAE,CACf,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,KACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CACxE,EACD,KAAK,EACL,SAAS,CA4JP,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAC1B,CAAC,SAAS,YAAY,EACtB,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,SAEzE,CAAC,WACC;IACP,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC3C,KACA,MAAM,CAAC,MAAM,CACd;IACE,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IAC1E,QAAQ,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACzE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACvG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CAClF,EACD,KAAK,EACL,SAAS,GAAG,KAAK,CAoGf,CAAA"}
|