@haneullabs/payment-kit 0.1.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 (96) hide show
  1. package/README.md +123 -0
  2. package/dist/cjs/calls.d.ts +71 -0
  3. package/dist/cjs/calls.js +207 -0
  4. package/dist/cjs/calls.js.map +7 -0
  5. package/dist/cjs/client.d.ts +36 -0
  6. package/dist/cjs/client.js +123 -0
  7. package/dist/cjs/client.js.map +7 -0
  8. package/dist/cjs/constants.d.ts +11 -0
  9. package/dist/cjs/constants.js +40 -0
  10. package/dist/cjs/constants.js.map +7 -0
  11. package/dist/cjs/contracts/payment_kit/config.d.ts +14 -0
  12. package/dist/cjs/contracts/payment_kit/config.js +50 -0
  13. package/dist/cjs/contracts/payment_kit/config.js.map +7 -0
  14. package/dist/cjs/contracts/payment_kit/deps/std/type_name.d.ts +14 -0
  15. package/dist/cjs/contracts/payment_kit/deps/std/type_name.js +42 -0
  16. package/dist/cjs/contracts/payment_kit/deps/std/type_name.js.map +7 -0
  17. package/dist/cjs/contracts/payment_kit/deps/sui/object.d.ts +5 -0
  18. package/dist/cjs/contracts/payment_kit/deps/sui/object.js +33 -0
  19. package/dist/cjs/contracts/payment_kit/deps/sui/object.js.map +7 -0
  20. package/dist/cjs/contracts/payment_kit/deps/sui/vec_map.d.ts +27 -0
  21. package/dist/cjs/contracts/payment_kit/deps/sui/vec_map.js +45 -0
  22. package/dist/cjs/contracts/payment_kit/deps/sui/vec_map.js.map +7 -0
  23. package/dist/cjs/contracts/payment_kit/payment_kit.d.ts +233 -0
  24. package/dist/cjs/contracts/payment_kit/payment_kit.js +252 -0
  25. package/dist/cjs/contracts/payment_kit/payment_kit.js.map +7 -0
  26. package/dist/cjs/contracts/utils/index.d.ts +12 -0
  27. package/dist/cjs/contracts/utils/index.js +151 -0
  28. package/dist/cjs/contracts/utils/index.js.map +7 -0
  29. package/dist/cjs/error.d.ts +4 -0
  30. package/dist/cjs/error.js +29 -0
  31. package/dist/cjs/error.js.map +7 -0
  32. package/dist/cjs/index.d.ts +5 -0
  33. package/dist/cjs/index.js +35 -0
  34. package/dist/cjs/index.js.map +7 -0
  35. package/dist/cjs/package.json +5 -0
  36. package/dist/cjs/transactions.d.ts +73 -0
  37. package/dist/cjs/transactions.js +131 -0
  38. package/dist/cjs/transactions.js.map +7 -0
  39. package/dist/cjs/types.d.ts +62 -0
  40. package/dist/cjs/types.js +17 -0
  41. package/dist/cjs/types.js.map +7 -0
  42. package/dist/cjs/uri.d.ts +27 -0
  43. package/dist/cjs/uri.js +131 -0
  44. package/dist/cjs/uri.js.map +7 -0
  45. package/dist/cjs/utils.d.ts +1 -0
  46. package/dist/cjs/utils.js +34 -0
  47. package/dist/cjs/utils.js.map +7 -0
  48. package/dist/esm/calls.d.ts +71 -0
  49. package/dist/esm/calls.js +196 -0
  50. package/dist/esm/calls.js.map +7 -0
  51. package/dist/esm/client.d.ts +36 -0
  52. package/dist/esm/client.js +106 -0
  53. package/dist/esm/client.js.map +7 -0
  54. package/dist/esm/constants.d.ts +11 -0
  55. package/dist/esm/constants.js +20 -0
  56. package/dist/esm/constants.js.map +7 -0
  57. package/dist/esm/contracts/payment_kit/config.d.ts +14 -0
  58. package/dist/esm/contracts/payment_kit/config.js +20 -0
  59. package/dist/esm/contracts/payment_kit/config.js.map +7 -0
  60. package/dist/esm/contracts/payment_kit/deps/std/type_name.d.ts +14 -0
  61. package/dist/esm/contracts/payment_kit/deps/std/type_name.js +22 -0
  62. package/dist/esm/contracts/payment_kit/deps/std/type_name.js.map +7 -0
  63. package/dist/esm/contracts/payment_kit/deps/sui/object.d.ts +5 -0
  64. package/dist/esm/contracts/payment_kit/deps/sui/object.js +13 -0
  65. package/dist/esm/contracts/payment_kit/deps/sui/object.js.map +7 -0
  66. package/dist/esm/contracts/payment_kit/deps/sui/vec_map.d.ts +27 -0
  67. package/dist/esm/contracts/payment_kit/deps/sui/vec_map.js +25 -0
  68. package/dist/esm/contracts/payment_kit/deps/sui/vec_map.js.map +7 -0
  69. package/dist/esm/contracts/payment_kit/payment_kit.d.ts +233 -0
  70. package/dist/esm/contracts/payment_kit/payment_kit.js +222 -0
  71. package/dist/esm/contracts/payment_kit/payment_kit.js.map +7 -0
  72. package/dist/esm/contracts/utils/index.d.ts +12 -0
  73. package/dist/esm/contracts/utils/index.js +131 -0
  74. package/dist/esm/contracts/utils/index.js.map +7 -0
  75. package/dist/esm/error.d.ts +4 -0
  76. package/dist/esm/error.js +9 -0
  77. package/dist/esm/error.js.map +7 -0
  78. package/dist/esm/index.d.ts +5 -0
  79. package/dist/esm/index.js +15 -0
  80. package/dist/esm/index.js.map +7 -0
  81. package/dist/esm/package.json +5 -0
  82. package/dist/esm/transactions.d.ts +73 -0
  83. package/dist/esm/transactions.js +111 -0
  84. package/dist/esm/transactions.js.map +7 -0
  85. package/dist/esm/types.d.ts +62 -0
  86. package/dist/esm/types.js +1 -0
  87. package/dist/esm/types.js.map +7 -0
  88. package/dist/esm/uri.d.ts +27 -0
  89. package/dist/esm/uri.js +111 -0
  90. package/dist/esm/uri.js.map +7 -0
  91. package/dist/esm/utils.d.ts +1 -0
  92. package/dist/esm/utils.js +14 -0
  93. package/dist/esm/utils.js.map +7 -0
  94. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  95. package/dist/tsconfig.tsbuildinfo +1 -0
  96. package/package.json +49 -0
@@ -0,0 +1,196 @@
1
+ var __typeError = (msg) => {
2
+ throw TypeError(msg);
3
+ };
4
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
5
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
6
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
7
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
8
+ var _packageConfig;
9
+ import { coinWithBalance } from "@haneullabs/haneul/transactions";
10
+ import {
11
+ createPaymentKey,
12
+ createRegistry,
13
+ deletePaymentRecord,
14
+ processEphemeralPayment,
15
+ processRegistryPayment,
16
+ setConfigEpochExpirationDuration,
17
+ setConfigRegistryManagedFunds,
18
+ withdrawFromRegistry
19
+ } from "./contracts/payment_kit/payment_kit.js";
20
+ import { getRegistryIdFromName } from "./utils.js";
21
+ class PaymentKitCalls {
22
+ constructor(options) {
23
+ __privateAdd(this, _packageConfig);
24
+ /**
25
+ * Creates a `processRegistryPayment` transaction
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * tx.add(lient.paymentKit.call.processRegistryPayment({ nonce, coinType, sender, amount, receiver, registryName }));
30
+ * ```
31
+ */
32
+ this.processRegistryPayment = (options) => {
33
+ const { nonce, coinType, amount, receiver, sourceCoin, registryName, registryId } = options;
34
+ const registryIdToUse = registryId ?? getRegistryIdFromName(registryName, __privateGet(this, _packageConfig).namespaceId);
35
+ return processRegistryPayment({
36
+ arguments: {
37
+ registry: registryIdToUse,
38
+ nonce,
39
+ paymentAmount: amount,
40
+ coin: sourceCoin ?? coinWithBalance({
41
+ type: coinType,
42
+ balance: amount
43
+ }),
44
+ receiver
45
+ },
46
+ typeArguments: [coinType]
47
+ });
48
+ };
49
+ /**
50
+ * Creates a `processRegistryPayment` transaction
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * tx.add(client.paymentKit.call.processEphemeralPayment({ nonce, coinType, sender, amount, receiver }));
55
+ * ```
56
+ */
57
+ this.processEphemeralPayment = (options) => {
58
+ const { nonce, coinType, amount, receiver, sourceCoin } = options;
59
+ return processEphemeralPayment({
60
+ arguments: {
61
+ nonce,
62
+ paymentAmount: amount,
63
+ coin: sourceCoin ?? coinWithBalance({
64
+ type: coinType,
65
+ balance: amount
66
+ }),
67
+ receiver
68
+ },
69
+ typeArguments: [coinType]
70
+ });
71
+ };
72
+ /**
73
+ * Creates a `createRegistry` transaction
74
+ *
75
+ * @example
76
+ * ```ts
77
+ * tx.add(client.paymentKit.call.createRegistry(registryName));
78
+ * ```
79
+ */
80
+ this.createRegistry = ({ registryName }) => {
81
+ return createRegistry({
82
+ arguments: {
83
+ namespace: __privateGet(this, _packageConfig).namespaceId,
84
+ name: registryName
85
+ }
86
+ });
87
+ };
88
+ /**
89
+ * Creates a `setConfigEpochExpirationDuration` transaction
90
+ *
91
+ * @example
92
+ * ```ts
93
+ * tx.add(client.paymentKit.call.setConfigEpochExpirationDuration({registryName, epochExpirationDuration, adminCapId}));
94
+ * ```
95
+ */
96
+ this.setConfigEpochExpirationDuration = ({
97
+ registryName,
98
+ registryId,
99
+ epochExpirationDuration,
100
+ adminCapId
101
+ }) => {
102
+ const registryIdToUse = registryId ?? getRegistryIdFromName(registryName, __privateGet(this, _packageConfig).namespaceId);
103
+ return setConfigEpochExpirationDuration({
104
+ arguments: {
105
+ registry: registryIdToUse,
106
+ epochExpirationDuration,
107
+ cap: adminCapId
108
+ }
109
+ });
110
+ };
111
+ /**
112
+ * Creates a `setConfigRegistryManagedFunds` transaction
113
+ *
114
+ * @example
115
+ * ```ts
116
+ * tx.add(client.paymentKit.call.setConfigRegistryManagedFunds({registryName, registryManagedFunds, adminCapId}));
117
+ * ```
118
+ */
119
+ this.setConfigRegistryManagedFunds = ({
120
+ registryName,
121
+ registryId,
122
+ registryManagedFunds,
123
+ adminCapId
124
+ }) => {
125
+ const registryIdToUse = registryId ?? getRegistryIdFromName(registryName, __privateGet(this, _packageConfig).namespaceId);
126
+ return setConfigRegistryManagedFunds({
127
+ arguments: {
128
+ registry: registryIdToUse,
129
+ registryManagedFunds,
130
+ cap: adminCapId
131
+ }
132
+ });
133
+ };
134
+ /**
135
+ * Creates a `withdrawFromRegistry` transaction
136
+ *
137
+ * @example
138
+ * ```ts
139
+ * tx.add(client.paymentKit.call.withdrawFromRegistry({coinType, registryName, adminCapId}));
140
+ * ```
141
+ */
142
+ this.withdrawFromRegistry = ({
143
+ coinType,
144
+ registryName,
145
+ registryId,
146
+ adminCapId
147
+ }) => {
148
+ const registryIdToUse = registryId ?? getRegistryIdFromName(registryName, __privateGet(this, _packageConfig).namespaceId);
149
+ return withdrawFromRegistry({
150
+ arguments: {
151
+ registry: registryIdToUse,
152
+ cap: adminCapId
153
+ },
154
+ typeArguments: [coinType]
155
+ });
156
+ };
157
+ /**
158
+ * Creates a `deletePaymentRecord` transaction
159
+ *
160
+ * @example
161
+ * ```ts
162
+ * tx.add(client.paymentKit.call.deletePaymentRecord({coinType, nonce, amount, receiver, registryName}));
163
+ * ```
164
+ */
165
+ this.deletePaymentRecord = ({
166
+ coinType,
167
+ nonce,
168
+ amount,
169
+ receiver,
170
+ registryName,
171
+ registryId
172
+ }) => {
173
+ const registryIdToUse = registryId ?? getRegistryIdFromName(registryName, __privateGet(this, _packageConfig).namespaceId);
174
+ return deletePaymentRecord({
175
+ arguments: {
176
+ registry: registryIdToUse,
177
+ paymentKey: createPaymentKey({
178
+ arguments: {
179
+ nonce,
180
+ paymentAmount: amount,
181
+ receiver
182
+ },
183
+ typeArguments: [coinType]
184
+ })
185
+ },
186
+ typeArguments: [coinType]
187
+ });
188
+ };
189
+ __privateSet(this, _packageConfig, options.packageConfig);
190
+ }
191
+ }
192
+ _packageConfig = new WeakMap();
193
+ export {
194
+ PaymentKitCalls
195
+ };
196
+ //# sourceMappingURL=calls.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/calls.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { coinWithBalance } from '@haneullabs/haneul/transactions';\nimport type {\n\tCreateRegistryOptions,\n\tDeletePaymentRecordOptions,\n\tPaymentKitPackageConfig,\n\tProcessEphemeralPaymentOptions,\n\tProcessRegistryPaymentOptions,\n\tSetEpochExpirationDurationOptions,\n\tSetRegistryManagedFundsOptions,\n\tWithdrawFromRegistryOptions,\n} from './types.js';\nimport {\n\tcreatePaymentKey,\n\tcreateRegistry,\n\tdeletePaymentRecord,\n\tprocessEphemeralPayment,\n\tprocessRegistryPayment,\n\tsetConfigEpochExpirationDuration,\n\tsetConfigRegistryManagedFunds,\n\twithdrawFromRegistry,\n} from './contracts/payment_kit/payment_kit.js';\nimport { getRegistryIdFromName } from './utils.js';\n\nexport interface PaymentKitCallOptions {\n\tpackageConfig: PaymentKitPackageConfig;\n}\n\nexport class PaymentKitCalls {\n\t#packageConfig: PaymentKitPackageConfig;\n\n\tconstructor(options: PaymentKitCallOptions) {\n\t\tthis.#packageConfig = options.packageConfig;\n\t}\n\n\t/**\n\t * Creates a `processRegistryPayment` transaction\n\t *\n\t * @example\n\t * ```ts\n\t * tx.add(lient.paymentKit.call.processRegistryPayment({ nonce, coinType, sender, amount, receiver, registryName }));\n\t * ```\n\t */\n\tprocessRegistryPayment = (options: ProcessRegistryPaymentOptions) => {\n\t\tconst { nonce, coinType, amount, receiver, sourceCoin, registryName, registryId } = options;\n\t\tconst registryIdToUse =\n\t\t\tregistryId ?? getRegistryIdFromName(registryName, this.#packageConfig.namespaceId);\n\n\t\treturn processRegistryPayment({\n\t\t\targuments: {\n\t\t\t\tregistry: registryIdToUse,\n\t\t\t\tnonce,\n\t\t\t\tpaymentAmount: amount,\n\t\t\t\tcoin:\n\t\t\t\t\tsourceCoin ??\n\t\t\t\t\tcoinWithBalance({\n\t\t\t\t\t\ttype: coinType,\n\t\t\t\t\t\tbalance: amount,\n\t\t\t\t\t}),\n\t\t\t\treceiver,\n\t\t\t},\n\t\t\ttypeArguments: [coinType],\n\t\t});\n\t};\n\n\t/**\n\t * Creates a `processRegistryPayment` transaction\n\t *\n\t * @example\n\t * ```ts\n\t * tx.add(client.paymentKit.call.processEphemeralPayment({ nonce, coinType, sender, amount, receiver }));\n\t * ```\n\t */\n\tprocessEphemeralPayment = (options: ProcessEphemeralPaymentOptions) => {\n\t\tconst { nonce, coinType, amount, receiver, sourceCoin } = options;\n\n\t\treturn processEphemeralPayment({\n\t\t\targuments: {\n\t\t\t\tnonce: nonce,\n\t\t\t\tpaymentAmount: amount,\n\t\t\t\tcoin:\n\t\t\t\t\tsourceCoin ??\n\t\t\t\t\tcoinWithBalance({\n\t\t\t\t\t\ttype: coinType,\n\t\t\t\t\t\tbalance: amount,\n\t\t\t\t\t}),\n\t\t\t\treceiver,\n\t\t\t},\n\t\t\ttypeArguments: [coinType],\n\t\t});\n\t};\n\n\t/**\n\t * Creates a `createRegistry` transaction\n\t *\n\t * @example\n\t * ```ts\n\t * tx.add(client.paymentKit.call.createRegistry(registryName));\n\t * ```\n\t */\n\tcreateRegistry = ({ registryName }: CreateRegistryOptions) => {\n\t\treturn createRegistry({\n\t\t\targuments: {\n\t\t\t\tnamespace: this.#packageConfig.namespaceId,\n\t\t\t\tname: registryName,\n\t\t\t},\n\t\t});\n\t};\n\n\t/**\n\t * Creates a `setConfigEpochExpirationDuration` transaction\n\t *\n\t * @example\n\t * ```ts\n\t * tx.add(client.paymentKit.call.setConfigEpochExpirationDuration({registryName, epochExpirationDuration, adminCapId}));\n\t * ```\n\t */\n\tsetConfigEpochExpirationDuration = ({\n\t\tregistryName,\n\t\tregistryId,\n\t\tepochExpirationDuration,\n\t\tadminCapId,\n\t}: SetEpochExpirationDurationOptions) => {\n\t\tconst registryIdToUse =\n\t\t\tregistryId ?? getRegistryIdFromName(registryName, this.#packageConfig.namespaceId);\n\n\t\treturn setConfigEpochExpirationDuration({\n\t\t\targuments: {\n\t\t\t\tregistry: registryIdToUse,\n\t\t\t\tepochExpirationDuration,\n\t\t\t\tcap: adminCapId,\n\t\t\t},\n\t\t});\n\t};\n\n\t/**\n\t * Creates a `setConfigRegistryManagedFunds` transaction\n\t *\n\t * @example\n\t * ```ts\n\t * tx.add(client.paymentKit.call.setConfigRegistryManagedFunds({registryName, registryManagedFunds, adminCapId}));\n\t * ```\n\t */\n\tsetConfigRegistryManagedFunds = ({\n\t\tregistryName,\n\t\tregistryId,\n\t\tregistryManagedFunds,\n\t\tadminCapId,\n\t}: SetRegistryManagedFundsOptions) => {\n\t\tconst registryIdToUse =\n\t\t\tregistryId ?? getRegistryIdFromName(registryName, this.#packageConfig.namespaceId);\n\n\t\treturn setConfigRegistryManagedFunds({\n\t\t\targuments: {\n\t\t\t\tregistry: registryIdToUse,\n\t\t\t\tregistryManagedFunds,\n\t\t\t\tcap: adminCapId,\n\t\t\t},\n\t\t});\n\t};\n\n\t/**\n\t * Creates a `withdrawFromRegistry` transaction\n\t *\n\t * @example\n\t * ```ts\n\t * tx.add(client.paymentKit.call.withdrawFromRegistry({coinType, registryName, adminCapId}));\n\t * ```\n\t */\n\twithdrawFromRegistry = ({\n\t\tcoinType,\n\t\tregistryName,\n\t\tregistryId,\n\t\tadminCapId,\n\t}: WithdrawFromRegistryOptions) => {\n\t\tconst registryIdToUse =\n\t\t\tregistryId ?? getRegistryIdFromName(registryName, this.#packageConfig.namespaceId);\n\n\t\treturn withdrawFromRegistry({\n\t\t\targuments: {\n\t\t\t\tregistry: registryIdToUse,\n\t\t\t\tcap: adminCapId,\n\t\t\t},\n\t\t\ttypeArguments: [coinType],\n\t\t});\n\t};\n\n\t/**\n\t * Creates a `deletePaymentRecord` transaction\n\t *\n\t * @example\n\t * ```ts\n\t * tx.add(client.paymentKit.call.deletePaymentRecord({coinType, nonce, amount, receiver, registryName}));\n\t * ```\n\t */\n\tdeletePaymentRecord = ({\n\t\tcoinType,\n\t\tnonce,\n\t\tamount,\n\t\treceiver,\n\t\tregistryName,\n\t\tregistryId,\n\t}: DeletePaymentRecordOptions) => {\n\t\tconst registryIdToUse =\n\t\t\tregistryId ?? getRegistryIdFromName(registryName, this.#packageConfig.namespaceId);\n\n\t\treturn deletePaymentRecord({\n\t\t\targuments: {\n\t\t\t\tregistry: registryIdToUse,\n\t\t\t\tpaymentKey: createPaymentKey({\n\t\t\t\t\targuments: {\n\t\t\t\t\t\tnonce,\n\t\t\t\t\t\tpaymentAmount: amount,\n\t\t\t\t\t\treceiver,\n\t\t\t\t\t},\n\t\t\t\t\ttypeArguments: [coinType],\n\t\t\t\t}),\n\t\t\t},\n\t\t\ttypeArguments: [coinType],\n\t\t});\n\t};\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,36 @@
1
+ import type { PaymentKitClientOptions, GetPaymentRecordOptions, GetPaymentRecordResponse } from './types.js';
2
+ import type { ClientWithCoreApi } from '@haneullabs/haneul/experimental';
3
+ import { PaymentKitTransactions } from './transactions.js';
4
+ import { PaymentKitCalls } from './calls.js';
5
+ export declare function paymentKit<const Name = 'paymentKit'>({ name }?: {
6
+ name?: Name | undefined;
7
+ }): {
8
+ name: Name;
9
+ register: (client: ClientWithCoreApi) => PaymentKitClient;
10
+ };
11
+ export declare class PaymentKitClient {
12
+ #private;
13
+ calls: PaymentKitCalls;
14
+ tx: PaymentKitTransactions;
15
+ constructor(options: PaymentKitClientOptions);
16
+ /**
17
+ * Query for a payment record in a registry.
18
+ * Returns the payment record data if it exists, null otherwise.
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * const paymentRecord = await client.getPaymentRecord({ registry, nonce, amount, receiver, coinType });
23
+ * ```
24
+ */
25
+ getPaymentRecord(options: GetPaymentRecordOptions): Promise<GetPaymentRecordResponse | null>;
26
+ /**
27
+ * Get the registry object id from a registry name.
28
+ * Returns the derived registry id.
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * const registryId = await client.getRegistryIdFromName("my-registry");
33
+ * ```
34
+ */
35
+ getRegistryIdFromName(registryName: string): string;
36
+ }
@@ -0,0 +1,106 @@
1
+ var __typeError = (msg) => {
2
+ throw TypeError(msg);
3
+ };
4
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
5
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
6
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
7
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
8
+ var _packageConfig, _client;
9
+ import { PaymentKitClientError } from "./error.js";
10
+ import {
11
+ MAINNET_PAYMENT_KIT_PACKAGE_CONFIG,
12
+ TESTNET_PAYMENT_KIT_PACKAGE_CONFIG
13
+ } from "./constants.js";
14
+ import { PaymentKey, PaymentRecord } from "./contracts/payment_kit/payment_kit.js";
15
+ import { normalizeStructTag } from "@haneullabs/haneul/utils";
16
+ import { PaymentKitTransactions } from "./transactions.js";
17
+ import { PaymentKitCalls } from "./calls.js";
18
+ import { getRegistryIdFromName } from "./utils.js";
19
+ function paymentKit({ name = "paymentKit" } = {}) {
20
+ return {
21
+ name,
22
+ register: (client) => {
23
+ return new PaymentKitClient({ client });
24
+ }
25
+ };
26
+ }
27
+ class PaymentKitClient {
28
+ constructor(options) {
29
+ __privateAdd(this, _packageConfig);
30
+ __privateAdd(this, _client);
31
+ if (options.client) {
32
+ __privateSet(this, _client, options.client);
33
+ } else {
34
+ throw new PaymentKitClientError("haneulClient must be provided");
35
+ }
36
+ const network = options.client.network;
37
+ switch (network) {
38
+ case "testnet":
39
+ __privateSet(this, _packageConfig, TESTNET_PAYMENT_KIT_PACKAGE_CONFIG);
40
+ break;
41
+ case "mainnet":
42
+ __privateSet(this, _packageConfig, MAINNET_PAYMENT_KIT_PACKAGE_CONFIG);
43
+ break;
44
+ default:
45
+ throw new PaymentKitClientError(`Unsupported network: ${network}`);
46
+ }
47
+ this.calls = new PaymentKitCalls({ packageConfig: __privateGet(this, _packageConfig) });
48
+ this.tx = new PaymentKitTransactions({
49
+ calls: this.calls
50
+ });
51
+ }
52
+ /**
53
+ * Query for a payment record in a registry.
54
+ * Returns the payment record data if it exists, null otherwise.
55
+ *
56
+ * @example
57
+ * ```ts
58
+ * const paymentRecord = await client.getPaymentRecord({ registry, nonce, amount, receiver, coinType });
59
+ * ```
60
+ */
61
+ async getPaymentRecord(options) {
62
+ const { coinType, registryId, registryName, nonce, amount, receiver } = options;
63
+ const normalizedCoinType = normalizeStructTag(coinType);
64
+ const paymentKeyType = `${PaymentKey.name}<${normalizedCoinType}>`;
65
+ const registryIdToUse = registryId ?? getRegistryIdFromName(registryName, __privateGet(this, _packageConfig).namespaceId);
66
+ const result = await __privateGet(this, _client).core.getDynamicField({
67
+ parentId: registryIdToUse,
68
+ name: {
69
+ type: paymentKeyType,
70
+ bcs: PaymentKey.serialize({
71
+ nonce,
72
+ payment_amount: amount,
73
+ receiver
74
+ }).toBytes()
75
+ }
76
+ });
77
+ if (!result?.dynamicField) {
78
+ return null;
79
+ }
80
+ const decoded = PaymentRecord.parse(result.dynamicField.value.bcs);
81
+ return {
82
+ key: result.dynamicField.id,
83
+ paymentTransactionDigest: result.dynamicField.previousTransaction,
84
+ epochAtTimeOfRecord: decoded.epoch_at_time_of_record
85
+ };
86
+ }
87
+ /**
88
+ * Get the registry object id from a registry name.
89
+ * Returns the derived registry id.
90
+ *
91
+ * @example
92
+ * ```ts
93
+ * const registryId = await client.getRegistryIdFromName("my-registry");
94
+ * ```
95
+ */
96
+ getRegistryIdFromName(registryName) {
97
+ return getRegistryIdFromName(registryName, __privateGet(this, _packageConfig).namespaceId);
98
+ }
99
+ }
100
+ _packageConfig = new WeakMap();
101
+ _client = new WeakMap();
102
+ export {
103
+ PaymentKitClient,
104
+ paymentKit
105
+ };
106
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/client.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { PaymentKitClientError } from './error.js';\nimport {\n\tMAINNET_PAYMENT_KIT_PACKAGE_CONFIG,\n\tTESTNET_PAYMENT_KIT_PACKAGE_CONFIG,\n} from './constants.js';\nimport { PaymentKey, PaymentRecord } from './contracts/payment_kit/payment_kit.js';\nimport type {\n\tPaymentKitCompatibleClient,\n\tPaymentKitPackageConfig,\n\tPaymentKitClientOptions,\n\tGetPaymentRecordOptions,\n\tGetPaymentRecordResponse,\n} from './types.js';\nimport type { ClientWithCoreApi } from '@haneullabs/haneul/experimental';\nimport { normalizeStructTag } from '@haneullabs/haneul/utils';\nimport { PaymentKitTransactions } from './transactions.js';\nimport { PaymentKitCalls } from './calls.js';\nimport { getRegistryIdFromName } from './utils.js';\n\nexport function paymentKit<const Name = 'paymentKit'>({ name = 'paymentKit' as Name } = {}) {\n\treturn {\n\t\tname,\n\t\tregister: (client: ClientWithCoreApi) => {\n\t\t\treturn new PaymentKitClient({ client });\n\t\t},\n\t};\n}\n\nexport class PaymentKitClient {\n\t#packageConfig: PaymentKitPackageConfig;\n\t#client: PaymentKitCompatibleClient;\n\n\tcalls: PaymentKitCalls;\n\ttx: PaymentKitTransactions;\n\n\tconstructor(options: PaymentKitClientOptions) {\n\t\tif (options.client) {\n\t\t\tthis.#client = options.client;\n\t\t} else {\n\t\t\tthrow new PaymentKitClientError('haneulClient must be provided');\n\t\t}\n\n\t\tconst network = options.client.network;\n\t\tswitch (network) {\n\t\t\tcase 'testnet':\n\t\t\t\tthis.#packageConfig = TESTNET_PAYMENT_KIT_PACKAGE_CONFIG;\n\t\t\t\tbreak;\n\t\t\tcase 'mainnet':\n\t\t\t\tthis.#packageConfig = MAINNET_PAYMENT_KIT_PACKAGE_CONFIG;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthrow new PaymentKitClientError(`Unsupported network: ${network}`);\n\t\t}\n\n\t\tthis.calls = new PaymentKitCalls({ packageConfig: this.#packageConfig });\n\t\tthis.tx = new PaymentKitTransactions({\n\t\t\tcalls: this.calls,\n\t\t});\n\t}\n\n\t/**\n\t * Query for a payment record in a registry.\n\t * Returns the payment record data if it exists, null otherwise.\n\t *\n\t * @example\n\t * ```ts\n\t * const paymentRecord = await client.getPaymentRecord({ registry, nonce, amount, receiver, coinType });\n\t * ```\n\t */\n\tasync getPaymentRecord(\n\t\toptions: GetPaymentRecordOptions,\n\t): Promise<GetPaymentRecordResponse | null> {\n\t\tconst { coinType, registryId, registryName, nonce, amount, receiver } = options;\n\t\tconst normalizedCoinType = normalizeStructTag(coinType);\n\t\tconst paymentKeyType = `${PaymentKey.name}<${normalizedCoinType}>`;\n\n\t\tconst registryIdToUse =\n\t\t\tregistryId ?? getRegistryIdFromName(registryName, this.#packageConfig.namespaceId);\n\t\tconst result = await this.#client.core.getDynamicField({\n\t\t\tparentId: registryIdToUse,\n\t\t\tname: {\n\t\t\t\ttype: paymentKeyType,\n\t\t\t\tbcs: PaymentKey.serialize({\n\t\t\t\t\tnonce,\n\t\t\t\t\tpayment_amount: amount,\n\t\t\t\t\treceiver,\n\t\t\t\t}).toBytes(),\n\t\t\t},\n\t\t});\n\n\t\tif (!result?.dynamicField) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst decoded = PaymentRecord.parse(result.dynamicField.value.bcs);\n\n\t\treturn {\n\t\t\tkey: result.dynamicField.id,\n\t\t\tpaymentTransactionDigest: result.dynamicField.previousTransaction,\n\t\t\tepochAtTimeOfRecord: decoded.epoch_at_time_of_record,\n\t\t};\n\t}\n\n\t/**\n\t * Get the registry object id from a registry name.\n\t * Returns the derived registry id.\n\t *\n\t * @example\n\t * ```ts\n\t * const registryId = await client.getRegistryIdFromName(\"my-registry\");\n\t * ```\n\t */\n\tgetRegistryIdFromName(registryName: string): string {\n\t\treturn getRegistryIdFromName(registryName, this.#packageConfig.namespaceId);\n\t}\n}\n"],
5
+ "mappings": ";;;;;;;AAAA;AAGA,SAAS,6BAA6B;AACtC;AAAA,EACC;AAAA,EACA;AAAA,OACM;AACP,SAAS,YAAY,qBAAqB;AAS1C,SAAS,0BAA0B;AACnC,SAAS,8BAA8B;AACvC,SAAS,uBAAuB;AAChC,SAAS,6BAA6B;AAE/B,SAAS,WAAsC,EAAE,OAAO,aAAqB,IAAI,CAAC,GAAG;AAC3F,SAAO;AAAA,IACN;AAAA,IACA,UAAU,CAAC,WAA8B;AACxC,aAAO,IAAI,iBAAiB,EAAE,OAAO,CAAC;AAAA,IACvC;AAAA,EACD;AACD;AAEO,MAAM,iBAAiB;AAAA,EAO7B,YAAY,SAAkC;AAN9C;AACA;AAMC,QAAI,QAAQ,QAAQ;AACnB,yBAAK,SAAU,QAAQ;AAAA,IACxB,OAAO;AACN,YAAM,IAAI,sBAAsB,+BAA+B;AAAA,IAChE;AAEA,UAAM,UAAU,QAAQ,OAAO;AAC/B,YAAQ,SAAS;AAAA,MAChB,KAAK;AACJ,2BAAK,gBAAiB;AACtB;AAAA,MACD,KAAK;AACJ,2BAAK,gBAAiB;AACtB;AAAA,MACD;AACC,cAAM,IAAI,sBAAsB,wBAAwB,OAAO,EAAE;AAAA,IACnE;AAEA,SAAK,QAAQ,IAAI,gBAAgB,EAAE,eAAe,mBAAK,gBAAe,CAAC;AACvE,SAAK,KAAK,IAAI,uBAAuB;AAAA,MACpC,OAAO,KAAK;AAAA,IACb,CAAC;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAM,iBACL,SAC2C;AAC3C,UAAM,EAAE,UAAU,YAAY,cAAc,OAAO,QAAQ,SAAS,IAAI;AACxE,UAAM,qBAAqB,mBAAmB,QAAQ;AACtD,UAAM,iBAAiB,GAAG,WAAW,IAAI,IAAI,kBAAkB;AAE/D,UAAM,kBACL,cAAc,sBAAsB,cAAc,mBAAK,gBAAe,WAAW;AAClF,UAAM,SAAS,MAAM,mBAAK,SAAQ,KAAK,gBAAgB;AAAA,MACtD,UAAU;AAAA,MACV,MAAM;AAAA,QACL,MAAM;AAAA,QACN,KAAK,WAAW,UAAU;AAAA,UACzB;AAAA,UACA,gBAAgB;AAAA,UAChB;AAAA,QACD,CAAC,EAAE,QAAQ;AAAA,MACZ;AAAA,IACD,CAAC;AAED,QAAI,CAAC,QAAQ,cAAc;AAC1B,aAAO;AAAA,IACR;AAEA,UAAM,UAAU,cAAc,MAAM,OAAO,aAAa,MAAM,GAAG;AAEjE,WAAO;AAAA,MACN,KAAK,OAAO,aAAa;AAAA,MACzB,0BAA0B,OAAO,aAAa;AAAA,MAC9C,qBAAqB,QAAQ;AAAA,IAC9B;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,sBAAsB,cAA8B;AACnD,WAAO,sBAAsB,cAAc,mBAAK,gBAAe,WAAW;AAAA,EAC3E;AACD;AAtFC;AACA;",
6
+ "names": []
7
+ }
@@ -0,0 +1,11 @@
1
+ export declare const TESTNET_PAYMENT_KIT_PACKAGE_CONFIG: {
2
+ packageId: string;
3
+ namespaceId: string;
4
+ };
5
+ export declare const MAINNET_PAYMENT_KIT_PACKAGE_CONFIG: {
6
+ packageId: string;
7
+ namespaceId: string;
8
+ };
9
+ export declare const HANEUL_COIN_TYPE: string;
10
+ export declare const DEFAULT_REGISTRY_NAME = "default-payment-registry";
11
+ export declare const SUI_PAYMENT_KIT_PROTOCOL = "sui:pay";
@@ -0,0 +1,20 @@
1
+ import { HANEUL_TYPE_ARG, normalizeStructTag } from "@haneullabs/haneul/utils";
2
+ const TESTNET_PAYMENT_KIT_PACKAGE_CONFIG = {
3
+ packageId: "0x7e069abe383e80d32f2aec17b3793da82aabc8c2edf84abbf68dd7b719e71497",
4
+ namespaceId: "0xa5016862fdccba7cc576b56cc5a391eda6775200aaa03a6b3c97d512312878db"
5
+ };
6
+ const MAINNET_PAYMENT_KIT_PACKAGE_CONFIG = {
7
+ packageId: "0xbc126f1535fba7d641cb9150ad9eae93b104972586ba20f3c60bfe0e53b69bc6",
8
+ namespaceId: "0xccd3e4c7802921991cd9ce488c4ca0b51334ba75483702744242284ccf3ae7c2"
9
+ };
10
+ const HANEUL_COIN_TYPE = normalizeStructTag(HANEUL_TYPE_ARG);
11
+ const DEFAULT_REGISTRY_NAME = "default-payment-registry";
12
+ const SUI_PAYMENT_KIT_PROTOCOL = "sui:pay";
13
+ export {
14
+ DEFAULT_REGISTRY_NAME,
15
+ HANEUL_COIN_TYPE,
16
+ MAINNET_PAYMENT_KIT_PACKAGE_CONFIG,
17
+ SUI_PAYMENT_KIT_PROTOCOL,
18
+ TESTNET_PAYMENT_KIT_PACKAGE_CONFIG
19
+ };
20
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/constants.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PaymentKitPackageConfig } from './types.js';\nimport { HANEUL_TYPE_ARG, normalizeStructTag } from '@haneullabs/haneul/utils';\n\nexport const TESTNET_PAYMENT_KIT_PACKAGE_CONFIG = {\n\tpackageId: '0x7e069abe383e80d32f2aec17b3793da82aabc8c2edf84abbf68dd7b719e71497',\n\tnamespaceId: '0xa5016862fdccba7cc576b56cc5a391eda6775200aaa03a6b3c97d512312878db',\n} satisfies PaymentKitPackageConfig;\n\nexport const MAINNET_PAYMENT_KIT_PACKAGE_CONFIG = {\n\tpackageId: '0xbc126f1535fba7d641cb9150ad9eae93b104972586ba20f3c60bfe0e53b69bc6',\n\tnamespaceId: '0xccd3e4c7802921991cd9ce488c4ca0b51334ba75483702744242284ccf3ae7c2',\n} satisfies PaymentKitPackageConfig;\n\nexport const HANEUL_COIN_TYPE = normalizeStructTag(HANEUL_TYPE_ARG);\nexport const DEFAULT_REGISTRY_NAME = 'default-payment-registry';\n\nexport const SUI_PAYMENT_KIT_PROTOCOL = 'sui:pay';\n"],
5
+ "mappings": "AAIA,SAAS,iBAAiB,0BAA0B;AAE7C,MAAM,qCAAqC;AAAA,EACjD,WAAW;AAAA,EACX,aAAa;AACd;AAEO,MAAM,qCAAqC;AAAA,EACjD,WAAW;AAAA,EACX,aAAa;AACd;AAEO,MAAM,mBAAmB,mBAAmB,eAAe;AAC3D,MAAM,wBAAwB;AAE9B,MAAM,2BAA2B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,14 @@
1
+ import { MoveEnum } from '../utils/index.js';
2
+ export declare const Value: MoveEnum<{
3
+ U64: import("@haneullabs/haneul/bcs").BcsType<string, string | number | bigint, "u64">;
4
+ Address: import("@haneullabs/haneul/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
5
+ String: import("@haneullabs/haneul/bcs").BcsType<string, string, "string">;
6
+ AsciiString: import("@haneullabs/haneul/bcs").BcsType<string, string, "string">;
7
+ Bool: import("@haneullabs/haneul/bcs").BcsType<boolean, boolean, "bool">;
8
+ Bytes: import("@haneullabs/haneul/bcs").BcsType<number[], Iterable<number> & {
9
+ length: number;
10
+ }, string>;
11
+ Type: import("../utils/index.js").MoveStruct<{
12
+ name: import("@haneullabs/haneul/bcs").BcsType<string, string, "string">;
13
+ }, "std::type_name::TypeName">;
14
+ }, "@haneullabs/payment-kit::config::Value">;
@@ -0,0 +1,20 @@
1
+ import { MoveEnum } from "../utils/index.js";
2
+ import { bcs } from "@haneullabs/haneul/bcs";
3
+ import * as type_name from "./deps/std/type_name.js";
4
+ const $moduleName = "@haneullabs/payment-kit::config";
5
+ const Value = new MoveEnum({
6
+ name: `${$moduleName}::Value`,
7
+ fields: {
8
+ U64: bcs.u64(),
9
+ Address: bcs.Address,
10
+ String: bcs.string(),
11
+ AsciiString: bcs.string(),
12
+ Bool: bcs.bool(),
13
+ Bytes: bcs.vector(bcs.u8()),
14
+ Type: type_name.TypeName
15
+ }
16
+ });
17
+ export {
18
+ Value
19
+ };
20
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/contracts/payment_kit/config.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\nimport { MoveEnum } from '../utils/index.js';\nimport { bcs } from '@haneullabs/haneul/bcs';\nimport * as type_name from './deps/std/type_name.js';\nconst $moduleName = '@haneullabs/payment-kit::config';\nexport const Value = new MoveEnum({\n\tname: `${$moduleName}::Value`,\n\tfields: {\n\t\tU64: bcs.u64(),\n\t\tAddress: bcs.Address,\n\t\tString: bcs.string(),\n\t\tAsciiString: bcs.string(),\n\t\tBool: bcs.bool(),\n\t\tBytes: bcs.vector(bcs.u8()),\n\t\tType: type_name.TypeName,\n\t},\n});\n"],
5
+ "mappings": "AAEA,SAAS,gBAAgB;AACzB,SAAS,WAAW;AACpB,YAAY,eAAe;AAC3B,MAAM,cAAc;AACb,MAAM,QAAQ,IAAI,SAAS;AAAA,EACjC,MAAM,GAAG,WAAW;AAAA,EACpB,QAAQ;AAAA,IACP,KAAK,IAAI,IAAI;AAAA,IACb,SAAS,IAAI;AAAA,IACb,QAAQ,IAAI,OAAO;AAAA,IACnB,aAAa,IAAI,OAAO;AAAA,IACxB,MAAM,IAAI,KAAK;AAAA,IACf,OAAO,IAAI,OAAO,IAAI,GAAG,CAAC;AAAA,IAC1B,MAAM,UAAU;AAAA,EACjB;AACD,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,14 @@
1
+ /** Functionality for converting Move types into values. Use with care! */
2
+ import { MoveStruct } from '../../../utils/index.js';
3
+ export declare const TypeName: MoveStruct<{
4
+ /**
5
+ * String representation of the type. All types are represented using their source
6
+ * syntax: "u8", "u64", "bool", "address", "vector", and so on for primitive types.
7
+ * Struct types are represented as fully qualified type names; e.g.
8
+ * `00000000000000000000000000000001::string::String` or
9
+ * `0000000000000000000000000000000a::module_name1::type_name1<0000000000000000000000000000000a::module_name2::type_name2<u64>>`
10
+ * Addresses are hex-encoded lowercase values of length ADDRESS_LENGTH (16, 20, or
11
+ * 32 depending on the Move platform)
12
+ */
13
+ name: import("@haneullabs/haneul/bcs").BcsType<string, string, "string">;
14
+ }, "std::type_name::TypeName">;
@@ -0,0 +1,22 @@
1
+ import { MoveStruct } from "../../../utils/index.js";
2
+ import { bcs } from "@haneullabs/haneul/bcs";
3
+ const $moduleName = "std::type_name";
4
+ const TypeName = new MoveStruct({
5
+ name: `${$moduleName}::TypeName`,
6
+ fields: {
7
+ /**
8
+ * String representation of the type. All types are represented using their source
9
+ * syntax: "u8", "u64", "bool", "address", "vector", and so on for primitive types.
10
+ * Struct types are represented as fully qualified type names; e.g.
11
+ * `00000000000000000000000000000001::string::String` or
12
+ * `0000000000000000000000000000000a::module_name1::type_name1<0000000000000000000000000000000a::module_name2::type_name2<u64>>`
13
+ * Addresses are hex-encoded lowercase values of length ADDRESS_LENGTH (16, 20, or
14
+ * 32 depending on the Move platform)
15
+ */
16
+ name: bcs.string()
17
+ }
18
+ });
19
+ export {
20
+ TypeName
21
+ };
22
+ //# sourceMappingURL=type_name.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/contracts/payment_kit/deps/std/type_name.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\n/** Functionality for converting Move types into values. Use with care! */\n\nimport { MoveStruct } from '../../../utils/index.js';\nimport { bcs } from '@haneullabs/haneul/bcs';\nconst $moduleName = 'std::type_name';\nexport const TypeName = new MoveStruct({\n\tname: `${$moduleName}::TypeName`,\n\tfields: {\n\t\t/**\n\t\t * String representation of the type. All types are represented using their source\n\t\t * syntax: \"u8\", \"u64\", \"bool\", \"address\", \"vector\", and so on for primitive types.\n\t\t * Struct types are represented as fully qualified type names; e.g.\n\t\t * `00000000000000000000000000000001::string::String` or\n\t\t * `0000000000000000000000000000000a::module_name1::type_name1<0000000000000000000000000000000a::module_name2::type_name2<u64>>`\n\t\t * Addresses are hex-encoded lowercase values of length ADDRESS_LENGTH (16, 20, or\n\t\t * 32 depending on the Move platform)\n\t\t */\n\t\tname: bcs.string(),\n\t},\n});\n"],
5
+ "mappings": "AAKA,SAAS,kBAAkB;AAC3B,SAAS,WAAW;AACpB,MAAM,cAAc;AACb,MAAM,WAAW,IAAI,WAAW;AAAA,EACtC,MAAM,GAAG,WAAW;AAAA,EACpB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUP,MAAM,IAAI,OAAO;AAAA,EAClB;AACD,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,5 @@
1
+ /** Sui object identifiers */
2
+ import { MoveStruct } from '../../../utils/index.js';
3
+ export declare const UID: MoveStruct<{
4
+ id: import("@haneullabs/haneul/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
5
+ }, "0x2::object::UID">;
@@ -0,0 +1,13 @@
1
+ import { MoveStruct } from "../../../utils/index.js";
2
+ import { bcs } from "@haneullabs/haneul/bcs";
3
+ const $moduleName = "0x2::object";
4
+ const UID = new MoveStruct({
5
+ name: `${$moduleName}::UID`,
6
+ fields: {
7
+ id: bcs.Address
8
+ }
9
+ });
10
+ export {
11
+ UID
12
+ };
13
+ //# sourceMappingURL=object.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/contracts/payment_kit/deps/sui/object.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\n/** Sui object identifiers */\n\nimport { MoveStruct } from '../../../utils/index.js';\nimport { bcs } from '@haneullabs/haneul/bcs';\nconst $moduleName = '0x2::object';\nexport const UID = new MoveStruct({\n\tname: `${$moduleName}::UID`,\n\tfields: {\n\t\tid: bcs.Address,\n\t},\n});\n"],
5
+ "mappings": "AAKA,SAAS,kBAAkB;AAC3B,SAAS,WAAW;AACpB,MAAM,cAAc;AACb,MAAM,MAAM,IAAI,WAAW;AAAA,EACjC,MAAM,GAAG,WAAW;AAAA,EACpB,QAAQ;AAAA,IACP,IAAI,IAAI;AAAA,EACT;AACD,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,27 @@
1
+ import type { BcsType } from '@haneullabs/haneul/bcs';
2
+ import { MoveStruct } from '../../../utils/index.js';
3
+ /** An entry in the map */
4
+ export declare function Entry<K extends BcsType<any>, V extends BcsType<any>>(...typeParameters: [K, V]): MoveStruct<{
5
+ key: K;
6
+ value: V;
7
+ }, `0x2::vec_map::Entry<${K["name"]}, ${V["name"]}>`>;
8
+ /**
9
+ * A map data structure backed by a vector. The map is guaranteed not to contain
10
+ * duplicate keys, but entries are _not_ sorted by key--entries are included in
11
+ * insertion order. All operations are O(N) in the size of the map--the intention
12
+ * of this data structure is only to provide the convenience of programming against
13
+ * a map API. Large maps should use handwritten parent/child relationships instead.
14
+ * Maps that need sorted iteration rather than insertion order iteration should
15
+ * also be handwritten.
16
+ */
17
+ export declare function VecMap<K extends BcsType<any>, V extends BcsType<any>>(...typeParameters: [K, V]): MoveStruct<{
18
+ contents: BcsType<{
19
+ key: K extends BcsType<infer U, any, string> ? U : never;
20
+ value: V extends BcsType<infer U, any, string> ? U : never;
21
+ }[], Iterable<{
22
+ key: K extends BcsType<any, infer U_1, string> ? U_1 : never;
23
+ value: V extends BcsType<any, infer U_1, string> ? U_1 : never;
24
+ }> & {
25
+ length: number;
26
+ }, string>;
27
+ }, `0x2::vec_map::VecMap<${K["name"]}, ${V["name"]}>`>;
@@ -0,0 +1,25 @@
1
+ import { bcs } from "@haneullabs/haneul/bcs";
2
+ import { MoveStruct } from "../../../utils/index.js";
3
+ const $moduleName = "0x2::vec_map";
4
+ function Entry(...typeParameters) {
5
+ return new MoveStruct({
6
+ name: `${$moduleName}::Entry<${typeParameters[0].name}, ${typeParameters[1].name}>`,
7
+ fields: {
8
+ key: typeParameters[0],
9
+ value: typeParameters[1]
10
+ }
11
+ });
12
+ }
13
+ function VecMap(...typeParameters) {
14
+ return new MoveStruct({
15
+ name: `${$moduleName}::VecMap<${typeParameters[0].name}, ${typeParameters[1].name}>`,
16
+ fields: {
17
+ contents: bcs.vector(Entry(typeParameters[0], typeParameters[1]))
18
+ }
19
+ });
20
+ }
21
+ export {
22
+ Entry,
23
+ VecMap
24
+ };
25
+ //# sourceMappingURL=vec_map.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/contracts/payment_kit/deps/sui/vec_map.ts"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\nimport { bcs } from '@haneullabs/haneul/bcs';\nimport type { BcsType } from '@haneullabs/haneul/bcs';\nimport { MoveStruct } from '../../../utils/index.js';\nconst $moduleName = '0x2::vec_map';\n/** An entry in the map */\nexport function Entry<K extends BcsType<any>, V extends BcsType<any>>(...typeParameters: [K, V]) {\n\treturn new MoveStruct({\n\t\tname: `${$moduleName}::Entry<${typeParameters[0].name as K['name']}, ${typeParameters[1].name as V['name']}>`,\n\t\tfields: {\n\t\t\tkey: typeParameters[0],\n\t\t\tvalue: typeParameters[1],\n\t\t},\n\t});\n}\n/**\n * A map data structure backed by a vector. The map is guaranteed not to contain\n * duplicate keys, but entries are _not_ sorted by key--entries are included in\n * insertion order. All operations are O(N) in the size of the map--the intention\n * of this data structure is only to provide the convenience of programming against\n * a map API. Large maps should use handwritten parent/child relationships instead.\n * Maps that need sorted iteration rather than insertion order iteration should\n * also be handwritten.\n */\nexport function VecMap<K extends BcsType<any>, V extends BcsType<any>>(...typeParameters: [K, V]) {\n\treturn new MoveStruct({\n\t\tname: `${$moduleName}::VecMap<${typeParameters[0].name as K['name']}, ${typeParameters[1].name as V['name']}>`,\n\t\tfields: {\n\t\t\tcontents: bcs.vector(Entry(typeParameters[0], typeParameters[1])),\n\t\t},\n\t});\n}\n"],
5
+ "mappings": "AAEA,SAAS,WAAW;AAEpB,SAAS,kBAAkB;AAC3B,MAAM,cAAc;AAEb,SAAS,SAAyD,gBAAwB;AAChG,SAAO,IAAI,WAAW;AAAA,IACrB,MAAM,GAAG,WAAW,WAAW,eAAe,CAAC,EAAE,IAAiB,KAAK,eAAe,CAAC,EAAE,IAAiB;AAAA,IAC1G,QAAQ;AAAA,MACP,KAAK,eAAe,CAAC;AAAA,MACrB,OAAO,eAAe,CAAC;AAAA,IACxB;AAAA,EACD,CAAC;AACF;AAUO,SAAS,UAA0D,gBAAwB;AACjG,SAAO,IAAI,WAAW;AAAA,IACrB,MAAM,GAAG,WAAW,YAAY,eAAe,CAAC,EAAE,IAAiB,KAAK,eAAe,CAAC,EAAE,IAAiB;AAAA,IAC3G,QAAQ;AAAA,MACP,UAAU,IAAI,OAAO,MAAM,eAAe,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;AAAA,IACjE;AAAA,EACD,CAAC;AACF;",
6
+ "names": []
7
+ }