@xyo-network/archivist 2.21.23
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/LICENSE +165 -0
- package/README.md +79 -0
- package/babel.config.json +5 -0
- package/dist/cjs/Archivist/Account/Api.d.ts +18 -0
- package/dist/cjs/Archivist/Account/Api.js +15 -0
- package/dist/cjs/Archivist/Account/Api.js.map +1 -0
- package/dist/cjs/Archivist/Account/index.d.ts +1 -0
- package/dist/cjs/Archivist/Account/index.js +5 -0
- package/dist/cjs/Archivist/Account/index.js.map +1 -0
- package/dist/cjs/Archivist/Api.d.ts +36 -0
- package/dist/cjs/Archivist/Api.js +70 -0
- package/dist/cjs/Archivist/Api.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Api.d.ts +18 -0
- package/dist/cjs/Archivist/Archive/Api.js +40 -0
- package/dist/cjs/Archivist/Archive/Api.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Schema/Api.d.ts +7 -0
- package/dist/cjs/Archivist/Archive/Schema/Api.js +15 -0
- package/dist/cjs/Archivist/Archive/Schema/Api.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Schema/index.d.ts +1 -0
- package/dist/cjs/Archivist/Archive/Schema/index.js +5 -0
- package/dist/cjs/Archivist/Archive/Schema/index.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Schemas/Api.d.ts +6 -0
- package/dist/cjs/Archivist/Archive/Schemas/Api.js +14 -0
- package/dist/cjs/Archivist/Archive/Schemas/Api.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Schemas/index.d.ts +1 -0
- package/dist/cjs/Archivist/Archive/Schemas/index.js +5 -0
- package/dist/cjs/Archivist/Archive/Schemas/index.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Settings/Api.d.ts +6 -0
- package/dist/cjs/Archivist/Archive/Settings/Api.js +15 -0
- package/dist/cjs/Archivist/Archive/Settings/Api.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Settings/Key/Api.d.ts +5 -0
- package/dist/cjs/Archivist/Archive/Settings/Key/Api.js +11 -0
- package/dist/cjs/Archivist/Archive/Settings/Key/Api.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Settings/Key/index.d.ts +1 -0
- package/dist/cjs/Archivist/Archive/Settings/Key/index.js +5 -0
- package/dist/cjs/Archivist/Archive/Settings/Key/index.js.map +1 -0
- package/dist/cjs/Archivist/Archive/Settings/index.d.ts +2 -0
- package/dist/cjs/Archivist/Archive/Settings/index.js +6 -0
- package/dist/cjs/Archivist/Archive/Settings/index.js.map +1 -0
- package/dist/cjs/Archivist/Archive/index.d.ts +4 -0
- package/dist/cjs/Archivist/Archive/index.js +8 -0
- package/dist/cjs/Archivist/Archive/index.js.map +1 -0
- package/dist/cjs/Archivist/Archives/Api.d.ts +8 -0
- package/dist/cjs/Archivist/Archives/Api.js +16 -0
- package/dist/cjs/Archivist/Archives/Api.js.map +1 -0
- package/dist/cjs/Archivist/Archives/index.d.ts +1 -0
- package/dist/cjs/Archivist/Archives/index.js +5 -0
- package/dist/cjs/Archivist/Archives/index.js.map +1 -0
- package/dist/cjs/Archivist/Block/Api.d.ts +9 -0
- package/dist/cjs/Archivist/Block/Api.js +12 -0
- package/dist/cjs/Archivist/Block/Api.js.map +1 -0
- package/dist/cjs/Archivist/Block/index.d.ts +1 -0
- package/dist/cjs/Archivist/Block/index.js +5 -0
- package/dist/cjs/Archivist/Block/index.js.map +1 -0
- package/dist/cjs/Archivist/Model/Archivist.d.ts +13 -0
- package/dist/cjs/Archivist/Model/Archivist.js +3 -0
- package/dist/cjs/Archivist/Model/Archivist.js.map +1 -0
- package/dist/cjs/Archivist/Model/index.d.ts +1 -0
- package/dist/cjs/Archivist/Model/index.js +5 -0
- package/dist/cjs/Archivist/Model/index.js.map +1 -0
- package/dist/cjs/Archivist/Node/Api.d.ts +29 -0
- package/dist/cjs/Archivist/Node/Api.js +75 -0
- package/dist/cjs/Archivist/Node/Api.js.map +1 -0
- package/dist/cjs/Archivist/Node/index.d.ts +1 -0
- package/dist/cjs/Archivist/Node/index.js +5 -0
- package/dist/cjs/Archivist/Node/index.js.map +1 -0
- package/dist/cjs/Archivist/Payload/Api.d.ts +40 -0
- package/dist/cjs/Archivist/Payload/Api.js +84 -0
- package/dist/cjs/Archivist/Payload/Api.js.map +1 -0
- package/dist/cjs/Archivist/Payload/Schema/Api.d.ts +8 -0
- package/dist/cjs/Archivist/Payload/Schema/Api.js +14 -0
- package/dist/cjs/Archivist/Payload/Schema/Api.js.map +1 -0
- package/dist/cjs/Archivist/Payload/Schema/index.d.ts +1 -0
- package/dist/cjs/Archivist/Payload/Schema/index.js +5 -0
- package/dist/cjs/Archivist/Payload/Schema/index.js.map +1 -0
- package/dist/cjs/Archivist/Payload/index.d.ts +2 -0
- package/dist/cjs/Archivist/Payload/index.js +6 -0
- package/dist/cjs/Archivist/Payload/index.js.map +1 -0
- package/dist/cjs/Archivist/XyoApiArchivist.d.ts +13 -0
- package/dist/cjs/Archivist/XyoApiArchivist.js +35 -0
- package/dist/cjs/Archivist/XyoApiArchivist.js.map +1 -0
- package/dist/cjs/Archivist/XyoArchivist.d.ts +17 -0
- package/dist/cjs/Archivist/XyoArchivist.js +35 -0
- package/dist/cjs/Archivist/XyoArchivist.js.map +1 -0
- package/dist/cjs/Archivist/XyoMemoryArchivist.d.ts +12 -0
- package/dist/cjs/Archivist/XyoMemoryArchivist.js +65 -0
- package/dist/cjs/Archivist/XyoMemoryArchivist.js.map +1 -0
- package/dist/cjs/Archivist/index.d.ts +10 -0
- package/dist/cjs/Archivist/index.js +14 -0
- package/dist/cjs/Archivist/index.js.map +1 -0
- package/dist/cjs/Base.d.ts +33 -0
- package/dist/cjs/Base.js +147 -0
- package/dist/cjs/Base.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/LocationDivinerApi.d.ts +11 -0
- package/dist/cjs/Diviner/LocationDiviner/LocationDivinerApi.js +28 -0
- package/dist/cjs/Diviner/LocationDiviner/LocationDivinerApi.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/LocationDivinerApiResponseTransformer.d.ts +9 -0
- package/dist/cjs/Diviner/LocationDiviner/LocationDivinerApiResponseTransformer.js +24 -0
- package/dist/cjs/Diviner/LocationDiviner/LocationDivinerApiResponseTransformer.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapPointProperties.d.ts +4 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapPointProperties.js +3 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapPointProperties.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapQuery.d.ts +11 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapQuery.js +10 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapQuery.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/index.d.ts +2 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/index.js +6 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/index.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/LocationQuadkeyHeatmapQuery.d.ts +11 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/LocationQuadkeyHeatmapQuery.js +10 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/LocationQuadkeyHeatmapQuery.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/index.d.ts +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/index.js +5 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/index.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQueryCreationRequest.d.ts +17 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQueryCreationRequest.js +3 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQueryCreationRequest.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQueryCreationResponse.d.ts +4 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQueryCreationResponse.js +3 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQueryCreationResponse.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuerySchema.d.ts +5 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuerySchema.js +13 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationQuerySchema.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangePointProperties.d.ts +7 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangePointProperties.js +3 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangePointProperties.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangeQuery.d.ts +11 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangeQuery.js +10 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangeQuery.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/index.d.ts +2 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/index.js +6 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/index.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/index.d.ts +6 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/index.js +10 -0
- package/dist/cjs/Diviner/LocationDiviner/Queries/index.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/CurrentLocationWitness.d.ts +13 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/CurrentLocationWitness.js +5 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/CurrentLocationWitness.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/LocationWitness.d.ts +21 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/LocationWitness.js +5 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/LocationWitness.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/index.d.ts +2 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/index.js +6 -0
- package/dist/cjs/Diviner/LocationDiviner/Witnesses/index.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/index.d.ts +4 -0
- package/dist/cjs/Diviner/LocationDiviner/index.js +8 -0
- package/dist/cjs/Diviner/LocationDiviner/index.js.map +1 -0
- package/dist/cjs/Diviner/LocationDiviner/models.d.ts +4 -0
- package/dist/cjs/Diviner/LocationDiviner/models.js +3 -0
- package/dist/cjs/Diviner/LocationDiviner/models.js.map +1 -0
- package/dist/cjs/Diviner/index.d.ts +1 -0
- package/dist/cjs/Diviner/index.js +5 -0
- package/dist/cjs/Diviner/index.js.map +1 -0
- package/dist/cjs/Simple.d.ts +21 -0
- package/dist/cjs/Simple.js +60 -0
- package/dist/cjs/Simple.js.map +1 -0
- package/dist/cjs/Test/index.d.ts +2 -0
- package/dist/cjs/Test/index.js +6 -0
- package/dist/cjs/Test/index.js.map +1 -0
- package/dist/cjs/Test/testBoundWitness.d.ts +3 -0
- package/dist/cjs/Test/testBoundWitness.js +17 -0
- package/dist/cjs/Test/testBoundWitness.js.map +1 -0
- package/dist/cjs/Test/testPayload.d.ts +5 -0
- package/dist/cjs/Test/testPayload.js +19 -0
- package/dist/cjs/Test/testPayload.js.map +1 -0
- package/dist/cjs/User/Api.d.ts +31 -0
- package/dist/cjs/User/Api.js +25 -0
- package/dist/cjs/User/Api.js.map +1 -0
- package/dist/cjs/User/index.d.ts +1 -0
- package/dist/cjs/User/index.js +5 -0
- package/dist/cjs/User/index.js.map +1 -0
- package/dist/cjs/WithArchive.d.ts +3 -0
- package/dist/cjs/WithArchive.js +3 -0
- package/dist/cjs/WithArchive.js.map +1 -0
- package/dist/cjs/XyoArchivist.d.ts +17 -0
- package/dist/cjs/XyoArchivist.js +35 -0
- package/dist/cjs/XyoArchivist.js.map +1 -0
- package/dist/cjs/XyoMemoryArchivist.d.ts +12 -0
- package/dist/cjs/XyoMemoryArchivist.js +65 -0
- package/dist/cjs/XyoMemoryArchivist.js.map +1 -0
- package/dist/cjs/XyoPayloadFindFilter.d.ts +7 -0
- package/dist/cjs/XyoPayloadFindFilter.js +3 -0
- package/dist/cjs/XyoPayloadFindFilter.js.map +1 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.js +8 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/model/Archivist.d.ts +13 -0
- package/dist/cjs/model/Archivist.js +3 -0
- package/dist/cjs/model/Archivist.js.map +1 -0
- package/dist/cjs/model/index.d.ts +1 -0
- package/dist/cjs/model/index.js +5 -0
- package/dist/cjs/model/index.js.map +1 -0
- package/dist/cjs/models/Api/Config.d.ts +24 -0
- package/dist/cjs/models/Api/Config.js +3 -0
- package/dist/cjs/models/Api/Config.js.map +1 -0
- package/dist/cjs/models/Api/Envelope.d.ts +14 -0
- package/dist/cjs/models/Api/Envelope.js +3 -0
- package/dist/cjs/models/Api/Envelope.js.map +1 -0
- package/dist/cjs/models/Api/Error.d.ts +4 -0
- package/dist/cjs/models/Api/Error.js +3 -0
- package/dist/cjs/models/Api/Error.js.map +1 -0
- package/dist/cjs/models/Api/Reportable.d.ts +7 -0
- package/dist/cjs/models/Api/Reportable.js +3 -0
- package/dist/cjs/models/Api/Reportable.js.map +1 -0
- package/dist/cjs/models/Api/Response.d.ts +7 -0
- package/dist/cjs/models/Api/Response.js +3 -0
- package/dist/cjs/models/Api/Response.js.map +1 -0
- package/dist/cjs/models/Api/Warning.d.ts +1 -0
- package/dist/cjs/models/Api/Warning.js +3 -0
- package/dist/cjs/models/Api/Warning.js.map +1 -0
- package/dist/cjs/models/Api/index.d.ts +6 -0
- package/dist/cjs/models/Api/index.js +10 -0
- package/dist/cjs/models/Api/index.js.map +1 -0
- package/dist/cjs/models/Archive.d.ts +24 -0
- package/dist/cjs/models/Archive.js +3 -0
- package/dist/cjs/models/Archive.js.map +1 -0
- package/dist/cjs/models/ArchiveKey.d.ts +5 -0
- package/dist/cjs/models/ArchiveKey.js +3 -0
- package/dist/cjs/models/ArchiveKey.js.map +1 -0
- package/dist/cjs/models/ArchivePath.d.ts +3 -0
- package/dist/cjs/models/ArchivePath.js +3 -0
- package/dist/cjs/models/ArchivePath.js.map +1 -0
- package/dist/cjs/models/index.d.ts +4 -0
- package/dist/cjs/models/index.js +8 -0
- package/dist/cjs/models/index.js.map +1 -0
- package/dist/cjs/objToQuery.d.ts +1 -0
- package/dist/cjs/objToQuery.js +13 -0
- package/dist/cjs/objToQuery.js.map +1 -0
- package/dist/docs.json +7 -0
- package/dist/esm/Archivist/Account/Api.d.ts +18 -0
- package/dist/esm/Archivist/Account/Api.js +17 -0
- package/dist/esm/Archivist/Account/Api.js.map +1 -0
- package/dist/esm/Archivist/Account/index.d.ts +1 -0
- package/dist/esm/Archivist/Account/index.js +2 -0
- package/dist/esm/Archivist/Account/index.js.map +1 -0
- package/dist/esm/Archivist/Api.d.ts +36 -0
- package/dist/esm/Archivist/Api.js +84 -0
- package/dist/esm/Archivist/Api.js.map +1 -0
- package/dist/esm/Archivist/Archive/Api.d.ts +18 -0
- package/dist/esm/Archivist/Archive/Api.js +51 -0
- package/dist/esm/Archivist/Archive/Api.js.map +1 -0
- package/dist/esm/Archivist/Archive/Schema/Api.d.ts +7 -0
- package/dist/esm/Archivist/Archive/Schema/Api.js +14 -0
- package/dist/esm/Archivist/Archive/Schema/Api.js.map +1 -0
- package/dist/esm/Archivist/Archive/Schema/index.d.ts +1 -0
- package/dist/esm/Archivist/Archive/Schema/index.js +2 -0
- package/dist/esm/Archivist/Archive/Schema/index.js.map +1 -0
- package/dist/esm/Archivist/Archive/Schemas/Api.d.ts +6 -0
- package/dist/esm/Archivist/Archive/Schemas/Api.js +13 -0
- package/dist/esm/Archivist/Archive/Schemas/Api.js.map +1 -0
- package/dist/esm/Archivist/Archive/Schemas/index.d.ts +1 -0
- package/dist/esm/Archivist/Archive/Schemas/index.js +2 -0
- package/dist/esm/Archivist/Archive/Schemas/index.js.map +1 -0
- package/dist/esm/Archivist/Archive/Settings/Api.d.ts +6 -0
- package/dist/esm/Archivist/Archive/Settings/Api.js +14 -0
- package/dist/esm/Archivist/Archive/Settings/Api.js.map +1 -0
- package/dist/esm/Archivist/Archive/Settings/Key/Api.d.ts +5 -0
- package/dist/esm/Archivist/Archive/Settings/Key/Api.js +10 -0
- package/dist/esm/Archivist/Archive/Settings/Key/Api.js.map +1 -0
- package/dist/esm/Archivist/Archive/Settings/Key/index.d.ts +1 -0
- package/dist/esm/Archivist/Archive/Settings/Key/index.js +2 -0
- package/dist/esm/Archivist/Archive/Settings/Key/index.js.map +1 -0
- package/dist/esm/Archivist/Archive/Settings/index.d.ts +2 -0
- package/dist/esm/Archivist/Archive/Settings/index.js +3 -0
- package/dist/esm/Archivist/Archive/Settings/index.js.map +1 -0
- package/dist/esm/Archivist/Archive/index.d.ts +4 -0
- package/dist/esm/Archivist/Archive/index.js +5 -0
- package/dist/esm/Archivist/Archive/index.js.map +1 -0
- package/dist/esm/Archivist/Archives/Api.d.ts +8 -0
- package/dist/esm/Archivist/Archives/Api.js +15 -0
- package/dist/esm/Archivist/Archives/Api.js.map +1 -0
- package/dist/esm/Archivist/Archives/index.d.ts +1 -0
- package/dist/esm/Archivist/Archives/index.js +2 -0
- package/dist/esm/Archivist/Archives/index.js.map +1 -0
- package/dist/esm/Archivist/Block/Api.d.ts +9 -0
- package/dist/esm/Archivist/Block/Api.js +11 -0
- package/dist/esm/Archivist/Block/Api.js.map +1 -0
- package/dist/esm/Archivist/Block/index.d.ts +1 -0
- package/dist/esm/Archivist/Block/index.js +2 -0
- package/dist/esm/Archivist/Block/index.js.map +1 -0
- package/dist/esm/Archivist/Model/Archivist.d.ts +13 -0
- package/dist/esm/Archivist/Model/Archivist.js +2 -0
- package/dist/esm/Archivist/Model/Archivist.js.map +1 -0
- package/dist/esm/Archivist/Model/index.d.ts +1 -0
- package/dist/esm/Archivist/Model/index.js +2 -0
- package/dist/esm/Archivist/Model/index.js.map +1 -0
- package/dist/esm/Archivist/Node/Api.d.ts +29 -0
- package/dist/esm/Archivist/Node/Api.js +68 -0
- package/dist/esm/Archivist/Node/Api.js.map +1 -0
- package/dist/esm/Archivist/Node/index.d.ts +1 -0
- package/dist/esm/Archivist/Node/index.js +2 -0
- package/dist/esm/Archivist/Node/index.js.map +1 -0
- package/dist/esm/Archivist/Payload/Api.d.ts +40 -0
- package/dist/esm/Archivist/Payload/Api.js +68 -0
- package/dist/esm/Archivist/Payload/Api.js.map +1 -0
- package/dist/esm/Archivist/Payload/Schema/Api.d.ts +8 -0
- package/dist/esm/Archivist/Payload/Schema/Api.js +13 -0
- package/dist/esm/Archivist/Payload/Schema/Api.js.map +1 -0
- package/dist/esm/Archivist/Payload/Schema/index.d.ts +1 -0
- package/dist/esm/Archivist/Payload/Schema/index.js +2 -0
- package/dist/esm/Archivist/Payload/Schema/index.js.map +1 -0
- package/dist/esm/Archivist/Payload/index.d.ts +2 -0
- package/dist/esm/Archivist/Payload/index.js +3 -0
- package/dist/esm/Archivist/Payload/index.js.map +1 -0
- package/dist/esm/Archivist/XyoApiArchivist.d.ts +13 -0
- package/dist/esm/Archivist/XyoApiArchivist.js +22 -0
- package/dist/esm/Archivist/XyoApiArchivist.js.map +1 -0
- package/dist/esm/Archivist/XyoArchivist.d.ts +17 -0
- package/dist/esm/Archivist/XyoArchivist.js +28 -0
- package/dist/esm/Archivist/XyoArchivist.js.map +1 -0
- package/dist/esm/Archivist/XyoMemoryArchivist.d.ts +12 -0
- package/dist/esm/Archivist/XyoMemoryArchivist.js +58 -0
- package/dist/esm/Archivist/XyoMemoryArchivist.js.map +1 -0
- package/dist/esm/Archivist/index.d.ts +10 -0
- package/dist/esm/Archivist/index.js +11 -0
- package/dist/esm/Archivist/index.js.map +1 -0
- package/dist/esm/Base.d.ts +33 -0
- package/dist/esm/Base.js +129 -0
- package/dist/esm/Base.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/LocationDivinerApi.d.ts +11 -0
- package/dist/esm/Diviner/LocationDiviner/LocationDivinerApi.js +20 -0
- package/dist/esm/Diviner/LocationDiviner/LocationDivinerApi.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/LocationDivinerApiResponseTransformer.d.ts +9 -0
- package/dist/esm/Diviner/LocationDiviner/LocationDivinerApiResponseTransformer.js +18 -0
- package/dist/esm/Diviner/LocationDiviner/LocationDivinerApiResponseTransformer.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapPointProperties.d.ts +4 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapPointProperties.js +2 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapPointProperties.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapQuery.d.ts +11 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapQuery.js +6 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapQuery.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/index.d.ts +2 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/index.js +3 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationHeatmapQuery/index.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/LocationQuadkeyHeatmapQuery.d.ts +11 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/LocationQuadkeyHeatmapQuery.js +6 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/LocationQuadkeyHeatmapQuery.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/index.d.ts +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/index.js +2 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/index.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQueryCreationRequest.d.ts +17 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQueryCreationRequest.js +2 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQueryCreationRequest.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQueryCreationResponse.d.ts +4 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQueryCreationResponse.js +2 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQueryCreationResponse.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuerySchema.d.ts +5 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuerySchema.js +9 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationQuerySchema.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangePointProperties.d.ts +7 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangePointProperties.js +2 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangePointProperties.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangeQuery.d.ts +11 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangeQuery.js +6 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangeQuery.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/index.d.ts +2 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/index.js +3 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/LocationTimeRangeQuery/index.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/index.d.ts +6 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/index.js +7 -0
- package/dist/esm/Diviner/LocationDiviner/Queries/index.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/CurrentLocationWitness.d.ts +13 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/CurrentLocationWitness.js +2 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/CurrentLocationWitness.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/LocationWitness.d.ts +21 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/LocationWitness.js +2 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/LocationWitness.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/index.d.ts +2 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/index.js +3 -0
- package/dist/esm/Diviner/LocationDiviner/Witnesses/index.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/index.d.ts +4 -0
- package/dist/esm/Diviner/LocationDiviner/index.js +5 -0
- package/dist/esm/Diviner/LocationDiviner/index.js.map +1 -0
- package/dist/esm/Diviner/LocationDiviner/models.d.ts +4 -0
- package/dist/esm/Diviner/LocationDiviner/models.js +2 -0
- package/dist/esm/Diviner/LocationDiviner/models.js.map +1 -0
- package/dist/esm/Diviner/index.d.ts +1 -0
- package/dist/esm/Diviner/index.js +2 -0
- package/dist/esm/Diviner/index.js.map +1 -0
- package/dist/esm/Simple.d.ts +21 -0
- package/dist/esm/Simple.js +45 -0
- package/dist/esm/Simple.js.map +1 -0
- package/dist/esm/Test/index.d.ts +2 -0
- package/dist/esm/Test/index.js +3 -0
- package/dist/esm/Test/index.js.map +1 -0
- package/dist/esm/Test/testBoundWitness.d.ts +3 -0
- package/dist/esm/Test/testBoundWitness.js +14 -0
- package/dist/esm/Test/testBoundWitness.js.map +1 -0
- package/dist/esm/Test/testPayload.d.ts +5 -0
- package/dist/esm/Test/testPayload.js +15 -0
- package/dist/esm/Test/testPayload.js.map +1 -0
- package/dist/esm/User/Api.d.ts +31 -0
- package/dist/esm/User/Api.js +27 -0
- package/dist/esm/User/Api.js.map +1 -0
- package/dist/esm/User/index.d.ts +1 -0
- package/dist/esm/User/index.js +2 -0
- package/dist/esm/User/index.js.map +1 -0
- package/dist/esm/WithArchive.d.ts +3 -0
- package/dist/esm/WithArchive.js +2 -0
- package/dist/esm/WithArchive.js.map +1 -0
- package/dist/esm/XyoApiArchivist.d.ts +13 -0
- package/dist/esm/XyoApiArchivist.js +22 -0
- package/dist/esm/XyoApiArchivist.js.map +1 -0
- package/dist/esm/XyoArchivist.d.ts +17 -0
- package/dist/esm/XyoArchivist.js +28 -0
- package/dist/esm/XyoArchivist.js.map +1 -0
- package/dist/esm/XyoMemoryArchivist.d.ts +12 -0
- package/dist/esm/XyoMemoryArchivist.js +58 -0
- package/dist/esm/XyoMemoryArchivist.js.map +1 -0
- package/dist/esm/XyoPayloadFindFilter.d.ts +7 -0
- package/dist/esm/XyoPayloadFindFilter.js +2 -0
- package/dist/esm/XyoPayloadFindFilter.js.map +1 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/model/Archivist.d.ts +13 -0
- package/dist/esm/model/Archivist.js +2 -0
- package/dist/esm/model/Archivist.js.map +1 -0
- package/dist/esm/model/index.d.ts +1 -0
- package/dist/esm/model/index.js +2 -0
- package/dist/esm/model/index.js.map +1 -0
- package/dist/esm/models/Api/Config.d.ts +24 -0
- package/dist/esm/models/Api/Config.js +2 -0
- package/dist/esm/models/Api/Config.js.map +1 -0
- package/dist/esm/models/Api/Envelope.d.ts +14 -0
- package/dist/esm/models/Api/Envelope.js +2 -0
- package/dist/esm/models/Api/Envelope.js.map +1 -0
- package/dist/esm/models/Api/Error.d.ts +4 -0
- package/dist/esm/models/Api/Error.js +2 -0
- package/dist/esm/models/Api/Error.js.map +1 -0
- package/dist/esm/models/Api/Reportable.d.ts +7 -0
- package/dist/esm/models/Api/Reportable.js +2 -0
- package/dist/esm/models/Api/Reportable.js.map +1 -0
- package/dist/esm/models/Api/Response.d.ts +7 -0
- package/dist/esm/models/Api/Response.js +2 -0
- package/dist/esm/models/Api/Response.js.map +1 -0
- package/dist/esm/models/Api/Warning.d.ts +1 -0
- package/dist/esm/models/Api/Warning.js +2 -0
- package/dist/esm/models/Api/Warning.js.map +1 -0
- package/dist/esm/models/Api/index.d.ts +6 -0
- package/dist/esm/models/Api/index.js +7 -0
- package/dist/esm/models/Api/index.js.map +1 -0
- package/dist/esm/models/Archive.d.ts +24 -0
- package/dist/esm/models/Archive.js +2 -0
- package/dist/esm/models/Archive.js.map +1 -0
- package/dist/esm/models/ArchiveKey.d.ts +5 -0
- package/dist/esm/models/ArchiveKey.js +2 -0
- package/dist/esm/models/ArchiveKey.js.map +1 -0
- package/dist/esm/models/ArchivePath.d.ts +3 -0
- package/dist/esm/models/ArchivePath.js +2 -0
- package/dist/esm/models/ArchivePath.js.map +1 -0
- package/dist/esm/models/index.d.ts +4 -0
- package/dist/esm/models/index.js +5 -0
- package/dist/esm/models/index.js.map +1 -0
- package/dist/esm/objToQuery.d.ts +1 -0
- package/dist/esm/objToQuery.js +9 -0
- package/dist/esm/objToQuery.js.map +1 -0
- package/jest.config.cjs +26 -0
- package/package.json +66 -0
- package/src/XyoArchivist.ts +40 -0
- package/src/XyoMemoryArchivist.ts +62 -0
- package/src/XyoPayloadFindFilter.ts +7 -0
- package/src/index.ts +4 -0
- package/src/model/Archivist.ts +22 -0
- package/src/model/index.ts +1 -0
- package/typedoc.json +11 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Reportable.js","sourceRoot":"","sources":["../../../../src/models/Api/Reportable.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AxiosResponse } from 'axios';
|
|
2
|
+
import { XyoApiEnvelope } from './Envelope';
|
|
3
|
+
export declare type XyoApiResponse<T = unknown, D = unknown> = AxiosResponse<T, D>;
|
|
4
|
+
export declare type XyoApiResponseBody<T> = T | undefined;
|
|
5
|
+
export declare type XyoApiResponseTuple<T> = [T | undefined, XyoApiEnvelope<T | undefined>, XyoApiResponse<XyoApiEnvelope<T | undefined>>];
|
|
6
|
+
export declare type XyoApiResponseTupleOrBody<T> = XyoApiResponseTuple<T> | XyoApiResponseBody<T>;
|
|
7
|
+
export declare type XyoApiResponseType = 'body' | 'tuple';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Response.js","sourceRoot":"","sources":["../../../../src/models/Api/Response.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare type XyoApiWarning = Error;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Warning.js","sourceRoot":"","sources":["../../../../src/models/Api/Warning.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/Api/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { XyoArchivePath } from './ArchivePath';
|
|
2
|
+
export declare type AccessLevel = 'public' | 'private' | 'none';
|
|
3
|
+
export declare type AccessType = 'read' | 'remove' | 'create' | 'list';
|
|
4
|
+
export declare type ExpirationWindow = 'create' | 'read';
|
|
5
|
+
export interface XyoAccessControl {
|
|
6
|
+
access?: Record<AccessType, AccessLevel>;
|
|
7
|
+
expiration?: {
|
|
8
|
+
window?: ExpirationWindow;
|
|
9
|
+
delay?: number;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export interface XyoAccessControls {
|
|
13
|
+
/**
|
|
14
|
+
* Set access controls on a per schema basis.
|
|
15
|
+
* '*' can be used as a wildcard
|
|
16
|
+
* Access control is set from a generic to specific direction if
|
|
17
|
+
* multiple wildcard versions apply to a schema
|
|
18
|
+
*/
|
|
19
|
+
schema?: Record<string, XyoAccessControl>;
|
|
20
|
+
}
|
|
21
|
+
export interface XyoArchive extends XyoArchivePath {
|
|
22
|
+
user?: string;
|
|
23
|
+
accessControl?: XyoAccessControl | boolean;
|
|
24
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Archive.js","sourceRoot":"","sources":["../../../src/models/Archive.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArchiveKey.js","sourceRoot":"","sources":["../../../src/models/ArchiveKey.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArchivePath.js","sourceRoot":"","sources":["../../../src/models/ArchivePath.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const objToQuery: (obj: Record<string, string | number | undefined>) => string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objToQuery.js","sourceRoot":"","sources":["../../src/objToQuery.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAgD,EAAE,EAAE;IAC7E,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;SAC3B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACpB,OAAO,GAAG,GAAG,IAAI,KAAK,EAAE,CAAA;IAC1B,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;SACtC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;AAChB,CAAC,CAAA"}
|
package/jest.config.cjs
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const generateJestConfig = ({ esModules }) => {
|
|
2
|
+
const esModulesList = Array.isArray(esModules) ? esModules.join('|') : esModules
|
|
3
|
+
return {
|
|
4
|
+
globals: {
|
|
5
|
+
'ts-jest': {
|
|
6
|
+
tsconfig: 'tsconfig.test.json',
|
|
7
|
+
},
|
|
8
|
+
},
|
|
9
|
+
moduleNameMapper: {
|
|
10
|
+
'^(\\.{1,2}/.*)\\.js$': '$1',
|
|
11
|
+
},
|
|
12
|
+
preset: 'ts-jest/presets/default-esm',
|
|
13
|
+
setupFiles: ['dotenv/config'],
|
|
14
|
+
setupFilesAfterEnv: ['jest-sorted', 'jest-extended/all'],
|
|
15
|
+
testRegex: '(/__tests__/.*|(\\.|/)(test|spec))\\.tsx?$',
|
|
16
|
+
testTimeout: 20000,
|
|
17
|
+
transform: {
|
|
18
|
+
[`(${esModulesList}).+\\.js$`]: 'babel-jest',
|
|
19
|
+
'^.+\\.tsx?$': 'ts-jest/legacy',
|
|
20
|
+
},
|
|
21
|
+
transformIgnorePatterns: [`./node_modules/(?!${esModulesList})`],
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// eslint-disable-next-line no-undef
|
|
26
|
+
module.exports = generateJestConfig({ esModules: ['is-ip', 'ip-regex', 'lodash-es', 'uuid'] })
|
package/package.json
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"author": {
|
|
3
|
+
"email": "support@xyo.network",
|
|
4
|
+
"name": "XYO Development Team",
|
|
5
|
+
"url": "https://xyo.network"
|
|
6
|
+
},
|
|
7
|
+
"bugs": {
|
|
8
|
+
"email": "support@xyo.network",
|
|
9
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
10
|
+
},
|
|
11
|
+
"dependencies": {
|
|
12
|
+
"@xylabs/sdk-js": "^2.6.2",
|
|
13
|
+
"@xyo-network/account": "^2.21.23",
|
|
14
|
+
"@xyo-network/boundwitness": "^2.21.23",
|
|
15
|
+
"@xyo-network/core": "^2.21.23",
|
|
16
|
+
"@xyo-network/payload": "^2.21.23",
|
|
17
|
+
"@xyo-network/typeof": "^2.21.23",
|
|
18
|
+
"axios": "^0.27.2",
|
|
19
|
+
"lru-cache": "^7.13.1",
|
|
20
|
+
"pako": "^2.0.4",
|
|
21
|
+
"uuid": "^8.3.2"
|
|
22
|
+
},
|
|
23
|
+
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"@ethersproject/wallet": "^5.6.2",
|
|
26
|
+
"@types/pako": "^2.0.0",
|
|
27
|
+
"@types/uuid": "^8.3.4",
|
|
28
|
+
"@xylabs/tsconfig": "^1.0.14",
|
|
29
|
+
"tslib": "^2.4.0"
|
|
30
|
+
},
|
|
31
|
+
"browser": "dist/esm/index.js",
|
|
32
|
+
"docs": "dist/docs.json",
|
|
33
|
+
"exports": {
|
|
34
|
+
".": {
|
|
35
|
+
"node": {
|
|
36
|
+
"import": "./dist/esm/index.js",
|
|
37
|
+
"require": "./dist/cjs/index.js"
|
|
38
|
+
},
|
|
39
|
+
"browser": {
|
|
40
|
+
"import": "./dist/esm/index.js",
|
|
41
|
+
"require": "./dist/cjs/index.js"
|
|
42
|
+
},
|
|
43
|
+
"default": "./dist/esm/index.js"
|
|
44
|
+
},
|
|
45
|
+
"./dist/docs.json": {
|
|
46
|
+
"default": "./dist/docs.json"
|
|
47
|
+
},
|
|
48
|
+
"./package.json": "./package.json"
|
|
49
|
+
},
|
|
50
|
+
"main": "dist/cjs/index.js",
|
|
51
|
+
"module": "dist/esm/index.js",
|
|
52
|
+
"homepage": "https://xyo.network",
|
|
53
|
+
"license": "LGPL-3.0-only",
|
|
54
|
+
"name": "@xyo-network/archivist",
|
|
55
|
+
"publishConfig": {
|
|
56
|
+
"access": "public"
|
|
57
|
+
},
|
|
58
|
+
"repository": {
|
|
59
|
+
"type": "git",
|
|
60
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
61
|
+
},
|
|
62
|
+
"sideEffects": true,
|
|
63
|
+
"types": "dist/esm/index.d.ts",
|
|
64
|
+
"version": "2.21.23",
|
|
65
|
+
"packageManager": "yarn@3.1.1"
|
|
66
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { assertEx } from '@xylabs/sdk-js'
|
|
2
|
+
import { XyoAccount } from '@xyo-network/account'
|
|
3
|
+
import { XyoBoundWitness, XyoBoundWitnessBuilder, XyoBoundWitnessWithPartialMeta } from '@xyo-network/boundwitness'
|
|
4
|
+
import { XyoPayload, XyoPayloadWithPartialMeta } from '@xyo-network/payload'
|
|
5
|
+
|
|
6
|
+
import { Archivist } from './model'
|
|
7
|
+
import { XyoPayloadFindFilter } from './XyoPayloadFindFilter'
|
|
8
|
+
|
|
9
|
+
export abstract class XyoArchivist<TWrite extends XyoBoundWitness = XyoBoundWitnessWithPartialMeta, TRead extends XyoPayload = XyoPayloadWithPartialMeta>
|
|
10
|
+
implements Archivist<string[], TWrite, TRead | undefined, string, TRead[], XyoPayloadFindFilter>
|
|
11
|
+
{
|
|
12
|
+
protected parent?: XyoArchivist
|
|
13
|
+
protected account?: XyoAccount
|
|
14
|
+
constructor(parent?: XyoArchivist, account?: XyoAccount) {
|
|
15
|
+
this.parent = parent
|
|
16
|
+
this.account = account
|
|
17
|
+
}
|
|
18
|
+
abstract insert(item: TWrite): string[] | Promise<string[]>
|
|
19
|
+
abstract find(query: XyoPayloadFindFilter): TRead[] | Promise<TRead[]>
|
|
20
|
+
abstract get(hash: string): TRead | Promise<TRead | undefined> | undefined
|
|
21
|
+
public all(): TRead[] | Promise<TRead[] | undefined> | undefined {
|
|
22
|
+
throw Error('getAll not supported')
|
|
23
|
+
}
|
|
24
|
+
public delete(_hash: string): boolean | Promise<boolean> {
|
|
25
|
+
throw Error('delete not supported')
|
|
26
|
+
}
|
|
27
|
+
public clear(): void | Promise<void> {
|
|
28
|
+
throw Error('clear not supported')
|
|
29
|
+
}
|
|
30
|
+
public async commit() {
|
|
31
|
+
const parent = assertEx(this.parent, 'Parent is required for commit')
|
|
32
|
+
const account = assertEx(this.account, 'Account is required for commit')
|
|
33
|
+
const payloads = assertEx(await parent.all(), 'Nothing to commit')
|
|
34
|
+
const builder = new XyoBoundWitnessBuilder()
|
|
35
|
+
const block = builder.payloads(payloads).witness(account).build()
|
|
36
|
+
const [hash] = await parent.insert(block)
|
|
37
|
+
await this.clear()
|
|
38
|
+
return hash
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { XyoBoundWitnessWithMeta, XyoBoundWitnessWrapper } from '@xyo-network/boundwitness'
|
|
2
|
+
import { XyoPayload, XyoPayloadWithPartialMeta, XyoPayloadWrapper } from '@xyo-network/payload'
|
|
3
|
+
import LruCache from 'lru-cache'
|
|
4
|
+
|
|
5
|
+
import { XyoArchivist } from './XyoArchivist'
|
|
6
|
+
import { XyoPayloadFindFilter } from './XyoPayloadFindFilter'
|
|
7
|
+
|
|
8
|
+
export class XyoMemoryArchivist extends XyoArchivist {
|
|
9
|
+
private cache: LruCache<string, XyoPayloadWithPartialMeta> = new LruCache<string, XyoPayloadWithPartialMeta>({ max: 10000 })
|
|
10
|
+
|
|
11
|
+
public delete(hash: string) {
|
|
12
|
+
return this.cache.delete(hash)
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
public clear() {
|
|
16
|
+
this.cache.clear()
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
public get(hash: string) {
|
|
20
|
+
return this.cache.get(hash) ?? this.parent?.get(hash)
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
public insert(payload: XyoBoundWitnessWithMeta) {
|
|
24
|
+
const wrapper = new XyoBoundWitnessWrapper(payload)
|
|
25
|
+
const payloadWithmeta = { ...payload, _hash: wrapper.hash, _timestamp: Date.now() }
|
|
26
|
+
const hashes: string[] = []
|
|
27
|
+
hashes.push(payloadWithmeta._hash)
|
|
28
|
+
this.cache.set(payloadWithmeta._hash, payloadWithmeta)
|
|
29
|
+
payload._payloads?.forEach((payload) => {
|
|
30
|
+
const wrapper = new XyoPayloadWrapper(payload)
|
|
31
|
+
const payloadWithmeta = { ...payload, _hash: wrapper.hash, _timestamp: Date.now() }
|
|
32
|
+
hashes.push(payloadWithmeta._hash)
|
|
33
|
+
this.cache.set(payloadWithmeta._hash, payloadWithmeta)
|
|
34
|
+
})
|
|
35
|
+
return hashes
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
public find<T extends XyoPayload = XyoPayload>(filter: XyoPayloadFindFilter): T[] {
|
|
39
|
+
const result: T[] = []
|
|
40
|
+
if (filter.type === 'schema') {
|
|
41
|
+
const filterSchema = filter.schema !== undefined ? (Array.isArray(filter.schema) ? filter.schema : [filter.schema]) : undefined
|
|
42
|
+
this.cache.forEach((value) => {
|
|
43
|
+
let match: XyoPayload | undefined = value
|
|
44
|
+
match = filterSchema === undefined || filterSchema.includes(value.schema) ? value : undefined
|
|
45
|
+
if (match) {
|
|
46
|
+
result.push(match as T)
|
|
47
|
+
}
|
|
48
|
+
})
|
|
49
|
+
}
|
|
50
|
+
if (filter.type === 'hash') {
|
|
51
|
+
const filterHash = filter.hash !== undefined ? (Array.isArray(filter.hash) ? filter.hash : [filter.hash]) : undefined
|
|
52
|
+
this.cache.forEach((value) => {
|
|
53
|
+
let match: XyoPayload | undefined = value
|
|
54
|
+
match = filterHash === undefined || filterHash.includes(new XyoPayloadWrapper(value).hash) ? value : undefined
|
|
55
|
+
if (match) {
|
|
56
|
+
result.push(match as T)
|
|
57
|
+
}
|
|
58
|
+
})
|
|
59
|
+
}
|
|
60
|
+
return result
|
|
61
|
+
}
|
|
62
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface QueryableArchivist<TQueryResponse, TQuery> {
|
|
2
|
+
find(query: TQuery): Promise<TQueryResponse> | TQueryResponse
|
|
3
|
+
}
|
|
4
|
+
export interface ReadArchivist<TReadResponse, TId = string> {
|
|
5
|
+
get(id: TId): Promise<TReadResponse | undefined> | TReadResponse | undefined
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface WriteArchivist<TWriteResponse, TWrite, TId = string> {
|
|
9
|
+
insert(item: TWrite): Promise<TWriteResponse> | TWriteResponse
|
|
10
|
+
delete?(id: TId): Promise<boolean> | boolean
|
|
11
|
+
clear?(): void
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export type ReadWriteArchivist<TWriteResponse, TWrite, TReadResponse = TWriteResponse, TId = string> = ReadArchivist<TReadResponse, TId> & WriteArchivist<TWriteResponse, TWrite>
|
|
15
|
+
|
|
16
|
+
export type Archivist<TWriteResponse, TWrite, TReadResponse = TWriteResponse, TId = string, TQueryResponse = unknown, TQuery = unknown> = ReadWriteArchivist<
|
|
17
|
+
TWriteResponse,
|
|
18
|
+
TWrite,
|
|
19
|
+
TReadResponse,
|
|
20
|
+
TId
|
|
21
|
+
> &
|
|
22
|
+
QueryableArchivist<TQueryResponse, TQuery>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Archivist'
|