@xyo-network/diviner-image-thumbnail 5.3.2 → 5.3.4

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.
Files changed (45) hide show
  1. package/dist/neutral/Diviner/Diviner.d.ts +7 -0
  2. package/dist/neutral/Diviner/Diviner.d.ts.map +1 -0
  3. package/dist/neutral/Diviner/ImageThumbnailDivinerLabels.d.ts +19 -0
  4. package/dist/neutral/Diviner/ImageThumbnailDivinerLabels.d.ts.map +1 -0
  5. package/dist/neutral/Diviner/ImageThumbnailDivinerState.d.ts +6 -0
  6. package/dist/neutral/Diviner/ImageThumbnailDivinerState.d.ts.map +1 -0
  7. package/dist/neutral/Diviner/ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner.d.ts +14 -0
  8. package/dist/neutral/Diviner/ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner.d.ts.map +1 -0
  9. package/dist/neutral/Diviner/ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner.d.ts +14 -0
  10. package/dist/neutral/Diviner/ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner.d.ts.map +1 -0
  11. package/dist/neutral/Diviner/ImageThumbnailQueryToImageThumbnailIndexQueryDiviner.d.ts +14 -0
  12. package/dist/neutral/Diviner/ImageThumbnailQueryToImageThumbnailIndexQueryDiviner.d.ts.map +1 -0
  13. package/{src/Diviner/ImageThumbnailResultQuery.ts → dist/neutral/Diviner/ImageThumbnailResultQuery.d.ts} +6 -11
  14. package/dist/neutral/Diviner/ImageThumbnailResultQuery.d.ts.map +1 -0
  15. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Config.d.ts +15 -0
  16. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Config.d.ts.map +1 -0
  17. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Diviner.d.ts +51 -0
  18. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Diviner.d.ts.map +1 -0
  19. package/{src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Params.ts → dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Params.d.ts} +5 -6
  20. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Params.d.ts.map +1 -0
  21. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Schema.d.ts +5 -0
  22. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Schema.d.ts.map +1 -0
  23. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/index.d.ts +5 -0
  24. package/dist/neutral/Diviner/ImageThumbnailStateToIndexCandidateDiviner/index.d.ts.map +1 -0
  25. package/dist/neutral/Diviner/index.d.ts +9 -0
  26. package/dist/neutral/Diviner/index.d.ts.map +1 -0
  27. package/dist/neutral/index.d.ts +2 -0
  28. package/dist/neutral/index.d.ts.map +1 -0
  29. package/dist/neutral/index.mjs +284 -0
  30. package/dist/neutral/index.mjs.map +1 -0
  31. package/package.json +20 -7
  32. package/src/Diviner/Diviner.ts +0 -8
  33. package/src/Diviner/ImageThumbnailDivinerLabels.ts +0 -24
  34. package/src/Diviner/ImageThumbnailDivinerState.ts +0 -6
  35. package/src/Diviner/ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner.ts +0 -82
  36. package/src/Diviner/ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner.ts +0 -67
  37. package/src/Diviner/ImageThumbnailQueryToImageThumbnailIndexQueryDiviner.ts +0 -57
  38. package/src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Config.ts +0 -18
  39. package/src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Diviner.ts +0 -155
  40. package/src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Schema.ts +0 -6
  41. package/src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/index.ts +0 -4
  42. package/src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/spec/ImageThumbnailStateToIndexCandidateDiviner.json +0 -55
  43. package/src/Diviner/index.ts +0 -8
  44. package/src/Diviner/spec/ImageThumbnailDivinerManifest.json +0 -159
  45. package/src/index.ts +0 -1
@@ -0,0 +1,7 @@
1
+ import { IndexingDiviner } from '@xyo-network/diviner-indexing';
2
+ import type { AttachableDivinerInstance } from '@xyo-network/diviner-model';
3
+ import { ImageThumbnailDivinerLabels } from './ImageThumbnailDivinerLabels.ts';
4
+ export declare class ImageThumbnailDiviner extends IndexingDiviner implements AttachableDivinerInstance {
5
+ static readonly labels: ImageThumbnailDivinerLabels;
6
+ }
7
+ //# sourceMappingURL=Diviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../src/Diviner/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAE3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAE9E,qBAAa,qBAAsB,SAAQ,eAAgB,YAAW,yBAAyB;IAC7F,gBAAyB,MAAM,EAAE,2BAA2B,CAAsD;CACnH"}
@@ -0,0 +1,19 @@
1
+ import type { DivinerStageSchema, IndexingDivinerStage } from '@xyo-network/diviner-indexing';
2
+ import type { Labels } from '@xyo-network/module-model';
3
+ /**
4
+ * Labels for Image Thumbnail Diviner components
5
+ */
6
+ export interface ImageThumbnailDivinerLabels extends Labels {
7
+ 'network.xyo.image.thumbnail': 'diviner';
8
+ }
9
+ /**
10
+ * Labels for Image Thumbnail Diviner components
11
+ */
12
+ export declare const ImageThumbnailDivinerLabels: ImageThumbnailDivinerLabels;
13
+ /**
14
+ * Labels for Image Thumbnail Diviner Stage Diviners
15
+ */
16
+ export type ImageThumbnailDivinerStageLabels = ImageThumbnailDivinerLabels & {
17
+ [key in DivinerStageSchema]: IndexingDivinerStage;
18
+ };
19
+ //# sourceMappingURL=ImageThumbnailDivinerLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageThumbnailDivinerLabels.d.ts","sourceRoot":"","sources":["../../../src/Diviner/ImageThumbnailDivinerLabels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAC7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,MAAM;IACzD,6BAA6B,EAAE,SAAS,CAAA;CACzC;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,2BAA0E,CAAA;AAEpH;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAAG,2BAA2B,GAAG;KAI1E,GAAG,IAAI,kBAAkB,GAAG,oBAAoB;CAClD,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { StateDictionary } from '@xyo-network/module-model';
2
+ import type { Sequence } from '@xyo-network/payload-model';
3
+ export type ImageThumbnailDivinerState = StateDictionary & {
4
+ cursor: Sequence;
5
+ };
6
+ //# sourceMappingURL=ImageThumbnailDivinerState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageThumbnailDivinerState.d.ts","sourceRoot":"","sources":["../../../src/Diviner/ImageThumbnailDivinerState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAE1D,MAAM,MAAM,0BAA0B,GAAG,eAAe,GAAG;IACzD,MAAM,EAAE,QAAQ,CAAA;CACjB,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { AbstractDiviner } from '@xyo-network/diviner-abstract';
2
+ import type { ImageThumbnailResultIndex } from '@xyo-network/image-thumbnail-payload-plugin';
3
+ import type { Payload, Schema, WithSources } from '@xyo-network/payload-model';
4
+ import type { ImageThumbnailDivinerStageLabels } from './ImageThumbnailDivinerLabels.ts';
5
+ /**
6
+ * Transforms candidates for image thumbnail indexing into their indexed representation
7
+ */
8
+ export declare class ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner extends AbstractDiviner {
9
+ static readonly configSchemas: Schema[];
10
+ static readonly defaultConfigSchema: Schema;
11
+ static readonly labels: ImageThumbnailDivinerStageLabels;
12
+ protected divineHandler(payloads?: Payload[]): Promise<WithSources<ImageThumbnailResultIndex>[]>;
13
+ }
14
+ //# sourceMappingURL=ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner.d.ts","sourceRoot":"","sources":["../../../src/Diviner/ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,KAAK,EAEV,yBAAyB,EAE1B,MAAM,6CAA6C,CAAA;AAMpD,OAAO,KAAK,EACV,OAAO,EAAE,MAAM,EAAE,WAAW,EAC7B,MAAM,4BAA4B,CAAA;AAMnC,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAA;AAGxF;;GAEG;AACH,qBAAa,wDAAyD,SAAQ,eAAe;IAC3F,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAgD;IAChG,gBAAyB,mBAAmB,EAAE,MAAM,CAAsB;IAC1E,gBAAyB,MAAM,EAAE,gCAAgC,CAIhE;cAEwB,aAAa,CAAC,QAAQ,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAyB,CAAC,EAAE,CAAC;CA2CpH"}
@@ -0,0 +1,14 @@
1
+ import { AbstractDiviner } from '@xyo-network/diviner-abstract';
2
+ import type { ImageThumbnailResult } from '@xyo-network/image-thumbnail-payload-plugin';
3
+ import type { Payload, Schema } from '@xyo-network/payload-model';
4
+ import type { ImageThumbnailDivinerStageLabels } from './ImageThumbnailDivinerLabels.ts';
5
+ /**
6
+ * Transforms an ImageThumbnailIndex response into an ImageThumbnailResponse response
7
+ */
8
+ export declare class ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner extends AbstractDiviner {
9
+ static readonly configSchemas: Schema[];
10
+ static readonly defaultConfigSchema: Schema;
11
+ static readonly labels: ImageThumbnailDivinerStageLabels;
12
+ protected divineHandler(payloads?: Payload[]): Promise<ImageThumbnailResult[]>;
13
+ }
14
+ //# sourceMappingURL=ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner.d.ts","sourceRoot":"","sources":["../../../src/Diviner/ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,KAAK,EACV,oBAAoB,EAErB,MAAM,6CAA6C,CAAA;AAMpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAIjE,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAA;AAGxF;;GAEG;AACH,qBAAa,oEAAqE,SAAQ,eAAe;IACvG,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAgD;IAChG,gBAAyB,mBAAmB,EAAE,MAAM,CAAsB;IAC1E,gBAAyB,MAAM,EAAE,gCAAgC,CAIhE;cAEwB,aAAa,CAAC,QAAQ,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;CAmClG"}
@@ -0,0 +1,14 @@
1
+ import { AbstractDiviner } from '@xyo-network/diviner-abstract';
2
+ import type { Payload, Schema } from '@xyo-network/payload-model';
3
+ import type { ImageThumbnailDivinerStageLabels } from './ImageThumbnailDivinerLabels.ts';
4
+ import type { ImageThumbnailResultQuery } from './ImageThumbnailResultQuery.ts';
5
+ /**
6
+ * A diviner that converts ImageThumbnailDivinerQuery to ImageThumbnailResultQuery
7
+ */
8
+ export declare class ImageThumbnailQueryToImageThumbnailIndexQueryDiviner extends AbstractDiviner {
9
+ static readonly configSchemas: Schema[];
10
+ static readonly defaultConfigSchema: Schema;
11
+ static readonly labels: ImageThumbnailDivinerStageLabels;
12
+ protected divineHandler(payloads?: Payload[]): Promise<Omit<Omit<ImageThumbnailResultQuery, 'timestamp' | 'success'> & Partial<Pick<ImageThumbnailResultQuery, 'success'>>, 'timestamp'>[]>;
13
+ }
14
+ //# sourceMappingURL=ImageThumbnailQueryToImageThumbnailIndexQueryDiviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageThumbnailQueryToImageThumbnailIndexQueryDiviner.d.ts","sourceRoot":"","sources":["../../../src/Diviner/ImageThumbnailQueryToImageThumbnailIndexQueryDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAI/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAIjE,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAA;AAExF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAE/E;;GAEG;AACH,qBAAa,oDAAqD,SAAQ,eAAe;IACvF,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAgD;IAChG,gBAAyB,mBAAmB,EAAE,MAAM,CAAsB;IAC1E,gBAAyB,MAAM,EAAE,gCAAgC,CAIhE;cAEwB,aAAa,CACpC,QAAQ,GAAE,OAAO,EAAO,GACvB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,WAAW,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC;CA8BhJ"}
@@ -1,20 +1,15 @@
1
- import type { PayloadDivinerQueryPayload } from '@xyo-network/diviner-payload-model'
2
- import { PayloadDivinerQuerySchema } from '@xyo-network/diviner-payload-model'
3
- import type { ImageThumbnailResultIndex } from '@xyo-network/image-thumbnail-payload-plugin'
4
- import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
5
-
1
+ import type { PayloadDivinerQueryPayload } from '@xyo-network/diviner-payload-model';
2
+ import type { ImageThumbnailResultIndex } from '@xyo-network/image-thumbnail-payload-plugin';
6
3
  /**
7
4
  * The fields that will need to be indexed on in the underlying store
8
5
  */
9
- export type QueryableImageThumbnailResultProperties = Extract<keyof ImageThumbnailResultIndex, 'status' | 'success' | 'timestamp' | 'key'>
10
-
6
+ export type QueryableImageThumbnailResultProperties = Extract<keyof ImageThumbnailResultIndex, 'status' | 'success' | 'timestamp' | 'key'>;
11
7
  /**
12
8
  * The query that will be used to retrieve the results from the underlying store
13
9
  */
14
- export type ImageThumbnailResultQuery = PayloadDivinerQueryPayload & Pick<ImageThumbnailResultIndex, QueryableImageThumbnailResultProperties>
15
-
10
+ export type ImageThumbnailResultQuery = PayloadDivinerQueryPayload & Pick<ImageThumbnailResultIndex, QueryableImageThumbnailResultProperties>;
16
11
  /**
17
12
  * A type guard for ImageThumbnailResultQuery
18
13
  */
19
- // TODO: Use a more derived schema than PayloadDivinerQuerySchema
20
- export const isImageThumbnailResultQuery = isPayloadOfSchemaType<ImageThumbnailResultQuery>(PayloadDivinerQuerySchema)
14
+ export declare const isImageThumbnailResultQuery: (x?: unknown | null) => x is ImageThumbnailResultQuery;
15
+ //# sourceMappingURL=ImageThumbnailResultQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageThumbnailResultQuery.d.ts","sourceRoot":"","sources":["../../../src/Diviner/ImageThumbnailResultQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAEpF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6CAA6C,CAAA;AAG5F;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG,OAAO,CAAC,MAAM,yBAAyB,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,CAAA;AAE1I;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,0BAA0B,GAAG,IAAI,CAAC,yBAAyB,EAAE,uCAAuC,CAAC,CAAA;AAE7I;;GAEG;AAEH,eAAO,MAAM,2BAA2B,wDAA8E,CAAA"}
@@ -0,0 +1,15 @@
1
+ import type { DivinerConfig } from '@xyo-network/diviner-model';
2
+ import type { SearchableStorage } from '@xyo-network/image-thumbnail-payload-plugin';
3
+ export type ImageThumbnailStateToIndexCandidateDivinerConfigSchema = typeof ImageThumbnailStateToIndexCandidateDivinerConfigSchema;
4
+ export declare const ImageThumbnailStateToIndexCandidateDivinerConfigSchema: string & {
5
+ readonly __schema: true;
6
+ };
7
+ export type ImageThumbnailStateToIndexCandidateDivinerConfig = DivinerConfig<{
8
+ payloadDivinerLimit?: number;
9
+ /**
10
+ * Where the diviner should look for stored thumbnails
11
+ */
12
+ payloadStore?: SearchableStorage;
13
+ schema: ImageThumbnailStateToIndexCandidateDivinerConfigSchema;
14
+ }>;
15
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAKpF,MAAM,MAAM,sDAAsD,GAAG,OAAO,sDAAsD,CAAA;AAClI,eAAO,MAAM,sDAAsD;;CACa,CAAA;AAEhF,MAAM,MAAM,gDAAgD,GAAG,aAAa,CAAC;IAC3E,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B;;OAEG;IACH,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAChC,MAAM,EAAE,sDAAsD,CAAA;CAC/D,CAAC,CAAA"}
@@ -0,0 +1,51 @@
1
+ import type { ArchivistInstance } from '@xyo-network/archivist-model';
2
+ import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
3
+ import type { BoundWitness } from '@xyo-network/boundwitness-model';
4
+ import { AbstractDiviner } from '@xyo-network/diviner-abstract';
5
+ import { DivinerWrapper } from '@xyo-network/diviner-wrapper';
6
+ import type { ImageThumbnail } from '@xyo-network/image-thumbnail-payload-plugin';
7
+ import type { ModuleState } from '@xyo-network/module-model';
8
+ import type { Payload, Schema } from '@xyo-network/payload-model';
9
+ import type { TimeStamp } from '@xyo-network/witness-timestamp';
10
+ import type { ImageThumbnailDivinerStageLabels } from '../ImageThumbnailDivinerLabels.ts';
11
+ import type { ImageThumbnailDivinerState } from '../ImageThumbnailDivinerState.ts';
12
+ import type { ImageThumbnailStateToIndexCandidateDivinerParams } from './Params.ts';
13
+ /**
14
+ * All Payload types involved in index candidates for indexing
15
+ */
16
+ export type IndexCandidate = BoundWitness | ImageThumbnail | TimeStamp;
17
+ /**
18
+ * The response from the ImageThumbnailStateToIndexCandidateDiviner
19
+ */
20
+ export type ImageThumbnailStateToIndexCandidateDivinerResponse = [
21
+ /**
22
+ * The next state of the diviner
23
+ */
24
+ nextState: ModuleState<ImageThumbnailDivinerState>,
25
+ /**
26
+ * The index candidates
27
+ */
28
+ ...IndexCandidate[]
29
+ ];
30
+ /**
31
+ * Transforms candidates for image thumbnail indexing into their indexed representation
32
+ */
33
+ export declare class ImageThumbnailStateToIndexCandidateDiviner<TParams extends ImageThumbnailStateToIndexCandidateDivinerParams = ImageThumbnailStateToIndexCandidateDivinerParams> extends AbstractDiviner<TParams> {
34
+ static readonly configSchemas: Schema[];
35
+ static readonly defaultConfigSchema: Schema;
36
+ static readonly labels: ImageThumbnailDivinerStageLabels;
37
+ get payloadDivinerLimit(): number;
38
+ protected static getPayloadsInBoundWitness(bw: BoundWitness, archivist: ArchivistInstance): Promise<IndexCandidate[] | undefined>;
39
+ protected divineHandler(payloads?: Payload[]): Promise<ImageThumbnailStateToIndexCandidateDivinerResponse>;
40
+ /**
41
+ * Retrieves the archivist for the payloadStore
42
+ * @returns The archivist for the payloadStore
43
+ */
44
+ protected getArchivistForStore(): Promise<ArchivistWrapper<import("@xyo-network/archivist-model").ArchivistModuleInstance<import("@xyo-network/module-model").ModuleParams<import("@xyo-network/module-model").AnyConfigSchema<import("@xyo-network/archivist-model").ArchivistConfig>>, import("@xyo-network/archivist-model").ArchivistModuleEventData>>>;
45
+ /**
46
+ * Retrieves the BoundWitness Diviner for the payloadStore
47
+ * @returns The BoundWitness Diviner for the payloadStore
48
+ */
49
+ protected getBoundWitnessDivinerForStore(): Promise<DivinerWrapper<import("@xyo-network/diviner-model").DivinerModule<import("@xyo-network/diviner-model").DivinerParams<import("@xyo-network/module-model").AnyConfigSchema<import("@xyo-network/diviner-model").DivinerConfig>>, import("@xyo-network/diviner-model").DivinerModuleEventData>, Payload, Payload>>;
50
+ }
51
+ //# sourceMappingURL=Diviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Diviner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAwB,MAAM,8BAA8B,CAAA;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAGnE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAA;AAEjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAEjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAG/D,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAA;AAEzF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAA;AAElF,OAAO,KAAK,EAAE,gDAAgD,EAAE,MAAM,aAAa,CAAA;AAEnF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,cAAc,GAAG,SAAS,CAAA;AAEtE;;GAEG;AACH,MAAM,MAAM,kDAAkD,GAAG;IAC/D;;OAEG;IACH,SAAS,EAAE,WAAW,CAAC,0BAA0B,CAAC;IAClD;;OAEG;IACH,GAAG,cAAc,EAAE;CACpB,CAAA;AA0BD;;GAEG;AACH,qBAAa,0CAA0C,CACrD,OAAO,SAAS,gDAAgD,GAAG,gDAAgD,CACnH,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAmF;IACnI,gBAAyB,mBAAmB,EAAE,MAAM,CAAyD;IAC7G,gBAAyB,MAAM,EAAE,gCAAgC,CAIhE;IAED,IAAI,mBAAmB,WAEtB;qBAEsB,yBAAyB,CAAC,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC;cAU9G,aAAa,CAAC,QAAQ,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,kDAAkD,CAAC;IAoC7H;;;OAGG;cACa,oBAAoB;IAMpC;;;OAGG;cACa,8BAA8B;CAQ/C"}
@@ -1,6 +1,5 @@
1
- import type { DivinerParams } from '@xyo-network/diviner-model'
2
- import type { AnyConfigSchema } from '@xyo-network/module-model'
3
-
4
- import type { ImageThumbnailStateToIndexCandidateDivinerConfig } from './Config.ts'
5
-
6
- export type ImageThumbnailStateToIndexCandidateDivinerParams = DivinerParams<AnyConfigSchema<ImageThumbnailStateToIndexCandidateDivinerConfig>>
1
+ import type { DivinerParams } from '@xyo-network/diviner-model';
2
+ import type { AnyConfigSchema } from '@xyo-network/module-model';
3
+ import type { ImageThumbnailStateToIndexCandidateDivinerConfig } from './Config.ts';
4
+ export type ImageThumbnailStateToIndexCandidateDivinerParams = DivinerParams<AnyConfigSchema<ImageThumbnailStateToIndexCandidateDivinerConfig>>;
5
+ //# sourceMappingURL=Params.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Params.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAEhE,OAAO,KAAK,EAAE,gDAAgD,EAAE,MAAM,aAAa,CAAA;AAEnF,MAAM,MAAM,gDAAgD,GAAG,aAAa,CAAC,eAAe,CAAC,gDAAgD,CAAC,CAAC,CAAA"}
@@ -0,0 +1,5 @@
1
+ export type ImageThumbnailStateToIndexCandidateDivinerSchema = typeof ImageThumbnailStateToIndexCandidateDivinerSchema;
2
+ export declare const ImageThumbnailStateToIndexCandidateDivinerSchema: string & {
3
+ readonly __schema: true;
4
+ };
5
+ //# sourceMappingURL=Schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Schema.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gDAAgD,GAAG,OAAO,gDAAgD,CAAA;AACtH,eAAO,MAAM,gDAAgD;;CAC0B,CAAA"}
@@ -0,0 +1,5 @@
1
+ export * from './Config.ts';
2
+ export * from './Diviner.ts';
3
+ export * from './Params.ts';
4
+ export * from './Schema.ts';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA"}
@@ -0,0 +1,9 @@
1
+ export * from './Diviner.ts';
2
+ export * from './ImageThumbnailDivinerLabels.ts';
3
+ export * from './ImageThumbnailDivinerState.ts';
4
+ export * from './ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner.ts';
5
+ export * from './ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner.ts';
6
+ export * from './ImageThumbnailQueryToImageThumbnailIndexQueryDiviner.ts';
7
+ export * from './ImageThumbnailResultQuery.ts';
8
+ export * from './ImageThumbnailStateToIndexCandidateDiviner/index.ts';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Diviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,kCAAkC,CAAA;AAChD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,+DAA+D,CAAA;AAC7E,cAAc,2EAA2E,CAAA;AACzF,cAAc,2DAA2D,CAAA;AACzE,cAAc,gCAAgC,CAAA;AAC9C,cAAc,uDAAuD,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './Diviner/index.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA"}
@@ -0,0 +1,284 @@
1
+ // src/Diviner/Diviner.ts
2
+ import { IndexingDiviner } from "@xyo-network/diviner-indexing";
3
+
4
+ // src/Diviner/ImageThumbnailDivinerLabels.ts
5
+ var ImageThumbnailDivinerLabels = { "network.xyo.image.thumbnail": "diviner" };
6
+
7
+ // src/Diviner/Diviner.ts
8
+ var ImageThumbnailDiviner = class extends IndexingDiviner {
9
+ static labels = { ...super.labels, ...ImageThumbnailDivinerLabels };
10
+ };
11
+
12
+ // src/Diviner/ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner.ts
13
+ import { isBoundWitness } from "@xyo-network/boundwitness-model";
14
+ import { AbstractDiviner } from "@xyo-network/diviner-abstract";
15
+ import { DivinerConfigSchema } from "@xyo-network/diviner-model";
16
+ import {
17
+ ImageThumbnailResultIndexSchema,
18
+ ImageThumbnailSchema,
19
+ isImageThumbnail
20
+ } from "@xyo-network/image-thumbnail-payload-plugin";
21
+ import { PayloadBuilder } from "@xyo-network/sdk-js";
22
+ import { UrlSchema } from "@xyo-network/url-payload-plugin";
23
+ import { isTimestamp, TimestampSchema } from "@xyo-network/witness-timestamp";
24
+ var ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner = class extends AbstractDiviner {
25
+ static configSchemas = [...super.configSchemas, DivinerConfigSchema];
26
+ static defaultConfigSchema = DivinerConfigSchema;
27
+ static labels = {
28
+ ...super.labels,
29
+ ...ImageThumbnailDivinerLabels,
30
+ "network.xyo.diviner.stage": "indexCandidateToIndexDiviner"
31
+ };
32
+ async divineHandler(payloads = []) {
33
+ const bws = payloads.filter(isBoundWitness);
34
+ const imageThumbnailPayloads = payloads.filter(isImageThumbnail);
35
+ const timestampPayloads = payloads.filter(isTimestamp);
36
+ if (bws.length > 0 && imageThumbnailPayloads.length > 0 && timestampPayloads.length > 0) {
37
+ const payloadDictionary = await PayloadBuilder.toDataHashMap(payloads);
38
+ const tuples = bws.reduce(
39
+ (acc, curr) => {
40
+ const imageThumbnailIndex = curr.payload_schemas?.indexOf(ImageThumbnailSchema);
41
+ const timestampIndex = curr.payload_schemas?.indexOf(TimestampSchema);
42
+ const imageThumbnailHash = curr.payload_hashes?.[imageThumbnailIndex];
43
+ const timestampHash = curr.payload_hashes?.[timestampIndex];
44
+ const imageThumbnailPayload = [payloadDictionary[imageThumbnailHash]].find(isImageThumbnail);
45
+ const timestampPayload = [payloadDictionary[timestampHash]].find(isTimestamp);
46
+ if (imageThumbnailPayload && timestampPayload) acc.push([curr, imageThumbnailPayload, timestampPayload]);
47
+ return acc;
48
+ },
49
+ []
50
+ );
51
+ const indexes = await Promise.all(
52
+ tuples.map(async ([bw, imageThumbnailPayload, timestampPayload]) => {
53
+ const { sourceUrl: url, http } = imageThumbnailPayload;
54
+ const { timestamp } = timestampPayload;
55
+ const { status } = http ?? {};
56
+ const success = !!imageThumbnailPayload.url;
57
+ const $sources = await PayloadBuilder.dataHashes([bw, imageThumbnailPayload, timestampPayload]);
58
+ const urlPayload = { schema: UrlSchema, url };
59
+ const key = await PayloadBuilder.dataHash(urlPayload);
60
+ const fields = {
61
+ key,
62
+ success,
63
+ timestamp
64
+ };
65
+ if (status) fields.status = status;
66
+ const result = new PayloadBuilder({ schema: ImageThumbnailResultIndexSchema }).fields({ ...fields }).meta({ $sources }).build();
67
+ return [result];
68
+ })
69
+ );
70
+ return indexes.flat();
71
+ }
72
+ return [];
73
+ }
74
+ };
75
+
76
+ // src/Diviner/ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner.ts
77
+ import { exists } from "@xylabs/sdk-js";
78
+ import { AbstractDiviner as AbstractDiviner2 } from "@xyo-network/diviner-abstract";
79
+ import { DivinerConfigSchema as DivinerConfigSchema2 } from "@xyo-network/diviner-model";
80
+ import {
81
+ ImageThumbnailResultSchema,
82
+ isImageThumbnailDivinerQuery,
83
+ isImageThumbnailResultIndexWithSources
84
+ } from "@xyo-network/image-thumbnail-payload-plugin";
85
+ import { PayloadBuilder as PayloadBuilder2 } from "@xyo-network/sdk-js";
86
+ import { UrlSchema as UrlSchema2 } from "@xyo-network/url-payload-plugin";
87
+ var ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner = class extends AbstractDiviner2 {
88
+ static configSchemas = [...super.configSchemas, DivinerConfigSchema2];
89
+ static defaultConfigSchema = DivinerConfigSchema2;
90
+ static labels = {
91
+ ...super.labels,
92
+ ...ImageThumbnailDivinerLabels,
93
+ "network.xyo.diviner.stage": "indexQueryResponseToDivinerQueryResponseDiviner"
94
+ };
95
+ async divineHandler(payloads = []) {
96
+ const imageThumbnailDivinerQueries = payloads.filter(isImageThumbnailDivinerQuery);
97
+ const imageThumbnailResultIndexes = payloads.filter(isImageThumbnailResultIndexWithSources);
98
+ if (imageThumbnailDivinerQueries.length > 0 && imageThumbnailResultIndexes.length > 0) {
99
+ const keyToUrlDictionary = Object.fromEntries(
100
+ await Promise.all(
101
+ imageThumbnailDivinerQueries.map(async (imageThumbnailDivinerQuery) => {
102
+ const { url } = imageThumbnailDivinerQuery;
103
+ const urlPayload = new PayloadBuilder2({ schema: UrlSchema2 }).fields({ url }).build();
104
+ const key = await PayloadBuilder2.dataHash(urlPayload);
105
+ return [key, url];
106
+ })
107
+ )
108
+ );
109
+ return imageThumbnailResultIndexes.map((imageThumbnailResultIndex) => {
110
+ const {
111
+ key,
112
+ schema,
113
+ $sources,
114
+ ...commonFields
115
+ } = imageThumbnailResultIndex;
116
+ const url = keyToUrlDictionary?.[key];
117
+ if (url) {
118
+ const fields = { ...commonFields, url };
119
+ return new PayloadBuilder2({ schema: ImageThumbnailResultSchema }).fields(fields).meta({ $sources }).build();
120
+ }
121
+ }).filter(exists);
122
+ }
123
+ return [];
124
+ }
125
+ };
126
+
127
+ // src/Diviner/ImageThumbnailQueryToImageThumbnailIndexQueryDiviner.ts
128
+ import { AbstractDiviner as AbstractDiviner3 } from "@xyo-network/diviner-abstract";
129
+ import { DivinerConfigSchema as DivinerConfigSchema3 } from "@xyo-network/diviner-model";
130
+ import { PayloadDivinerQuerySchema } from "@xyo-network/diviner-payload-model";
131
+ import { isImageThumbnailDivinerQuery as isImageThumbnailDivinerQuery2 } from "@xyo-network/image-thumbnail-payload-plugin";
132
+ import { PayloadBuilder as PayloadBuilder3 } from "@xyo-network/sdk-js";
133
+ import { UrlSchema as UrlSchema3 } from "@xyo-network/url-payload-plugin";
134
+ var ImageThumbnailQueryToImageThumbnailIndexQueryDiviner = class extends AbstractDiviner3 {
135
+ static configSchemas = [...super.configSchemas, DivinerConfigSchema3];
136
+ static defaultConfigSchema = DivinerConfigSchema3;
137
+ static labels = {
138
+ ...super.labels,
139
+ ...ImageThumbnailDivinerLabels,
140
+ "network.xyo.diviner.stage": "divinerQueryToIndexQueryDiviner"
141
+ };
142
+ async divineHandler(payloads = []) {
143
+ const queries = payloads.filter(isImageThumbnailDivinerQuery2);
144
+ if (queries.length > 0) {
145
+ const results = await Promise.all(
146
+ queries.map(async (query) => {
147
+ const {
148
+ limit: payloadLimit,
149
+ order: payloadOrder,
150
+ status: payloadStatus,
151
+ success: payloadSuccess,
152
+ url
153
+ } = query;
154
+ const limit = payloadLimit ?? 1;
155
+ const order2 = payloadOrder ?? "desc";
156
+ const urlPayload = { schema: UrlSchema3, url };
157
+ const key = await PayloadBuilder3.dataHash(urlPayload);
158
+ const fields = {
159
+ key,
160
+ limit,
161
+ order: order2
162
+ };
163
+ if (payloadSuccess !== void 0) fields.success = payloadSuccess;
164
+ if (payloadStatus !== void 0) fields.status = payloadStatus;
165
+ return new PayloadBuilder3({ schema: PayloadDivinerQuerySchema }).fields(fields).build();
166
+ })
167
+ );
168
+ return results;
169
+ }
170
+ return [];
171
+ }
172
+ };
173
+
174
+ // src/Diviner/ImageThumbnailResultQuery.ts
175
+ import { PayloadDivinerQuerySchema as PayloadDivinerQuerySchema2 } from "@xyo-network/diviner-payload-model";
176
+ import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
177
+ var isImageThumbnailResultQuery = isPayloadOfSchemaType(PayloadDivinerQuerySchema2);
178
+
179
+ // src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Config.ts
180
+ import { asSchema as asSchema2 } from "@xyo-network/payload-model";
181
+
182
+ // src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Schema.ts
183
+ import { ImageThumbnailDivinerSchema } from "@xyo-network/image-thumbnail-payload-plugin";
184
+ import { asSchema } from "@xyo-network/payload-model";
185
+ var ImageThumbnailStateToIndexCandidateDivinerSchema = asSchema(`${ImageThumbnailDivinerSchema}.stage.stateToIndexCandidateDiviner`, true);
186
+
187
+ // src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Config.ts
188
+ var ImageThumbnailStateToIndexCandidateDivinerConfigSchema = asSchema2(`${ImageThumbnailStateToIndexCandidateDivinerSchema}.config`, true);
189
+
190
+ // src/Diviner/ImageThumbnailStateToIndexCandidateDiviner/Diviner.ts
191
+ import {
192
+ AsObjectFactory,
193
+ assertEx,
194
+ exists as exists2,
195
+ filterAs
196
+ } from "@xylabs/sdk-js";
197
+ import { ArchivistWrapper } from "@xyo-network/archivist-wrapper";
198
+ import { asBoundWitness, isBoundWitness as isBoundWitness2 } from "@xyo-network/boundwitness-model";
199
+ import { payloadSchemasContainsAll } from "@xyo-network/boundwitness-validator";
200
+ import { AbstractDiviner as AbstractDiviner4 } from "@xyo-network/diviner-abstract";
201
+ import { DivinerWrapper } from "@xyo-network/diviner-wrapper";
202
+ import { ImageThumbnailSchema as ImageThumbnailSchema2, isImageThumbnail as isImageThumbnail2 } from "@xyo-network/image-thumbnail-payload-plugin";
203
+ import { isModuleState, ModuleStateSchema } from "@xyo-network/module-model";
204
+ import { SequenceConstants } from "@xyo-network/payload-model";
205
+ import { isTimestamp as isTimestamp2, TimestampSchema as TimestampSchema2 } from "@xyo-network/witness-timestamp";
206
+ var payload_schemas = [ImageThumbnailSchema2, TimestampSchema2];
207
+ var indexCandidateIdentityFunctions = [isImageThumbnail2, isTimestamp2];
208
+ var isIndexCandidate = (x) => {
209
+ return indexCandidateIdentityFunctions.map((is) => is(x)).some(Boolean);
210
+ };
211
+ var asIndexCandidate = AsObjectFactory.create(isIndexCandidate);
212
+ var order = "asc";
213
+ var moduleName = "ImageThumbnailStateToIndexCandidateDiviner";
214
+ var ImageThumbnailStateToIndexCandidateDiviner = class _ImageThumbnailStateToIndexCandidateDiviner extends AbstractDiviner4 {
215
+ static configSchemas = [...super.configSchemas, ImageThumbnailStateToIndexCandidateDivinerConfigSchema];
216
+ static defaultConfigSchema = ImageThumbnailStateToIndexCandidateDivinerConfigSchema;
217
+ static labels = {
218
+ ...super.labels,
219
+ ...ImageThumbnailDivinerLabels,
220
+ "network.xyo.diviner.stage": "stateToIndexCandidateDiviner"
221
+ };
222
+ get payloadDivinerLimit() {
223
+ return this.config.payloadDivinerLimit ?? 1e3;
224
+ }
225
+ static async getPayloadsInBoundWitness(bw, archivist) {
226
+ const indexes = payload_schemas.map((schema) => bw.payload_schemas?.indexOf(schema));
227
+ const hashes = indexes.map((index) => bw.payload_hashes?.[index]);
228
+ const results = await archivist.get(hashes);
229
+ const filteredResults = indexCandidateIdentityFunctions.map((is) => results.find(is));
230
+ if (filteredResults.includes(void 0)) return void 0;
231
+ const indexCandidates = filterAs(filteredResults, asIndexCandidate);
232
+ return [bw, ...indexCandidates];
233
+ }
234
+ async divineHandler(payloads = []) {
235
+ const lastState = payloads.find(isModuleState) ?? { schema: ModuleStateSchema, state: { cursor: SequenceConstants.minLocalSequence } };
236
+ const cursor = lastState?.state?.cursor;
237
+ const sourceArchivist = await this.getArchivistForStore();
238
+ if (!sourceArchivist) return [lastState];
239
+ const nextOffset = { limit: this.payloadDivinerLimit, order };
240
+ if (cursor !== SequenceConstants.minLocalSequence) nextOffset.cursor = cursor;
241
+ const next = await sourceArchivist.next(nextOffset);
242
+ if (next.length === 0) return [lastState];
243
+ const batch = filterAs(next, asBoundWitness).filter(exists2).filter((bw) => payloadSchemasContainsAll(bw, payload_schemas));
244
+ const indexCandidates = (await Promise.all(
245
+ batch.filter(isBoundWitness2).map((bw) => _ImageThumbnailStateToIndexCandidateDiviner.getPayloadsInBoundWitness(bw, sourceArchivist))
246
+ )).filter(exists2).flat();
247
+ const nextCursor = assertEx(next.at(-1)?._sequence, () => `${moduleName}: Expected next to have a sequence`);
248
+ const nextState = { schema: ModuleStateSchema, state: { ...lastState.state, cursor: nextCursor } };
249
+ return [nextState, ...indexCandidates];
250
+ }
251
+ /**
252
+ * Retrieves the archivist for the payloadStore
253
+ * @returns The archivist for the payloadStore
254
+ */
255
+ async getArchivistForStore() {
256
+ const name = assertEx(this.config?.payloadStore?.archivist, () => `${moduleName}: Config for payloadStore.archivist not specified`);
257
+ const mod = assertEx(await this.resolve(name), () => `${moduleName}: Failed to resolve payloadStore.archivist`);
258
+ return ArchivistWrapper.wrap(mod, this.account);
259
+ }
260
+ /**
261
+ * Retrieves the BoundWitness Diviner for the payloadStore
262
+ * @returns The BoundWitness Diviner for the payloadStore
263
+ */
264
+ async getBoundWitnessDivinerForStore() {
265
+ const name = assertEx(
266
+ this.config?.payloadStore?.boundWitnessDiviner,
267
+ () => `${moduleName}: Config for payloadStore.boundWitnessDiviner not specified`
268
+ );
269
+ const mod = assertEx(await this.resolve(name), () => `${moduleName}: Failed to resolve payloadStore.boundWitnessDiviner`);
270
+ return DivinerWrapper.wrap(mod, this.account);
271
+ }
272
+ };
273
+ export {
274
+ ImageThumbnailDiviner,
275
+ ImageThumbnailDivinerLabels,
276
+ ImageThumbnailIndexCandidateToImageThumbnailIndexDiviner,
277
+ ImageThumbnailIndexQueryResponseToImageThumbnailQueryResponseDiviner,
278
+ ImageThumbnailQueryToImageThumbnailIndexQueryDiviner,
279
+ ImageThumbnailStateToIndexCandidateDiviner,
280
+ ImageThumbnailStateToIndexCandidateDivinerConfigSchema,
281
+ ImageThumbnailStateToIndexCandidateDivinerSchema,
282
+ isImageThumbnailResultQuery
283
+ };
284
+ //# sourceMappingURL=index.mjs.map