@xyo-network/image-thumbnail-plugin 2.71.11 → 2.71.12
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/dist/cjs/Diviner/Config.js +6 -0
- package/dist/cjs/Diviner/Config.js.map +1 -0
- package/dist/cjs/Diviner/Diviner.js +200 -0
- package/dist/cjs/Diviner/Diviner.js.map +1 -0
- package/dist/cjs/Diviner/Params.js +3 -0
- package/dist/cjs/Diviner/Params.js.map +1 -0
- package/dist/cjs/Diviner/index.js +7 -0
- package/dist/cjs/Diviner/index.js.map +1 -0
- package/dist/cjs/Plugin.js +6 -1
- package/dist/cjs/Plugin.js.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/docs.json +28852 -6911
- package/dist/esm/Diviner/Config.js +3 -0
- package/dist/esm/Diviner/Config.js.map +1 -0
- package/dist/esm/Diviner/Diviner.js +176 -0
- package/dist/esm/Diviner/Diviner.js.map +1 -0
- package/dist/esm/Diviner/Params.js +2 -0
- package/dist/esm/Diviner/Params.js.map +1 -0
- package/dist/esm/Diviner/index.js +4 -0
- package/dist/esm/Diviner/index.js.map +1 -0
- package/dist/esm/Plugin.js +7 -2
- package/dist/esm/Plugin.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/types/Diviner/Config.d.ts +10 -0
- package/dist/types/Diviner/Config.d.ts.map +1 -0
- package/dist/types/Diviner/Diviner.d.ts +29 -0
- package/dist/types/Diviner/Diviner.d.ts.map +1 -0
- package/dist/types/Diviner/Params.d.ts +5 -0
- package/dist/types/Diviner/Params.d.ts.map +1 -0
- package/dist/types/Diviner/index.d.ts +4 -0
- package/dist/types/Diviner/index.d.ts.map +1 -0
- package/dist/types/Plugin.d.ts +49 -1
- package/dist/types/Plugin.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +16 -9
- package/src/Diviner/Config.ts +12 -0
- package/src/Diviner/Diviner.ts +197 -0
- package/src/Diviner/Params.ts +6 -0
- package/src/Diviner/index.ts +3 -0
- package/src/Plugin.ts +7 -2
- package/src/index.ts +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../src/Diviner/Config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAA;AAElF,MAAM,CAAC,MAAM,iCAAiC,GAAG,GAAG,oBAAoB,iBAA0B,CAAA"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { assertEx } from '@xylabs/assert';
|
|
2
|
+
import { delay } from '@xylabs/delay';
|
|
3
|
+
import { AbstractDiviner } from '@xyo-network/abstract-diviner';
|
|
4
|
+
import { asArchivistInstance } from '@xyo-network/archivist-model';
|
|
5
|
+
import { PayloadHasher } from '@xyo-network/core';
|
|
6
|
+
import { asDivinerInstance, DivinerConfigSchema } from '@xyo-network/diviner-model';
|
|
7
|
+
import { PayloadDivinerQuerySchema } from '@xyo-network/diviner-payload-model';
|
|
8
|
+
import { ImageThumbnailSchema } from '@xyo-network/image-thumbnail-payload-plugin';
|
|
9
|
+
import compact from 'lodash/compact';
|
|
10
|
+
import { ImageThumbnailDivinerConfigSchema } from './Config';
|
|
11
|
+
export class ImageThumbnailDiviner extends AbstractDiviner {
|
|
12
|
+
static configSchemas = [ImageThumbnailDivinerConfigSchema, DivinerConfigSchema];
|
|
13
|
+
_archivistInstance;
|
|
14
|
+
_initializeArchivistConnectionIfNeededPromise;
|
|
15
|
+
_map;
|
|
16
|
+
_payloadDivinerInstance;
|
|
17
|
+
_pollId;
|
|
18
|
+
get archivist() {
|
|
19
|
+
return this.config.archivist;
|
|
20
|
+
}
|
|
21
|
+
get payloadDiviner() {
|
|
22
|
+
return this.config.payloadDiviner;
|
|
23
|
+
}
|
|
24
|
+
get pollFrequency() {
|
|
25
|
+
return this.config.pollFrequency;
|
|
26
|
+
}
|
|
27
|
+
//using promise as mutex
|
|
28
|
+
async getArchivistInstance() {
|
|
29
|
+
//if previously checked, but not found, clear promise
|
|
30
|
+
if (this._archivistInstance && !(await this._archivistInstance)) {
|
|
31
|
+
this._archivistInstance = undefined;
|
|
32
|
+
}
|
|
33
|
+
this._archivistInstance =
|
|
34
|
+
this._archivistInstance ??
|
|
35
|
+
(async () => {
|
|
36
|
+
const module = await this.resolve(this.archivist);
|
|
37
|
+
return asArchivistInstance(module, 'Provided archivist address did not resolve to an Archivist');
|
|
38
|
+
})();
|
|
39
|
+
return this._archivistInstance;
|
|
40
|
+
}
|
|
41
|
+
//using promise as mutex
|
|
42
|
+
async getPayloadDivinerInstance() {
|
|
43
|
+
const payloadDivinerAddress = this.payloadDiviner;
|
|
44
|
+
if (payloadDivinerAddress) {
|
|
45
|
+
//if previously checked, but not found, clear promise
|
|
46
|
+
if (this._payloadDivinerInstance && !(await this._payloadDivinerInstance)) {
|
|
47
|
+
this._payloadDivinerInstance = undefined;
|
|
48
|
+
}
|
|
49
|
+
this._payloadDivinerInstance =
|
|
50
|
+
this._payloadDivinerInstance ??
|
|
51
|
+
(async () => {
|
|
52
|
+
const module = await this.resolve(payloadDivinerAddress);
|
|
53
|
+
return asDivinerInstance(module, 'Provided payload diviner address did not resolve to a Diviner');
|
|
54
|
+
})();
|
|
55
|
+
return this._payloadDivinerInstance;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
async divineHandler(payloads = []) {
|
|
59
|
+
await this.initializeArchivistConnectionIfNeeded();
|
|
60
|
+
const urls = payloads.map((urlPayload) => urlPayload.url);
|
|
61
|
+
const map = await this.getSafeMap();
|
|
62
|
+
const archivist = await this.getArchivistInstance();
|
|
63
|
+
const hashes = compact(urls.map((url) => map?.[url]));
|
|
64
|
+
return (await archivist.get(hashes)).filter((payload) => payload.schema === ImageThumbnailSchema);
|
|
65
|
+
}
|
|
66
|
+
//using promise as mutex
|
|
67
|
+
initializeArchivistConnectionIfNeeded() {
|
|
68
|
+
this._initializeArchivistConnectionIfNeededPromise =
|
|
69
|
+
this._initializeArchivistConnectionIfNeededPromise ??
|
|
70
|
+
(async () => {
|
|
71
|
+
if (!this._map) {
|
|
72
|
+
await this.attachArchivistEvents();
|
|
73
|
+
console.log('initializeArchivistConnectionIfNeeded: attachArchivistEvents done');
|
|
74
|
+
await this.poll();
|
|
75
|
+
console.log('initializeArchivistConnectionIfNeeded: poll done');
|
|
76
|
+
}
|
|
77
|
+
})();
|
|
78
|
+
return this._initializeArchivistConnectionIfNeededPromise;
|
|
79
|
+
}
|
|
80
|
+
async loadMap() {
|
|
81
|
+
if (this.payloadDiviner) {
|
|
82
|
+
return await this.loadMapWithPayloadDiviner();
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
return await this.loadMapWithAll();
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
async loadMapWithAll() {
|
|
89
|
+
if (await this.started()) {
|
|
90
|
+
const archivist = await this.getArchivistInstance();
|
|
91
|
+
assertEx(archivist.all, "Archivist does not support 'all'");
|
|
92
|
+
const allPayloads = (await archivist.all?.()) ?? [];
|
|
93
|
+
const imagePayloadPairs = await Promise.all(allPayloads
|
|
94
|
+
.filter((payload) => payload.schema === ImageThumbnailSchema)
|
|
95
|
+
.map(async (payload) => [await PayloadHasher.hashAsync(payload), payload]));
|
|
96
|
+
this._map = imagePayloadPairs.reduce((prev, [hash, payload]) => {
|
|
97
|
+
prev[payload.sourceUrl] = hash;
|
|
98
|
+
return prev;
|
|
99
|
+
}, {});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
async loadMapWithPayloadDiviner() {
|
|
103
|
+
console.log('loadMapWithPayloadDiviner: started');
|
|
104
|
+
if (await this.started()) {
|
|
105
|
+
const diviner = await this.getPayloadDivinerInstance();
|
|
106
|
+
let offsetHash = undefined;
|
|
107
|
+
let moreAvailable = true;
|
|
108
|
+
if (diviner) {
|
|
109
|
+
const newMap = {};
|
|
110
|
+
while (moreAvailable) {
|
|
111
|
+
const payloadDivinerQuery = {
|
|
112
|
+
hash: offsetHash,
|
|
113
|
+
schema: PayloadDivinerQuerySchema,
|
|
114
|
+
schemas: [ImageThumbnailSchema],
|
|
115
|
+
};
|
|
116
|
+
const payloads = await diviner.divine([payloadDivinerQuery]);
|
|
117
|
+
const lastPayload = payloads[payloads.length - 1];
|
|
118
|
+
offsetHash = lastPayload ? await PayloadHasher.hashAsync(lastPayload) : undefined;
|
|
119
|
+
moreAvailable = payloads.length > 0;
|
|
120
|
+
console.log(`loadMapWithPayloadDiviner.offsetHash: ${offsetHash}`);
|
|
121
|
+
console.log(`loadMapWithPayloadDiviner.moreAvailable: ${moreAvailable}`);
|
|
122
|
+
const imagePayloadPairs = await Promise.all(payloads
|
|
123
|
+
.filter((payload) => payload.schema === ImageThumbnailSchema)
|
|
124
|
+
.map(async (payload) => [await PayloadHasher.hashAsync(payload), payload]));
|
|
125
|
+
imagePayloadPairs.forEach(([hash, payload]) => (newMap[payload.sourceUrl] = hash));
|
|
126
|
+
}
|
|
127
|
+
this._map = newMap;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
async stopHandler(_timeout) {
|
|
132
|
+
if (this._pollId) {
|
|
133
|
+
clearTimeout(this._pollId);
|
|
134
|
+
this._pollId = undefined;
|
|
135
|
+
}
|
|
136
|
+
return await super.stopHandler();
|
|
137
|
+
}
|
|
138
|
+
async attachArchivistEvents() {
|
|
139
|
+
const archivist = await this.getArchivistInstance();
|
|
140
|
+
const mapPromise = this.getSafeMap();
|
|
141
|
+
archivist.on('inserted', async ({ payloads }) => {
|
|
142
|
+
const map = await mapPromise;
|
|
143
|
+
const thumbnails = compact(payloads.filter((payload) => payload.schema === ImageThumbnailSchema));
|
|
144
|
+
await Promise.all(thumbnails.map(async (payload) => (map[payload.sourceUrl] = await PayloadHasher.hashAsync(payload))));
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
async getSafeMap() {
|
|
148
|
+
let mapRetry = 100; //10 seconds max
|
|
149
|
+
let map = this._map;
|
|
150
|
+
while (!map) {
|
|
151
|
+
await delay(100);
|
|
152
|
+
mapRetry = mapRetry - 1;
|
|
153
|
+
if (mapRetry === 0) {
|
|
154
|
+
throw Error('Map Not Loaded');
|
|
155
|
+
}
|
|
156
|
+
map = this._map;
|
|
157
|
+
}
|
|
158
|
+
return map;
|
|
159
|
+
}
|
|
160
|
+
async poll() {
|
|
161
|
+
if (await this.started()) {
|
|
162
|
+
const pollFrequency = this.pollFrequency;
|
|
163
|
+
if (pollFrequency) {
|
|
164
|
+
this._pollId = setTimeout(async () => {
|
|
165
|
+
this._pollId = undefined;
|
|
166
|
+
await this.loadMap();
|
|
167
|
+
await this.poll();
|
|
168
|
+
}, pollFrequency);
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
await this.loadMap();
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=Diviner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../src/Diviner/Diviner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Params.js","sourceRoot":"","sources":["../../../src/Diviner/Params.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Diviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA"}
|
package/dist/esm/Plugin.js
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { ImageThumbnailSchema } from '@xyo-network/image-thumbnail-payload-plugin';
|
|
2
2
|
import { PayloadSetSchema } from '@xyo-network/payload-model';
|
|
3
|
-
import {
|
|
3
|
+
import { createPayloadSetDualPlugin } from '@xyo-network/payloadset-plugin';
|
|
4
|
+
import { ImageThumbnailDiviner } from './Diviner';
|
|
4
5
|
import { ImageThumbnailWitness } from './Witness';
|
|
5
|
-
export const ImageThumbnailPlugin = () =>
|
|
6
|
+
export const ImageThumbnailPlugin = () => createPayloadSetDualPlugin({ required: { [ImageThumbnailSchema]: 1 }, schema: PayloadSetSchema }, {
|
|
7
|
+
diviner: async (params) => {
|
|
8
|
+
const result = await ImageThumbnailDiviner.create(params);
|
|
9
|
+
return result;
|
|
10
|
+
},
|
|
6
11
|
witness: async (params) => {
|
|
7
12
|
const result = await ImageThumbnailWitness.create(params);
|
|
8
13
|
return result;
|
package/dist/esm/Plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAA;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAA;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAA;AAE3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAEjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE,CACvC,0BAA0B,CACxB,EAAE,QAAQ,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,EACrE;IACE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;QACxB,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzD,OAAO,MAAM,CAAA;IACf,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;QACxB,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzD,OAAO,MAAM,CAAA;IACf,CAAC;CACF,CACF,CAAA"}
|
package/dist/esm/index.js
CHANGED
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAE/C,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,oBAAoB,EAAE,CAAA;AAE/B,oDAAoD;AACpD,eAAe,oBAAoB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAE/C,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,oBAAoB,EAAE,CAAA;AAE/B,oDAAoD;AACpD,eAAe,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DivinerConfig } from '@xyo-network/diviner-model';
|
|
2
|
+
export declare const ImageThumbnailDivinerConfigSchema: "network.xyo.image.thumbnail.diviner.config";
|
|
3
|
+
export type ImageThumbnailDivinerConfigSchema = typeof ImageThumbnailDivinerConfigSchema;
|
|
4
|
+
export type ImageThumbnailDivinerConfig = DivinerConfig<{
|
|
5
|
+
archivist: string;
|
|
6
|
+
payloadDiviner?: string;
|
|
7
|
+
pollFrequency?: number;
|
|
8
|
+
schema: ImageThumbnailDivinerConfigSchema;
|
|
9
|
+
}>;
|
|
10
|
+
//# sourceMappingURL=Config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../src/Diviner/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAG1D,eAAO,MAAM,iCAAiC,8CAAoD,CAAA;AAClG,MAAM,MAAM,iCAAiC,GAAG,OAAO,iCAAiC,CAAA;AAExF,MAAM,MAAM,2BAA2B,GAAG,aAAa,CAAC;IACtD,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,iCAAiC,CAAA;CAC1C,CAAC,CAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { AbstractDiviner } from '@xyo-network/abstract-diviner';
|
|
2
|
+
import { ArchivistInstance } from '@xyo-network/archivist-model';
|
|
3
|
+
import { DivinerInstance } from '@xyo-network/diviner-model';
|
|
4
|
+
import { ImageThumbnail } from '@xyo-network/image-thumbnail-payload-plugin';
|
|
5
|
+
import { UrlPayload } from '@xyo-network/url-payload-plugin';
|
|
6
|
+
import { ImageThumbnailDivinerParams } from './Params';
|
|
7
|
+
export declare class ImageThumbnailDiviner<TParams extends ImageThumbnailDivinerParams = ImageThumbnailDivinerParams> extends AbstractDiviner<TParams> {
|
|
8
|
+
static configSchemas: ("network.xyo.image.thumbnail.diviner.config" | "network.xyo.diviner.config")[];
|
|
9
|
+
private _archivistInstance;
|
|
10
|
+
private _initializeArchivistConnectionIfNeededPromise;
|
|
11
|
+
private _map;
|
|
12
|
+
private _payloadDivinerInstance;
|
|
13
|
+
private _pollId?;
|
|
14
|
+
get archivist(): (import("@xyo-network/module-model").ArchivistModuleConfig | undefined) & (string | (import("@xyo-network/module-model").IndividualArchivistConfig & string));
|
|
15
|
+
get payloadDiviner(): string | undefined;
|
|
16
|
+
get pollFrequency(): number | undefined;
|
|
17
|
+
getArchivistInstance(): Promise<ArchivistInstance>;
|
|
18
|
+
getPayloadDivinerInstance(): Promise<DivinerInstance | undefined>;
|
|
19
|
+
protected divineHandler(payloads?: UrlPayload[]): Promise<ImageThumbnail[]>;
|
|
20
|
+
protected initializeArchivistConnectionIfNeeded(): Promise<void>;
|
|
21
|
+
protected loadMap(): Promise<void>;
|
|
22
|
+
protected loadMapWithAll(): Promise<void>;
|
|
23
|
+
protected loadMapWithPayloadDiviner(): Promise<void>;
|
|
24
|
+
protected stopHandler(_timeout?: number | undefined): Promise<boolean>;
|
|
25
|
+
private attachArchivistEvents;
|
|
26
|
+
private getSafeMap;
|
|
27
|
+
private poll;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=Diviner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../src/Diviner/Diviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAuB,MAAM,8BAA8B,CAAA;AAErF,OAAO,EAA0C,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAEpG,OAAO,EAAE,cAAc,EAAwB,MAAM,6CAA6C,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAI5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,qBAAa,qBAAqB,CAAC,OAAO,SAAS,2BAA2B,GAAG,2BAA2B,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC;IAC5I,OAAgB,aAAa,kFAA2D;IAExF,OAAO,CAAC,kBAAkB,CAAwC;IAClE,OAAO,CAAC,6CAA6C,CAA2B;IAChF,OAAO,CAAC,IAAI,CAAoC;IAChD,OAAO,CAAC,uBAAuB,CAAsC;IACrE,OAAO,CAAC,OAAO,CAAC,CAAkC;IAElD,IAAI,SAAS,kKAEZ;IAED,IAAI,cAAc,uBAEjB;IAED,IAAI,aAAa,uBAEhB;IAGK,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAelD,yBAAyB,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;cAkB9C,aAAa,CAAC,QAAQ,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAU9F,SAAS,CAAC,qCAAqC;cAc/B,OAAO;cAQP,cAAc;cAiBd,yBAAyB;cAgChB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;YAQvE,qBAAqB;YAUrB,UAAU;YAcV,IAAI;CAcnB"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DivinerParams } from '@xyo-network/diviner-model';
|
|
2
|
+
import { AnyConfigSchema } from '@xyo-network/module';
|
|
3
|
+
import { ImageThumbnailDivinerConfig } from './Config';
|
|
4
|
+
export type ImageThumbnailDivinerParams = DivinerParams<AnyConfigSchema<ImageThumbnailDivinerConfig>>;
|
|
5
|
+
//# sourceMappingURL=Params.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Params.d.ts","sourceRoot":"","sources":["../../../src/Diviner/Params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,MAAM,MAAM,2BAA2B,GAAG,aAAa,CAAC,eAAe,CAAC,2BAA2B,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Diviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA"}
|
package/dist/types/Plugin.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { ImageThumbnailDiviner } from './Diviner';
|
|
1
2
|
import { ImageThumbnailWitness } from './Witness';
|
|
2
|
-
export declare const ImageThumbnailPlugin: () => import("@xyo-network/payloadset-plugin").
|
|
3
|
+
export declare const ImageThumbnailPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetDualPlugin<ImageThumbnailWitness<import("@xyo-network/core").BaseParamsFields & {
|
|
3
4
|
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
4
5
|
accountDerivationPath?: string | undefined;
|
|
5
6
|
config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
@@ -55,5 +56,52 @@ export declare const ImageThumbnailPlugin: () => import("@xyo-network/payloadset
|
|
|
55
56
|
wallet?: import("@xyo-network/wallet-model").WalletInstance | undefined;
|
|
56
57
|
} & {
|
|
57
58
|
loaders?: string[] | undefined;
|
|
59
|
+
}>, ImageThumbnailDiviner<import("@xyo-network/core").BaseParamsFields & {
|
|
60
|
+
account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
|
|
61
|
+
accountDerivationPath?: string | undefined;
|
|
62
|
+
config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
63
|
+
readonly archivist?: import("@xyo-network/module-model").ArchivistModuleConfig | undefined;
|
|
64
|
+
readonly name?: string | undefined;
|
|
65
|
+
readonly paging?: Record<string, {
|
|
66
|
+
size?: number | undefined;
|
|
67
|
+
}> | undefined;
|
|
68
|
+
readonly schema: string;
|
|
69
|
+
readonly security?: {
|
|
70
|
+
readonly allowAnonymous?: boolean | undefined;
|
|
71
|
+
readonly allowed?: Record<string, (string | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
|
|
72
|
+
readonly disallowed?: Record<string, string[]> | undefined;
|
|
73
|
+
} | undefined;
|
|
74
|
+
readonly sign?: boolean | undefined;
|
|
75
|
+
readonly storeQueries?: boolean | undefined;
|
|
76
|
+
} & Omit<Omit<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
77
|
+
readonly archivist?: import("@xyo-network/module-model").ArchivistModuleConfig | undefined;
|
|
78
|
+
readonly name?: string | undefined;
|
|
79
|
+
readonly paging?: Record<string, {
|
|
80
|
+
size?: number | undefined;
|
|
81
|
+
}> | undefined;
|
|
82
|
+
readonly schema: "network.xyo.image.thumbnail.diviner.config";
|
|
83
|
+
readonly security?: {
|
|
84
|
+
readonly allowAnonymous?: boolean | undefined;
|
|
85
|
+
readonly allowed?: Record<string, (string | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
|
|
86
|
+
readonly disallowed?: Record<string, string[]> | undefined;
|
|
87
|
+
} | undefined;
|
|
88
|
+
readonly sign?: boolean | undefined;
|
|
89
|
+
readonly storeQueries?: boolean | undefined;
|
|
90
|
+
} & Omit<{
|
|
91
|
+
schema: "network.xyo.image.thumbnail.diviner.config";
|
|
92
|
+
} & Omit<{
|
|
93
|
+
archivist: string;
|
|
94
|
+
payloadDiviner?: string | undefined;
|
|
95
|
+
pollFrequency?: number | undefined;
|
|
96
|
+
schema: "network.xyo.image.thumbnail.diviner.config";
|
|
97
|
+
}, "schema">, "schema"> & {
|
|
98
|
+
schema: "network.xyo.image.thumbnail.diviner.config";
|
|
99
|
+
}, "schema"> & {
|
|
100
|
+
schema: string;
|
|
101
|
+
}, "schema"> & {
|
|
102
|
+
schema: string;
|
|
103
|
+
};
|
|
104
|
+
ephemeralQueryAccountEnabled?: boolean | undefined;
|
|
105
|
+
wallet?: import("@xyo-network/wallet-model").WalletInstance | undefined;
|
|
58
106
|
}>>;
|
|
59
107
|
//# sourceMappingURL=Plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAEjD,eAAO,MAAM,oBAAoB
|
|
1
|
+
{"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAEjD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAa9B,CAAA"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAE/C,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,oBAAoB,EAAE,CAAA;AAG/B,eAAe,oBAAoB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAE/C,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,oBAAoB,EAAE,CAAA;AAG/B,eAAe,oBAAoB,CAAA"}
|
package/package.json
CHANGED
|
@@ -10,15 +10,22 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
+
"@xylabs/assert": "^2.9.3",
|
|
14
|
+
"@xylabs/delay": "^2.9.3",
|
|
13
15
|
"@xylabs/url": "^2.9.3",
|
|
14
|
-
"@xyo-network/
|
|
15
|
-
"@xyo-network/
|
|
16
|
-
"@xyo-network/
|
|
17
|
-
"@xyo-network/
|
|
18
|
-
"@xyo-network/
|
|
19
|
-
"@xyo-network/
|
|
20
|
-
"@xyo-network/
|
|
21
|
-
"@xyo-network/
|
|
16
|
+
"@xyo-network/abstract-diviner": "~2.71.12",
|
|
17
|
+
"@xyo-network/archivist-model": "~2.71.12",
|
|
18
|
+
"@xyo-network/axios": "~2.71.12",
|
|
19
|
+
"@xyo-network/core": "~2.71.12",
|
|
20
|
+
"@xyo-network/diviner-model": "~2.71.12",
|
|
21
|
+
"@xyo-network/diviner-payload-model": "~2.71.12",
|
|
22
|
+
"@xyo-network/image-thumbnail-payload-plugin": "~2.71.12",
|
|
23
|
+
"@xyo-network/module": "~2.71.12",
|
|
24
|
+
"@xyo-network/payload-model": "~2.71.12",
|
|
25
|
+
"@xyo-network/payloadset-plugin": "~2.71.12",
|
|
26
|
+
"@xyo-network/url-payload-plugin": "~2.71.12",
|
|
27
|
+
"@xyo-network/witness": "~2.71.12",
|
|
28
|
+
"async-mutex": "^0.4.0",
|
|
22
29
|
"gm": "^1.25.0",
|
|
23
30
|
"hasbin": "^1.2.3",
|
|
24
31
|
"hash-wasm": "^4.9.0",
|
|
@@ -68,5 +75,5 @@
|
|
|
68
75
|
},
|
|
69
76
|
"sideEffects": false,
|
|
70
77
|
"types": "dist/types/index.d.ts",
|
|
71
|
-
"version": "2.71.
|
|
78
|
+
"version": "2.71.12"
|
|
72
79
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DivinerConfig } from '@xyo-network/diviner-model'
|
|
2
|
+
import { ImageThumbnailSchema } from '@xyo-network/image-thumbnail-payload-plugin'
|
|
3
|
+
|
|
4
|
+
export const ImageThumbnailDivinerConfigSchema = `${ImageThumbnailSchema}.diviner.config` as const
|
|
5
|
+
export type ImageThumbnailDivinerConfigSchema = typeof ImageThumbnailDivinerConfigSchema
|
|
6
|
+
|
|
7
|
+
export type ImageThumbnailDivinerConfig = DivinerConfig<{
|
|
8
|
+
archivist: string
|
|
9
|
+
payloadDiviner?: string
|
|
10
|
+
pollFrequency?: number
|
|
11
|
+
schema: ImageThumbnailDivinerConfigSchema
|
|
12
|
+
}>
|