@cartridge/controller 0.7.2 → 0.7.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/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { getChecksumAddress, typedData, TypedDataRevision, hash, num, constants, shortString, WalletAccount } from 'starknet';
1
+ import { CallData, addAddressPadding, getChecksumAddress, typedData, TypedDataRevision, hash, constants, shortString, num, WalletAccount } from 'starknet';
2
2
  import { connectToChild } from '@cartridge/penpal';
3
3
  import { Permission } from '@starknet-io/types-js';
4
4
 
@@ -33,6 +33,15 @@ function safeObjectAccess(obj, prop) {
33
33
  validatePropertyName(prop);
34
34
  return obj[prop];
35
35
  }
36
+ function normalizeCalls(calls) {
37
+ return toArray(calls).map((call) => {
38
+ return {
39
+ entrypoint: call.entrypoint,
40
+ contractAddress: addAddressPadding(call.contractAddress),
41
+ calldata: CallData.toHex(call.calldata)
42
+ };
43
+ });
44
+ }
36
45
  function toSessionPolicies(policies) {
37
46
  return Array.isArray(policies) ? policies.reduce(
38
47
  (prev, p) => {
@@ -156,23 +165,23 @@ var ControllerAccount = class extends WalletAccount {
156
165
  return new Promise(async (resolve, reject) => {
157
166
  const sessionExecute = await this.keychain.execute(
158
167
  calls,
159
- undefined,
160
- undefined,
168
+ void 0,
169
+ void 0,
161
170
  false
162
171
  );
163
172
  if (sessionExecute.code === "SUCCESS" /* SUCCESS */) {
164
173
  resolve(sessionExecute);
165
174
  return;
166
175
  }
167
- if (this.options?.propagateSessionErrors) {
176
+ if (this.options?.propagateSessionErrors && sessionExecute.code !== "USER_INTERACTION_REQUIRED" /* USER_INTERACTION_REQUIRED */) {
168
177
  reject(sessionExecute.error);
169
178
  return;
170
179
  }
171
180
  this.modal.open();
172
181
  const manualExecute = await this.keychain.execute(
173
182
  calls,
174
- undefined,
175
- undefined,
183
+ void 0,
184
+ void 0,
176
185
  true,
177
186
  sessionExecute.error
178
187
  );
@@ -396,90 +405,7 @@ var NotReadyToConnect = class _NotReadyToConnect extends Error {
396
405
 
397
406
  // package.json
398
407
  var package_default = {
399
- name: "@cartridge/controller",
400
- version: "0.7.2",
401
- description: "Cartridge Controller",
402
- module: "dist/index.js",
403
- types: "dist/index.d.ts",
404
- type: "module",
405
- scripts: {
406
- "build:deps": "tsup",
407
- build: "pnpm build:deps",
408
- format: 'prettier --write "src/**/*.ts"',
409
- "format:check": 'prettier --check "src/**/*.ts"',
410
- test: "jest",
411
- version: "pnpm pkg get version"
412
- },
413
- exports: {
414
- ".": {
415
- types: "./dist/index.d.ts",
416
- import: "./dist/index.js",
417
- require: "./dist/index.cjs"
418
- },
419
- "./session": {
420
- types: "./dist/session/index.d.ts",
421
- import: "./dist/session/index.js",
422
- require: "./dist/session/index.cjs"
423
- },
424
- "./session/node": {
425
- types: "./dist/node/index.d.ts",
426
- import: "./dist/node/index.js",
427
- require: "./dist/node/index.cjs"
428
- },
429
- "./provider": {
430
- types: "./dist/provider/index.d.ts",
431
- import: "./dist/provider/index.js"
432
- },
433
- "./types": {
434
- types: "./dist/types/index.d.ts",
435
- import: "./dist/types/index.js"
436
- }
437
- },
438
- tsup: {
439
- entry: [
440
- "src/index.ts",
441
- "src/controller.ts",
442
- "src/lookup.ts",
443
- "src/session/index.ts",
444
- "src/node/index.ts"
445
- ],
446
- format: [
447
- "esm",
448
- "cjs"
449
- ],
450
- splitting: false,
451
- sourcemap: true,
452
- clean: true,
453
- dts: true,
454
- treeshake: {
455
- preset: "recommended"
456
- },
457
- exports: "named"
458
- },
459
- peerDependencies: {
460
- starknet: "catalog:",
461
- open: "^10.1.0"
462
- },
463
- dependencies: {
464
- "@cartridge/account-wasm": "workspace:*",
465
- "@cartridge/penpal": "catalog:",
466
- "@starknet-io/types-js": "catalog:",
467
- "@telegram-apps/sdk": "^2.4.0",
468
- base64url: "catalog:",
469
- "cbor-x": "^1.5.0",
470
- "fast-deep-equal": "catalog:"
471
- },
472
- devDependencies: {
473
- "@cartridge/tsconfig": "workspace:*",
474
- "@types/jest": "^29.5.14",
475
- "@types/node": "catalog:",
476
- jest: "^29.7.0",
477
- prettier: "catalog:",
478
- "ts-jest": "^29.2.5",
479
- tsup: "catalog:",
480
- typescript: "catalog:"
481
- }
482
- };
408
+ version: "0.7.4"};
483
409
 
484
410
  // src/icon.ts
485
411
  var icon = "data:image/png;base64,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";
@@ -656,8 +582,6 @@ var BaseProvider = class {
656
582
  });
657
583
  }
658
584
  };
659
-
660
- // src/controller.ts
661
585
  var ControllerProvider = class extends BaseProvider {
662
586
  keychain;
663
587
  profile;
@@ -790,6 +714,7 @@ var ControllerProvider = class extends BaseProvider {
790
714
  return true;
791
715
  }
792
716
  await this.keychain.switchChain(this.rpcUrl());
717
+ await this.profile?.switchChain(this.rpcUrl());
793
718
  } catch (e) {
794
719
  console.error(e);
795
720
  return false;
@@ -811,7 +736,7 @@ var ControllerProvider = class extends BaseProvider {
811
736
  await document.requestStorageAccess();
812
737
  }
813
738
  }
814
- this.account = undefined;
739
+ this.account = void 0;
815
740
  return this.keychain.disconnect();
816
741
  }
817
742
  async openProfile(tab = "inventory") {
@@ -877,7 +802,16 @@ var ControllerProvider = class extends BaseProvider {
877
802
  return this.keychain.revoke(origin);
878
803
  }
879
804
  rpcUrl() {
880
- return this.chains.get(this.selectedChain).rpcUrl;
805
+ const chain = this.chains.get(this.selectedChain);
806
+ if (!chain) {
807
+ const availableChains = Array.from(this.chains.keys()).map(
808
+ (chain2) => shortString.decodeShortString(chain2)
809
+ );
810
+ throw new Error(
811
+ `Chain not found: ${shortString.decodeShortString(this.selectedChain)}. Available chains: ${availableChains.join(", ")}`
812
+ );
813
+ }
814
+ return chain.rpcUrl;
881
815
  }
882
816
  username() {
883
817
  if (!this.keychain) {
@@ -915,7 +849,7 @@ var ControllerProvider = class extends BaseProvider {
915
849
  this.iframes.profile?.sendBackward();
916
850
  this.iframes.keychain.open();
917
851
  this.iframes.profile?.close();
918
- const res = await this.keychain.execute(calls, undefined, undefined, true);
852
+ const res = await this.keychain.execute(calls, void 0, void 0, true);
919
853
  this.iframes.profile?.open();
920
854
  this.iframes.keychain.close();
921
855
  this.iframes.profile?.sendForward();
@@ -976,7 +910,7 @@ async function lookupUsernames(usernames) {
976
910
  });
977
911
  }
978
912
  return new Map(
979
- usernames.map((name) => [name, cache.get(name)]).filter((entry) => entry[1] !== undefined)
913
+ usernames.map((name) => [name, cache.get(name)]).filter((entry) => entry[1] !== void 0)
980
914
  );
981
915
  }
982
916
  async function lookupAddresses(addresses) {
@@ -991,11 +925,11 @@ async function lookupAddresses(addresses) {
991
925
  });
992
926
  }
993
927
  return new Map(
994
- addresses.map((addr) => [addr, cache.get(addr)]).filter((entry) => entry[1] !== undefined)
928
+ addresses.map((addr) => [addr, cache.get(addr)]).filter((entry) => entry[1] !== void 0)
995
929
  );
996
930
  }
997
931
 
998
- // ../../node_modules/.pnpm/@cartridge+presets@https+++codeload.github.com+cartridge-gg+presets+tar.gz+aa3a218/node_modules/@cartridge/presets/dist/index.js
932
+ // ../../node_modules/.pnpm/@cartridge+presets@https+++codeload.github.com+cartridge-gg+presets+tar.gz+c7e6fb7/node_modules/@cartridge/presets/dist/index.js
999
933
  var configs = {
1000
934
  "blob-arena": {
1001
935
  origin: "blobarena.xyz",
@@ -1020,7 +954,7 @@ var configs = {
1020
954
  }
1021
955
  },
1022
956
  "dark-shuffle": {
1023
- origin: "darkshuffle.io",
957
+ origin: ["darkshuffle.io", "darkshuffle.dev"],
1024
958
  theme: {
1025
959
  colors: {
1026
960
  primary: "#F59100"
@@ -1028,6 +962,67 @@ var configs = {
1028
962
  cover: "https://static.cartridge.gg/presets/dark-shuffle/cover.png",
1029
963
  icon: "https://static.cartridge.gg/presets/dark-shuffle/icon.svg",
1030
964
  name: "Dark Shuffle"
965
+ },
966
+ policies: {
967
+ contracts: {
968
+ "0x02ffe2edea10d1622b9cc65ce18b441755f322253e24e6cd862518ab037009f5": {
969
+ name: "game_systems",
970
+ methods: [
971
+ {
972
+ entrypoint: "mint"
973
+ },
974
+ {
975
+ entrypoint: "start_game"
976
+ }
977
+ ]
978
+ },
979
+ "0x04f6fe2579cbce8bc7e4a960a2c07ff7ef82882b9d179b3e9d8d18c6236d80ee": {
980
+ name: "battle_systems",
981
+ methods: [
982
+ {
983
+ entrypoint: "battle_actions"
984
+ }
985
+ ]
986
+ },
987
+ "0x06f83dba9eaaa4a3615914b20a4d270d25bcd2fd8cd61dca0d5381575d581d15": {
988
+ name: "draft_systems",
989
+ methods: [
990
+ {
991
+ entrypoint: "pick_card"
992
+ }
993
+ ]
994
+ },
995
+ "0x05d11631f860069377142f87303f2b741803d1e811f894c3f43b0e207088f9b3": {
996
+ name: "map_systems",
997
+ methods: [
998
+ {
999
+ entrypoint: "generate_tree"
1000
+ },
1001
+ {
1002
+ entrypoint: "select_node"
1003
+ }
1004
+ ]
1005
+ },
1006
+ "0x3d445b63c8653983b8a5b8c5c0e52f7b944f9ce3b3ecf2cb208921e400feec1": {
1007
+ name: "tournament_component",
1008
+ methods: [
1009
+ {
1010
+ entrypoint: "enter_tournament"
1011
+ }
1012
+ ]
1013
+ }
1014
+ }
1015
+ }
1016
+ },
1017
+ dominion: {
1018
+ origin: "https://dominion.fun",
1019
+ theme: {
1020
+ colors: {
1021
+ primary: "#19cfff"
1022
+ },
1023
+ cover: "https://static.cartridge.gg/presets/dominion/cover.png",
1024
+ icon: "https://static.cartridge.gg/presets/dominion/icon.svg",
1025
+ name: "Dominion"
1031
1026
  }
1032
1027
  },
1033
1028
  "dope-wars": {
@@ -1116,6 +1111,211 @@ var configs = {
1116
1111
  },
1117
1112
  dragark: {
1118
1113
  origin: "dragark.net",
1114
+ policies: {
1115
+ contracts: {
1116
+ "0x62525c1337037a6a50a61f12045630a271758a350e57616e79a6ed14004ce74": {
1117
+ name: "Achievement Systems",
1118
+ description: "Allows you to interact with achievement features.",
1119
+ methods: [
1120
+ {
1121
+ name: "Claim Achievement Reward",
1122
+ description: "A method to claim your achievement reward.",
1123
+ entrypoint: "claim_achievement_reward"
1124
+ }
1125
+ ]
1126
+ },
1127
+ "0xa5a3284a1e3ce9887b50876acee14a1af9705659b3ad053deff80d84c5555a": {
1128
+ name: "Dragon Systems",
1129
+ description: "Allows you to interact with dragon features.",
1130
+ methods: [
1131
+ {
1132
+ name: "Activate Dragon",
1133
+ description: "A method to activate the Dragark NFT into the game.",
1134
+ entrypoint: "activate_dragon"
1135
+ },
1136
+ {
1137
+ name: "Deactivate Dragon",
1138
+ description: "A method to deactivate Dragark NFT out of the game.",
1139
+ entrypoint: "deactivate_dragon"
1140
+ },
1141
+ {
1142
+ name: "Claim Default Dragon",
1143
+ description: "A method to claim the default Dragark.",
1144
+ entrypoint: "claim_default_dragon"
1145
+ },
1146
+ {
1147
+ name: "Upgrade Dragon",
1148
+ description: "A method to upgrade the Dragark's level.",
1149
+ entrypoint: "upgrade_dragon"
1150
+ }
1151
+ ]
1152
+ },
1153
+ "0x456e9a70c1a8ce2e340592d1a885f2ac152349d785a6aef4d640d9a09f9a1bd": {
1154
+ name: "Island Systems",
1155
+ description: "Allows you to interact with island features.",
1156
+ methods: [
1157
+ {
1158
+ name: "Claim Resources",
1159
+ description: "A method to claim the island's rescources.",
1160
+ entrypoint: "claim_resources"
1161
+ },
1162
+ {
1163
+ name: "Claim Resources Islands",
1164
+ description: "A method to claim rescources on multiple islands.",
1165
+ entrypoint: "claim_resources_islands"
1166
+ }
1167
+ ]
1168
+ },
1169
+ "0x2f77a88ac64fd1473ea067ea176ae3805224a2ba5173c63c77d0f214c01ac5d": {
1170
+ name: "Journey Systems",
1171
+ description: "Allows you to interact with journey features.",
1172
+ methods: [
1173
+ {
1174
+ name: "Start Journey",
1175
+ description: "A method to start a new journey to other island.",
1176
+ entrypoint: "start_journey"
1177
+ },
1178
+ {
1179
+ name: "Finish Journey",
1180
+ description: "A method to finish a started journey.",
1181
+ entrypoint: "finish_journey"
1182
+ }
1183
+ ]
1184
+ },
1185
+ "0x1ca130b614f063a24dafad53db11cbb914fa7cff2eac23df1c32f5ff71a8ec2": {
1186
+ name: "Map Systems",
1187
+ description: "Allows you to interact with map features.",
1188
+ methods: [
1189
+ {
1190
+ name: "Join Map",
1191
+ description: "A method to join the map.",
1192
+ entrypoint: "join_map"
1193
+ },
1194
+ {
1195
+ name: "Rejoin Map",
1196
+ description: "A method to rejoin the map.",
1197
+ entrypoint: "re_join_map"
1198
+ }
1199
+ ]
1200
+ },
1201
+ "0x272741bbe4abc02c8be4b094ca642e1df573e99e06f85f649bc35dd26ae4543": {
1202
+ name: "Mission Systems",
1203
+ description: "Allows you to interact with mission features.",
1204
+ methods: [
1205
+ {
1206
+ name: "Claim Mission Reward",
1207
+ description: "A method to claim your mission reward.",
1208
+ entrypoint: "claim_mission_reward"
1209
+ }
1210
+ ]
1211
+ },
1212
+ "0x54ad7af1fc62a786c9023d9f3ef8e8abf8cf332649b784188c1b25d2cb384b2": {
1213
+ name: "Player Systems",
1214
+ description: "Allows you to interact with player features.",
1215
+ methods: [
1216
+ {
1217
+ name: "Buy Energy",
1218
+ description: "A method to buy energy used in scouting the map.",
1219
+ entrypoint: "buy_energy"
1220
+ },
1221
+ {
1222
+ name: "Claim Reward",
1223
+ description: "A method to claim your reward.",
1224
+ entrypoint: "claim_reward"
1225
+ },
1226
+ {
1227
+ name: "Upgrade Account Level",
1228
+ description: "A method to upgrade your account level.",
1229
+ entrypoint: "upgrade_account_level"
1230
+ },
1231
+ {
1232
+ name: "Upgrade Invitation Level",
1233
+ description: "A method to upgrade your invitation level.",
1234
+ entrypoint: "upgrade_invitation_level"
1235
+ },
1236
+ {
1237
+ name: "Redeem Invite Code",
1238
+ description: "A method to redeem invite code.",
1239
+ entrypoint: "redeem_invite_code"
1240
+ },
1241
+ {
1242
+ name: "Buy Resources Pack",
1243
+ description: "A method to buy resources pack.",
1244
+ entrypoint: "buy_resources_pack"
1245
+ },
1246
+ {
1247
+ name: "Activate Element NFT",
1248
+ description: "A method to activate the Element NFT into the game.",
1249
+ entrypoint: "activate_element_nft"
1250
+ },
1251
+ {
1252
+ name: "Claim Pool Share Reward",
1253
+ description: "A method to claim your Pool Share reward.",
1254
+ entrypoint: "claim_pool_share_reward"
1255
+ }
1256
+ ]
1257
+ },
1258
+ "0x68717880bd76fda6790e895e937e2c638213e7b9aa07385231bbf17dfe8a78c": {
1259
+ name: "Scout Systems",
1260
+ description: "Allows you to interact with scout features.",
1261
+ methods: [
1262
+ {
1263
+ name: "Scout",
1264
+ description: "A method to scout the map.",
1265
+ entrypoint: "scout"
1266
+ }
1267
+ ]
1268
+ },
1269
+ "0x14705481d28fab7bb37d6cb19d3392d39f838a1d5572b8c8f18e85e0c4b8918": {
1270
+ name: "Shield Systems",
1271
+ description: "Allows you to interact with shield features.",
1272
+ methods: [
1273
+ {
1274
+ name: "Activate Shield",
1275
+ description: "A method to activate a shield to protect your island.",
1276
+ entrypoint: "activate_shield"
1277
+ },
1278
+ {
1279
+ name: "Deactivate Shield",
1280
+ description: "A method to deactivate a shield from your island.",
1281
+ entrypoint: "deactivate_shield"
1282
+ },
1283
+ {
1284
+ name: "Buy Shield",
1285
+ description: "A method to buy a shield.",
1286
+ entrypoint: "buy_shield"
1287
+ }
1288
+ ]
1289
+ },
1290
+ "0x23d6a41c06e2d7b60437ba4da3eca857cf9a0b94f3548396829365a0a299c63": {
1291
+ name: "Star Shop Systems",
1292
+ description: "Allows you to interact with star shop features.",
1293
+ methods: [
1294
+ {
1295
+ name: "Buy Item Star Shop",
1296
+ description: "A method to buy item from the Star Shop.",
1297
+ entrypoint: "buy_item_star_shop"
1298
+ }
1299
+ ]
1300
+ },
1301
+ "0x511a78a1c4b33bedc4ff7d9b37eb7481bcdff77c5c2cb6f67390d43657749d0": {
1302
+ name: "Treasure Hunt Systems",
1303
+ description: "Allows you to interact with treasure hunt features.",
1304
+ methods: [
1305
+ {
1306
+ name: "Insert Dragon Treasure Hunt",
1307
+ description: "A method to insert your Dragarks to start a new treasure hunt.",
1308
+ entrypoint: "insert_dragon_treasure_hunt"
1309
+ },
1310
+ {
1311
+ name: "End Treasure Hunt",
1312
+ description: "A method to end an existing treasure hunt and claim rewards.",
1313
+ entrypoint: "end_treasure_hunt"
1314
+ }
1315
+ ]
1316
+ }
1317
+ }
1318
+ },
1119
1319
  theme: {
1120
1320
  colors: {
1121
1321
  primary: "#71EB34"
@@ -1668,6 +1868,82 @@ var configs = {
1668
1868
  name: "Loot Survivor"
1669
1869
  }
1670
1870
  },
1871
+ nums: {
1872
+ origin: ["nums.gg", "www.nums.gg"],
1873
+ policies: {
1874
+ contracts: {
1875
+ "0x07ccfbc43c109efd466638defa52702382ace922051d35a0554b5ccd02a8f155": {
1876
+ name: "Game Actions",
1877
+ methods: [
1878
+ {
1879
+ name: "Create Game",
1880
+ entrypoint: "create_game",
1881
+ description: "Creates a new game"
1882
+ },
1883
+ {
1884
+ name: "Set Slot",
1885
+ entrypoint: "set_slot",
1886
+ description: "Sets one slot for the game"
1887
+ }
1888
+ ]
1889
+ },
1890
+ "0x00ea44dd8e971d3af9f99568577bf14b0a80a7f7763fa6281840ab68a8a53ba9": {
1891
+ name: "Claim Actions",
1892
+ methods: [
1893
+ {
1894
+ name: "Claim Appchain Reward",
1895
+ entrypoint: "claim_reward",
1896
+ description: "Claims token rewards on Appchain"
1897
+ }
1898
+ ]
1899
+ },
1900
+ "0x03ee42961dc151d740df95c44b929abe85cf66e8444e0279252dd99b055c64b0": {
1901
+ name: "Rewards Claim",
1902
+ methods: [
1903
+ {
1904
+ name: "Consume Reward on Starknet",
1905
+ entrypoint: "consume_claim_reward",
1906
+ description: "Consumes a claim reward message on Starknet"
1907
+ }
1908
+ ]
1909
+ },
1910
+ "0x7ed472bdde3b19a5cf2334ad0f368426272f477938270b1b04259f159bdc0e2": {
1911
+ name: "VRF Provider",
1912
+ methods: [
1913
+ {
1914
+ name: "Request Random",
1915
+ entrypoint: "request_random",
1916
+ description: "Requests a random number from the VRF contract"
1917
+ }
1918
+ ]
1919
+ },
1920
+ "0x4d776373427434a22f7d60d0f7fe0e336fd830edf4294acec33d9f2e1275327": {
1921
+ name: "Social",
1922
+ description: "Social contract to manage your social activities",
1923
+ methods: [
1924
+ {
1925
+ name: "pin",
1926
+ entrypoint: "pin",
1927
+ description: "Pin an achievement."
1928
+ },
1929
+ {
1930
+ name: "unpin",
1931
+ entrypoint: "unpin",
1932
+ description: "Unpin an achievement."
1933
+ }
1934
+ ]
1935
+ }
1936
+ }
1937
+ },
1938
+ theme: {
1939
+ colors: {
1940
+ primary: "#9E84E9"
1941
+ },
1942
+ cover: "https://static.cartridge.gg/presets/nums/cover.png",
1943
+ icon: "https://static.cartridge.gg/presets/nums/icon.png",
1944
+ name: "Nums"
1945
+ }
1946
+ },
1671
1947
  paved: {
1672
1948
  origin: "paved.gg",
1673
1949
  theme: {
@@ -1680,14 +1956,174 @@ var configs = {
1680
1956
  }
1681
1957
  },
1682
1958
  pistols: {
1683
- origin: "pistols.underware.gg",
1959
+ origin: [
1960
+ "pistols.underware.gg",
1961
+ "pistols.stage.underware.gg",
1962
+ "play.pistols.gg"
1963
+ ],
1684
1964
  theme: {
1685
1965
  colors: {
1686
1966
  primary: "#EF9758"
1687
1967
  },
1688
1968
  cover: "https://static.cartridge.gg/presets/pistols/cover.png",
1689
1969
  icon: "https://static.cartridge.gg/presets/pistols/icon.png",
1690
- name: "Pistols at Ten Blocks"
1970
+ name: "Pistols at Dawn"
1971
+ },
1972
+ policies: {
1973
+ contracts: {
1974
+ "0x01445d46f1ba32c4f91eb61e161ffcb7ce70598649ad72e5405eaee5a2afba71": {
1975
+ name: "Game",
1976
+ description: "Game loop contract",
1977
+ methods: [
1978
+ {
1979
+ entrypoint: "commit_moves"
1980
+ },
1981
+ {
1982
+ entrypoint: "reveal_moves"
1983
+ },
1984
+ {
1985
+ entrypoint: "collect"
1986
+ }
1987
+ ]
1988
+ },
1989
+ "0x042b5966ef49614c78ca1577f617634ff3dbfee1cb811f1386cd9518b2cedd9e": {
1990
+ name: "Tutorial",
1991
+ description: "Tutorial game contract",
1992
+ methods: [
1993
+ {
1994
+ entrypoint: "create_tutorial"
1995
+ },
1996
+ {
1997
+ entrypoint: "commit_moves"
1998
+ },
1999
+ {
2000
+ entrypoint: "reveal_moves"
2001
+ }
2002
+ ]
2003
+ },
2004
+ "0x05f3df8d2895ab76f21f13114ee33292356a009900ed32e2ab5f280ac932546a": {
2005
+ name: "Pack token",
2006
+ description: "Packs ERC721 contract",
2007
+ methods: [
2008
+ {
2009
+ entrypoint: "claim_welcome_pack"
2010
+ },
2011
+ {
2012
+ entrypoint: "purchase"
2013
+ },
2014
+ {
2015
+ entrypoint: "open"
2016
+ }
2017
+ ]
2018
+ },
2019
+ "0x06afa7f3d4ddce0426572b0c2a91df17399997e2f44cc3586535ae9639939e67": {
2020
+ name: "Duel token",
2021
+ description: "Duel ERC721 contract",
2022
+ methods: [
2023
+ {
2024
+ entrypoint: "create_duel"
2025
+ },
2026
+ {
2027
+ entrypoint: "reply_duel"
2028
+ },
2029
+ {
2030
+ entrypoint: "transfer_to_winner"
2031
+ }
2032
+ ]
2033
+ }
2034
+ },
2035
+ messages: [
2036
+ {
2037
+ types: {
2038
+ StarknetDomain: [
2039
+ {
2040
+ name: "name",
2041
+ type: "shortstring"
2042
+ },
2043
+ {
2044
+ name: "version",
2045
+ type: "shortstring"
2046
+ },
2047
+ {
2048
+ name: "chainId",
2049
+ type: "shortstring"
2050
+ },
2051
+ {
2052
+ name: "revision",
2053
+ type: "shortstring"
2054
+ }
2055
+ ],
2056
+ "pistols-PlayerOnline": [
2057
+ {
2058
+ name: "identity",
2059
+ type: "ContractAddress"
2060
+ },
2061
+ {
2062
+ name: "timestamp",
2063
+ type: "felt"
2064
+ }
2065
+ ]
2066
+ },
2067
+ primaryType: "pistols-PlayerOnline",
2068
+ domain: {
2069
+ name: "Underware_gg",
2070
+ version: "1.0.0",
2071
+ chainId: "SN_MAIN",
2072
+ revision: "1"
2073
+ },
2074
+ name: "PlayerOnline",
2075
+ description: "Notify the server that a player is online"
2076
+ },
2077
+ {
2078
+ types: {
2079
+ StarknetDomain: [
2080
+ {
2081
+ name: "name",
2082
+ type: "shortstring"
2083
+ },
2084
+ {
2085
+ name: "version",
2086
+ type: "shortstring"
2087
+ },
2088
+ {
2089
+ name: "chainId",
2090
+ type: "shortstring"
2091
+ },
2092
+ {
2093
+ name: "revision",
2094
+ type: "shortstring"
2095
+ }
2096
+ ],
2097
+ "pistols-PlayerBookmark": [
2098
+ {
2099
+ name: "identity",
2100
+ type: "ContractAddress"
2101
+ },
2102
+ {
2103
+ name: "target_address",
2104
+ type: "ContractAddress"
2105
+ },
2106
+ {
2107
+ name: "target_id",
2108
+ type: "u128"
2109
+ },
2110
+ {
2111
+ name: "enabled",
2112
+ type: "bool"
2113
+ }
2114
+ ]
2115
+ },
2116
+ primaryType: "pistols-PlayerBookmark",
2117
+ domain: {
2118
+ name: "Underware_gg",
2119
+ version: "1.0.0",
2120
+ chainId: "SN_MAIN",
2121
+ revision: "1"
2122
+ },
2123
+ name: "PlayerBookmark",
2124
+ description: "Notify the server that a player follows another player or token"
2125
+ }
2126
+ ]
1691
2127
  }
1692
2128
  },
1693
2129
  pixelaw: {
@@ -2181,6 +2617,6 @@ var controllerConfigs = configs;
2181
2617
  var erc20Metadata = metadata;
2182
2618
  var defaultTheme = configs["cartridge"].theme;
2183
2619
 
2184
- export { NotReadyToConnect, ResponseCodes, controllerConfigs, ControllerProvider as default, defaultTheme, erc20Metadata, lookupAddresses, lookupUsernames, toArray, toSessionPolicies, toWasmPolicies };
2620
+ export { NotReadyToConnect, ResponseCodes, controllerConfigs, ControllerProvider as default, defaultTheme, erc20Metadata, humanizeString, lookupAddresses, lookupUsernames, normalizeCalls, parseChainId, toArray, toSessionPolicies, toWasmPolicies };
2185
2621
  //# sourceMappingURL=index.js.map
2186
2622
  //# sourceMappingURL=index.js.map