wowok 1.2.2 → 1.2.4

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.
package/dist/protocol.js CHANGED
@@ -3,6 +3,7 @@ import { Ed25519Keypair } from '@mysten/sui.js/keypairs/ed25519';
3
3
  import { fromHEX } from '@mysten/bcs';
4
4
  import { TransactionBlock, Inputs } from '@mysten/sui.js/transactions';
5
5
  import { capitalize, IsValidArray } from './utils';
6
+ import { isValidSuiObjectId } from '@mysten/sui.js/utils';
6
7
  export var MODULES;
7
8
  (function (MODULES) {
8
9
  MODULES["machine"] = "machine";
@@ -56,8 +57,11 @@ export var ValueType;
56
57
  ValueType[ValueType["TYPE_OPTION_U64"] = 114] = "TYPE_OPTION_U64";
57
58
  ValueType[ValueType["TYPE_OPTION_U128"] = 115] = "TYPE_OPTION_U128";
58
59
  ValueType[ValueType["TYPE_OPTION_U256"] = 116] = "TYPE_OPTION_U256";
59
- ValueType[ValueType["TYPE_VEC_U256"] = 117] = "TYPE_VEC_U256";
60
- ValueType[ValueType["TYPE_U256"] = 118] = "TYPE_U256";
60
+ ValueType[ValueType["TYPE_OPTION_STRING"] = 117] = "TYPE_OPTION_STRING";
61
+ ValueType[ValueType["TYPE_VEC_U256"] = 118] = "TYPE_VEC_U256";
62
+ ValueType[ValueType["TYPE_STRING"] = 119] = "TYPE_STRING";
63
+ ValueType[ValueType["TYPE_VEC_STRING"] = 120] = "TYPE_VEC_STRING";
64
+ ValueType[ValueType["TYPE_U256"] = 121] = "TYPE_U256";
61
65
  })(ValueType || (ValueType = {}));
62
66
  export const OperatorTypeArray = Object.values(OperatorType).filter((v) => typeof (v) === 'number');
63
67
  export const ValueTypeArray = Object.values(ValueType).filter((v) => typeof (v) === 'number');
@@ -68,7 +72,7 @@ export const SER_VALUE = [
68
72
  { type: ValueType.TYPE_ADDRESS, name: 'address', description: 'address or object-id. eg:0x6789af' },
69
73
  { type: ValueType.TYPE_U64, name: 'number', description: 'unsigned-64 number. eg:23870233' },
70
74
  { type: ValueType.TYPE_U8, name: 'number', description: 'unsigned-8 number. eg:255' },
71
- { type: ValueType.TYPE_VEC_U8, name: '[number]', description: 'unsigned-8 number array. eg:"wowok"' },
75
+ { type: ValueType.TYPE_VEC_U8, name: '[number]', description: 'unsigned-8 number array. eg:"[1,2,3]"' },
72
76
  { type: ValueType.TYPE_U128, name: 'number', description: 'unsigned-8 number. eg:12348900999' },
73
77
  { type: ValueType.TYPE_VEC_ADDRESS, name: '[address]', description: 'address array. eg:[0x2277f2, 0x3344af]' },
74
78
  { type: ValueType.TYPE_VEC_BOOL, name: '[bool]', description: 'boolean array. eg:[true, false, true]' },
@@ -82,6 +86,9 @@ export const SER_VALUE = [
82
86
  { type: ValueType.TYPE_OPTION_U128, name: 'option', description: 'option of u128. eg:none or u128 value' },
83
87
  { type: ValueType.TYPE_OPTION_U256, name: 'option', description: 'option of u256. eg:none or u256 value' },
84
88
  { type: ValueType.TYPE_VEC_U256, name: '[number]', description: 'unsigned-256 number array. eg:[123, 778888, 42312]' },
89
+ { type: ValueType.TYPE_VEC_STRING, name: '[string]', description: 'ascii string array. eg:["abc", "hi"]' },
90
+ { type: ValueType.TYPE_STRING, name: 'string', description: 'ascii string. eg:"wowok"' },
91
+ { type: ValueType.TYPE_OPTION_STRING, name: 'option', description: 'option of string. eg:none or string value' },
85
92
  { type: ValueType.TYPE_U256, name: 'number', description: 'unsigned-256 number. eg:12345678901233' },
86
93
  ];
87
94
  export var ContextType;
@@ -126,9 +133,9 @@ export class Protocol {
126
133
  case ENTRYPOINT.devnet:
127
134
  break;
128
135
  case ENTRYPOINT.testnet:
129
- this.package = "0x2ac00805aa0ec3c62b575e412108bb295389bbfc86202fd7b73c69dbbb80769a";
130
- this.wowok_object = '0x49d49fb41c63c3f6c838fca20c25741f20aa74a176391685446794bdaa9b7934';
131
- this.entity_object = '0xd21d8d76f553b2db6c6d28a8b2ae3405bec92f2a300676d80fcc004ca40b0a77';
136
+ this.package = "0xd3cab93b07c18d3ef0557fb1f958dc57473c7add42f87c89ea7b7cceaa58e294";
137
+ this.wowok_object = '0x48224d5a1c30f7b0eda5874d794dd695ce929e59247ee4c472d10f3aa5323a24';
138
+ this.entity_object = '0xd0b3861a38359a2aa12523f47499aeab7bc9b83f8948a84c945d6990adbf6a86';
132
139
  this.graphql = 'https://sui-testnet.mystenlabs.com/graphql';
133
140
  break;
134
141
  case ENTRYPOINT.mainnet:
@@ -211,6 +218,26 @@ export class Protocol {
211
218
  static SUI_COIN_TYPE = '0x2::coin::Coin<0x2::sui::SUI>'; // COIN TYPE
212
219
  WOWOK_TOKEN_TYPE = () => { return this.package + '::wowok::WOWOK'; };
213
220
  WOWOK_COIN_TYPE = () => { return '0x2::coin::Coin<' + this.package + '::wowok::WOWOK>'; };
221
+ COINS_TYPE = () => {
222
+ switch (this.network) {
223
+ case ENTRYPOINT.testnet:
224
+ /*return [
225
+ {name:'SUI', type:'0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI', decimals:9},
226
+ {name:'WOW', type:this.WOWOK_TOKEN_TYPE(), decimals:9},
227
+ ];*/
228
+ case ENTRYPOINT.mainnet:
229
+ return [
230
+ { name: 'SUI', type: '0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI', decimals: 9 },
231
+ { name: 'WOW', type: this.WOWOK_TOKEN_TYPE(), decimals: 9 },
232
+ { name: 'USDT', type: '0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c::coin::COIN', decimals: 6 },
233
+ { name: 'USDC', type: '0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf::coin::COIN', decimals: 6 },
234
+ { name: 'WETH', type: '0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5::coin::COIN', decimals: 8 },
235
+ { name: 'WBNB', type: '0xb848cce11ef3a8f62eccea6eb5b35a12c4c2b1ee1af7755d02d7bd6218e8226f::coin::COIN', decimals: 8 },
236
+ ];
237
+ }
238
+ ;
239
+ return [];
240
+ };
214
241
  static CLOCK_OBJECT = Inputs.SharedObjectRef({
215
242
  objectId: "0x6",
216
243
  mutable: false,
@@ -225,6 +252,9 @@ export class Protocol {
225
252
  return IsValidArray(arr, (v) => {
226
253
  if (!v)
227
254
  return false;
255
+ if (typeof (v) === 'string' && !isValidSuiObjectId(v)) {
256
+ return false;
257
+ }
228
258
  return true;
229
259
  });
230
260
  };
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAc,SAAS,EAAoB,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAC9I,OAAO,EAAE,mBAAmB,EAAc,MAAM,cAAc,CAAA;AAK9D,oBAAY,sBAAsB;IAC9B,gBAAgB,IAAI;IACpB,kBAAkB,IAAI;CACzB;AACD,MAAM,MAAM,iBAAiB,GAAG;IAC5B,GAAG,EAAC,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,SAAS,CAAC;IACtB,UAAU,CAAC,EAAE,mBAAmB,CAAC;CACpC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,CAAC;CAC1B,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,UAAU,CAAC;CACxB,CAAA;AAED,qBAAa,UAAU;IACnB,SAAS,CAAC,UAAU,mBAAE;IACtB,SAAS,CAAC,MAAM,EAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,QAAQ,WAAC;IAEnB,UAAU;IACV,OAAO;IAKP,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAC,QAAQ,EAAE,UAAU,EAAC,gBAAgB,EAAE,MAAM,EAAC,SAAS,GAAI,UAAU;IAK1F,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAC,QAAQ,EAAE,UAAU,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,EACzE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,CAAC,EAAC,cAAc,GAAI,UAAU;IAyB/E,MAAM,IAAK,iBAAiB;IAO5B,OAAO;IAkBP,QAAQ,CAAC,IAAI,EAAC,sBAAsB;IAuCpC,MAAM,CAAC,OAAO,EAAC,MAAM,EAAE,GAAG,EAAC,MAAM;IAkBjC,aAAa,CAAC,UAAU,EAAC,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAC,cAAc;IA0B3D,gBAAgB,CAAC,UAAU,EAAC,MAAM,EAAE,EAAE,SAAS,CAAC,EAAC,OAAO,EAAE,QAAQ,CAAC,EAAC,cAAc;IA2ClF,YAAY,CAAC,QAAQ,EAAC,iBAAiB,EAAE,EAAE,QAAQ,CAAC,EAAC,cAAc;IAwCnE,eAAe,CAAC,WAAW,EAAC,MAAM,EAAE,EAAE,SAAS,CAAC,EAAC,OAAO,EAAE,QAAQ,CAAC,EAAC,cAAc;IAyClF,eAAe,CAAC,WAAW,EAAC,MAAM,EAAE,QAAQ,CAAC,EAAC,cAAc;IAoB5D,eAAe,CAAC,WAAW,EAAC,sBAAsB,EAAE,QAAQ,CAAC,EAAC,cAAc;IAe5E,sBAAsB,CAAC,MAAM,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,EAAE,QAAQ,CAAC,EAAC,cAAc;IAyBlF,qBAAqB,CAAC,MAAM,EAAC,MAAM,EAAE,gBAAgB,CAAC,EAAC,MAAM,EAAE,QAAQ,CAAC,EAAC,cAAc;IA6BvF,iBAAiB,CAAC,cAAc,EAAC,gBAAgB;IAajD,MAAM,CAAC,gBAAgB,SAAQ;IAC/B,MAAM,CAAC,cAAc,SAAO;IAC5B,MAAM,CAAC,gBAAgB,SAAU;IACjC,MAAM,CAAC,WAAW,QAAQ,MAAM,aAE/B;IACD,MAAM,CAAC,YAAY,UAAU,UAAU,aAEtC;CACJ"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAc,SAAS,EAAoB,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAC9I,OAAO,EAAE,mBAAmB,EAAc,MAAM,cAAc,CAAA;AAK9D,oBAAY,sBAAsB;IAC9B,gBAAgB,IAAI;IACpB,kBAAkB,IAAI;CACzB;AACD,MAAM,MAAM,iBAAiB,GAAG;IAC5B,GAAG,EAAC,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,SAAS,CAAC;IACtB,UAAU,CAAC,EAAE,mBAAmB,CAAC;CACpC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,CAAC;CAC1B,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,UAAU,CAAC;CACxB,CAAA;AAED,qBAAa,UAAU;IACnB,SAAS,CAAC,UAAU,mBAAE;IACtB,SAAS,CAAC,MAAM,EAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,QAAQ,WAAC;IAEnB,UAAU;IACV,OAAO;IAKP,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAC,QAAQ,EAAE,UAAU,EAAC,gBAAgB,EAAE,MAAM,EAAC,SAAS,GAAI,UAAU;IAK1F,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAC,QAAQ,EAAE,UAAU,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,EACzE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,CAAC,EAAC,cAAc,GAAI,UAAU;IAyB/E,MAAM,IAAK,iBAAiB;IAO5B,OAAO;IASP,QAAQ,CAAC,IAAI,EAAC,sBAAsB;IAuCpC,MAAM,CAAC,OAAO,EAAC,MAAM,EAAE,GAAG,EAAC,MAAM;IAkBjC,aAAa,CAAC,UAAU,EAAC,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAC,cAAc;IA0B3D,gBAAgB,CAAC,UAAU,EAAC,MAAM,EAAE,EAAE,SAAS,CAAC,EAAC,OAAO,EAAE,QAAQ,CAAC,EAAC,cAAc;IA2ClF,YAAY,CAAC,QAAQ,EAAC,iBAAiB,EAAE,EAAE,QAAQ,CAAC,EAAC,cAAc;IAwCnE,eAAe,CAAC,WAAW,EAAC,MAAM,EAAE,EAAE,SAAS,CAAC,EAAC,OAAO,EAAE,QAAQ,CAAC,EAAC,cAAc;IAyClF,eAAe,CAAC,WAAW,EAAC,MAAM,EAAE,QAAQ,CAAC,EAAC,cAAc;IAoB5D,eAAe,CAAC,WAAW,EAAC,sBAAsB,EAAE,QAAQ,CAAC,EAAC,cAAc;IAe5E,sBAAsB,CAAC,MAAM,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,EAAE,QAAQ,CAAC,EAAC,cAAc;IAyBlF,qBAAqB,CAAC,MAAM,EAAC,MAAM,EAAE,gBAAgB,CAAC,EAAC,MAAM,EAAE,QAAQ,CAAC,EAAC,cAAc;IA6BvF,iBAAiB,CAAC,cAAc,EAAC,gBAAgB;IAajD,MAAM,CAAC,gBAAgB,SAAQ;IAC/B,MAAM,CAAC,cAAc,SAAO;IAC5B,MAAM,CAAC,gBAAgB,SAAU;IACjC,MAAM,CAAC,WAAW,QAAQ,MAAM,aAE/B;IACD,MAAM,CAAC,YAAY,UAAU,UAAU,aAEtC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import { BCS } from '@mysten/bcs';
2
- import { Protocol } from './protocol';
2
+ import { Protocol, ValueType } from './protocol';
3
3
  import { Permission } from './permission';
4
4
  import { Bcs, array_unique, IsValidDesription, IsValidAddress, IsValidArray, OptionNone, } from './utils';
5
5
  import { ERROR, Errors } from './exception';
@@ -62,16 +62,6 @@ export class Repository {
62
62
  arguments: [Protocol.TXB_OBJECT(txb, this.object)],
63
63
  });
64
64
  }
65
- /* move to: Entity.mark
66
- mark(like:'like' | 'unlike', resource:Resource) {
67
- if (!Protocol.IsValidObjects([this.object])) return false;
68
- let txb = this.protocol.CurrentSession();
69
- txb.moveCall({
70
- target:this.protocol.RepositoryFn(like) as FnCallType,
71
- arguments: [Protocol.TXB_OBJECT(txb, resource.get_object()), Protocol.TXB_OBJECT(txb, this.object)],
72
- })
73
- }
74
- */
75
65
  add_data(data) {
76
66
  if (!Repository.IsValidName(data.key)) {
77
67
  ERROR(Errors.IsValidName);
@@ -212,7 +202,7 @@ export class Repository {
212
202
  }
213
203
  let txb = this.protocol.CurrentSession();
214
204
  policies.forEach((policy) => {
215
- let permission_index = policy?.permission ? txb.pure(Bcs.getInstance().ser_option_u64(policy.permission)) : OptionNone(txb);
205
+ let permission_index = policy?.permission ? txb.pure(Bcs.getInstance().ser(ValueType.TYPE_OPTION_U64, policy.permission)) : OptionNone(txb);
216
206
  if (passport) {
217
207
  txb.moveCall({
218
208
  target: this.protocol.RepositoryFn('policy_add_with_passport'),
@@ -254,7 +244,7 @@ export class Repository {
254
244
  txb.moveCall({
255
245
  target: this.protocol.RepositoryFn('policy_remove_with_passport'),
256
246
  arguments: [passport, Protocol.TXB_OBJECT(txb, this.object),
257
- txb.pure(Bcs.getInstance().ser_vector_string(array_unique(policy_keys))),
247
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, array_unique(policy_keys))),
258
248
  Protocol.TXB_OBJECT(txb, this.permission)]
259
249
  });
260
250
  }
@@ -270,7 +260,7 @@ export class Repository {
270
260
  txb.moveCall({
271
261
  target: this.protocol.RepositoryFn('policy_remove'),
272
262
  arguments: [Protocol.TXB_OBJECT(txb, this.object),
273
- txb.pure(Bcs.getInstance().ser_vector_string(array_unique(policy_keys))),
263
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, array_unique(policy_keys))),
274
264
  Protocol.TXB_OBJECT(txb, this.permission)]
275
265
  });
276
266
  }
@@ -343,7 +333,7 @@ export class Repository {
343
333
  if (!Permission.IsValidPermissionIndex(permission_index)) {
344
334
  ERROR(Errors.IsValidPermissionIndex);
345
335
  }
346
- index = txb.pure(Bcs.getInstance().ser_option_u64(permission_index));
336
+ index = txb.pure(Bcs.getInstance().ser(ValueType.TYPE_OPTION_U64, permission_index));
347
337
  }
348
338
  if (passport) {
349
339
  txb.moveCall({
package/dist/service.d.ts CHANGED
@@ -30,10 +30,10 @@ export type Customer_RequiredInfo = {
30
30
  customer_info_crypt: string[];
31
31
  };
32
32
  export declare enum BuyRequiredEnum {
33
- address = "address",
34
- phone = "phone",
35
- name = "name",
36
- postcode = "postcode"
33
+ address = "Address",
34
+ phone = "Phone",
35
+ name = "Name",
36
+ postcode = "Postcode"
37
37
  }
38
38
  export type Service_Buy = {
39
39
  item: string;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
package/dist/service.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { BCS } from '@mysten/bcs';
2
2
  import { IsValidArray, IsValidPercent, IsValidName_AllowEmpty, Bcs, array_unique, IsValidArgType, IsValidDesription, IsValidAddress, IsValidEndpoint, OptionNone, IsValidUint, IsValidInt, IsValidName, } from './utils';
3
- import { Protocol } from './protocol';
3
+ import { Protocol, ValueType } from './protocol';
4
4
  import { ERROR, Errors } from './exception';
5
5
  export var Service_Discount_Type;
6
6
  (function (Service_Discount_Type) {
@@ -9,10 +9,10 @@ export var Service_Discount_Type;
9
9
  })(Service_Discount_Type || (Service_Discount_Type = {}));
10
10
  export var BuyRequiredEnum;
11
11
  (function (BuyRequiredEnum) {
12
- BuyRequiredEnum["address"] = "address";
13
- BuyRequiredEnum["phone"] = "phone";
14
- BuyRequiredEnum["name"] = "name";
15
- BuyRequiredEnum["postcode"] = "postcode";
12
+ BuyRequiredEnum["address"] = "Address";
13
+ BuyRequiredEnum["phone"] = "Phone";
14
+ BuyRequiredEnum["name"] = "Name";
15
+ BuyRequiredEnum["postcode"] = "Postcode";
16
16
  })(BuyRequiredEnum || (BuyRequiredEnum = {}));
17
17
  export class Service {
18
18
  pay_token_type;
@@ -50,7 +50,7 @@ export class Service {
50
50
  }
51
51
  let s = new Service(protocol, pay_token_type, permission);
52
52
  let txb = protocol.CurrentSession();
53
- let ep = endpoint ? txb.pure(Bcs.getInstance().ser_option_string(endpoint)) : OptionNone(txb);
53
+ let ep = endpoint ? txb.pure(Bcs.getInstance().ser(ValueType.TYPE_OPTION_STRING, endpoint)) : OptionNone(txb);
54
54
  if (passport) {
55
55
  s.object = txb.moveCall({
56
56
  target: protocol.ServiceFn('new_with_passport'),
@@ -83,16 +83,6 @@ export class Service {
83
83
  typeArguments: [this.pay_token_type]
84
84
  });
85
85
  }
86
- /* move to: Entity.mark
87
- mark(like:'like' | 'unlike', resource:Resource) {
88
- let txb = this.protocol.CurrentSession();
89
- txb.moveCall({
90
- target:this.protocol.ServiceFn(like) as FnCallType,
91
- arguments: [Protocol.TXB_OBJECT(txb, resource.get_object()), Protocol.TXB_OBJECT(txb, this.object)],
92
- typeArguments:[this.pay_token_type]
93
- })
94
- }
95
- */
96
86
  set_description(description, passport) {
97
87
  if (!IsValidDesription(description)) {
98
88
  ERROR(Errors.IsValidDesription);
@@ -477,8 +467,8 @@ export class Service {
477
467
  if (passport) {
478
468
  txb.moveCall({
479
469
  target: this.protocol.ServiceFn('sales_add_with_passport'),
480
- arguments: [passport, Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser_vector_string(names)),
481
- txb.pure(Bcs.getInstance().ser_vector_u64(price)), txb.pure(Bcs.getInstance().ser_vector_u64(stock)),
470
+ arguments: [passport, Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, names)),
471
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, price)), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, stock)),
482
472
  Protocol.TXB_OBJECT(txb, this.permission)],
483
473
  typeArguments: [this.pay_token_type]
484
474
  });
@@ -486,8 +476,8 @@ export class Service {
486
476
  else {
487
477
  txb.moveCall({
488
478
  target: this.protocol.ServiceFn('sales_add'),
489
- arguments: [Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser_vector_string(names)),
490
- txb.pure(Bcs.getInstance().ser_vector_u64(price)), txb.pure(Bcs.getInstance().ser_vector_u64(stock)),
479
+ arguments: [Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, names)),
480
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, price)), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, stock)),
491
481
  Protocol.TXB_OBJECT(txb, this.permission)],
492
482
  typeArguments: [this.pay_token_type]
493
483
  });
@@ -512,7 +502,7 @@ export class Service {
512
502
  else {
513
503
  txb.moveCall({
514
504
  target: this.protocol.ServiceFn('sales_remove_with_passport'),
515
- arguments: [passport, Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser_vector_string(array_unique(sales))),
505
+ arguments: [passport, Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, array_unique(sales))),
516
506
  Protocol.TXB_OBJECT(txb, this.permission)],
517
507
  typeArguments: [this.pay_token_type]
518
508
  });
@@ -529,7 +519,7 @@ export class Service {
529
519
  else {
530
520
  txb.moveCall({
531
521
  target: this.protocol.ServiceFn('sales_remove'),
532
- arguments: [Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser_vector_string(array_unique(sales))),
522
+ arguments: [Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, array_unique(sales))),
533
523
  Protocol.TXB_OBJECT(txb, this.permission)],
534
524
  typeArguments: [this.pay_token_type]
535
525
  });
@@ -563,9 +553,9 @@ export class Service {
563
553
  let txb = this.protocol.CurrentSession();
564
554
  discount_dispatch.forEach((discount) => {
565
555
  let price_greater = discount.discount?.price_greater ?
566
- txb.pure(Bcs.getInstance().ser_option_u64(discount.discount.price_greater)) : OptionNone(txb);
556
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_OPTION_U64, discount.discount.price_greater)) : OptionNone(txb);
567
557
  let time_start = discount.discount?.time_start ?
568
- txb.pure(Bcs.getInstance().ser_option_u64(discount.discount.time_start)) : OptionNone(txb);
558
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_OPTION_U64, discount.discount.time_start)) : OptionNone(txb);
569
559
  if (passport) {
570
560
  txb.moveCall({
571
561
  target: this.protocol.ServiceFn('dicscount_create_with_passport'),
@@ -686,7 +676,7 @@ export class Service {
686
676
  ERROR(Errors.IsValidEndpoint);
687
677
  }
688
678
  let txb = this.protocol.CurrentSession();
689
- let ep = endpoint ? txb.pure(Bcs.getInstance().ser_option_string(endpoint)) : OptionNone(txb);
679
+ let ep = endpoint ? txb.pure(Bcs.getInstance().ser(ValueType.TYPE_OPTION_STRING, endpoint)) : OptionNone(txb);
690
680
  if (passport) {
691
681
  txb.moveCall({
692
682
  target: this.protocol.ServiceFn('endpoint_set_with_passport'),
@@ -748,7 +738,7 @@ export class Service {
748
738
  txb.moveCall({
749
739
  target: this.protocol.ServiceFn('required_set_with_passport'),
750
740
  arguments: [passport, Protocol.TXB_OBJECT(txb, this.object),
751
- txb.pure(Bcs.getInstance().ser_vector_vector_u8(array_unique(customer_required))),
741
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_VEC_U8, array_unique(customer_required))),
752
742
  txb.pure(pubkey, 'vector<u8>'), Protocol.TXB_OBJECT(txb, this.permission)],
753
743
  typeArguments: [this.pay_token_type]
754
744
  });
@@ -757,7 +747,7 @@ export class Service {
757
747
  txb.moveCall({
758
748
  target: this.protocol.ServiceFn('required_set'),
759
749
  arguments: [Protocol.TXB_OBJECT(txb, this.object),
760
- txb.pure(Bcs.getInstance().ser_vector_vector_u8(array_unique(customer_required))),
750
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_VEC_U8, array_unique(customer_required))),
761
751
  txb.pure(pubkey, 'vector<u8>'), Protocol.TXB_OBJECT(txb, this.permission)],
762
752
  typeArguments: [this.pay_token_type]
763
753
  });
@@ -877,7 +867,7 @@ export class Service {
877
867
  arguments: [Protocol.TXB_OBJECT(txb, this.object), Protocol.TXB_OBJECT(txb, order),
878
868
  txb.pure(customer_info_crypto.pubkey, 'vector<u8>'),
879
869
  txb.pure(customer_info_crypto.customer_pubkey, 'vector<u8>'),
880
- txb.pure(Bcs.getInstance().ser_vector_vector_u8(array_unique(customer_info_crypto.customer_info_crypt)))],
870
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_VEC_U8, array_unique(customer_info_crypto.customer_info_crypt)))],
881
871
  typeArguments: [this.pay_token_type]
882
872
  });
883
873
  }
@@ -911,8 +901,8 @@ export class Service {
911
901
  if (discount) {
912
902
  order = txb.moveCall({
913
903
  target: this.protocol.ServiceFn('dicount_buy_with_passport'),
914
- arguments: [passport, Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser_vector_string(name)),
915
- txb.pure(Bcs.getInstance().ser_vector_u64(price)), txb.pure(Bcs.getInstance().ser_vector_u64(stock)),
904
+ arguments: [passport, Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, name)),
905
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, price)), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, stock)),
916
906
  Protocol.TXB_OBJECT(txb, coin), Protocol.TXB_OBJECT(txb, discount), txb.object(Protocol.CLOCK_OBJECT)],
917
907
  typeArguments: [this.pay_token_type]
918
908
  });
@@ -920,9 +910,9 @@ export class Service {
920
910
  else {
921
911
  order = txb.moveCall({
922
912
  target: this.protocol.ServiceFn('buy_with_passport'),
923
- arguments: [passport, Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser_vector_string(name)),
924
- txb.pure(Bcs.getInstance().ser_vector_u64(price)),
925
- txb.pure(Bcs.getInstance().ser_vector_u64(stock)),
913
+ arguments: [passport, Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, name)),
914
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, price)),
915
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, stock)),
926
916
  Protocol.TXB_OBJECT(txb, coin)],
927
917
  typeArguments: [this.pay_token_type]
928
918
  });
@@ -932,9 +922,9 @@ export class Service {
932
922
  if (discount) {
933
923
  order = txb.moveCall({
934
924
  target: this.protocol.ServiceFn('disoucnt_buy'),
935
- arguments: [Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser_vector_string(name)),
936
- txb.pure(Bcs.getInstance().ser_vector_u64(price)),
937
- txb.pure(Bcs.getInstance().ser_vector_u64(stock)),
925
+ arguments: [Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, name)),
926
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, price)),
927
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, stock)),
938
928
  Protocol.TXB_OBJECT(txb, coin),
939
929
  Protocol.TXB_OBJECT(txb, discount), txb.object(Protocol.CLOCK_OBJECT)],
940
930
  typeArguments: [this.pay_token_type]
@@ -943,9 +933,9 @@ export class Service {
943
933
  else {
944
934
  order = txb.moveCall({
945
935
  target: this.protocol.ServiceFn('buy'),
946
- arguments: [Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser_vector_string(name)),
947
- txb.pure(Bcs.getInstance().ser_vector_u64(price)),
948
- txb.pure(Bcs.getInstance().ser_vector_u64(stock)),
936
+ arguments: [Protocol.TXB_OBJECT(txb, this.object), txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_STRING, name)),
937
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, price)),
938
+ txb.pure(Bcs.getInstance().ser(ValueType.TYPE_VEC_U64, stock)),
949
939
  Protocol.TXB_OBJECT(txb, coin)],
950
940
  typeArguments: [this.pay_token_type]
951
941
  });
package/dist/utils.d.ts CHANGED
@@ -1,7 +1,12 @@
1
- import { BCS, TypeName, StructTypeDefinition } from '@mysten/bcs';
1
+ import { BCS } from '@mysten/bcs';
2
2
  import { TransactionBlock, TransactionArgument } from '@mysten/sui.js/transactions';
3
+ import { ValueType } from './protocol';
3
4
  export declare const OPTION_NONE = 0;
4
- export declare const readOption: (arr: number[], de: string) => {
5
+ export declare const readOption: (arr: number[], de: ValueType) => {
6
+ bNone: boolean;
7
+ value: any;
8
+ };
9
+ export declare const readOptionString: (arr: number[]) => {
5
10
  bNone: boolean;
6
11
  value: any;
7
12
  };
@@ -24,25 +29,8 @@ export declare class Bcs {
24
29
  private static _instance;
25
30
  private constructor();
26
31
  static getInstance(): Bcs;
27
- ser_option_string(data: string): Uint8Array;
28
- ser_option_u64(data: number): Uint8Array;
29
- ser_option_address(data: string): Uint8Array;
30
- ser_vector_string(data: string[]): Uint8Array;
31
- ser_vector_vector_u8(data: string[]): Uint8Array;
32
- ser_vector_u64(data: number[]): Uint8Array;
33
- ser_vector_u8(data: number[]): Uint8Array;
34
- ser_vector_address(data: number[]): Uint8Array;
35
- ser_vector_bool(data: number[]): Uint8Array;
36
- ser_vector_u128(data: number[]): Uint8Array;
37
- ser_address(data: string): Uint8Array;
38
- ser_bool(data: boolean): Uint8Array;
39
- ser_u8(data: number): Uint8Array;
40
- ser_u64(data: number): Uint8Array;
41
- ser_u128(data: number): Uint8Array;
42
- ser_u256(data: number): Uint8Array;
43
- ser_string(data: string): Uint8Array;
44
- ser(type: TypeName | StructTypeDefinition, data: Uint8Array): Uint8Array;
45
- de(type: TypeName | StructTypeDefinition, data: Uint8Array): any;
32
+ ser(type: ValueType, data: Uint8Array | any): Uint8Array;
33
+ de(type: ValueType, data: Uint8Array | any): any;
46
34
  }
47
35
  export declare function stringToUint8Array(str: string): Uint8Array;
48
36
  export declare function numToUint8Array(num: number): Uint8Array;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/dist/utils.js CHANGED
@@ -1,5 +1,7 @@
1
1
  import { BCS, getSuiMoveConfig } from '@mysten/bcs';
2
2
  import { ERROR, Errors } from './exception';
3
+ import { isValidSuiAddress } from '@mysten/sui.js/utils';
4
+ import { ValueType } from './protocol';
3
5
  export const OPTION_NONE = 0;
4
6
  export const readOption = (arr, de) => {
5
7
  let o = arr.splice(0, 1);
@@ -14,6 +16,22 @@ export const readOption = (arr, de) => {
14
16
  return { bNone: true, value: OPTION_NONE };
15
17
  }
16
18
  };
19
+ export const readOptionString = (arr) => {
20
+ let o = arr.splice(0, 1);
21
+ if (o[0] == 1) { // true
22
+ let r = ulebDecode(Uint8Array.from(arr));
23
+ let value = Bcs.getInstance().de(ValueType.TYPE_STRING, Uint8Array.from(arr));
24
+ arr.splice(0, r.value + r.length);
25
+ return { bNone: false, value: value };
26
+ }
27
+ else if (o[0] == 0) {
28
+ return { bNone: true, value: OPTION_NONE };
29
+ }
30
+ else {
31
+ ERROR(Errors.Fail, 'readOption: option invalid');
32
+ return { bNone: true, value: OPTION_NONE };
33
+ }
34
+ };
17
35
  export const ulebDecode = (arr) => {
18
36
  let total = 0;
19
37
  let shift = 0;
@@ -112,62 +130,106 @@ export class Bcs {
112
130
  ;
113
131
  return Bcs._instance;
114
132
  }
115
- ser_option_string(data) {
116
- return this.bcs.ser('Option<string>', { 'some': data }).toBytes();
117
- }
118
- ser_option_u64(data) {
119
- return this.bcs.ser('Option<u64>', { 'some': data }).toBytes();
120
- }
121
- ser_option_address(data) {
122
- return this.bcs.ser('Option<address>', { 'some': data }).toBytes();
123
- }
124
- ser_vector_string(data) {
125
- return this.bcs.ser('vector<string>', data).toBytes();
126
- }
127
- ser_vector_vector_u8(data) {
128
- return this.bcs.ser('vector<vector<u8>>', data).toBytes();
129
- }
130
- ser_vector_u64(data) {
131
- return this.bcs.ser('vector<u64>', data).toBytes();
132
- }
133
- ser_vector_u8(data) {
134
- return this.bcs.ser('vector<u8>', data).toBytes();
135
- }
136
- ser_vector_address(data) {
137
- return this.bcs.ser('vector<address>', data).toBytes();
138
- }
139
- ser_vector_bool(data) {
140
- return this.bcs.ser('vector<bool>', data).toBytes();
141
- }
142
- ser_vector_u128(data) {
143
- return this.bcs.ser('vector<u128>', data).toBytes();
144
- }
145
- ser_address(data) {
146
- return this.bcs.ser(BCS.ADDRESS, data).toBytes();
147
- }
148
- ser_bool(data) {
149
- return this.bcs.ser(BCS.BOOL, data).toBytes();
150
- }
151
- ser_u8(data) {
152
- return this.bcs.ser(BCS.U8, data).toBytes();
153
- }
154
- ser_u64(data) {
155
- return this.bcs.ser(BCS.U64, data).toBytes();
156
- }
157
- ser_u128(data) {
158
- return this.bcs.ser(BCS.U128, data).toBytes();
159
- }
160
- ser_u256(data) {
161
- return this.bcs.ser(BCS.U256, data).toBytes();
162
- }
163
- ser_string(data) {
164
- return this.bcs.ser(BCS.STRING, data).toBytes();
165
- }
166
133
  ser(type, data) {
167
- return this.bcs.ser(type, data).toBytes();
134
+ switch (type) {
135
+ case ValueType.TYPE_BOOL:
136
+ return this.bcs.ser(BCS.BOOL, data).toBytes();
137
+ case ValueType.TYPE_ADDRESS:
138
+ return this.bcs.ser(BCS.ADDRESS, data).toBytes();
139
+ case ValueType.TYPE_U64:
140
+ return this.bcs.ser(BCS.U64, data).toBytes();
141
+ case ValueType.TYPE_U8:
142
+ return this.bcs.ser(BCS.U8, data).toBytes();
143
+ case ValueType.TYPE_VEC_U8:
144
+ return this.bcs.ser('vector<u8>', data).toBytes();
145
+ case ValueType.TYPE_U128:
146
+ return this.bcs.ser(BCS.U128, data).toBytes();
147
+ case ValueType.TYPE_VEC_ADDRESS:
148
+ return this.bcs.ser('vector<address>', data).toBytes();
149
+ case ValueType.TYPE_VEC_BOOL:
150
+ return this.bcs.ser('vector<bool>', data).toBytes();
151
+ case ValueType.TYPE_VEC_VEC_U8:
152
+ return this.bcs.ser('vector<vector<u8>>', data).toBytes();
153
+ case ValueType.TYPE_VEC_U64:
154
+ return this.bcs.ser('vector<u64>', data).toBytes();
155
+ case ValueType.TYPE_VEC_U128:
156
+ return this.bcs.ser('vector<u128>', data).toBytes();
157
+ case ValueType.TYPE_OPTION_ADDRESS:
158
+ return this.bcs.ser('Option<address>', { 'some': data }).toBytes();
159
+ case ValueType.TYPE_OPTION_BOOL:
160
+ return this.bcs.ser('Option<bool>', { 'some': data }).toBytes();
161
+ case ValueType.TYPE_OPTION_U8:
162
+ return this.bcs.ser('Option<u8>', { 'some': data }).toBytes();
163
+ case ValueType.TYPE_OPTION_U64:
164
+ return this.bcs.ser('Option<u64>', { 'some': data }).toBytes();
165
+ case ValueType.TYPE_OPTION_U128:
166
+ return this.bcs.ser('Option<u128>', { 'some': data }).toBytes();
167
+ case ValueType.TYPE_OPTION_U256:
168
+ return this.bcs.ser('Option<u256>', { 'some': data }).toBytes();
169
+ case ValueType.TYPE_OPTION_STRING:
170
+ return this.bcs.ser('Option<string>', { 'some': data }).toBytes();
171
+ case ValueType.TYPE_VEC_U256:
172
+ return this.bcs.ser('vector<u256>', data).toBytes();
173
+ case ValueType.TYPE_U256:
174
+ return this.bcs.ser(BCS.U256, data).toBytes();
175
+ case ValueType.TYPE_STRING:
176
+ return this.bcs.ser(BCS.STRING, data).toBytes();
177
+ case ValueType.TYPE_VEC_STRING:
178
+ return this.bcs.ser('vector<string>', data).toBytes();
179
+ default:
180
+ ERROR(Errors.bcsTypeInvalid, 'ser');
181
+ }
182
+ return new Uint8Array();
168
183
  }
169
184
  de(type, data) {
170
- return this.bcs.de(type, data);
185
+ switch (type) {
186
+ case ValueType.TYPE_BOOL:
187
+ return this.bcs.de(BCS.BOOL, data).toBytes();
188
+ case ValueType.TYPE_ADDRESS:
189
+ return this.bcs.de(BCS.ADDRESS, data).toBytes();
190
+ case ValueType.TYPE_U64:
191
+ return this.bcs.de(BCS.U64, data).toBytes();
192
+ case ValueType.TYPE_U8:
193
+ return this.bcs.de(BCS.U8, data).toBytes();
194
+ case ValueType.TYPE_VEC_U8:
195
+ return this.bcs.de('vector<u8>', data).toBytes();
196
+ case ValueType.TYPE_U128:
197
+ return this.bcs.de(BCS.U128, data).toBytes();
198
+ case ValueType.TYPE_VEC_ADDRESS:
199
+ return this.bcs.de('vector<address>', data).toBytes();
200
+ case ValueType.TYPE_VEC_BOOL:
201
+ return this.bcs.de('vector<bool>', data).toBytes();
202
+ case ValueType.TYPE_VEC_VEC_U8:
203
+ return this.bcs.de('vector<vector<u8>>', data).toBytes();
204
+ case ValueType.TYPE_VEC_U64:
205
+ return this.bcs.de('vector<u64>', data).toBytes();
206
+ case ValueType.TYPE_VEC_U128:
207
+ return this.bcs.de('vector<u128>', data).toBytes();
208
+ case ValueType.TYPE_OPTION_ADDRESS:
209
+ return this.bcs.de('Option<address>', data).toBytes();
210
+ case ValueType.TYPE_OPTION_BOOL:
211
+ return this.bcs.de('Option<bool>', data).toBytes();
212
+ case ValueType.TYPE_OPTION_U8:
213
+ return this.bcs.de('Option<u8>', data).toBytes();
214
+ case ValueType.TYPE_OPTION_U64:
215
+ return this.bcs.de('Option<u64>', data).toBytes();
216
+ case ValueType.TYPE_OPTION_U128:
217
+ return this.bcs.de('Option<u128>', data).toBytes();
218
+ case ValueType.TYPE_OPTION_U256:
219
+ return this.bcs.de('Option<u256>', data).toBytes();
220
+ case ValueType.TYPE_OPTION_STRING:
221
+ return this.bcs.de('Option<string>', data).toBytes();
222
+ case ValueType.TYPE_VEC_U256:
223
+ return this.bcs.de('vector<u256>', data).toBytes();
224
+ case ValueType.TYPE_STRING:
225
+ return this.bcs.de(BCS.STRING, data).toBytes();
226
+ case ValueType.TYPE_VEC_STRING:
227
+ return this.bcs.de('vector<string>', data).toBytes();
228
+ case ValueType.TYPE_U256:
229
+ return this.bcs.de(BCS.U256, data).toBytes();
230
+ default:
231
+ ERROR(Errors.bcsTypeInvalid, 'de');
232
+ }
171
233
  }
172
234
  }
173
235
  export function stringToUint8Array(str) {
@@ -219,7 +281,7 @@ export const IsValidName = (name) => { if (!name)
219
281
  export const IsValidName_AllowEmpty = (name) => { return name.length <= MAX_NAME_LENGTH; };
220
282
  export const IsValidEndpoint = (endpoint) => { if (!endpoint)
221
283
  return false; return endpoint.length <= MAX_ENDPOINT_LENGTH; };
222
- export const IsValidAddress = (addr) => { if (!addr)
284
+ export const IsValidAddress = (addr) => { if (!addr || !isValidSuiAddress(addr))
223
285
  return false; return true; };
224
286
  export const IsValidArgType = (argType) => { if (!argType)
225
287
  return false; return argType.length != 0; };