@mycelium-ip/react 0.1.0-alpha.1 → 0.1.0-alpha.2

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 (60) hide show
  1. package/dist/hooks/derivative/useCreateDerivativeLink.d.ts +73 -1
  2. package/dist/hooks/derivative/useCreateDerivativeLink.d.ts.map +1 -1
  3. package/dist/hooks/derivative/useCreateDerivativeLink.js +6 -2
  4. package/dist/hooks/derivative/useUpdateDerivativeLicense.d.ts +73 -1
  5. package/dist/hooks/derivative/useUpdateDerivativeLicense.d.ts.map +1 -1
  6. package/dist/hooks/derivative/useUpdateDerivativeLicense.js +6 -2
  7. package/dist/hooks/entity/useCreateEntity.d.ts +73 -1
  8. package/dist/hooks/entity/useCreateEntity.d.ts.map +1 -1
  9. package/dist/hooks/entity/useCreateEntity.js +6 -2
  10. package/dist/hooks/entity/useUpdateEntityControllers.d.ts +73 -1
  11. package/dist/hooks/entity/useUpdateEntityControllers.d.ts.map +1 -1
  12. package/dist/hooks/entity/useUpdateEntityControllers.js +6 -2
  13. package/dist/hooks/grant/useCreateLicenseGrant.d.ts +73 -1
  14. package/dist/hooks/grant/useCreateLicenseGrant.d.ts.map +1 -1
  15. package/dist/hooks/grant/useCreateLicenseGrant.js +6 -2
  16. package/dist/hooks/grant/useRevokeLicenseGrant.d.ts +73 -1
  17. package/dist/hooks/grant/useRevokeLicenseGrant.d.ts.map +1 -1
  18. package/dist/hooks/grant/useRevokeLicenseGrant.js +6 -2
  19. package/dist/hooks/internal/useMyceliumClient.d.ts +6 -4
  20. package/dist/hooks/internal/useMyceliumClient.d.ts.map +1 -1
  21. package/dist/hooks/internal/useMyceliumClient.js +5 -3
  22. package/dist/hooks/internal/useMyceliumContext.d.ts +3 -1
  23. package/dist/hooks/internal/useMyceliumContext.d.ts.map +1 -1
  24. package/dist/hooks/internal/useMyceliumContext.js +3 -1
  25. package/dist/hooks/internal/useMyceliumWallet.d.ts +10 -4
  26. package/dist/hooks/internal/useMyceliumWallet.d.ts.map +1 -1
  27. package/dist/hooks/internal/useMyceliumWallet.js +7 -4
  28. package/dist/hooks/ip/useCreateIp.d.ts +73 -1
  29. package/dist/hooks/ip/useCreateIp.d.ts.map +1 -1
  30. package/dist/hooks/ip/useCreateIp.js +6 -2
  31. package/dist/hooks/ip/useTransferIp.d.ts +73 -1
  32. package/dist/hooks/ip/useTransferIp.d.ts.map +1 -1
  33. package/dist/hooks/ip/useTransferIp.js +6 -2
  34. package/dist/hooks/license/useCreateLicense.d.ts +73 -1
  35. package/dist/hooks/license/useCreateLicense.d.ts.map +1 -1
  36. package/dist/hooks/license/useCreateLicense.js +6 -2
  37. package/dist/hooks/license/useRevokeLicense.d.ts +73 -1
  38. package/dist/hooks/license/useRevokeLicense.d.ts.map +1 -1
  39. package/dist/hooks/license/useRevokeLicense.js +6 -2
  40. package/dist/hooks/license/useUpdateLicense.d.ts +73 -1
  41. package/dist/hooks/license/useUpdateLicense.d.ts.map +1 -1
  42. package/dist/hooks/license/useUpdateLicense.js +6 -2
  43. package/dist/hooks/metadata/useCreateEntityMetadata.d.ts +73 -1
  44. package/dist/hooks/metadata/useCreateEntityMetadata.d.ts.map +1 -1
  45. package/dist/hooks/metadata/useCreateEntityMetadata.js +6 -2
  46. package/dist/hooks/metadata/useCreateIpMetadata.d.ts +73 -1
  47. package/dist/hooks/metadata/useCreateIpMetadata.d.ts.map +1 -1
  48. package/dist/hooks/metadata/useCreateIpMetadata.js +6 -2
  49. package/dist/hooks/metadata/useCreateMetadataSchema.d.ts +73 -1
  50. package/dist/hooks/metadata/useCreateMetadataSchema.d.ts.map +1 -1
  51. package/dist/hooks/metadata/useCreateMetadataSchema.js +6 -2
  52. package/dist/provider/MyceliumIpProvider.d.ts +2 -2
  53. package/dist/provider/MyceliumIpProvider.d.ts.map +1 -1
  54. package/dist/provider/MyceliumIpProvider.js +5 -7
  55. package/dist/provider/context.d.ts +4 -4
  56. package/dist/provider/context.d.ts.map +1 -1
  57. package/dist/utils/transaction.d.ts +1 -1
  58. package/dist/utils/transaction.d.ts.map +1 -1
  59. package/dist/utils/transaction.js +1 -1
  60. package/package.json +1 -1
@@ -26,5 +26,77 @@ import { type TransactionResult } from "../../utils/transaction";
26
26
  * }
27
27
  * ```
28
28
  */
29
- export declare function useCreateEntityMetadata(): import("@tanstack/react-query").UseMutationResult<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
29
+ export declare function useCreateEntityMetadata(): {
30
+ isWalletConnected: boolean;
31
+ data: undefined;
32
+ variables: undefined;
33
+ error: null;
34
+ isError: false;
35
+ isIdle: true;
36
+ isPending: false;
37
+ isSuccess: false;
38
+ status: "idle";
39
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
40
+ reset: () => void;
41
+ context: unknown;
42
+ failureCount: number;
43
+ failureReason: Error | null;
44
+ isPaused: boolean;
45
+ submittedAt: number;
46
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
47
+ } | {
48
+ isWalletConnected: boolean;
49
+ data: undefined;
50
+ variables: CreateEntityMetadataParams;
51
+ error: null;
52
+ isError: false;
53
+ isIdle: false;
54
+ isPending: true;
55
+ isSuccess: false;
56
+ status: "pending";
57
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
58
+ reset: () => void;
59
+ context: unknown;
60
+ failureCount: number;
61
+ failureReason: Error | null;
62
+ isPaused: boolean;
63
+ submittedAt: number;
64
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
65
+ } | {
66
+ isWalletConnected: boolean;
67
+ data: undefined;
68
+ error: Error;
69
+ variables: CreateEntityMetadataParams;
70
+ isError: true;
71
+ isIdle: false;
72
+ isPending: false;
73
+ isSuccess: false;
74
+ status: "error";
75
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
76
+ reset: () => void;
77
+ context: unknown;
78
+ failureCount: number;
79
+ failureReason: Error | null;
80
+ isPaused: boolean;
81
+ submittedAt: number;
82
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
83
+ } | {
84
+ isWalletConnected: boolean;
85
+ data: TransactionResult;
86
+ error: null;
87
+ variables: CreateEntityMetadataParams;
88
+ isError: false;
89
+ isIdle: false;
90
+ isPending: false;
91
+ isSuccess: true;
92
+ status: "success";
93
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
94
+ reset: () => void;
95
+ context: unknown;
96
+ failureCount: number;
97
+ failureReason: Error | null;
98
+ isPaused: boolean;
99
+ submittedAt: number;
100
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateEntityMetadataParams, unknown>;
101
+ };
30
102
  //# sourceMappingURL=useCreateEntityMetadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateEntityMetadata.d.ts","sourceRoot":"","sources":["../../../src/hooks/metadata/useCreateEntityMetadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAIjC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,uBAAuB,qHAetC"}
1
+ {"version":3,"file":"useCreateEntityMetadata.d.ts","sourceRoot":"","sources":["../../../src/hooks/metadata/useCreateEntityMetadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAIjC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BtC"}
@@ -32,8 +32,12 @@ import { queryKeys } from "../queries/queryKeys";
32
32
  export function useCreateEntityMetadata() {
33
33
  const { client, connection, wallet, confirmation } = useMyceliumContext();
34
34
  const queryClient = useQueryClient();
35
- return useMutation({
35
+ const isWalletConnected = wallet !== null && wallet.publicKey !== null;
36
+ return Object.assign(Object.assign({}, useMutation({
36
37
  mutationFn: async (params) => {
38
+ if (!client || !wallet) {
39
+ throw new Error("Wallet not connected");
40
+ }
37
41
  const instruction = await client.ipCore.metadata.createEntityMetadataIx(params);
38
42
  return executeTransaction(connection, wallet, instruction, confirmation);
39
43
  },
@@ -41,5 +45,5 @@ export function useCreateEntityMetadata() {
41
45
  queryClient.invalidateQueries({ queryKey: queryKeys.entities() });
42
46
  queryClient.invalidateQueries({ queryKey: queryKeys.metadata() });
43
47
  },
44
- });
48
+ })), { isWalletConnected });
45
49
  }
@@ -27,5 +27,77 @@ import { type TransactionResult } from "../../utils/transaction";
27
27
  * }
28
28
  * ```
29
29
  */
30
- export declare function useCreateIpMetadata(): import("@tanstack/react-query").UseMutationResult<TransactionResult, Error, CreateIpMetadataParams, unknown>;
30
+ export declare function useCreateIpMetadata(): {
31
+ isWalletConnected: boolean;
32
+ data: undefined;
33
+ variables: undefined;
34
+ error: null;
35
+ isError: false;
36
+ isIdle: true;
37
+ isPending: false;
38
+ isSuccess: false;
39
+ status: "idle";
40
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateIpMetadataParams, unknown>;
41
+ reset: () => void;
42
+ context: unknown;
43
+ failureCount: number;
44
+ failureReason: Error | null;
45
+ isPaused: boolean;
46
+ submittedAt: number;
47
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateIpMetadataParams, unknown>;
48
+ } | {
49
+ isWalletConnected: boolean;
50
+ data: undefined;
51
+ variables: CreateIpMetadataParams;
52
+ error: null;
53
+ isError: false;
54
+ isIdle: false;
55
+ isPending: true;
56
+ isSuccess: false;
57
+ status: "pending";
58
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateIpMetadataParams, unknown>;
59
+ reset: () => void;
60
+ context: unknown;
61
+ failureCount: number;
62
+ failureReason: Error | null;
63
+ isPaused: boolean;
64
+ submittedAt: number;
65
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateIpMetadataParams, unknown>;
66
+ } | {
67
+ isWalletConnected: boolean;
68
+ data: undefined;
69
+ error: Error;
70
+ variables: CreateIpMetadataParams;
71
+ isError: true;
72
+ isIdle: false;
73
+ isPending: false;
74
+ isSuccess: false;
75
+ status: "error";
76
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateIpMetadataParams, unknown>;
77
+ reset: () => void;
78
+ context: unknown;
79
+ failureCount: number;
80
+ failureReason: Error | null;
81
+ isPaused: boolean;
82
+ submittedAt: number;
83
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateIpMetadataParams, unknown>;
84
+ } | {
85
+ isWalletConnected: boolean;
86
+ data: TransactionResult;
87
+ error: null;
88
+ variables: CreateIpMetadataParams;
89
+ isError: false;
90
+ isIdle: false;
91
+ isPending: false;
92
+ isSuccess: true;
93
+ status: "success";
94
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateIpMetadataParams, unknown>;
95
+ reset: () => void;
96
+ context: unknown;
97
+ failureCount: number;
98
+ failureReason: Error | null;
99
+ isPaused: boolean;
100
+ submittedAt: number;
101
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateIpMetadataParams, unknown>;
102
+ };
31
103
  //# sourceMappingURL=useCreateIpMetadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateIpMetadata.d.ts","sourceRoot":"","sources":["../../../src/hooks/metadata/useCreateIpMetadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAEpE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAIjC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,mBAAmB,iHAelC"}
1
+ {"version":3,"file":"useCreateIpMetadata.d.ts","sourceRoot":"","sources":["../../../src/hooks/metadata/useCreateIpMetadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAEpE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAIjC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BlC"}
@@ -33,8 +33,12 @@ import { queryKeys } from "../queries/queryKeys";
33
33
  export function useCreateIpMetadata() {
34
34
  const { client, connection, wallet, confirmation } = useMyceliumContext();
35
35
  const queryClient = useQueryClient();
36
- return useMutation({
36
+ const isWalletConnected = wallet !== null && wallet.publicKey !== null;
37
+ return Object.assign(Object.assign({}, useMutation({
37
38
  mutationFn: async (params) => {
39
+ if (!client || !wallet) {
40
+ throw new Error("Wallet not connected");
41
+ }
38
42
  const instruction = await client.ipCore.metadata.createIpMetadataIx(params);
39
43
  return executeTransaction(connection, wallet, instruction, confirmation);
40
44
  },
@@ -42,5 +46,5 @@ export function useCreateIpMetadata() {
42
46
  queryClient.invalidateQueries({ queryKey: queryKeys.ips() });
43
47
  queryClient.invalidateQueries({ queryKey: queryKeys.metadata() });
44
48
  },
45
- });
49
+ })), { isWalletConnected });
46
50
  }
@@ -25,5 +25,77 @@ import { type TransactionResult } from "../../utils/transaction";
25
25
  * }
26
26
  * ```
27
27
  */
28
- export declare function useCreateMetadataSchema(): import("@tanstack/react-query").UseMutationResult<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
28
+ export declare function useCreateMetadataSchema(): {
29
+ isWalletConnected: boolean;
30
+ data: undefined;
31
+ variables: undefined;
32
+ error: null;
33
+ isError: false;
34
+ isIdle: true;
35
+ isPending: false;
36
+ isSuccess: false;
37
+ status: "idle";
38
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
39
+ reset: () => void;
40
+ context: unknown;
41
+ failureCount: number;
42
+ failureReason: Error | null;
43
+ isPaused: boolean;
44
+ submittedAt: number;
45
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
46
+ } | {
47
+ isWalletConnected: boolean;
48
+ data: undefined;
49
+ variables: CreateMetadataSchemaParams;
50
+ error: null;
51
+ isError: false;
52
+ isIdle: false;
53
+ isPending: true;
54
+ isSuccess: false;
55
+ status: "pending";
56
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
57
+ reset: () => void;
58
+ context: unknown;
59
+ failureCount: number;
60
+ failureReason: Error | null;
61
+ isPaused: boolean;
62
+ submittedAt: number;
63
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
64
+ } | {
65
+ isWalletConnected: boolean;
66
+ data: undefined;
67
+ error: Error;
68
+ variables: CreateMetadataSchemaParams;
69
+ isError: true;
70
+ isIdle: false;
71
+ isPending: false;
72
+ isSuccess: false;
73
+ status: "error";
74
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
75
+ reset: () => void;
76
+ context: unknown;
77
+ failureCount: number;
78
+ failureReason: Error | null;
79
+ isPaused: boolean;
80
+ submittedAt: number;
81
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
82
+ } | {
83
+ isWalletConnected: boolean;
84
+ data: TransactionResult;
85
+ error: null;
86
+ variables: CreateMetadataSchemaParams;
87
+ isError: false;
88
+ isIdle: false;
89
+ isPending: false;
90
+ isSuccess: true;
91
+ status: "success";
92
+ mutate: import("@tanstack/react-query").UseMutateFunction<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
93
+ reset: () => void;
94
+ context: unknown;
95
+ failureCount: number;
96
+ failureReason: Error | null;
97
+ isPaused: boolean;
98
+ submittedAt: number;
99
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<TransactionResult, Error, CreateMetadataSchemaParams, unknown>;
100
+ };
29
101
  //# sourceMappingURL=useCreateMetadataSchema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateMetadataSchema.d.ts","sourceRoot":"","sources":["../../../src/hooks/metadata/useCreateMetadataSchema.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAIjC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,uBAAuB,qHAatC"}
1
+ {"version":3,"file":"useCreateMetadataSchema.d.ts","sourceRoot":"","sources":["../../../src/hooks/metadata/useCreateMetadataSchema.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAIjC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBtC"}
@@ -31,13 +31,17 @@ import { queryKeys } from "../queries/queryKeys";
31
31
  export function useCreateMetadataSchema() {
32
32
  const { client, connection, wallet, confirmation } = useMyceliumContext();
33
33
  const queryClient = useQueryClient();
34
- return useMutation({
34
+ const isWalletConnected = wallet !== null && wallet.publicKey !== null;
35
+ return Object.assign(Object.assign({}, useMutation({
35
36
  mutationFn: async (params) => {
37
+ if (!client || !wallet) {
38
+ throw new Error("Wallet not connected");
39
+ }
36
40
  const instruction = await client.ipCore.metadata.createSchemaIx(params);
37
41
  return executeTransaction(connection, wallet, instruction, confirmation);
38
42
  },
39
43
  onSuccess: () => {
40
44
  queryClient.invalidateQueries({ queryKey: queryKeys.metadata() });
41
45
  },
42
- });
46
+ })), { isWalletConnected });
43
47
  }
@@ -23,8 +23,8 @@ export interface MyceliumIpProviderOptions {
23
23
  export interface MyceliumIpProviderProps {
24
24
  /** Solana RPC connection (required) */
25
25
  connection: Connection;
26
- /** Wallet implementing the MyceliumWallet interface (required) */
27
- wallet: MyceliumWallet;
26
+ /** Wallet implementing the MyceliumWallet interface (optional; mutations will throw when null/undefined) */
27
+ wallet?: MyceliumWallet | null;
28
28
  /**
29
29
  * Existing TanStack Query client.
30
30
  * If omitted, the provider creates one.
@@ -1 +1 @@
1
- {"version":3,"file":"MyceliumIpProvider.d.ts","sourceRoot":"","sources":["../../src/provider/MyceliumIpProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAuB,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,KAAK,SAAS,EAAW,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;OAGG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAE1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,uCAAuC;IACvC,UAAU,EAAE,UAAU,CAAC;IAEvB,kEAAkE;IAClE,MAAM,EAAE,cAAc,CAAC;IAEvB;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,uBAAuB;IACvB,OAAO,CAAC,EAAE,yBAAyB,CAAC;IAEpC,uBAAuB;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAaD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,UAAU,EACV,MAAM,EACN,WAAW,EACX,OAAO,EACP,QAAQ,GACT,EAAE,uBAAuB,2CA0DzB"}
1
+ {"version":3,"file":"MyceliumIpProvider.d.ts","sourceRoot":"","sources":["../../src/provider/MyceliumIpProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAuB,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,KAAK,SAAS,EAAW,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;OAGG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAE1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,uCAAuC;IACvC,UAAU,EAAE,UAAU,CAAC;IAEvB,4GAA4G;IAC5G,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IAE/B;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,uBAAuB;IACvB,OAAO,CAAC,EAAE,yBAAyB,CAAC;IAEpC,uBAAuB;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAaD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,UAAU,EACV,MAAM,EACN,WAAW,EACX,OAAO,EACP,QAAQ,GACT,EAAE,uBAAuB,2CAuDzB"}
@@ -40,8 +40,8 @@ export function MyceliumIpProvider({ connection, wallet, queryClient, options, c
40
40
  // Create the core SDK client
41
41
  const client = useMemo(() => {
42
42
  var _a;
43
- // Only create client if wallet has a public key
44
- if (!wallet.publicKey) {
43
+ // Only create client if wallet exists and has a public key
44
+ if (!(wallet === null || wallet === void 0 ? void 0 : wallet.publicKey)) {
45
45
  return null;
46
46
  }
47
47
  return new MyceliumClient({
@@ -60,14 +60,12 @@ export function MyceliumIpProvider({ connection, wallet, queryClient, options, c
60
60
  },
61
61
  });
62
62
  }, [connection, wallet]);
63
- // Create context value
63
+ // Create context value — always non-null inside the provider;
64
+ // wallet and client are null when the wallet is not yet connected.
64
65
  const contextValue = useMemo(() => {
65
- if (!client) {
66
- return null;
67
- }
68
66
  return {
69
67
  connection,
70
- wallet,
68
+ wallet: wallet !== null && wallet !== void 0 ? wallet : null,
71
69
  client,
72
70
  confirmation,
73
71
  };
@@ -7,10 +7,10 @@ import type { MyceliumWallet } from "../types/wallet";
7
7
  export interface MyceliumContextValue {
8
8
  /** Solana RPC connection */
9
9
  connection: Connection;
10
- /** Wallet implementing the MyceliumWallet interface */
11
- wallet: MyceliumWallet;
12
- /** Core SDK client instance */
13
- client: MyceliumClient;
10
+ /** Wallet implementing the MyceliumWallet interface, or null when not connected */
11
+ wallet: MyceliumWallet | null;
12
+ /** Core SDK client instance, or null when wallet is not connected */
13
+ client: MyceliumClient | null;
14
14
  /** Transaction confirmation level */
15
15
  confirmation: Commitment;
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/provider/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,4BAA4B;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,uDAAuD;IACvD,MAAM,EAAE,cAAc,CAAC;IACvB,+BAA+B;IAC/B,MAAM,EAAE,cAAc,CAAC;IACvB,qCAAqC;IACrC,YAAY,EAAE,UAAU,CAAC;CAC1B;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,sDAAmD,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/provider/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,4BAA4B;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,mFAAmF;IACnF,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9B,qEAAqE;IACrE,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9B,qCAAqC;IACrC,YAAY,EAAE,UAAU,CAAC;CAC1B;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,sDAAmD,CAAC"}
@@ -24,7 +24,7 @@ export interface TransactionResult {
24
24
  *
25
25
  * @throws Error if wallet is not connected (no publicKey)
26
26
  */
27
- export declare function executeTransaction(connection: Connection, wallet: MyceliumWallet, instruction: TransactionInstruction, confirmation: Commitment): Promise<TransactionResult>;
27
+ export declare function executeTransaction(connection: Connection, wallet: MyceliumWallet | null, instruction: TransactionInstruction, confirmation: Commitment): Promise<TransactionResult>;
28
28
  /**
29
29
  * Execute multiple instructions in a single transaction.
30
30
  *
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/utils/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,sBAAsB,EACnC,YAAY,EAAE,UAAU,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAkC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kCAAkC,CACtD,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,cAAc,EACtB,YAAY,EAAE,sBAAsB,EAAE,EACtC,YAAY,EAAE,UAAU,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAqC5B"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/utils/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,cAAc,GAAG,IAAI,EAC7B,WAAW,EAAE,sBAAsB,EACnC,YAAY,EAAE,UAAU,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAkC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kCAAkC,CACtD,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,cAAc,EACtB,YAAY,EAAE,sBAAsB,EAAE,EACtC,YAAY,EAAE,UAAU,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAqC5B"}
@@ -17,7 +17,7 @@ import { Transaction } from "@solana/web3.js";
17
17
  * @throws Error if wallet is not connected (no publicKey)
18
18
  */
19
19
  export async function executeTransaction(connection, wallet, instruction, confirmation) {
20
- if (!wallet.publicKey) {
20
+ if (!(wallet === null || wallet === void 0 ? void 0 : wallet.publicKey)) {
21
21
  throw new Error("Wallet not connected");
22
22
  }
23
23
  // Build the transaction
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mycelium-ip/react",
3
- "version": "0.1.0-alpha.1",
3
+ "version": "0.1.0-alpha.2",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "React hooks for the Mycelium IP protocol",