@xyo-network/archivist 2.26.2 → 2.26.3

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.
@@ -4,7 +4,7 @@ import { XyoPayload } from '@xyo-network/payload';
4
4
  import { NullablePromisableArray, Promisable, PromisableArray } from '@xyo-network/promisable';
5
5
  import { Archivist } from './Archivist';
6
6
  import { XyoArchivist, XyoArchivistQueryPayload } from './XyoArchivist';
7
- import { XyoArchivistConfig, XyoResolvedArchivistParents } from './XyoArchivistConfig';
7
+ import { XyoArchivistConfig, XyoArchivistParents } from './XyoArchivistConfig';
8
8
  export declare abstract class XyoAbstractArchivist<Q extends XyoArchivistQueryPayload = XyoArchivistQueryPayload, C extends XyoArchivistConfig = XyoArchivistConfig> extends XyoAbstractModule<Q, C> implements XyoArchivist<XyoArchivistQueryPayload>, Archivist<XyoPayload, XyoPayload, XyoPayload, XyoPayload, XyoArchivistQueryPayload> {
9
9
  abstract get(ids: string[]): NullablePromisableArray<XyoPayload<{
10
10
  schema: string;
@@ -23,7 +23,8 @@ export declare abstract class XyoAbstractArchivist<Q extends XyoArchivistQueryPa
23
23
  get resolver(): ((address: string) => XyoArchivist<XyoArchivistQueryPayload<XyoPayload<{
24
24
  schema: string;
25
25
  }>>>) | undefined;
26
+ private resolveArchivists;
26
27
  private _parents?;
27
- get parents(): XyoResolvedArchivistParents;
28
+ get parents(): XyoArchivistParents;
28
29
  }
29
30
  //# sourceMappingURL=Abstract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Abstract.d.ts","sourceRoot":"","sources":["../../src/Abstract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAG9F,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAEtF,8BAAsB,oBAAoB,CACtC,CAAC,SAAS,wBAAwB,GAAG,wBAAwB,EAC7D,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,CAEnD,SAAQ,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAC9B,YAAW,YAAY,CAAC,wBAAwB,CAAC,EAAE,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,wBAAwB,CAAC;IAEtI,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,uBAAuB,CAAC,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEpF,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,wBAAwB,CAAC,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,GAAG,eAAe,CAAC,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE/H,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;aAEtF,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;IAEjF,IAAI,QAAQ;;sBAEX;IAED,OAAO,CAAC,QAAQ,CAAC,CAA6B;IAC9C,IAAI,OAAO,gCAOV;CACF"}
1
+ {"version":3,"file":"Abstract.d.ts","sourceRoot":"","sources":["../../src/Abstract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE9F,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE9E,8BAAsB,oBAAoB,CACtC,CAAC,SAAS,wBAAwB,GAAG,wBAAwB,EAC7D,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,CAEnD,SAAQ,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAC9B,YAAW,YAAY,CAAC,wBAAwB,CAAC,EAAE,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,wBAAwB,CAAC;IAEtI,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,uBAAuB,CAAC,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEpF,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,wBAAwB,CAAC,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,GAAG,eAAe,CAAC,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE/H,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;aAEtF,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;IAEjF,IAAI,QAAQ;;sBAEX;IAED,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,QAAQ,CAAC,CAAqB;IACtC,IAAI,OAAO,wBAOV;CACF"}
@@ -1,16 +1,24 @@
1
1
  import { assertEx } from '@xylabs/sdk-js';
2
2
  import { XyoAbstractModule } from '@xyo-network/module';
3
- import compact from 'lodash/compact';
4
3
  export class XyoAbstractArchivist extends XyoAbstractModule {
5
4
  get resolver() {
6
5
  return this.config.resolver;
7
6
  }
7
+ resolveArchivists(archivists) {
8
+ const resolved = {};
9
+ if (archivists) {
10
+ Object.entries(archivists).forEach(([key, value]) => {
11
+ resolved[key] = value ?? this.resolver?.(key) ?? null;
12
+ });
13
+ }
14
+ return resolved;
15
+ }
8
16
  _parents;
9
17
  get parents() {
10
18
  this._parents = this._parents ?? {
11
- commit: compact(this.config.parents?.commit?.map((parent) => this.resolver?.(parent))),
12
- read: compact(this.config.parents?.read?.map((parent) => this.resolver?.(parent))),
13
- write: compact(this.config.parents?.write?.map((parent) => this.resolver?.(parent))),
19
+ commit: this.resolveArchivists(this.config.parents?.commit),
20
+ read: this.resolveArchivists(this.config.parents?.commit),
21
+ write: this.resolveArchivists(this.config.parents?.commit),
14
22
  };
15
23
  return assertEx(this._parents);
16
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Abstract.js","sourceRoot":"","sources":["../../src/Abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAGvD,OAAO,OAAO,MAAM,gBAAgB,CAAA;AAMpC,MAAM,OAAgB,oBAIpB,SAAQ,iBAAuB;IAW/B,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAA;IAC7B,CAAC;IAEO,QAAQ,CAA8B;IAC9C,IAAI,OAAO;QACT,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI;YAC/B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YACtF,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YAClF,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;SACrF,CAAA;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAChC,CAAC;CACF"}
1
+ {"version":3,"file":"Abstract.js","sourceRoot":"","sources":["../../src/Abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAQvD,MAAM,OAAgB,oBAIpB,SAAQ,iBAAuB;IAW/B,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAA;IAC7B,CAAC;IAEO,iBAAiB,CAAC,UAA4D;QACpF,MAAM,QAAQ,GAAoD,EAAE,CAAA;QACpE,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAClD,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAA;YACvD,CAAC,CAAC,CAAA;SACH;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,QAAQ,CAAsB;IACtC,IAAI,OAAO;QACT,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI;YAC/B,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;YAC3D,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;YACzD,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;SAC3D,CAAA;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAChC,CAAC;CACF"}
@@ -3,14 +3,9 @@ import { XyoModuleConfig } from '@xyo-network/module';
3
3
  import { XyoPayload } from '@xyo-network/payload';
4
4
  import { XyoArchivist, XyoArchivistQueryPayload } from './XyoArchivist';
5
5
  export interface XyoArchivistParents {
6
- read?: string[];
7
- write?: string[];
8
- commit?: string[];
9
- }
10
- export interface XyoResolvedArchivistParents {
11
- read?: (XyoArchivist | null)[];
12
- write?: (XyoArchivist | null)[];
13
- commit?: (XyoArchivist | null)[];
6
+ read?: Record<string, XyoArchivist | null | undefined>;
7
+ write?: Record<string, XyoArchivist | null | undefined>;
8
+ commit?: Record<string, XyoArchivist | null | undefined>;
14
9
  }
15
10
  export declare type XyoArchivistConfig<T extends XyoPayload = XyoPayload, M extends XyoArchivist = XyoArchivist<XyoArchivistQueryPayload<T>>> = XyoModuleConfig<{
16
11
  /** @field address of one or more parent archivists to read from */
@@ -1 +1 @@
1
- {"version":3,"file":"XyoArchivistConfig.d.ts","sourceRoot":"","sources":["../../src/XyoArchivistConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAEvE,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,CAAC,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAA;IAC9B,KAAK,CAAC,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAA;IAC/B,MAAM,CAAC,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAA;CACjC;AAED,oBAAY,kBAAkB,CAC5B,CAAC,SAAS,UAAU,GAAG,UAAU,EACjC,CAAC,SAAS,YAAY,GAAG,YAAY,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,IAChE,eAAe,CACjB;IACE,mEAAmE;IACnE,OAAO,CAAC,EAAE,mBAAmB,CAAA;IAC7B,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GAAG,CAAC,EACL,CAAC,CACF,CAAA;AAED,qBAAa,yBAAyB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB;IACtF,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBACR,MAAM,CAAC,EAAE,CAAC;IAItB,IAAW,OAAO,oCAEjB;IAED,IAAW,OAAO,2BAEjB;IAED,IAAW,YAAY,uBAEtB;IAED,IAAW,gBAAgB,wBAE1B;CACF"}
1
+ {"version":3,"file":"XyoArchivistConfig.d.ts","sourceRoot":"","sources":["../../src/XyoArchivistConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAEvE,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;CACzD;AAED,oBAAY,kBAAkB,CAC5B,CAAC,SAAS,UAAU,GAAG,UAAU,EACjC,CAAC,SAAS,YAAY,GAAG,YAAY,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,IAChE,eAAe,CACjB;IACE,mEAAmE;IACnE,OAAO,CAAC,EAAE,mBAAmB,CAAA;IAC7B,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GAAG,CAAC,EACL,CAAC,CACF,CAAA;AAED,qBAAa,yBAAyB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB;IACtF,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBACR,MAAM,CAAC,EAAE,CAAC;IAItB,IAAW,OAAO,oCAEjB;IAED,IAAW,OAAO,2BAEjB;IAED,IAAW,YAAY,uBAEtB;IAED,IAAW,gBAAgB,wBAE1B;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"XyoArchivistConfig.js","sourceRoot":"","sources":["../../src/XyoArchivistConfig.ts"],"names":[],"mappings":"AAiCA,MAAM,OAAO,yBAAyB;IAC1B,MAAM,CAAI;IACpB,YAAY,MAAU;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAA;IAC7B,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAA;IAC7B,CAAC;IAED,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,MAAM,EAAE,YAAY,CAAA;IAClC,CAAC;IAED,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACtC,CAAC;CACF"}
1
+ {"version":3,"file":"XyoArchivistConfig.js","sourceRoot":"","sources":["../../src/XyoArchivistConfig.ts"],"names":[],"mappings":"AA2BA,MAAM,OAAO,yBAAyB;IAC1B,MAAM,CAAI;IACpB,YAAY,MAAU;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAA;IAC7B,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAA;IAC7B,CAAC;IAED,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,MAAM,EAAE,YAAY,CAAA;IAClC,CAAC;IAED,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACtC,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"XyoMemoryArchivist.d.ts","sourceRoot":"","sources":["../../src/XyoMemoryArchivist.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAA0B,MAAM,2BAA2B,CAAA;AACnF,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAIrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,oBAAY,wBAAwB,GAAG,kBAAkB,CAAC;IACxD,MAAM,EAAE,4CAA4C,CAAA;IACpD,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAC,CAAA;AAEF,qBAAa,kBAAkB,CAC7B,CAAC,SAAS,wBAAwB,GAAG,wBAAwB,EAC7D,CAAC,SAAS,wBAAwB,GAAG,wBAAwB,CAC7D,SAAQ,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC;IAClC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,eAAe,EAAE,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAC,CAAC;IAGpF,IAAW,GAAG,WAEb;IAED,OAAO,CAAC,KAAK,CAA8B;gBAE/B,MAAM,EAAE,CAAC;IAKd,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC;IAMlD,KAAK,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvB,cAAc,CAAC,IAAI,EAAE,MAAM;;;IAY3B,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC;IAQ3D,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC;IAS3D,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,KAAK,EAAE,mBAAmB,GAAG,eAAe,CAAC,CAAC,CAAC;IAUvF,GAAG,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE;IAIrC,MAAM;;;CASpB"}
1
+ {"version":3,"file":"XyoMemoryArchivist.d.ts","sourceRoot":"","sources":["../../src/XyoMemoryArchivist.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAA0B,MAAM,2BAA2B,CAAA;AACnF,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAIrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,oBAAY,wBAAwB,GAAG,kBAAkB,CAAC;IACxD,MAAM,EAAE,4CAA4C,CAAA;IACpD,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAC,CAAA;AAEF,qBAAa,kBAAkB,CAC7B,CAAC,SAAS,wBAAwB,GAAG,wBAAwB,EAC7D,CAAC,SAAS,wBAAwB,GAAG,wBAAwB,CAC7D,SAAQ,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC;IAClC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,eAAe,EAAE,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAC,CAAC;IAGpF,IAAW,GAAG,WAEb;IAED,OAAO,CAAC,KAAK,CAA8B;gBAE/B,MAAM,EAAE,CAAC;IAKd,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC;IAMlD,KAAK,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvB,cAAc,CAAC,IAAI,EAAE,MAAM;;;IAY3B,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC;IAQ3D,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC;IAS3D,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,KAAK,EAAE,mBAAmB,GAAG,eAAe,CAAC,CAAC,CAAC;IAUvF,GAAG,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE;IAIrC,MAAM;;;CAWpB"}
@@ -25,7 +25,7 @@ export class XyoMemoryArchivist extends XyoAbstractArchivist {
25
25
  this.cache.clear();
26
26
  }
27
27
  async getFromParents(hash) {
28
- return compact(await Promise.all(compact(this.parents?.read?.map(async (parent) => {
28
+ return compact(await Promise.all(compact(Object.values(this.parents?.read ?? {}).map(async (parent) => {
29
29
  return (await parent?.get([hash]))?.[0] ?? null;
30
30
  }))))[0];
31
31
  }
@@ -59,7 +59,7 @@ export class XyoMemoryArchivist extends XyoAbstractArchivist {
59
59
  const payloads = assertEx(await this.all(), 'Nothing to commit');
60
60
  const builder = new XyoBoundWitnessBuilder();
61
61
  const block = builder.payloads(payloads).witness(account).build();
62
- const result = await Promise.all(compact(this.parents?.commit?.map(async (parent) => await parent?.insert?.(payloads.concat([block])))));
62
+ const result = await Promise.all(compact(Object.values(this.parents?.commit ?? [])?.map(async (parent) => await parent?.insert?.(payloads.concat([block])))));
63
63
  await this.clear();
64
64
  return result;
65
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"XyoMemoryArchivist.js","sourceRoot":"","sources":["../../src/XyoMemoryArchivist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XyoMemoryArchivist.js","sourceRoot":"","sources":["../../src/XyoMemoryArchivist.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -10,11 +10,11 @@
10
10
  },
11
11
  "dependencies": {
12
12
  "@xylabs/sdk-js": "^2.6.6",
13
- "@xyo-network/account": "^2.26.2",
14
- "@xyo-network/boundwitness": "^2.26.2",
15
- "@xyo-network/module": "^2.26.2",
16
- "@xyo-network/payload": "^2.26.2",
17
- "@xyo-network/promisable": "^2.26.2",
13
+ "@xyo-network/account": "^2.26.3",
14
+ "@xyo-network/boundwitness": "^2.26.3",
15
+ "@xyo-network/module": "^2.26.3",
16
+ "@xyo-network/payload": "^2.26.3",
17
+ "@xyo-network/promisable": "^2.26.3",
18
18
  "lodash": "^4.17.21",
19
19
  "lru-cache": "^7.14.0",
20
20
  "tslib": "^2.4.0"
@@ -56,5 +56,5 @@
56
56
  },
57
57
  "sideEffects": false,
58
58
  "types": "dist/esm/index.d.ts",
59
- "version": "2.26.2"
59
+ "version": "2.26.3"
60
60
  }
package/src/Abstract.ts CHANGED
@@ -3,11 +3,10 @@ import { XyoBoundWitness } from '@xyo-network/boundwitness'
3
3
  import { XyoAbstractModule } from '@xyo-network/module'
4
4
  import { XyoPayload } from '@xyo-network/payload'
5
5
  import { NullablePromisableArray, Promisable, PromisableArray } from '@xyo-network/promisable'
6
- import compact from 'lodash/compact'
7
6
 
8
7
  import { Archivist } from './Archivist'
9
8
  import { XyoArchivist, XyoArchivistQueryPayload } from './XyoArchivist'
10
- import { XyoArchivistConfig, XyoResolvedArchivistParents } from './XyoArchivistConfig'
9
+ import { XyoArchivistConfig, XyoArchivistParents } from './XyoArchivistConfig'
11
10
 
12
11
  export abstract class XyoAbstractArchivist<
13
12
  Q extends XyoArchivistQueryPayload = XyoArchivistQueryPayload,
@@ -28,12 +27,22 @@ export abstract class XyoAbstractArchivist<
28
27
  return this.config.resolver
29
28
  }
30
29
 
31
- private _parents?: XyoResolvedArchivistParents
30
+ private resolveArchivists(archivists?: Record<string, XyoArchivist | null | undefined>) {
31
+ const resolved: Record<string, XyoArchivist | null | undefined> = {}
32
+ if (archivists) {
33
+ Object.entries(archivists).forEach(([key, value]) => {
34
+ resolved[key] = value ?? this.resolver?.(key) ?? null
35
+ })
36
+ }
37
+ return resolved
38
+ }
39
+
40
+ private _parents?: XyoArchivistParents
32
41
  get parents() {
33
42
  this._parents = this._parents ?? {
34
- commit: compact(this.config.parents?.commit?.map((parent) => this.resolver?.(parent))),
35
- read: compact(this.config.parents?.read?.map((parent) => this.resolver?.(parent))),
36
- write: compact(this.config.parents?.write?.map((parent) => this.resolver?.(parent))),
43
+ commit: this.resolveArchivists(this.config.parents?.commit),
44
+ read: this.resolveArchivists(this.config.parents?.commit),
45
+ write: this.resolveArchivists(this.config.parents?.commit),
37
46
  }
38
47
  return assertEx(this._parents)
39
48
  }
@@ -5,15 +5,9 @@ import { XyoPayload } from '@xyo-network/payload'
5
5
  import { XyoArchivist, XyoArchivistQueryPayload } from './XyoArchivist'
6
6
 
7
7
  export interface XyoArchivistParents {
8
- read?: string[]
9
- write?: string[]
10
- commit?: string[]
11
- }
12
-
13
- export interface XyoResolvedArchivistParents {
14
- read?: (XyoArchivist | null)[]
15
- write?: (XyoArchivist | null)[]
16
- commit?: (XyoArchivist | null)[]
8
+ read?: Record<string, XyoArchivist | null | undefined>
9
+ write?: Record<string, XyoArchivist | null | undefined>
10
+ commit?: Record<string, XyoArchivist | null | undefined>
17
11
  }
18
12
 
19
13
  export type XyoArchivistConfig<
@@ -47,7 +47,7 @@ export class XyoMemoryArchivist<
47
47
  return compact(
48
48
  await Promise.all(
49
49
  compact(
50
- this.parents?.read?.map(async (parent) => {
50
+ Object.values(this.parents?.read ?? {}).map(async (parent) => {
51
51
  return (await parent?.get([hash]))?.[0] ?? null
52
52
  }),
53
53
  ),
@@ -91,7 +91,9 @@ export class XyoMemoryArchivist<
91
91
  const payloads = assertEx(await this.all(), 'Nothing to commit')
92
92
  const builder = new XyoBoundWitnessBuilder<XyoBoundWitness, XyoPayload>()
93
93
  const block = builder.payloads(payloads).witness(account).build()
94
- const result = await Promise.all(compact(this.parents?.commit?.map(async (parent) => await parent?.insert?.(payloads.concat([block])))))
94
+ const result = await Promise.all(
95
+ compact(Object.values(this.parents?.commit ?? [])?.map(async (parent) => await parent?.insert?.(payloads.concat([block])))),
96
+ )
95
97
  await this.clear()
96
98
  return result
97
99
  }