@xyo-network/react-diviner 2.75.0 → 2.75.1

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.
@@ -1,3 +1,5 @@
1
1
  export * from './useDivinerFromNode';
2
2
  export * from './useDivinersFromNode';
3
+ export * from './useWeakDivinerFromNode';
4
+ export * from './useWeakDivinersFromNode';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA"}
@@ -1,3 +1,5 @@
1
1
  export * from './useDivinerFromNode';
2
2
  export * from './useDivinersFromNode';
3
+ export * from './useWeakDivinerFromNode';
4
+ export * from './useWeakDivinersFromNode';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA"}
@@ -1,3 +1,5 @@
1
1
  export * from './useDivinerFromNode';
2
2
  export * from './useDivinersFromNode';
3
+ export * from './useWeakDivinerFromNode';
4
+ export * from './useWeakDivinersFromNode';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA"}
@@ -21,7 +21,9 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
21
21
  var src_exports = {};
22
22
  __export(src_exports, {
23
23
  useDivinerFromNode: () => useDivinerFromNode,
24
- useDivinersFromNode: () => useDivinersFromNode
24
+ useDivinersFromNode: () => useDivinersFromNode,
25
+ useWeakDivinerFromNode: () => useWeakDivinerFromNode,
26
+ useWeakDivinersFromNode: () => useWeakDivinersFromNode
25
27
  });
26
28
  module.exports = __toCommonJS(src_exports);
27
29
 
@@ -58,4 +60,39 @@ var useDivinersFromNode = (filter, config) => {
58
60
  void 0
59
61
  ] : [modules, error];
60
62
  };
63
+
64
+ // src/hooks/node/useWeakDivinerFromNode.tsx
65
+ var import_diviner_model3 = require("@xyo-network/diviner-model");
66
+ var import_react_node3 = require("@xyo-network/react-node");
67
+ var useWeakDivinerFromNode = (nameOrAddressOrInstance, config) => {
68
+ const [module2, error] = (0, import_react_node3.useWeakModuleFromNode)(nameOrAddressOrInstance, config);
69
+ const instance = module2?.deref();
70
+ const diviner = (0, import_diviner_model3.asDivinerInstance)(instance);
71
+ if (instance && !diviner) {
72
+ const error2 = new Error(`Resolved module is not a DivinerInstance [${instance.id}]`);
73
+ console.error(error2.message);
74
+ return [void 0, error2];
75
+ }
76
+ return [diviner ? new WeakRef(diviner) : void 0, error];
77
+ };
78
+
79
+ // src/hooks/node/useWeakDivinersFromNode.tsx
80
+ var import_exists = require("@xylabs/exists");
81
+ var import_diviner_model4 = require("@xyo-network/diviner-model");
82
+ var import_react_node4 = require("@xyo-network/react-node");
83
+ var useWeakDivinersFromNode = (filter, config) => {
84
+ const [modules, error] = (0, import_react_node4.useWeakModulesFromNode)(filter, config);
85
+ if (error) {
86
+ return [null, error];
87
+ }
88
+ return [
89
+ modules?.map((module2) => {
90
+ const instance = (0, import_diviner_model4.asDivinerInstance)(module2?.deref());
91
+ if (instance) {
92
+ return new WeakRef(instance);
93
+ }
94
+ }).filter(import_exists.exists) ?? [],
95
+ void 0
96
+ ];
97
+ };
61
98
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/hooks/node/useDivinerFromNode.tsx","../../src/hooks/node/useDivinersFromNode.tsx"],"sourcesContent":["export * from './hooks'\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinerFromNode */\nexport const useDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance | undefined, Error | undefined] => {\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asDivinerInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a DivinerInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { DivinerInstance, isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinersFromNode */\nexport const useDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<DivinerInstance[]>((prev, module) => {\n if (isDivinerInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,2BAAmD;AACnD,wBAAwD;AAGjD,IAAM,qBAAqB,CAChC,yBACA,WACqD;AACrD,QAAM,CAACA,SAAQ,KAAK,QAAI,qCAAkB,yBAAyB,MAAM;AACzE,QAAM,eAAW,wCAAkBA,OAAM;AACzC,MAAIA,WAAU,CAAC,UAAU;AACvB,UAAMC,SAAQ,IAAI,MAAM,6CAA6CD,QAAO,QAAQ,MAAM,IAAIA,QAAO,QAAQ,IAAI,IAAIA,QAAO,OAAO,GAAG;AACtI,YAAQ,MAAMC,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;AChBA,IAAAC,wBAAmD;AAEnD,IAAAC,qBAAyD;AAGlD,IAAM,sBAAsB,CACjC,QACA,WAC8D;AAC9D,QAAM,CAAC,SAAS,KAAK,QAAI,uCAAmB,QAAQ,MAAM;AAC1D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA0B,CAAC,MAAMC,YAAW;AAClD,cAAI,yCAAkBA,OAAM,GAAG;AAC7B,aAAK,KAAKA,OAAM;AAAA,MAClB;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;","names":["module","error","import_diviner_model","import_react_node","module"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/hooks/node/useDivinerFromNode.tsx","../../src/hooks/node/useDivinersFromNode.tsx","../../src/hooks/node/useWeakDivinerFromNode.tsx","../../src/hooks/node/useWeakDivinersFromNode.tsx"],"sourcesContent":["export * from './hooks'\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinerFromNode */\nexport const useDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance | undefined, Error | undefined] => {\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asDivinerInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a DivinerInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { DivinerInstance, isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinersFromNode */\nexport const useDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<DivinerInstance[]>((prev, module) => {\n if (isDivinerInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n","import { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useWeakModuleFromNode } from '@xyo-network/react-node'\n\nexport const useWeakDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [WeakRef<DivinerInstance> | undefined, Error | undefined] => {\n const [module, error] = useWeakModuleFromNode(nameOrAddressOrInstance, config)\n const instance = module?.deref()\n const diviner = asDivinerInstance(instance)\n if (instance && !diviner) {\n const error = new Error(`Resolved module is not a DivinerInstance [${instance.id}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [diviner ? new WeakRef(diviner) : undefined, error]\n}\n","import { exists } from '@xylabs/exists'\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useWeakModulesFromNode } from '@xyo-network/react-node'\n\nexport const useWeakDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [WeakRef<DivinerInstance>[] | null | undefined, Error | undefined] => {\n const [modules, error] = useWeakModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return [\n modules\n ?.map((module) => {\n const instance = asDivinerInstance(module?.deref())\n if (instance) {\n return new WeakRef(instance)\n }\n })\n .filter(exists) ?? [],\n undefined,\n ]\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,2BAAmD;AACnD,wBAAwD;AAGjD,IAAM,qBAAqB,CAChC,yBACA,WACqD;AACrD,QAAM,CAACA,SAAQ,KAAK,QAAI,qCAAkB,yBAAyB,MAAM;AACzE,QAAM,eAAW,wCAAkBA,OAAM;AACzC,MAAIA,WAAU,CAAC,UAAU;AACvB,UAAMC,SAAQ,IAAI,MAAM,6CAA6CD,QAAO,QAAQ,MAAM,IAAIA,QAAO,QAAQ,IAAI,IAAIA,QAAO,OAAO,GAAG;AACtI,YAAQ,MAAMC,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;AChBA,IAAAC,wBAAmD;AAEnD,IAAAC,qBAAyD;AAGlD,IAAM,sBAAsB,CACjC,QACA,WAC8D;AAC9D,QAAM,CAAC,SAAS,KAAK,QAAI,uCAAmB,QAAQ,MAAM;AAC1D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA0B,CAAC,MAAMC,YAAW;AAClD,cAAI,yCAAkBA,OAAM,GAAG;AAC7B,aAAK,KAAKA,OAAM;AAAA,MAClB;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;;;AC3BA,IAAAC,wBAAmD;AACnD,IAAAC,qBAA4D;AAErD,IAAM,yBAAyB,CACpC,yBACA,WAC8D;AAC9D,QAAM,CAACC,SAAQ,KAAK,QAAI,0CAAsB,yBAAyB,MAAM;AAC7E,QAAM,WAAWA,SAAQ,MAAM;AAC/B,QAAM,cAAU,yCAAkB,QAAQ;AAC1C,MAAI,YAAY,CAAC,SAAS;AACxB,UAAMC,SAAQ,IAAI,MAAM,6CAA6C,SAAS,EAAE,GAAG;AACnF,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,IAAI,QAAQ,OAAO,IAAI,QAAW,KAAK;AAC3D;;;AChBA,oBAAuB;AACvB,IAAAC,wBAAmD;AAEnD,IAAAC,qBAA6D;AAEtD,IAAM,0BAA0B,CACrC,QACA,WACuE;AACvE,QAAM,CAAC,SAAS,KAAK,QAAI,2CAAuB,QAAQ,MAAM;AAC9D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO;AAAA,IACL,SACI,IAAI,CAACC,YAAW;AAChB,YAAM,eAAW,yCAAkBA,SAAQ,MAAM,CAAC;AAClD,UAAI,UAAU;AACZ,eAAO,IAAI,QAAQ,QAAQ;AAAA,MAC7B;AAAA,IACF,CAAC,EACA,OAAO,oBAAM,KAAK,CAAC;AAAA,IACtB;AAAA,EACF;AACF;","names":["module","error","import_diviner_model","import_react_node","module","import_diviner_model","import_react_node","module","error","import_diviner_model","import_react_node","module"]}
@@ -31,8 +31,45 @@ var useDivinersFromNode = (filter, config) => {
31
31
  void 0
32
32
  ] : [modules, error];
33
33
  };
34
+
35
+ // src/hooks/node/useWeakDivinerFromNode.tsx
36
+ import { asDivinerInstance as asDivinerInstance2 } from "@xyo-network/diviner-model";
37
+ import { useWeakModuleFromNode } from "@xyo-network/react-node";
38
+ var useWeakDivinerFromNode = (nameOrAddressOrInstance, config) => {
39
+ const [module, error] = useWeakModuleFromNode(nameOrAddressOrInstance, config);
40
+ const instance = module?.deref();
41
+ const diviner = asDivinerInstance2(instance);
42
+ if (instance && !diviner) {
43
+ const error2 = new Error(`Resolved module is not a DivinerInstance [${instance.id}]`);
44
+ console.error(error2.message);
45
+ return [void 0, error2];
46
+ }
47
+ return [diviner ? new WeakRef(diviner) : void 0, error];
48
+ };
49
+
50
+ // src/hooks/node/useWeakDivinersFromNode.tsx
51
+ import { exists } from "@xylabs/exists";
52
+ import { asDivinerInstance as asDivinerInstance3 } from "@xyo-network/diviner-model";
53
+ import { useWeakModulesFromNode } from "@xyo-network/react-node";
54
+ var useWeakDivinersFromNode = (filter, config) => {
55
+ const [modules, error] = useWeakModulesFromNode(filter, config);
56
+ if (error) {
57
+ return [null, error];
58
+ }
59
+ return [
60
+ modules?.map((module) => {
61
+ const instance = asDivinerInstance3(module?.deref());
62
+ if (instance) {
63
+ return new WeakRef(instance);
64
+ }
65
+ }).filter(exists) ?? [],
66
+ void 0
67
+ ];
68
+ };
34
69
  export {
35
70
  useDivinerFromNode,
36
- useDivinersFromNode
71
+ useDivinersFromNode,
72
+ useWeakDivinerFromNode,
73
+ useWeakDivinersFromNode
37
74
  };
38
75
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/node/useDivinerFromNode.tsx","../../src/hooks/node/useDivinersFromNode.tsx"],"sourcesContent":["/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinerFromNode */\nexport const useDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance | undefined, Error | undefined] => {\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asDivinerInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a DivinerInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { DivinerInstance, isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinersFromNode */\nexport const useDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<DivinerInstance[]>((prev, module) => {\n if (isDivinerInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n"],"mappings":";AAEA,SAAS,yBAA0C;AACnD,SAA+B,yBAAyB;AAGjD,IAAM,qBAAqB,CAChC,yBACA,WACqD;AACrD,QAAM,CAAC,QAAQ,KAAK,IAAI,kBAAkB,yBAAyB,MAAM;AACzE,QAAM,WAAW,kBAAkB,MAAM;AACzC,MAAI,UAAU,CAAC,UAAU;AACvB,UAAMA,SAAQ,IAAI,MAAM,6CAA6C,OAAO,QAAQ,MAAM,IAAI,OAAO,QAAQ,IAAI,IAAI,OAAO,OAAO,GAAG;AACtI,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;AChBA,SAA0B,yBAAyB;AAEnD,SAA+B,0BAA0B;AAGlD,IAAM,sBAAsB,CACjC,QACA,WAC8D;AAC9D,QAAM,CAAC,SAAS,KAAK,IAAI,mBAAmB,QAAQ,MAAM;AAC1D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA0B,CAAC,MAAM,WAAW;AAClD,UAAI,kBAAkB,MAAM,GAAG;AAC7B,aAAK,KAAK,MAAM;AAAA,MAClB;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;","names":["error"]}
1
+ {"version":3,"sources":["../../src/hooks/node/useDivinerFromNode.tsx","../../src/hooks/node/useDivinersFromNode.tsx","../../src/hooks/node/useWeakDivinerFromNode.tsx","../../src/hooks/node/useWeakDivinersFromNode.tsx"],"sourcesContent":["/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinerFromNode */\nexport const useDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance | undefined, Error | undefined] => {\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asDivinerInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a DivinerInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { DivinerInstance, isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinersFromNode */\nexport const useDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<DivinerInstance[]>((prev, module) => {\n if (isDivinerInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n","import { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useWeakModuleFromNode } from '@xyo-network/react-node'\n\nexport const useWeakDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [WeakRef<DivinerInstance> | undefined, Error | undefined] => {\n const [module, error] = useWeakModuleFromNode(nameOrAddressOrInstance, config)\n const instance = module?.deref()\n const diviner = asDivinerInstance(instance)\n if (instance && !diviner) {\n const error = new Error(`Resolved module is not a DivinerInstance [${instance.id}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [diviner ? new WeakRef(diviner) : undefined, error]\n}\n","import { exists } from '@xylabs/exists'\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useWeakModulesFromNode } from '@xyo-network/react-node'\n\nexport const useWeakDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [WeakRef<DivinerInstance>[] | null | undefined, Error | undefined] => {\n const [modules, error] = useWeakModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return [\n modules\n ?.map((module) => {\n const instance = asDivinerInstance(module?.deref())\n if (instance) {\n return new WeakRef(instance)\n }\n })\n .filter(exists) ?? [],\n undefined,\n ]\n}\n"],"mappings":";AAEA,SAAS,yBAA0C;AACnD,SAA+B,yBAAyB;AAGjD,IAAM,qBAAqB,CAChC,yBACA,WACqD;AACrD,QAAM,CAAC,QAAQ,KAAK,IAAI,kBAAkB,yBAAyB,MAAM;AACzE,QAAM,WAAW,kBAAkB,MAAM;AACzC,MAAI,UAAU,CAAC,UAAU;AACvB,UAAMA,SAAQ,IAAI,MAAM,6CAA6C,OAAO,QAAQ,MAAM,IAAI,OAAO,QAAQ,IAAI,IAAI,OAAO,OAAO,GAAG;AACtI,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;AChBA,SAA0B,yBAAyB;AAEnD,SAA+B,0BAA0B;AAGlD,IAAM,sBAAsB,CACjC,QACA,WAC8D;AAC9D,QAAM,CAAC,SAAS,KAAK,IAAI,mBAAmB,QAAQ,MAAM;AAC1D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA0B,CAAC,MAAM,WAAW;AAClD,UAAI,kBAAkB,MAAM,GAAG;AAC7B,aAAK,KAAK,MAAM;AAAA,MAClB;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;;;AC3BA,SAAS,qBAAAC,0BAA0C;AACnD,SAA+B,6BAA6B;AAErD,IAAM,yBAAyB,CACpC,yBACA,WAC8D;AAC9D,QAAM,CAAC,QAAQ,KAAK,IAAI,sBAAsB,yBAAyB,MAAM;AAC7E,QAAM,WAAW,QAAQ,MAAM;AAC/B,QAAM,UAAUA,mBAAkB,QAAQ;AAC1C,MAAI,YAAY,CAAC,SAAS;AACxB,UAAMC,SAAQ,IAAI,MAAM,6CAA6C,SAAS,EAAE,GAAG;AACnF,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,IAAI,QAAQ,OAAO,IAAI,QAAW,KAAK;AAC3D;;;AChBA,SAAS,cAAc;AACvB,SAAS,qBAAAC,0BAA0C;AAEnD,SAA+B,8BAA8B;AAEtD,IAAM,0BAA0B,CACrC,QACA,WACuE;AACvE,QAAM,CAAC,SAAS,KAAK,IAAI,uBAAuB,QAAQ,MAAM;AAC9D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO;AAAA,IACL,SACI,IAAI,CAAC,WAAW;AAChB,YAAM,WAAWA,mBAAkB,QAAQ,MAAM,CAAC;AAClD,UAAI,UAAU;AACZ,eAAO,IAAI,QAAQ,QAAQ;AAAA,MAC7B;AAAA,IACF,CAAC,EACA,OAAO,MAAM,KAAK,CAAC;AAAA,IACtB;AAAA,EACF;AACF;","names":["error","asDivinerInstance","error","asDivinerInstance"]}
@@ -1,3 +1,5 @@
1
1
  export * from './useDivinerFromNode';
2
2
  export * from './useDivinersFromNode';
3
+ export * from './useWeakDivinerFromNode';
4
+ export * from './useWeakDivinersFromNode';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA"}
@@ -1,3 +1,5 @@
1
1
  export * from './useDivinerFromNode';
2
2
  export * from './useDivinersFromNode';
3
+ export * from './useWeakDivinerFromNode';
4
+ export * from './useWeakDivinersFromNode';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA"}
@@ -1,3 +1,5 @@
1
1
  export * from './useDivinerFromNode';
2
2
  export * from './useDivinersFromNode';
3
+ export * from './useWeakDivinerFromNode';
4
+ export * from './useWeakDivinersFromNode';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA"}
@@ -21,7 +21,9 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
21
21
  var src_exports = {};
22
22
  __export(src_exports, {
23
23
  useDivinerFromNode: () => useDivinerFromNode,
24
- useDivinersFromNode: () => useDivinersFromNode
24
+ useDivinersFromNode: () => useDivinersFromNode,
25
+ useWeakDivinerFromNode: () => useWeakDivinerFromNode,
26
+ useWeakDivinersFromNode: () => useWeakDivinersFromNode
25
27
  });
26
28
  module.exports = __toCommonJS(src_exports);
27
29
 
@@ -59,9 +61,46 @@ var useDivinersFromNode = (filter, config) => {
59
61
  void 0
60
62
  ] : [modules, error];
61
63
  };
64
+
65
+ // src/hooks/node/useWeakDivinerFromNode.tsx
66
+ var import_diviner_model3 = require("@xyo-network/diviner-model");
67
+ var import_react_node3 = require("@xyo-network/react-node");
68
+ var useWeakDivinerFromNode = (nameOrAddressOrInstance, config) => {
69
+ const [module2, error] = (0, import_react_node3.useWeakModuleFromNode)(nameOrAddressOrInstance, config);
70
+ const instance = module2 == null ? void 0 : module2.deref();
71
+ const diviner = (0, import_diviner_model3.asDivinerInstance)(instance);
72
+ if (instance && !diviner) {
73
+ const error2 = new Error(`Resolved module is not a DivinerInstance [${instance.id}]`);
74
+ console.error(error2.message);
75
+ return [void 0, error2];
76
+ }
77
+ return [diviner ? new WeakRef(diviner) : void 0, error];
78
+ };
79
+
80
+ // src/hooks/node/useWeakDivinersFromNode.tsx
81
+ var import_exists = require("@xylabs/exists");
82
+ var import_diviner_model4 = require("@xyo-network/diviner-model");
83
+ var import_react_node4 = require("@xyo-network/react-node");
84
+ var useWeakDivinersFromNode = (filter, config) => {
85
+ const [modules, error] = (0, import_react_node4.useWeakModulesFromNode)(filter, config);
86
+ if (error) {
87
+ return [null, error];
88
+ }
89
+ return [
90
+ (modules == null ? void 0 : modules.map((module2) => {
91
+ const instance = (0, import_diviner_model4.asDivinerInstance)(module2 == null ? void 0 : module2.deref());
92
+ if (instance) {
93
+ return new WeakRef(instance);
94
+ }
95
+ }).filter(import_exists.exists)) ?? [],
96
+ void 0
97
+ ];
98
+ };
62
99
  // Annotate the CommonJS export names for ESM import in node:
63
100
  0 && (module.exports = {
64
101
  useDivinerFromNode,
65
- useDivinersFromNode
102
+ useDivinersFromNode,
103
+ useWeakDivinerFromNode,
104
+ useWeakDivinersFromNode
66
105
  });
67
106
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/hooks/node/useDivinerFromNode.tsx","../../src/hooks/node/useDivinersFromNode.tsx"],"sourcesContent":["export * from './hooks'\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinerFromNode */\nexport const useDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance | undefined, Error | undefined] => {\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asDivinerInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a DivinerInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { DivinerInstance, isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinersFromNode */\nexport const useDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<DivinerInstance[]>((prev, module) => {\n if (isDivinerInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,2BAAmD;AACnD,wBAAwD;AAGjD,IAAM,qBAAqB,CAChC,yBACA,WACqD;AATvD;AAUE,QAAM,CAACA,SAAQ,KAAK,QAAI,qCAAkB,yBAAyB,MAAM;AACzE,QAAM,eAAW,wCAAkBA,OAAM;AACzC,MAAIA,WAAU,CAAC,UAAU;AACvB,UAAMC,SAAQ,IAAI,MAAM,8CAA6C,KAAAD,QAAO,WAAP,mBAAe,MAAM,KAAI,KAAAA,QAAO,WAAP,mBAAe,IAAI,IAAIA,QAAO,OAAO,GAAG;AACtI,YAAQ,MAAMC,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;AChBA,IAAAC,wBAAmD;AAEnD,IAAAC,qBAAyD;AAGlD,IAAM,sBAAsB,CACjC,QACA,WAC8D;AAC9D,QAAM,CAAC,SAAS,KAAK,QAAI,uCAAmB,QAAQ,MAAM;AAC1D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA0B,CAAC,MAAMC,YAAW;AAClD,cAAI,yCAAkBA,OAAM,GAAG;AAC7B,aAAK,KAAKA,OAAM;AAAA,MAClB;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;","names":["module","error","import_diviner_model","import_react_node","module"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/hooks/node/useDivinerFromNode.tsx","../../src/hooks/node/useDivinersFromNode.tsx","../../src/hooks/node/useWeakDivinerFromNode.tsx","../../src/hooks/node/useWeakDivinersFromNode.tsx"],"sourcesContent":["export * from './hooks'\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinerFromNode */\nexport const useDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance | undefined, Error | undefined] => {\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asDivinerInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a DivinerInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { DivinerInstance, isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinersFromNode */\nexport const useDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<DivinerInstance[]>((prev, module) => {\n if (isDivinerInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n","import { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useWeakModuleFromNode } from '@xyo-network/react-node'\n\nexport const useWeakDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [WeakRef<DivinerInstance> | undefined, Error | undefined] => {\n const [module, error] = useWeakModuleFromNode(nameOrAddressOrInstance, config)\n const instance = module?.deref()\n const diviner = asDivinerInstance(instance)\n if (instance && !diviner) {\n const error = new Error(`Resolved module is not a DivinerInstance [${instance.id}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [diviner ? new WeakRef(diviner) : undefined, error]\n}\n","import { exists } from '@xylabs/exists'\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useWeakModulesFromNode } from '@xyo-network/react-node'\n\nexport const useWeakDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [WeakRef<DivinerInstance>[] | null | undefined, Error | undefined] => {\n const [modules, error] = useWeakModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return [\n modules\n ?.map((module) => {\n const instance = asDivinerInstance(module?.deref())\n if (instance) {\n return new WeakRef(instance)\n }\n })\n .filter(exists) ?? [],\n undefined,\n ]\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,2BAAmD;AACnD,wBAAwD;AAGjD,IAAM,qBAAqB,CAChC,yBACA,WACqD;AATvD;AAUE,QAAM,CAACA,SAAQ,KAAK,QAAI,qCAAkB,yBAAyB,MAAM;AACzE,QAAM,eAAW,wCAAkBA,OAAM;AACzC,MAAIA,WAAU,CAAC,UAAU;AACvB,UAAMC,SAAQ,IAAI,MAAM,8CAA6C,KAAAD,QAAO,WAAP,mBAAe,MAAM,KAAI,KAAAA,QAAO,WAAP,mBAAe,IAAI,IAAIA,QAAO,OAAO,GAAG;AACtI,YAAQ,MAAMC,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;AChBA,IAAAC,wBAAmD;AAEnD,IAAAC,qBAAyD;AAGlD,IAAM,sBAAsB,CACjC,QACA,WAC8D;AAC9D,QAAM,CAAC,SAAS,KAAK,QAAI,uCAAmB,QAAQ,MAAM;AAC1D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA0B,CAAC,MAAMC,YAAW;AAClD,cAAI,yCAAkBA,OAAM,GAAG;AAC7B,aAAK,KAAKA,OAAM;AAAA,MAClB;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;;;AC3BA,IAAAC,wBAAmD;AACnD,IAAAC,qBAA4D;AAErD,IAAM,yBAAyB,CACpC,yBACA,WAC8D;AAC9D,QAAM,CAACC,SAAQ,KAAK,QAAI,0CAAsB,yBAAyB,MAAM;AAC7E,QAAM,WAAWA,WAAA,gBAAAA,QAAQ;AACzB,QAAM,cAAU,yCAAkB,QAAQ;AAC1C,MAAI,YAAY,CAAC,SAAS;AACxB,UAAMC,SAAQ,IAAI,MAAM,6CAA6C,SAAS,EAAE,GAAG;AACnF,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,IAAI,QAAQ,OAAO,IAAI,QAAW,KAAK;AAC3D;;;AChBA,oBAAuB;AACvB,IAAAC,wBAAmD;AAEnD,IAAAC,qBAA6D;AAEtD,IAAM,0BAA0B,CACrC,QACA,WACuE;AACvE,QAAM,CAAC,SAAS,KAAK,QAAI,2CAAuB,QAAQ,MAAM;AAC9D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO;AAAA,KACL,mCACI,IAAI,CAACC,YAAW;AAChB,YAAM,eAAW,yCAAkBA,WAAA,gBAAAA,QAAQ,OAAO;AAClD,UAAI,UAAU;AACZ,eAAO,IAAI,QAAQ,QAAQ;AAAA,MAC7B;AAAA,IACF,GACC,OAAO,0BAAW,CAAC;AAAA,IACtB;AAAA,EACF;AACF;","names":["module","error","import_diviner_model","import_react_node","module","import_diviner_model","import_react_node","module","error","import_diviner_model","import_react_node","module"]}
@@ -32,8 +32,45 @@ var useDivinersFromNode = (filter, config) => {
32
32
  void 0
33
33
  ] : [modules, error];
34
34
  };
35
+
36
+ // src/hooks/node/useWeakDivinerFromNode.tsx
37
+ import { asDivinerInstance as asDivinerInstance2 } from "@xyo-network/diviner-model";
38
+ import { useWeakModuleFromNode } from "@xyo-network/react-node";
39
+ var useWeakDivinerFromNode = (nameOrAddressOrInstance, config) => {
40
+ const [module, error] = useWeakModuleFromNode(nameOrAddressOrInstance, config);
41
+ const instance = module == null ? void 0 : module.deref();
42
+ const diviner = asDivinerInstance2(instance);
43
+ if (instance && !diviner) {
44
+ const error2 = new Error(`Resolved module is not a DivinerInstance [${instance.id}]`);
45
+ console.error(error2.message);
46
+ return [void 0, error2];
47
+ }
48
+ return [diviner ? new WeakRef(diviner) : void 0, error];
49
+ };
50
+
51
+ // src/hooks/node/useWeakDivinersFromNode.tsx
52
+ import { exists } from "@xylabs/exists";
53
+ import { asDivinerInstance as asDivinerInstance3 } from "@xyo-network/diviner-model";
54
+ import { useWeakModulesFromNode } from "@xyo-network/react-node";
55
+ var useWeakDivinersFromNode = (filter, config) => {
56
+ const [modules, error] = useWeakModulesFromNode(filter, config);
57
+ if (error) {
58
+ return [null, error];
59
+ }
60
+ return [
61
+ (modules == null ? void 0 : modules.map((module) => {
62
+ const instance = asDivinerInstance3(module == null ? void 0 : module.deref());
63
+ if (instance) {
64
+ return new WeakRef(instance);
65
+ }
66
+ }).filter(exists)) ?? [],
67
+ void 0
68
+ ];
69
+ };
35
70
  export {
36
71
  useDivinerFromNode,
37
- useDivinersFromNode
72
+ useDivinersFromNode,
73
+ useWeakDivinerFromNode,
74
+ useWeakDivinersFromNode
38
75
  };
39
76
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/node/useDivinerFromNode.tsx","../../src/hooks/node/useDivinersFromNode.tsx"],"sourcesContent":["/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinerFromNode */\nexport const useDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance | undefined, Error | undefined] => {\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asDivinerInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a DivinerInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { DivinerInstance, isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinersFromNode */\nexport const useDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<DivinerInstance[]>((prev, module) => {\n if (isDivinerInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n"],"mappings":";AAEA,SAAS,yBAA0C;AACnD,SAA+B,yBAAyB;AAGjD,IAAM,qBAAqB,CAChC,yBACA,WACqD;AATvD;AAUE,QAAM,CAAC,QAAQ,KAAK,IAAI,kBAAkB,yBAAyB,MAAM;AACzE,QAAM,WAAW,kBAAkB,MAAM;AACzC,MAAI,UAAU,CAAC,UAAU;AACvB,UAAMA,SAAQ,IAAI,MAAM,8CAA6C,YAAO,WAAP,mBAAe,MAAM,KAAI,YAAO,WAAP,mBAAe,IAAI,IAAI,OAAO,OAAO,GAAG;AACtI,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;AChBA,SAA0B,yBAAyB;AAEnD,SAA+B,0BAA0B;AAGlD,IAAM,sBAAsB,CACjC,QACA,WAC8D;AAC9D,QAAM,CAAC,SAAS,KAAK,IAAI,mBAAmB,QAAQ,MAAM;AAC1D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA0B,CAAC,MAAM,WAAW;AAClD,UAAI,kBAAkB,MAAM,GAAG;AAC7B,aAAK,KAAK,MAAM;AAAA,MAClB;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;","names":["error"]}
1
+ {"version":3,"sources":["../../src/hooks/node/useDivinerFromNode.tsx","../../src/hooks/node/useDivinersFromNode.tsx","../../src/hooks/node/useWeakDivinerFromNode.tsx","../../src/hooks/node/useWeakDivinersFromNode.tsx"],"sourcesContent":["/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useModuleFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinerFromNode */\nexport const useDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance | undefined, Error | undefined] => {\n const [module, error] = useModuleFromNode(nameOrAddressOrInstance, config)\n const instance = asDivinerInstance(module)\n if (module && !instance) {\n const error = new Error(`Resolved module is not a DivinerInstance [${module.config?.schema}:${module.config?.name}:${module.address}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [instance, error]\n}\n","/* eslint-disable import/no-deprecated */\n/* eslint-disable deprecation/deprecation */\nimport { DivinerInstance, isDivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useModulesFromNode } from '@xyo-network/react-node'\n\n/** @deprecated use useWeakDivinersFromNode */\nexport const useDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [DivinerInstance[] | null | undefined, Error | undefined] => {\n const [modules, error] = useModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return modules ?\n [\n // eslint-disable-next-line unicorn/no-array-reduce\n modules.reduce<DivinerInstance[]>((prev, module) => {\n if (isDivinerInstance(module)) {\n prev.push(module)\n }\n return prev\n }, []),\n undefined,\n ]\n : [modules, error]\n}\n","import { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFromNodeConfig, useWeakModuleFromNode } from '@xyo-network/react-node'\n\nexport const useWeakDivinerFromNode = (\n nameOrAddressOrInstance?: string | DivinerInstance,\n config?: ModuleFromNodeConfig,\n): [WeakRef<DivinerInstance> | undefined, Error | undefined] => {\n const [module, error] = useWeakModuleFromNode(nameOrAddressOrInstance, config)\n const instance = module?.deref()\n const diviner = asDivinerInstance(instance)\n if (instance && !diviner) {\n const error = new Error(`Resolved module is not a DivinerInstance [${instance.id}]`)\n console.error(error.message)\n return [undefined, error]\n }\n return [diviner ? new WeakRef(diviner) : undefined, error]\n}\n","import { exists } from '@xylabs/exists'\nimport { asDivinerInstance, DivinerInstance } from '@xyo-network/diviner-model'\nimport { ModuleFilter } from '@xyo-network/module-model'\nimport { ModuleFromNodeConfig, useWeakModulesFromNode } from '@xyo-network/react-node'\n\nexport const useWeakDivinersFromNode = (\n filter?: ModuleFilter,\n config?: ModuleFromNodeConfig,\n): [WeakRef<DivinerInstance>[] | null | undefined, Error | undefined] => {\n const [modules, error] = useWeakModulesFromNode(filter, config)\n if (error) {\n return [null, error]\n }\n return [\n modules\n ?.map((module) => {\n const instance = asDivinerInstance(module?.deref())\n if (instance) {\n return new WeakRef(instance)\n }\n })\n .filter(exists) ?? [],\n undefined,\n ]\n}\n"],"mappings":";AAEA,SAAS,yBAA0C;AACnD,SAA+B,yBAAyB;AAGjD,IAAM,qBAAqB,CAChC,yBACA,WACqD;AATvD;AAUE,QAAM,CAAC,QAAQ,KAAK,IAAI,kBAAkB,yBAAyB,MAAM;AACzE,QAAM,WAAW,kBAAkB,MAAM;AACzC,MAAI,UAAU,CAAC,UAAU;AACvB,UAAMA,SAAQ,IAAI,MAAM,8CAA6C,YAAO,WAAP,mBAAe,MAAM,KAAI,YAAO,WAAP,mBAAe,IAAI,IAAI,OAAO,OAAO,GAAG;AACtI,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,KAAK;AACzB;;;AChBA,SAA0B,yBAAyB;AAEnD,SAA+B,0BAA0B;AAGlD,IAAM,sBAAsB,CACjC,QACA,WAC8D;AAC9D,QAAM,CAAC,SAAS,KAAK,IAAI,mBAAmB,QAAQ,MAAM;AAC1D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO,UACH;AAAA;AAAA,IAEE,QAAQ,OAA0B,CAAC,MAAM,WAAW;AAClD,UAAI,kBAAkB,MAAM,GAAG;AAC7B,aAAK,KAAK,MAAM;AAAA,MAClB;AACA,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,IACL;AAAA,EACF,IACA,CAAC,SAAS,KAAK;AACrB;;;AC3BA,SAAS,qBAAAC,0BAA0C;AACnD,SAA+B,6BAA6B;AAErD,IAAM,yBAAyB,CACpC,yBACA,WAC8D;AAC9D,QAAM,CAAC,QAAQ,KAAK,IAAI,sBAAsB,yBAAyB,MAAM;AAC7E,QAAM,WAAW,iCAAQ;AACzB,QAAM,UAAUA,mBAAkB,QAAQ;AAC1C,MAAI,YAAY,CAAC,SAAS;AACxB,UAAMC,SAAQ,IAAI,MAAM,6CAA6C,SAAS,EAAE,GAAG;AACnF,YAAQ,MAAMA,OAAM,OAAO;AAC3B,WAAO,CAAC,QAAWA,MAAK;AAAA,EAC1B;AACA,SAAO,CAAC,UAAU,IAAI,QAAQ,OAAO,IAAI,QAAW,KAAK;AAC3D;;;AChBA,SAAS,cAAc;AACvB,SAAS,qBAAAC,0BAA0C;AAEnD,SAA+B,8BAA8B;AAEtD,IAAM,0BAA0B,CACrC,QACA,WACuE;AACvE,QAAM,CAAC,SAAS,KAAK,IAAI,uBAAuB,QAAQ,MAAM;AAC9D,MAAI,OAAO;AACT,WAAO,CAAC,MAAM,KAAK;AAAA,EACrB;AACA,SAAO;AAAA,KACL,mCACI,IAAI,CAAC,WAAW;AAChB,YAAM,WAAWA,mBAAkB,iCAAQ,OAAO;AAClD,UAAI,UAAU;AACZ,eAAO,IAAI,QAAQ,QAAQ;AAAA,MAC7B;AAAA,IACF,GACC,OAAO,YAAW,CAAC;AAAA,IACtB;AAAA,EACF;AACF;","names":["error","asDivinerInstance","error","asDivinerInstance"]}
package/package.json CHANGED
@@ -10,9 +10,9 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xyo-network/diviner-model": "^2.99.0",
14
- "@xyo-network/module-model": "^2.99.0",
15
- "@xyo-network/react-node": "~2.75.0"
13
+ "@xyo-network/diviner-model": "^2.99.1",
14
+ "@xyo-network/module-model": "^2.99.1",
15
+ "@xyo-network/react-node": "~2.75.1"
16
16
  },
17
17
  "peerDependencies": {
18
18
  "@mui/icons-material": "^5",
@@ -78,6 +78,6 @@
78
78
  },
79
79
  "sideEffects": false,
80
80
  "types": "dist/browser/index.d.ts",
81
- "version": "2.75.0",
81
+ "version": "2.75.1",
82
82
  "type": "module"
83
83
  }
@@ -1,2 +1,4 @@
1
1
  export * from './useDivinerFromNode'
2
2
  export * from './useDivinersFromNode'
3
+ export * from './useWeakDivinerFromNode'
4
+ export * from './useWeakDivinersFromNode'