@xyo-network/module-model 5.3.29 → 5.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +0 -10557
  2. package/dist/neutral/CreatableModule/CreatableModuleRegistry.d.ts +1 -3
  3. package/dist/neutral/CreatableModule/CreatableModuleRegistry.d.ts.map +1 -1
  4. package/dist/neutral/Job/Job.d.ts +12 -0
  5. package/dist/neutral/Job/Job.d.ts.map +1 -0
  6. package/dist/neutral/Job/JobProvider.d.ts +5 -0
  7. package/dist/neutral/Job/JobProvider.d.ts.map +1 -0
  8. package/dist/neutral/Job/JobQueue.d.ts +13 -0
  9. package/dist/neutral/Job/JobQueue.d.ts.map +1 -0
  10. package/dist/neutral/Job/Task.d.ts +2 -0
  11. package/dist/neutral/Job/Task.d.ts.map +1 -0
  12. package/dist/neutral/Job/index.d.ts +4 -0
  13. package/dist/neutral/Job/index.d.ts.map +1 -0
  14. package/dist/neutral/Labels/Labels.d.ts +1 -3
  15. package/dist/neutral/Labels/Labels.d.ts.map +1 -1
  16. package/dist/neutral/Payload/ModuleState.d.ts +1 -3
  17. package/dist/neutral/Payload/ModuleState.d.ts.map +1 -1
  18. package/dist/neutral/index.d.ts +1 -1
  19. package/dist/neutral/index.d.ts.map +1 -1
  20. package/dist/neutral/index.mjs +2 -342
  21. package/dist/neutral/index.mjs.map +1 -1
  22. package/dist/neutral/instance/ModuleInstanceParams.d.ts +2 -2
  23. package/dist/neutral/instance/ModuleInstanceParams.d.ts.map +1 -1
  24. package/package.json +17 -21
  25. package/dist/neutral/ResolveHelper/ResolveHelper.d.ts +0 -28
  26. package/dist/neutral/ResolveHelper/ResolveHelper.d.ts.map +0 -1
  27. package/dist/neutral/ResolveHelper/ResolveHelperStatic.d.ts +0 -7
  28. package/dist/neutral/ResolveHelper/ResolveHelperStatic.d.ts.map +0 -1
  29. package/dist/neutral/ResolveHelper/index.d.ts +0 -10
  30. package/dist/neutral/ResolveHelper/index.d.ts.map +0 -1
  31. package/dist/neutral/ResolveHelper/model.d.ts +0 -2
  32. package/dist/neutral/ResolveHelper/model.d.ts.map +0 -1
  33. package/dist/neutral/ResolveHelper/resolveAddressToInstance.d.ts +0 -9
  34. package/dist/neutral/ResolveHelper/resolveAddressToInstance.d.ts.map +0 -1
  35. package/dist/neutral/ResolveHelper/resolveAll.d.ts +0 -6
  36. package/dist/neutral/ResolveHelper/resolveAll.d.ts.map +0 -1
  37. package/dist/neutral/ResolveHelper/resolveLocalNameToAddress.d.ts +0 -9
  38. package/dist/neutral/ResolveHelper/resolveLocalNameToAddress.d.ts.map +0 -1
  39. package/dist/neutral/ResolveHelper/resolveLocalNameToInstance.d.ts +0 -8
  40. package/dist/neutral/ResolveHelper/resolveLocalNameToInstance.d.ts.map +0 -1
  41. package/dist/neutral/ResolveHelper/resolvePathToAddress.d.ts +0 -5
  42. package/dist/neutral/ResolveHelper/resolvePathToAddress.d.ts.map +0 -1
  43. package/dist/neutral/ResolveHelper/resolvePathToInstance.d.ts +0 -4
  44. package/dist/neutral/ResolveHelper/resolvePathToInstance.d.ts.map +0 -1
  45. package/dist/neutral/ResolveHelper/traceModuleIdentifier.d.ts +0 -5
  46. package/dist/neutral/ResolveHelper/traceModuleIdentifier.d.ts.map +0 -1
  47. package/dist/neutral/ResolveHelper/transformModuleIdentifier.d.ts +0 -4
  48. package/dist/neutral/ResolveHelper/transformModuleIdentifier.d.ts.map +0 -1
@@ -2,9 +2,7 @@ import { type Schema } from '@xyo-network/payload-model';
2
2
  import type { Labels } from '../Labels/index.ts';
3
3
  import type { CreatableModuleFactory, CreatableModuleInstance } from './CreatableModule.ts';
4
4
  import type { LabeledCreatableModuleFactory } from './LabeledCreatableModuleFactory.ts';
5
- export interface CreatableModuleRegistry {
6
- [key: Schema]: (CreatableModuleFactory | LabeledCreatableModuleFactory)[] | undefined;
7
- }
5
+ export type CreatableModuleRegistry = Record<Schema, (CreatableModuleFactory | LabeledCreatableModuleFactory)[] | undefined>;
8
6
  export declare const registerCreatableModuleFactory: <TModule extends CreatableModuleInstance>(registry: CreatableModuleRegistry, factory: CreatableModuleFactory<TModule> | LabeledCreatableModuleFactory<TModule>, labels?: Labels,
9
7
  /** register this as the primary factory for every schema it supports */
10
8
  primary?: boolean | Schema | Schema[]) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"CreatableModuleRegistry.d.ts","sourceRoot":"","sources":["../../../src/CreatableModule/CreatableModuleRegistry.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC3F,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAA;AAEvF,MAAM,WAAW,uBAAuB;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,sBAAsB,GAAG,6BAA6B,CAAC,EAAE,GAAG,SAAS,CAAA;CACtF;AAqBD,eAAO,MAAM,8BAA8B,GAAI,OAAO,SAAS,uBAAuB,EACpF,UAAU,uBAAuB,EACjC,SAAS,sBAAsB,CAAC,OAAO,CAAC,GAAG,6BAA6B,CAAC,OAAO,CAAC,EACjF,SAAS,MAAM;AACf,wEAAwE;AACxE,UAAS,OAAO,GAAG,MAAM,GAAG,MAAM,EAAU,SAsC7C,CAAA;AAED,eAAO,MAAM,gCAAgC,GAC3C,WAAW,CAAC,sBAAsB,GAAG,6BAA6B,CAAC,EAAE,EACrE,WAAU,uBAA4B,EACtC,iBAAe,4BAMhB,CAAA;AAED,6DAA6D;AAC7D,eAAO,MAAM,6BAA6B,GACxC,SAAQ,uBAA4B,EACpC,GAAG,SAAS,uBAAuB,EAAE,KACpC,uBAWF,CAAA"}
1
+ {"version":3,"file":"CreatableModuleRegistry.d.ts","sourceRoot":"","sources":["../../../src/CreatableModule/CreatableModuleRegistry.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC3F,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAA;AAEvF,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,sBAAsB,GAAG,6BAA6B,CAAC,EAAE,GAAG,SAAS,CAAC,CAAA;AAqB5H,eAAO,MAAM,8BAA8B,GAAI,OAAO,SAAS,uBAAuB,EACpF,UAAU,uBAAuB,EACjC,SAAS,sBAAsB,CAAC,OAAO,CAAC,GAAG,6BAA6B,CAAC,OAAO,CAAC,EACjF,SAAS,MAAM;AACf,wEAAwE;AACxE,UAAS,OAAO,GAAG,MAAM,GAAG,MAAM,EAAU,SAsC7C,CAAA;AAED,eAAO,MAAM,gCAAgC,GAC3C,WAAW,CAAC,sBAAsB,GAAG,6BAA6B,CAAC,EAAE,EACrE,WAAU,uBAA4B,EACtC,iBAAe,4BAMhB,CAAA;AAED,6DAA6D;AAC7D,eAAO,MAAM,6BAA6B,GACxC,SAAQ,uBAA4B,EACpC,GAAG,SAAS,uBAAuB,EAAE,KACpC,uBAWF,CAAA"}
@@ -0,0 +1,12 @@
1
+ import type { Task } from './Task.ts';
2
+ export type VoidFunction = (...anyArguments: unknown[]) => void;
3
+ export interface Job {
4
+ name: string;
5
+ onComplete?: VoidFunction;
6
+ onFail?: VoidFunction;
7
+ onStart?: VoidFunction;
8
+ onSuccess?: VoidFunction;
9
+ schedule: string;
10
+ task: Task;
11
+ }
12
+ //# sourceMappingURL=Job.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Job.d.ts","sourceRoot":"","sources":["../../../src/Job/Job.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAErC,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,YAAY,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;AAE/D,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,YAAY,CAAA;IACzB,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,SAAS,CAAC,EAAE,YAAY,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,IAAI,CAAA;CACX"}
@@ -0,0 +1,5 @@
1
+ import type { Job } from './Job.ts';
2
+ export interface JobProvider {
3
+ get jobs(): Job[];
4
+ }
5
+ //# sourceMappingURL=JobProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JobProvider.d.ts","sourceRoot":"","sources":["../../../src/Job/JobProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC,MAAM,WAAW,WAAW;IAC1B,IAAI,IAAI,IAAI,GAAG,EAAE,CAAA;CAClB"}
@@ -0,0 +1,13 @@
1
+ import type { EventData, EventEmitter } from '@xylabs/sdk-js';
2
+ import type { Job } from './Job.ts';
3
+ /** @internal */
4
+ export interface DefineOptions {
5
+ lockLifetime?: number;
6
+ }
7
+ /** @internal */
8
+ export interface JobQueue extends EventEmitter<EventData> {
9
+ define: (name: string, options: DefineOptions, processor: Job['task']) => void;
10
+ every: (interval: string, names: string | string[]) => Promise<void>;
11
+ start: () => Promise<unknown>;
12
+ }
13
+ //# sourceMappingURL=JobQueue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JobQueue.d.ts","sourceRoot":"","sources":["../../../src/Job/JobQueue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC,gBAAgB;AAChB,MAAM,WAAW,aAAa;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,gBAAgB;AAChB,MAAM,WAAW,QAAS,SAAQ,YAAY,CAAC,SAAS,CAAC;IACvD,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;IAC9E,KAAK,EAAE,CACL,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,KAGrB,OAAO,CAAC,IAAI,CAAC,CAAA;IAClB,KAAK,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9B"}
@@ -0,0 +1,2 @@
1
+ export type Task = () => Promise<void>;
2
+ //# sourceMappingURL=Task.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Task.d.ts","sourceRoot":"","sources":["../../../src/Job/Task.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './Job.ts';
2
+ export * from './JobProvider.ts';
3
+ export * from './JobQueue.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Job/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA"}
@@ -1,9 +1,7 @@
1
1
  /**
2
2
  * Object used to represent labels identifying a resource.
3
3
  */
4
- export interface Labels {
5
- [key: string]: string | undefined;
6
- }
4
+ export type Labels = Record<string, string | undefined>;
7
5
  /**
8
6
  * Interface for objects that have labels.
9
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Labels.d.ts","sourceRoot":"","sources":["../../../src/Labels/Labels.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACnD,MAAM,EAAE,CAAC,CAAA;CACV;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC3D,MAAM,CAAC,EAAE,CAAC,CAAA;CACX;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,EAAE,WAAW,MAAM,KAAG,OAKjE,CAAA"}
1
+ {"version":3,"file":"Labels.d.ts","sourceRoot":"","sources":["../../../src/Labels/Labels.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AAEvD;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACnD,MAAM,EAAE,CAAC,CAAA;CACV;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC3D,MAAM,CAAC,EAAE,CAAC,CAAA;CACX;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,EAAE,WAAW,MAAM,KAAG,OAKjE,CAAA"}
@@ -1,7 +1,5 @@
1
1
  import type { Payload, WithSources } from '@xyo-network/payload-model';
2
- export interface StateDictionary {
3
- [key: string]: string | number;
4
- }
2
+ export type StateDictionary = Record<string, string | number>;
5
3
  export interface State<T extends StateDictionary = StateDictionary> {
6
4
  state: T;
7
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ModuleState.d.ts","sourceRoot":"","sources":["../../../src/Payload/ModuleState.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAKtE,MAAM,WAAW,eAAe;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;CAC/B;AACD,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;IAChE,KAAK,EAAE,CAAC,CAAA;CACT;AAED,eAAO,MAAM,iBAAiB;;CAA6C,CAAA;AAC3E,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAA;AAExD,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAA;AAE3G,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,eAAe,GAAG,eAAe,EAAE,MAAM,GAAG,OAAO,EAAE,UAAU,MAAM,KAAG,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,MAE3I,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,CAAC,SAAS,eAAe,GAAG,eAAe,EAClF,MAAM,GAAG,OAAO,EAAE,UAAU,MAAM,KAAG,OAAO,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,MAE/E,CAAA;AAED,eAAO,MAAM,aAAa,uEAAsE,CAAA;AAChG,eAAO,MAAM,qBAAqB,6FAA8E,CAAA"}
1
+ {"version":3,"file":"ModuleState.d.ts","sourceRoot":"","sources":["../../../src/Payload/ModuleState.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAKtE,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAA;AAC7D,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;IAChE,KAAK,EAAE,CAAC,CAAA;CACT;AAED,eAAO,MAAM,iBAAiB;;CAA6C,CAAA;AAC3E,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAA;AAExD,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAA;AAE3G,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,eAAe,GAAG,eAAe,EAAE,MAAM,GAAG,OAAO,EAAE,UAAU,MAAM,KAAG,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,MAE3I,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,CAAC,SAAS,eAAe,GAAG,eAAe,EAClF,MAAM,GAAG,OAAO,EAAE,UAAU,MAAM,KAAG,OAAO,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,MAE/E,CAAA;AAED,eAAO,MAAM,aAAa,uEAAsE,CAAA;AAChG,eAAO,MAAM,qBAAqB,6FAA8E,CAAA"}
@@ -4,6 +4,7 @@ export * from './CreatableModule/index.ts';
4
4
  export * from './DetailsError.ts';
5
5
  export * from './EventsModels/index.ts';
6
6
  export * from './instance/index.ts';
7
+ export * from './Job/index.ts';
7
8
  export * from './Labels/index.ts';
8
9
  export * from './lib/index.ts';
9
10
  export * from './ModuleDescription.ts';
@@ -16,6 +17,5 @@ export * from './ModuleStatusReporter.ts';
16
17
  export * from './Payload/index.ts';
17
18
  export * from './Queries/index.ts';
18
19
  export * from './QueryableModule/index.ts';
19
- export * from './ResolveHelper/index.ts';
20
20
  export * from './withModule.ts';
21
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,wBAAwB,CAAA;AACtC,cAAc,mCAAmC,CAAA;AACjD,cAAc,uBAAuB,CAAA;AACrC,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,wBAAwB,CAAA;AACtC,cAAc,mCAAmC,CAAA;AACjD,cAAc,uBAAuB,CAAA;AACrC,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,iBAAiB,CAAA"}
@@ -284,7 +284,7 @@ var isModuleResolver = isObjectResolver;
284
284
  var hasAllLabels = (source, required) => {
285
285
  if (!required) return true;
286
286
  return Object.entries(required).every(([key, value]) => {
287
- return source?.hasOwnProperty(key) && source?.[key] === value;
287
+ return Object.hasOwn(source ?? {}, key) && source?.[key] === value;
288
288
  });
289
289
  };
290
290
 
@@ -406,326 +406,6 @@ var isModuleStateWithSources = (payload) => {
406
406
  var asModuleState = AsObjectFactory6.create(isModuleState);
407
407
  var asOptionalModuleState = AsObjectFactory6.createOptional(isModuleState);
408
408
 
409
- // src/ResolveHelper/resolveAddressToInstance.ts
410
- var resolveAddressToInstanceDown = async (root, address, includePrivate = void 0, ignore = []) => {
411
- if (root.address === address) {
412
- return root;
413
- }
414
- const cache = root.addressCache?.("up", !!includePrivate);
415
- const privateChildren = (includePrivate ? await root.privateChildren?.() : []) ?? [];
416
- const publicChildren = await root.publicChildren?.() ?? [];
417
- const children = [...privateChildren, ...publicChildren];
418
- for (const child of children) {
419
- const found = await resolveAddressToInstanceDown(child, address, includePrivate, ignore);
420
- if (found) {
421
- cache?.set(address, new WeakRef(found));
422
- return found;
423
- }
424
- }
425
- cache?.set(address, null);
426
- };
427
- var resolveAddressToInstanceSiblings = async (root, address, includePrivate = void 0, ignore = []) => {
428
- const siblings = await root.siblings?.() ?? [];
429
- for (const sibling of siblings) {
430
- const found = await resolveAddressToInstanceDown(sibling, address, includePrivate, ignore);
431
- if (found) {
432
- return found;
433
- }
434
- }
435
- };
436
- var resolveAddressToInstanceUp = async (root, address, includePrivate = void 0, ignore = []) => {
437
- const cache = root.addressCache?.("up", includePrivate ?? true);
438
- const parents = await root.parents?.() ?? [];
439
- for (const parent of parents) {
440
- const found = await resolveAddressToInstance(parent, address, includePrivate, ignore);
441
- if (found) {
442
- cache?.set(address, new WeakRef(found));
443
- return found;
444
- }
445
- }
446
- cache?.set(address, null);
447
- };
448
- var resolveAddressToInstanceAll = async (root, address, includePrivate = void 0, ignore = []) => {
449
- const cache = root.addressCache?.("all", !!includePrivate);
450
- const result = await resolveAddressToInstanceDown(root, address, includePrivate ?? false, ignore) ?? await resolveAddressToInstanceUp(root, address, includePrivate ?? true, ignore);
451
- cache?.set(address, result ? new WeakRef(result) : null);
452
- return result;
453
- };
454
- var resolveAddressToInstance = async (root, address, includePrivate = void 0, ignore = [], direction = "all") => {
455
- switch (direction) {
456
- case "all": {
457
- return await resolveAddressToInstanceAll(root, address, includePrivate, ignore);
458
- }
459
- case "up": {
460
- return await resolveAddressToInstanceUp(root, address, includePrivate ?? true, ignore);
461
- }
462
- case "down": {
463
- return await resolveAddressToInstanceDown(root, address, includePrivate ?? false, ignore);
464
- }
465
- }
466
- };
467
-
468
- // src/ResolveHelper/resolveAll.ts
469
- var resolveAllUp = async (root, maxDepth = 10, exclude = []) => {
470
- if (maxDepth === 0) {
471
- return [root].filter((mod) => !exclude.includes(mod.address));
472
- }
473
- const parents = (await root.parents()).filter((mod) => !exclude.includes(mod.address));
474
- return (maxDepth > 1 ? [
475
- ...(await Promise.all(parents.map(async (mod) => await resolveAllUp(mod, maxDepth - 1, [...exclude, root.address])))).flat(),
476
- ...(await Promise.all(parents.map(async (mod) => await resolveAllDown(mod, maxDepth - 1, [...exclude, root.address], true)))).flat(),
477
- ...parents,
478
- root
479
- ] : [...parents, root]).filter((mod) => !exclude.includes(mod.address)).filter(duplicateModules);
480
- };
481
- var resolveAllDown = async (root, maxDepth = 10, exclude = [], includePrivate = false) => {
482
- if (maxDepth === 0) {
483
- return [root];
484
- }
485
- const children = (await root.publicChildren()).filter((mod) => !exclude.includes(mod.address));
486
- const privateChildren = includePrivate ? (await root.privateChildren()).filter((mod) => !exclude.includes(mod.address)) : [];
487
- return (maxDepth > 1 ? [
488
- ...children,
489
- ...(await Promise.all(children.map((child) => resolveAllDown(child, maxDepth - 1, [...exclude, root.address])))).flat(),
490
- ...(await Promise.all(privateChildren.map((child) => resolveAllDown(child, maxDepth - 1, [...exclude, root.address])))).flat(),
491
- root
492
- ] : [...children, root]).filter((mod) => !exclude.includes(mod.address)).filter(duplicateModules);
493
- };
494
- var resolveAll = async (root, maxDepth = 10, exclude = []) => {
495
- if (maxDepth === 0) {
496
- return [root];
497
- }
498
- return [...await resolveAllUp(root, maxDepth, exclude), ...await resolveAllDown(root, maxDepth, exclude)].filter(duplicateModules);
499
- };
500
-
501
- // src/ResolveHelper/ResolveHelper.ts
502
- import {
503
- assertEx as assertEx4,
504
- exists,
505
- IdLogger,
506
- isAddress as isAddress2,
507
- isDefined,
508
- isString,
509
- isTruthy as isTruthy2
510
- } from "@xylabs/sdk-js";
511
-
512
- // src/ResolveHelper/ResolveHelperStatic.ts
513
- var ResolveHelperStatic = class {
514
- static defaultLogger;
515
- // eslint-disable-next-line sonarjs/public-static-readonly
516
- static transformers = [];
517
- };
518
-
519
- // src/ResolveHelper/resolvePathToInstance.ts
520
- import { asAddress, assertEx as assertEx2 } from "@xylabs/sdk-js";
521
-
522
- // src/ResolveHelper/resolveLocalNameToInstance.ts
523
- var resolveLocalNameToInstanceUp = async (root, modName) => {
524
- const parents = await root.parents?.() ?? [];
525
- return parents.find((parent) => parent.config.name === modName);
526
- };
527
- var resolveLocalNameToInstanceDown = async (root, modName, includePrivate = void 0) => {
528
- const privateChildren = (includePrivate ? await root.privateChildren?.() : []) ?? [];
529
- const publicChildren = await root.publicChildren?.() ?? [];
530
- const children = [...privateChildren, ...publicChildren];
531
- return children.find((child) => child.config.name === modName);
532
- };
533
- var resolveLocalNameToInstanceAll = async (root, modName, includePrivate = false) => {
534
- return await resolveLocalNameToInstanceDown(root, modName, includePrivate) ?? await resolveLocalNameToInstanceUp(root, modName);
535
- };
536
- var resolveLocalNameToInstance = async (root, modName, includePrivate = false, direction = "all") => {
537
- switch (direction) {
538
- case "all": {
539
- return await resolveLocalNameToInstanceAll(root, modName, includePrivate);
540
- }
541
- case "up": {
542
- return await resolveLocalNameToInstanceUp(root, modName);
543
- }
544
- case "down": {
545
- return await resolveLocalNameToInstanceDown(root, modName, includePrivate);
546
- }
547
- }
548
- };
549
-
550
- // src/ResolveHelper/resolveLocalNameToAddress.ts
551
- var resolveLocalNameToAddressUp = async (root, modName) => {
552
- return (await resolveLocalNameToInstanceUp(root, modName))?.address;
553
- };
554
- var resolveLocalNameToAddressDown = async (root, modName, includePrivate = void 0) => {
555
- return (await resolveLocalNameToInstanceDown(root, modName, includePrivate))?.address;
556
- };
557
- var resolveLocalNameToAddressAll = async (root, modName, includePrivate = void 0) => {
558
- return (await resolveLocalNameToInstanceAll(root, modName, includePrivate))?.address;
559
- };
560
- var resolveLocalNameToAddress = async (root, modName, includePrivate = void 0, direction = "all") => {
561
- return (await resolveLocalNameToInstance(root, modName, includePrivate, direction))?.address;
562
- };
563
-
564
- // src/ResolveHelper/transformModuleIdentifier.ts
565
- var transformModuleIdentifier = async (id, transformers) => {
566
- let result = id;
567
- for (const transformer of transformers) {
568
- result = await transformer.transform(id);
569
- }
570
- return result;
571
- };
572
-
573
- // src/ResolveHelper/resolvePathToInstance.ts
574
- var resolvePathToInstance = async (root, path, includePrivate = void 0, transformers = ResolveHelperStatic.transformers) => {
575
- const parts = path.split(MODULE_PATH_SEPARATOR);
576
- const first = await transformModuleIdentifier(
577
- assertEx2(parts.shift(), () => `First part is invalid [${path}]`),
578
- transformers
579
- );
580
- if (!first) {
581
- return void 0;
582
- }
583
- const firstAddress = asAddress(first) ?? await resolveLocalNameToAddress(root, first, includePrivate);
584
- if (firstAddress) {
585
- const firstModule = await resolveAddressToInstance(root, firstAddress, includePrivate);
586
- if (firstModule && parts.length > 0) {
587
- return resolvePathToInstance(firstModule, parts.join(MODULE_PATH_SEPARATOR));
588
- }
589
- return firstModule;
590
- }
591
- };
592
-
593
- // src/ResolveHelper/resolvePathToAddress.ts
594
- var resolvePathToAddress = async (root, path, includePrivate = void 0, transformers = ResolveHelperStatic.transformers) => {
595
- return (await resolvePathToInstance(root, path, includePrivate, transformers))?.address;
596
- };
597
-
598
- // src/ResolveHelper/traceModuleIdentifier.ts
599
- import { assertEx as assertEx3 } from "@xylabs/sdk-js";
600
- var traceModuleIdentifier = async (resolver, path) => {
601
- const parts = path.split(":");
602
- const first = parts.shift();
603
- const firstModule = asModuleInstance(
604
- assertEx3(await resolver.resolve(first, { maxDepth: 1 }), () => `Failed to resolve [${first}]`),
605
- () => `Resolved invalid module instance [${first}]`
606
- );
607
- if (firstModule) {
608
- return parts.length > 0 ? [firstModule.address, ...await traceModuleIdentifier(firstModule, parts.join(":"))] : [firstModule.address];
609
- }
610
- return [];
611
- };
612
-
613
- // src/ResolveHelper/ResolveHelper.ts
614
- var ResolveHelper = class _ResolveHelper extends ResolveHelperStatic {
615
- static async resolve(config, id = "*", {
616
- maxDepth = 3,
617
- required = "log",
618
- ...options
619
- } = {}) {
620
- const {
621
- transformers,
622
- mod,
623
- logger = this.defaultLogger,
624
- dead = false,
625
- upResolver,
626
- downResolver,
627
- privateResolver
628
- } = config;
629
- const log = logger ? new IdLogger(logger, () => `ResolveHelper [${mod.id}][${id}]`) : void 0;
630
- const downLocalOptions = {
631
- ...options,
632
- direction: "down",
633
- maxDepth,
634
- required: false
635
- };
636
- const upLocalOptions = { ...downLocalOptions, direction: "up" };
637
- const childOptions = {
638
- ...options,
639
- maxDepth: maxDepth - 1,
640
- required: false
641
- };
642
- const direction = options?.direction ?? "all";
643
- const up = direction === "up" || direction === "all";
644
- const down = direction === "down" || direction === "all";
645
- let result;
646
- log?.debug("start", id, maxDepth);
647
- if (id === "*") {
648
- if (dead) {
649
- log?.warn("failed [dead]", id);
650
- return [];
651
- }
652
- const modules = [
653
- ...down ? await downResolver.resolve("*", downLocalOptions) : [],
654
- ...up ? await upResolver.resolve("*", upLocalOptions) : []
655
- ].filter(duplicateModules);
656
- if (modules.length > 0) {
657
- log?.debug("modules [count]", modules.length);
658
- }
659
- if (maxDepth === 0) {
660
- return modules;
661
- }
662
- const childModules = (await Promise.all(modules.map(async (mod2) => await mod2.resolve("*", childOptions)))).flat().filter(duplicateModules);
663
- return [...modules, ...childModules, mod].filter(duplicateModules);
664
- } else {
665
- switch (typeof id) {
666
- case "string": {
667
- if (dead) {
668
- return void 0;
669
- }
670
- const resolvedId = assertEx4(await resolvePathToAddress(mod, id, false, transformers) ?? id, () => "Invalid resolvedId");
671
- const resolvers = [
672
- [downResolver, downLocalOptions],
673
- [up ? upResolver : void 0, upLocalOptions],
674
- [up ? privateResolver : void 0, upLocalOptions]
675
- ].filter(([resolver]) => exists(resolver));
676
- for (const resolver of resolvers) {
677
- const [resolverInstance] = resolver;
678
- if (!result) {
679
- result = await this.resolveModuleIdentifier(resolverInstance, resolvedId);
680
- }
681
- }
682
- break;
683
- }
684
- default: {
685
- break;
686
- }
687
- }
688
- }
689
- this.validateRequiredResolve(required, result, id, logger);
690
- return result;
691
- }
692
- // resolves a complex module path to addresses
693
- static async resolveModuleIdentifier(resolver, path, required) {
694
- const parts = path.split(":");
695
- const first = parts.shift();
696
- const firstIsAddress = isAddress2(first);
697
- const resolvedModule = await resolver.resolve(first, { maxDepth: firstIsAddress ? 10 : 1 }) ?? (isString(first) ? await resolver.resolvePrivate(first, { maxDepth: firstIsAddress ? 10 : 1 }) : void 0);
698
- const finalModule = required ? assertEx4(resolvedModule, () => `Failed to resolve [${first}] [${firstIsAddress}]`) : resolvedModule;
699
- const firstModule = asModuleInstance(finalModule, () => `Resolved invalid module instance [${first}]`);
700
- return isDefined(firstModule) ? parts.length > 0 ? await this.resolveModuleIdentifier(firstModule, parts.join(":")) : firstModule : void 0;
701
- }
702
- // translates a complex module path to addresses
703
- static traceModuleIdentifier(resolver, path) {
704
- return traceModuleIdentifier(resolver, path);
705
- }
706
- static transformModuleIdentifier(identifier, transformers = _ResolveHelper.transformers) {
707
- return transformModuleIdentifier(identifier, transformers);
708
- }
709
- static validateRequiredResolve(required, result, id, logger = this.defaultLogger) {
710
- const log = logger ? new IdLogger(logger, () => `validateRequiredResolve [${id}][${result}]`) : void 0;
711
- if (isTruthy2(required) && (result === void 0 || Array.isArray(result) && result.length > 0)) {
712
- switch (required) {
713
- case "warn": {
714
- log?.warn("resolve failed", id);
715
- break;
716
- }
717
- case "log": {
718
- log?.log("resolve failed", id);
719
- break;
720
- }
721
- default: {
722
- throw new Error(`resolve failed [${id}]`);
723
- }
724
- }
725
- }
726
- }
727
- };
728
-
729
409
  // src/withModule.ts
730
410
  var WithFactory = {
731
411
  create: (typeCheck) => {
@@ -758,7 +438,6 @@ export {
758
438
  ModuleSubscribeQuerySchema,
759
439
  ObjectResolverPriority,
760
440
  ReservedModuleIdentifierCharacters,
761
- ResolveHelper,
762
441
  WithFactory,
763
442
  asAddressPayload,
764
443
  asAttachableModuleInstance,
@@ -805,25 +484,6 @@ export {
805
484
  requiredModuleQueries,
806
485
  requiredModuleShape,
807
486
  requiredQueryableModuleQueries,
808
- requiredQueryableModuleShape,
809
- resolveAddressToInstance,
810
- resolveAddressToInstanceAll,
811
- resolveAddressToInstanceDown,
812
- resolveAddressToInstanceSiblings,
813
- resolveAddressToInstanceUp,
814
- resolveAll,
815
- resolveAllDown,
816
- resolveAllUp,
817
- resolveLocalNameToAddress,
818
- resolveLocalNameToAddressAll,
819
- resolveLocalNameToAddressDown,
820
- resolveLocalNameToAddressUp,
821
- resolveLocalNameToInstance,
822
- resolveLocalNameToInstanceAll,
823
- resolveLocalNameToInstanceDown,
824
- resolveLocalNameToInstanceUp,
825
- resolvePathToAddress,
826
- resolvePathToInstance,
827
- transformModuleIdentifier
487
+ requiredQueryableModuleShape
828
488
  };
829
489
  //# sourceMappingURL=index.mjs.map