@xyo-network/react-node 2.45.0-rc.26 → 2.45.0-rc.28

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,10 +1,10 @@
1
1
  import { useAsyncEffect } from '@xylabs/react-shared';
2
2
  import { useMemo, useState } from 'react';
3
3
  import { useProvidedWrappedNode } from './useProvidedNode';
4
- export const useModule = (nameOrAddressOrFilter) => {
4
+ export const useModule = (nameOrAddressOrFilter, account) => {
5
5
  const nameOrAddress = useMemo(() => (typeof nameOrAddressOrFilter === 'string' ? nameOrAddressOrFilter : undefined), [nameOrAddressOrFilter]);
6
6
  const filter = useMemo(() => (typeof nameOrAddressOrFilter === 'object' ? nameOrAddressOrFilter : undefined), [nameOrAddressOrFilter]);
7
- const [node, nodeError] = useProvidedWrappedNode();
7
+ const [node, nodeError] = useProvidedWrappedNode(account);
8
8
  const [module, setModule] = useState();
9
9
  const [error, setError] = useState();
10
10
  const address = module?.address;
@@ -1 +1 @@
1
- {"version":3,"file":"useModule.js","sourceRoot":"","sources":["../../../src/hooks/useModule.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAGrD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,qBAA6C,EACH,EAAE;IAC5C,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,qBAAqB,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAA;IAC7I,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,qBAAqB,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACtI,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,sBAAsB,EAAE,CAAA;IAClD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAW,CAAA;IAC/C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;IAE3C,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,CAAA;IAE/B,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI;YACF,IAAI,SAAS,EAAE;gBACb,QAAQ,CAAC,SAAS,CAAC,CAAA;gBACnB,SAAS,CAAC,SAAS,CAAC,CAAA;aACrB;iBAAM;gBACL,IAAI,IAAI,EAAE;oBACR,MAAM,aAAa,GAAG,IAAI,CAAC,MAAoC,CAAA;oBAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,MAAoC,CAAA;oBAC/D,MAAM,aAAa,GAAG,CAAC,IAA6B,EAAE,EAAE;wBACtD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAA;wBAC/B,IAAI,CAAC,WAAW,CAAC,OAAO,KAAK,aAAa,IAAI,WAAW,EAAE,MAAM,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,OAAO,EAAE,EAAE;4BACtG,SAAS,CAAC,WAAsB,CAAC,CAAA;4BACjC,QAAQ,CAAC,SAAS,CAAC,CAAA;yBACpB;oBACH,CAAC,CAAA;oBACD,MAAM,aAAa,GAAG,CAAC,IAA6B,EAAE,EAAE;wBACtD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAA;wBAC/B,IAAI,WAAW,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,EAAE,EAAE;4BAChD,SAAS,CAAC,SAAS,CAAC,CAAA;4BACpB,QAAQ,CAAC,SAAS,CAAC,CAAA;yBACpB;oBACH,CAAC,CAAA;oBACD,MAAM,MAAM,GAAwB,aAAa;wBAC/C,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAU,aAAa,CAAC;wBAC5C,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAU,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;oBAC/C,IAAI,OAAO,EAAE,EAAE;wBACb,IAAI,MAAM,EAAE;4BACV,aAAa,CAAC,EAAE,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAA;yBAClD;6BAAM;4BACL,aAAa,CAAC,EAAE,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAA;yBAClD;wBACD,SAAS,CAAC,MAAM,CAAC,CAAA;wBACjB,QAAQ,CAAC,SAAS,CAAC,CAAA;qBACpB;oBACD,OAAO,GAAG,EAAE;wBACV,qCAAqC;wBACrC,aAAa,CAAC,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,IAAI,CAAC,CAAA;wBACvD,aAAa,CAAC,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,IAAI,CAAC,CAAA;oBACzD,CAAC,CAAA;iBACF;qBAAM;oBACL,QAAQ,CAAC,SAAS,CAAC,CAAA;oBACnB,SAAS,CAAC,SAAS,CAAC,CAAA;iBACrB;aACF;SACF;QAAC,OAAO,EAAE,EAAE;YACX,IAAI,OAAO,EAAE,EAAE;gBACb,MAAM,KAAK,GAAG,EAAW,CAAA;gBACzB,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACf,SAAS,CAAC,SAAS,CAAC,CAAA;aACrB;SACF;IACH,CAAC,EACD,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAClD,CAAA;IAED,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"useModule.js","sourceRoot":"","sources":["../../../src/hooks/useModule.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,15 @@
1
+ /* eslint-disable react-hooks/rules-of-hooks */
2
+ import { useRenderSpinCheck } from '@xylabs/react-render-spin-check';
1
3
  import { ModuleWrapper } from '@xyo-network/module';
2
4
  import { useAccount } from '@xyo-network/react-wallet';
3
5
  import { useEffect, useMemo, useState } from 'react';
4
6
  import { useModule } from './useModule';
5
- export const WrappedModuleHookFactory = (wrapperObject) => {
6
- return (nameOrAddress, account) => {
7
+ export const WrappedModuleHookFactory = (wrapperObject, name) => {
8
+ return (nameOrAddress, account, spinCheck) => {
9
+ const spinCheckBounceNoCheck = useMemo(() => {
10
+ return { name: name ?? 'WrappedModuleHookFactory-NoCheck' };
11
+ }, []);
12
+ useRenderSpinCheck(spinCheck ? { name: name ?? 'WrappedModuleHookFactory' } : spinCheckBounceNoCheck);
7
13
  const [providedAccount] = useAccount();
8
14
  const [module, moduleError] = useModule(nameOrAddress ?? {
9
15
  query: [wrapperObject.requiredQueries],
@@ -1 +1 @@
1
- {"version":3,"file":"useWrappedModule.js","sourceRoot":"","sources":["../../../src/hooks/useWrappedModule.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAOvC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAuD,aAA4C,EAAE,EAAE;IAC7I,OAAO,CAAC,aAAsB,EAAE,OAAyB,EAAmD,EAAE;QAC5G,MAAM,CAAC,eAAe,CAAC,GAAG,UAAU,EAAE,CAAA;QACtC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,SAAS,CACrC,aAAa,IAAI;YACf,KAAK,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC;SACvC,CACF,CAAA;QAED,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAkB,CAAA;QACxD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;QAE3C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAA;QAE1F,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,KAAK,GAAG,KAAK,CAAC,qEAAqE,CAAC,CAAA;YAC1F,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC5B,QAAQ,CAAC,KAAK,CAAC,CAAA;SAChB;QAED,SAAS,CAAC,GAAG,EAAE;YACb,IAAI,MAAM,IAAI,YAAY,EAAE;gBAC1B,IAAI;oBACF,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAmB,CAAA;oBAC1E,UAAU,CAAC,OAAO,CAAC,CAAA;iBACpB;gBAAC,OAAO,EAAE,EAAE;oBACX,UAAU,CAAC,SAAS,CAAC,CAAA;oBACrB,QAAQ,CAAC,EAAW,CAAC,CAAA;iBACtB;aACF;iBAAM;gBACL,UAAU,CAAC,SAAS,CAAC,CAAA;gBACrB,QAAQ,CAAC,WAAW,CAAC,CAAA;aACtB;QACH,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;QAEhD,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACzB,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAA"}
1
+ {"version":3,"file":"useWrappedModule.js","sourceRoot":"","sources":["../../../src/hooks/useWrappedModule.tsx"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAOvC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,aAA4C,EAC5C,IAAa,EACb,EAAE;IACF,OAAO,CAAC,aAAsB,EAAE,OAAyB,EAAE,SAAmB,EAAmD,EAAE;QACjI,MAAM,sBAAsB,GAAG,OAAO,CAAC,GAAG,EAAE;YAC1C,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,kCAAkC,EAAE,CAAA;QAC7D,CAAC,EAAE,EAAE,CAAC,CAAA;QACN,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,0BAA0B,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAA;QACrG,MAAM,CAAC,eAAe,CAAC,GAAG,UAAU,EAAE,CAAA;QACtC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,SAAS,CACrC,aAAa,IAAI;YACf,KAAK,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC;SACvC,CACF,CAAA;QAED,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAkB,CAAA;QACxD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAS,CAAA;QAE3C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAA;QAE1F,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,KAAK,GAAG,KAAK,CAAC,qEAAqE,CAAC,CAAA;YAC1F,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC5B,QAAQ,CAAC,KAAK,CAAC,CAAA;SAChB;QAED,SAAS,CAAC,GAAG,EAAE;YACb,IAAI,MAAM,IAAI,YAAY,EAAE;gBAC1B,IAAI;oBACF,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAmB,CAAA;oBAC1E,UAAU,CAAC,OAAO,CAAC,CAAA;iBACpB;gBAAC,OAAO,EAAE,EAAE;oBACX,UAAU,CAAC,SAAS,CAAC,CAAA;oBACrB,QAAQ,CAAC,EAAW,CAAC,CAAA;iBACtB;aACF;iBAAM;gBACL,UAAU,CAAC,SAAS,CAAC,CAAA;gBACrB,QAAQ,CAAC,WAAW,CAAC,CAAA;aACtB;QACH,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;QAEhD,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACzB,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { AccountInstance } from '@xyo-network/account-model';
1
2
  import { Module, ModuleFilter } from '@xyo-network/module-model';
2
3
  export declare const useModule: <TModule extends Module<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
3
4
  name?: string | undefined;
@@ -19,5 +20,5 @@ export declare const useModule: <TModule extends Module<import("@xyo-network/pay
19
20
  storeQueries?: boolean | undefined;
20
21
  } & {
21
22
  schema: string;
22
- }>>(nameOrAddressOrFilter?: string | ModuleFilter) => [TModule | undefined, Error | undefined];
23
+ }>>(nameOrAddressOrFilter?: string | ModuleFilter, account?: AccountInstance) => [TModule | undefined, Error | undefined];
23
24
  //# sourceMappingURL=useModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useModule.d.ts","sourceRoot":"","sources":["../../../src/hooks/useModule.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAMhE,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;4BACI,MAAM,GAAG,YAAY,6CAqE9C,CAAA"}
1
+ {"version":3,"file":"useModule.d.ts","sourceRoot":"","sources":["../../../src/hooks/useModule.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAMhE,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;4BACI,MAAM,GAAG,YAAY,YACnC,eAAe,6CAqE1B,CAAA"}
@@ -24,8 +24,8 @@ export declare const WrappedModuleHookFactory: <TModuleWrapper extends ModuleWra
24
24
  storeQueries?: boolean | undefined;
25
25
  } & {
26
26
  schema: string;
27
- }>>>(wrapperObject: WrapperStatic<TModuleWrapper>) => (nameOrAddress?: string, account?: AccountInstance) => [TModuleWrapper | undefined, Error | undefined];
28
- export declare const useWrappedModule: (nameOrAddress?: string, account?: AccountInstance) => [ModuleWrapper<import("@xyo-network/module").Module<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
27
+ }>>>(wrapperObject: WrapperStatic<TModuleWrapper>, name?: string) => (nameOrAddress?: string, account?: AccountInstance, spinCheck?: boolean) => [TModuleWrapper | undefined, Error | undefined];
28
+ export declare const useWrappedModule: (nameOrAddress?: string, account?: AccountInstance, spinCheck?: boolean) => [ModuleWrapper<import("@xyo-network/module").Module<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
29
29
  name?: string | undefined;
30
30
  security?: {
31
31
  allowAnonymous?: boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"useWrappedModule.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWrappedModule.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAMnD,MAAM,WAAW,aAAa,CAAC,cAAc,SAAS,aAAa,GAAG,aAAa;IACjF,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,EAAE,eAAe,KAAK,cAAc,CAAA;CACvF;AAED,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;uEACX,MAAM,YAAY,eAAe,oDAoC1D,CAAA;AAED,eAAO,MAAM,gBAAgB,mBAtCH,MAAM,YAAY,eAAe;;;;;;;;;;mCAsCY,CAAA"}
1
+ {"version":3,"file":"useWrappedModule.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWrappedModule.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAMnD,MAAM,WAAW,aAAa,CAAC,cAAc,SAAS,aAAa,GAAG,aAAa;IACjF,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,EAAE,eAAe,KAAK,cAAc,CAAA;CACvF;AAED,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;0DAE5B,MAAM,sBAEW,MAAM,YAAY,eAAe,cAAc,OAAO,oDAwC/E,CAAA;AAED,eAAO,MAAM,gBAAgB,mBA1CH,MAAM,YAAY,eAAe,cAAc,OAAO;;;;;;;;;;mCA0CT,CAAA"}
package/package.json CHANGED
@@ -11,19 +11,23 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "@mui/lab": "^5.0.0-alpha.122",
14
- "@xylabs/react-flexbox": "^2.16.9",
15
- "@xylabs/react-shared": "^2.16.9",
14
+ "@xylabs/react-flexbox": "^2.16.11",
15
+ "@xylabs/react-render-spin-check": "^2.16.11",
16
+ "@xylabs/react-shared": "^2.16.11",
16
17
  "@xyo-network/account-model": "^2.51.6",
17
18
  "@xyo-network/module": "^2.51.6",
18
19
  "@xyo-network/module-model": "^2.51.6",
19
20
  "@xyo-network/node": "^2.51.6",
20
- "@xyo-network/react-shared": "^2.45.0-rc.26",
21
- "@xyo-network/react-wallet": "^2.45.0-rc.26"
21
+ "@xyo-network/react-shared": "^2.45.0-rc.28",
22
+ "@xyo-network/react-wallet": "^2.45.0-rc.28"
22
23
  },
23
24
  "devDependencies": {
24
25
  "@storybook/react": "^6.5.16",
25
26
  "@xylabs/ts-scripts-yarn3": "^2.16.1",
26
27
  "@xylabs/tsconfig-react": "^2.16.1",
28
+ "@xyo-network/account": "^2.51.6",
29
+ "@xyo-network/react-storybook": "^2.45.0-rc.28",
30
+ "@xyo-network/react-wallet": "^2.45.0-rc.28",
27
31
  "require-from-string": "^2.0.2",
28
32
  "typescript": "^4.9.5"
29
33
  },
@@ -79,6 +83,6 @@
79
83
  },
80
84
  "sideEffects": false,
81
85
  "types": "dist/types/index.d.ts",
82
- "version": "2.45.0-rc.26",
86
+ "version": "2.45.0-rc.28",
83
87
  "stableVersion": "2.44.1"
84
88
  }
@@ -1,22 +1,46 @@
1
1
  import { ComponentStory, DecoratorFn, Meta } from '@storybook/react'
2
- import { useAsyncEffect } from '@xylabs/react-shared'
2
+ import { useAsyncEffect, WithChildren } from '@xylabs/react-shared'
3
+ import { HDWallet } from '@xyo-network/account'
3
4
  import { AbstractModule } from '@xyo-network/module'
4
5
  import { MemoryNode, NodeConfigSchema, NodeWrapper } from '@xyo-network/node'
5
- import { useState } from 'react'
6
+ import { DefaultSeedPhrase } from '@xyo-network/react-storybook'
7
+ import { WalletProvider } from '@xyo-network/react-wallet'
8
+ import { useEffect, useState } from 'react'
6
9
 
7
10
  import { MemoryNodeProvider } from '../contexts'
8
- import { useProvidedNode } from '../hooks'
11
+ import { useModule, useProvidedNode } from '../hooks'
12
+
13
+ const randomWallet = HDWallet.fromMnemonic(DefaultSeedPhrase)
9
14
 
10
15
  class TestModule extends AbstractModule {}
16
+ const TestModuleName = 'TestModule'
17
+ const TestModuleAccount = randomWallet.deriveAccount('0')
18
+
19
+ const account = randomWallet.deriveAccount('0')
11
20
 
12
21
  const MemoryNodeDecorator: DecoratorFn = (Story, args) => {
13
22
  return (
14
- <MemoryNodeProvider config={{ schema: NodeConfigSchema }}>
15
- <Story {...args} />
16
- </MemoryNodeProvider>
23
+ <WalletProvider defaultWallet={randomWallet}>
24
+ <MemoryNodeProvider config={{ schema: NodeConfigSchema }}>
25
+ <Story {...args} />
26
+ </MemoryNodeProvider>
27
+ </WalletProvider>
17
28
  )
18
29
  }
19
30
 
31
+ const UseModuleTest: React.FC<WithChildren> = ({ children }) => {
32
+ const [testModule] = useModule(TestModuleName, account)
33
+
34
+ useEffect(() => {
35
+ if (testModule) {
36
+ // Should be called but isn't
37
+ console.log('*****test module*****', testModule)
38
+ }
39
+ }, [testModule])
40
+
41
+ return <>{children}</>
42
+ }
43
+
20
44
  // eslint-disable-next-line import/no-default-export
21
45
  export default {
22
46
  title: 'modules/node/NodeBox',
@@ -31,9 +55,9 @@ const Template: ComponentStory<React.FC> = (props) => {
31
55
  async (mounted) => {
32
56
  if (node) {
33
57
  try {
34
- const mod = await TestModule.create({ config: { schema: 'network.xyo.test.module' } })
58
+ const mod = await TestModule.create({ account: TestModuleAccount, config: { name: TestModuleName, schema: 'network.xyo.test.module' } })
35
59
  node?.register(mod)
36
- await node?.attach(mod.address)
60
+ await node?.attach(mod.address, true)
37
61
  const wrapper = NodeWrapper.wrap(node)
38
62
  const description = await wrapper?.describe()
39
63
  if (mounted()) {
@@ -49,7 +73,9 @@ const Template: ComponentStory<React.FC> = (props) => {
49
73
 
50
74
  return (
51
75
  <div {...props}>
52
- <pre>{description}</pre>
76
+ <UseModuleTest>
77
+ <pre>{description}</pre>
78
+ </UseModuleTest>
53
79
  </div>
54
80
  )
55
81
  }
@@ -1,4 +1,5 @@
1
1
  import { useAsyncEffect } from '@xylabs/react-shared'
2
+ import { AccountInstance } from '@xyo-network/account-model'
2
3
  import { Module, ModuleFilter } from '@xyo-network/module-model'
3
4
  import { ModuleAttachedEventArgs, ModuleAttachedEventEmitter, ModuleDetachedEventArgs, ModuleDetachedEventEmitter } from '@xyo-network/node'
4
5
  import { useMemo, useState } from 'react'
@@ -7,10 +8,11 @@ import { useProvidedWrappedNode } from './useProvidedNode'
7
8
 
8
9
  export const useModule = <TModule extends Module = Module>(
9
10
  nameOrAddressOrFilter?: string | ModuleFilter,
11
+ account?: AccountInstance,
10
12
  ): [TModule | undefined, Error | undefined] => {
11
13
  const nameOrAddress = useMemo(() => (typeof nameOrAddressOrFilter === 'string' ? nameOrAddressOrFilter : undefined), [nameOrAddressOrFilter])
12
14
  const filter = useMemo(() => (typeof nameOrAddressOrFilter === 'object' ? nameOrAddressOrFilter : undefined), [nameOrAddressOrFilter])
13
- const [node, nodeError] = useProvidedWrappedNode()
15
+ const [node, nodeError] = useProvidedWrappedNode(account)
14
16
  const [module, setModule] = useState<TModule>()
15
17
  const [error, setError] = useState<Error>()
16
18
 
@@ -1,4 +1,4 @@
1
- /* eslint-disable react-hooks/rules-of-hooks */
1
+ import { useRenderSpinCheck } from '@xylabs/react-render-spin-check'
2
2
  import { AccountInstance } from '@xyo-network/account-model'
3
3
  import { ModuleWrapper } from '@xyo-network/module'
4
4
  import { useAccount } from '@xyo-network/react-wallet'
@@ -11,8 +11,15 @@ export interface WrapperStatic<TModuleWrapper extends ModuleWrapper = ModuleWrap
11
11
  wrap: (module?: TModuleWrapper['module'], account?: AccountInstance) => TModuleWrapper
12
12
  }
13
13
 
14
- export const WrappedModuleHookFactory = <TModuleWrapper extends ModuleWrapper = ModuleWrapper>(wrapperObject: WrapperStatic<TModuleWrapper>) => {
15
- return (nameOrAddress?: string, account?: AccountInstance): [TModuleWrapper | undefined, Error | undefined] => {
14
+ export const WrappedModuleHookFactory = <TModuleWrapper extends ModuleWrapper = ModuleWrapper>(
15
+ wrapperObject: WrapperStatic<TModuleWrapper>,
16
+ name?: string,
17
+ ) => {
18
+ const useHook = (nameOrAddress?: string, account?: AccountInstance, spinCheck?: boolean): [TModuleWrapper | undefined, Error | undefined] => {
19
+ const spinCheckBounceNoCheck = useMemo(() => {
20
+ return { name: name ?? 'WrappedModuleHookFactory-NoCheck' }
21
+ }, [])
22
+ useRenderSpinCheck(spinCheck ? { name: name ?? 'WrappedModuleHookFactory' } : spinCheckBounceNoCheck)
16
23
  const [providedAccount] = useAccount()
17
24
  const [module, moduleError] = useModule<TModuleWrapper['module']>(
18
25
  nameOrAddress ?? {
@@ -48,6 +55,7 @@ export const WrappedModuleHookFactory = <TModuleWrapper extends ModuleWrapper =
48
55
 
49
56
  return [wrapper, error]
50
57
  }
58
+ return useHook
51
59
  }
52
60
 
53
61
  export const useWrappedModule = WrappedModuleHookFactory(ModuleWrapper)