@arken/node 1.5.2 → 1.5.3

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 (502) hide show
  1. package/.rush/temp/shrinkwrap-deps.json +39 -82
  2. package/build/api.js.map +1 -0
  3. package/build/array.js.map +1 -0
  4. package/build/browser.js.map +1 -0
  5. package/build/codebase.js.map +1 -0
  6. package/build/config.js.map +1 -0
  7. package/build/db.d.ts +41 -0
  8. package/build/db.js +234 -0
  9. package/build/db.js.map +1 -0
  10. package/build/{util/decoder.js → decoder.js} +3 -3
  11. package/build/decoder.js.map +1 -0
  12. package/build/format.js.map +1 -0
  13. package/build/guid.js.map +1 -0
  14. package/build/index.d.ts +70 -18
  15. package/build/index.js +216 -18
  16. package/build/index.js.map +1 -1
  17. package/build/json.js.map +1 -0
  18. package/build/legacy/data/items.js +1 -1
  19. package/build/legacy/data/items.js.map +1 -1
  20. package/build/log.d.ts +5 -0
  21. package/build/log.js +28 -0
  22. package/build/log.js.map +1 -0
  23. package/build/math.js.map +1 -0
  24. package/build/{util/merkle.js → merkle.js} +1 -1
  25. package/build/merkle.js.map +1 -0
  26. package/build/{util/mongo.js → mongo.js} +1 -1
  27. package/build/mongo.js.map +1 -0
  28. package/build/number.js.map +1 -0
  29. package/build/object.js.map +1 -0
  30. package/build/otp.js.map +1 -0
  31. package/build/package.json +3 -3
  32. package/build/physics.js.map +1 -0
  33. package/build/{util/process.js → process.js} +1 -1
  34. package/build/process.js.map +1 -0
  35. package/build/rpc.js.map +1 -0
  36. package/build/schema.d.ts +42 -51
  37. package/build/seer.js.map +1 -0
  38. package/build/string.js.map +1 -0
  39. package/build/text.js.map +1 -0
  40. package/build/time/date.js.map +1 -0
  41. package/build/time/fancyTimeFormat.js.map +1 -0
  42. package/build/time/index.js.map +1 -0
  43. package/build/time/now.js.map +1 -0
  44. package/build/trpc/socketLink.d.ts +62 -0
  45. package/build/trpc/socketLink.js +261 -0
  46. package/build/trpc/socketLink.js.map +1 -0
  47. package/build/trpc/socketServer.d.ts +15 -0
  48. package/build/trpc/socketServer.js +47 -0
  49. package/build/trpc/socketServer.js.map +1 -0
  50. package/build/tsconfig.tsbuildinfo +1 -1
  51. package/build/util.d.ts +1 -0
  52. package/build/util.js +2 -0
  53. package/build/util.js.map +1 -0
  54. package/build/web3/httpProvider.js.map +1 -0
  55. package/build/{util/web3.js → web3.js} +1 -1
  56. package/build/web3.js.map +1 -0
  57. package/build/{util/websocket.js → websocket.js} +1 -1
  58. package/build/websocket.js.map +1 -0
  59. package/build/zk.js.map +1 -0
  60. package/build/{util/zod.d.ts → zod.d.ts} +2 -0
  61. package/build/{util/zod.js → zod.js} +1 -0
  62. package/build/zod.js.map +1 -0
  63. package/decoder.ts +3 -3
  64. package/index.ts +1 -46
  65. package/legacy/data/items.ts +1 -1
  66. package/log.ts +47 -1
  67. package/merkle.ts +3 -1
  68. package/mongo.ts +1 -1
  69. package/package.json +1 -1
  70. package/process.ts +1 -1
  71. package/trpc/socketLink.ts +2 -2
  72. package/trpc/socketServer.ts +1 -1
  73. package/tsconfig.json +2 -4
  74. package/web3.ts +2 -1
  75. package/websocket.ts +1 -1
  76. package/zod.ts +2 -0
  77. package/build/modules/area/area.models.d.ts +0 -6
  78. package/build/modules/area/area.models.js +0 -11
  79. package/build/modules/area/area.models.js.map +0 -1
  80. package/build/modules/area/area.router.d.ts +0 -274
  81. package/build/modules/area/area.router.js +0 -59
  82. package/build/modules/area/area.router.js.map +0 -1
  83. package/build/modules/area/area.schema.d.ts +0 -245
  84. package/build/modules/area/area.schema.js +0 -13
  85. package/build/modules/area/area.schema.js.map +0 -1
  86. package/build/modules/area/area.service.d.ts +0 -12
  87. package/build/modules/area/area.service.js +0 -95
  88. package/build/modules/area/area.service.js.map +0 -1
  89. package/build/modules/area/area.types.d.ts +0 -20
  90. package/build/modules/area/area.types.js +0 -2
  91. package/build/modules/area/area.types.js.map +0 -1
  92. package/build/modules/area/index.d.ts +0 -5
  93. package/build/modules/area/index.js +0 -6
  94. package/build/modules/area/index.js.map +0 -1
  95. package/build/modules/asset/asset.models.d.ts +0 -5
  96. package/build/modules/asset/asset.models.js +0 -44
  97. package/build/modules/asset/asset.models.js.map +0 -1
  98. package/build/modules/asset/asset.router.d.ts +0 -189
  99. package/build/modules/asset/asset.router.js +0 -41
  100. package/build/modules/asset/asset.router.js.map +0 -1
  101. package/build/modules/asset/asset.schema.d.ts +0 -207
  102. package/build/modules/asset/asset.schema.js +0 -19
  103. package/build/modules/asset/asset.schema.js.map +0 -1
  104. package/build/modules/asset/asset.service.d.ts +0 -9
  105. package/build/modules/asset/asset.service.js +0 -68
  106. package/build/modules/asset/asset.service.js.map +0 -1
  107. package/build/modules/asset/asset.types.d.ts +0 -17
  108. package/build/modules/asset/asset.types.js +0 -2
  109. package/build/modules/asset/asset.types.js.map +0 -1
  110. package/build/modules/asset/index.d.ts +0 -5
  111. package/build/modules/asset/index.js +0 -6
  112. package/build/modules/asset/index.js.map +0 -1
  113. package/build/modules/chain/chain.models.d.ts +0 -6
  114. package/build/modules/chain/chain.models.js +0 -42
  115. package/build/modules/chain/chain.models.js.map +0 -1
  116. package/build/modules/chain/chain.router.d.ts +0 -364
  117. package/build/modules/chain/chain.router.js +0 -84
  118. package/build/modules/chain/chain.router.js.map +0 -1
  119. package/build/modules/chain/chain.schema.d.ts +0 -323
  120. package/build/modules/chain/chain.schema.js +0 -41
  121. package/build/modules/chain/chain.schema.js.map +0 -1
  122. package/build/modules/chain/chain.service.d.ts +0 -15
  123. package/build/modules/chain/chain.service.js +0 -115
  124. package/build/modules/chain/chain.service.js.map +0 -1
  125. package/build/modules/chain/chain.types.d.ts +0 -20
  126. package/build/modules/chain/chain.types.js +0 -2
  127. package/build/modules/chain/chain.types.js.map +0 -1
  128. package/build/modules/chain/index.d.ts +0 -5
  129. package/build/modules/chain/index.js +0 -6
  130. package/build/modules/chain/index.js.map +0 -1
  131. package/build/modules/character/character.models.d.ts +0 -14
  132. package/build/modules/character/character.models.js +0 -123
  133. package/build/modules/character/character.models.js.map +0 -1
  134. package/build/modules/character/character.router.d.ts +0 -945
  135. package/build/modules/character/character.router.js +0 -246
  136. package/build/modules/character/character.router.js.map +0 -1
  137. package/build/modules/character/character.schema.d.ts +0 -1239
  138. package/build/modules/character/character.schema.js +0 -67
  139. package/build/modules/character/character.schema.js.map +0 -1
  140. package/build/modules/character/character.service.d.ts +0 -73
  141. package/build/modules/character/character.service.js +0 -533
  142. package/build/modules/character/character.service.js.map +0 -1
  143. package/build/modules/character/character.types.d.ts +0 -48
  144. package/build/modules/character/character.types.js +0 -2
  145. package/build/modules/character/character.types.js.map +0 -1
  146. package/build/modules/character/index.d.ts +0 -5
  147. package/build/modules/character/index.js +0 -6
  148. package/build/modules/character/index.js.map +0 -1
  149. package/build/modules/chat/chat.models.d.ts +0 -4
  150. package/build/modules/chat/chat.models.js +0 -35
  151. package/build/modules/chat/chat.models.js.map +0 -1
  152. package/build/modules/chat/chat.router.d.ts +0 -223
  153. package/build/modules/chat/chat.router.js +0 -51
  154. package/build/modules/chat/chat.router.js.map +0 -1
  155. package/build/modules/chat/chat.schema.d.ts +0 -183
  156. package/build/modules/chat/chat.schema.js +0 -29
  157. package/build/modules/chat/chat.schema.js.map +0 -1
  158. package/build/modules/chat/chat.service.d.ts +0 -12
  159. package/build/modules/chat/chat.service.js +0 -85
  160. package/build/modules/chat/chat.service.js.map +0 -1
  161. package/build/modules/chat/chat.types.d.ts +0 -14
  162. package/build/modules/chat/chat.types.js +0 -2
  163. package/build/modules/chat/chat.types.js.map +0 -1
  164. package/build/modules/chat/index.d.ts +0 -5
  165. package/build/modules/chat/index.js +0 -6
  166. package/build/modules/chat/index.js.map +0 -1
  167. package/build/modules/collection/collection.models.d.ts +0 -9
  168. package/build/modules/collection/collection.models.js +0 -69
  169. package/build/modules/collection/collection.models.js.map +0 -1
  170. package/build/modules/collection/collection.router.d.ts +0 -361
  171. package/build/modules/collection/collection.router.js +0 -71
  172. package/build/modules/collection/collection.router.js.map +0 -1
  173. package/build/modules/collection/collection.schema.d.ts +0 -676
  174. package/build/modules/collection/collection.schema.js +0 -70
  175. package/build/modules/collection/collection.schema.js.map +0 -1
  176. package/build/modules/collection/collection.service.d.ts +0 -15
  177. package/build/modules/collection/collection.service.js +0 -117
  178. package/build/modules/collection/collection.service.js.map +0 -1
  179. package/build/modules/collection/collection.types.d.ts +0 -29
  180. package/build/modules/collection/collection.types.js +0 -2
  181. package/build/modules/collection/collection.types.js.map +0 -1
  182. package/build/modules/collection/index.d.ts +0 -5
  183. package/build/modules/collection/index.js +0 -6
  184. package/build/modules/collection/index.js.map +0 -1
  185. package/build/modules/core/core.models.d.ts +0 -123
  186. package/build/modules/core/core.models.js +0 -811
  187. package/build/modules/core/core.models.js.map +0 -1
  188. package/build/modules/core/core.router.d.ts +0 -5297
  189. package/build/modules/core/core.router.js +0 -1372
  190. package/build/modules/core/core.router.js.map +0 -1
  191. package/build/modules/core/core.schema.d.ts +0 -5918
  192. package/build/modules/core/core.schema.js +0 -519
  193. package/build/modules/core/core.schema.js.map +0 -1
  194. package/build/modules/core/core.service.d.ts +0 -270
  195. package/build/modules/core/core.service.js +0 -2515
  196. package/build/modules/core/core.service.js.map +0 -1
  197. package/build/modules/core/core.types.d.ts +0 -251
  198. package/build/modules/core/core.types.js +0 -2
  199. package/build/modules/core/core.types.js.map +0 -1
  200. package/build/modules/core/index.d.ts +0 -5
  201. package/build/modules/core/index.js +0 -6
  202. package/build/modules/core/index.js.map +0 -1
  203. package/build/modules/core/mail/applyPatchesOrMail.d.ts +0 -72
  204. package/build/modules/core/mail/applyPatchesOrMail.js +0 -416
  205. package/build/modules/core/mail/applyPatchesOrMail.js.map +0 -1
  206. package/build/modules/core/mail/mailClaimablePatchesBatch.d.ts +0 -51
  207. package/build/modules/core/mail/mailClaimablePatchesBatch.js +0 -239
  208. package/build/modules/core/mail/mailClaimablePatchesBatch.js.map +0 -1
  209. package/build/modules/game/game.models.d.ts +0 -6
  210. package/build/modules/game/game.models.js +0 -29
  211. package/build/modules/game/game.models.js.map +0 -1
  212. package/build/modules/game/game.router.d.ts +0 -428
  213. package/build/modules/game/game.router.js +0 -90
  214. package/build/modules/game/game.router.js.map +0 -1
  215. package/build/modules/game/game.schema.d.ts +0 -344
  216. package/build/modules/game/game.schema.js +0 -14
  217. package/build/modules/game/game.schema.js.map +0 -1
  218. package/build/modules/game/game.service.d.ts +0 -16
  219. package/build/modules/game/game.service.js +0 -111
  220. package/build/modules/game/game.service.js.map +0 -1
  221. package/build/modules/game/game.types.d.ts +0 -20
  222. package/build/modules/game/game.types.js +0 -2
  223. package/build/modules/game/game.types.js.map +0 -1
  224. package/build/modules/game/index.d.ts +0 -5
  225. package/build/modules/game/index.js +0 -5
  226. package/build/modules/game/index.js.map +0 -1
  227. package/build/modules/interface/index.d.ts +0 -5
  228. package/build/modules/interface/index.js +0 -6
  229. package/build/modules/interface/index.js.map +0 -1
  230. package/build/modules/interface/interface.canonicalize.d.ts +0 -2
  231. package/build/modules/interface/interface.canonicalize.js +0 -241
  232. package/build/modules/interface/interface.canonicalize.js.map +0 -1
  233. package/build/modules/interface/interface.models.d.ts +0 -6
  234. package/build/modules/interface/interface.models.js +0 -30
  235. package/build/modules/interface/interface.models.js.map +0 -1
  236. package/build/modules/interface/interface.router.d.ts +0 -472
  237. package/build/modules/interface/interface.router.js +0 -113
  238. package/build/modules/interface/interface.router.js.map +0 -1
  239. package/build/modules/interface/interface.schema.d.ts +0 -313
  240. package/build/modules/interface/interface.schema.js +0 -36
  241. package/build/modules/interface/interface.schema.js.map +0 -1
  242. package/build/modules/interface/interface.service.d.ts +0 -19
  243. package/build/modules/interface/interface.service.js +0 -168
  244. package/build/modules/interface/interface.service.js.map +0 -1
  245. package/build/modules/interface/interface.types.d.ts +0 -19
  246. package/build/modules/interface/interface.types.js +0 -2
  247. package/build/modules/interface/interface.types.js.map +0 -1
  248. package/build/modules/item/index.d.ts +0 -5
  249. package/build/modules/item/index.js +0 -6
  250. package/build/modules/item/index.js.map +0 -1
  251. package/build/modules/item/item.models.d.ts +0 -16
  252. package/build/modules/item/item.models.js +0 -101
  253. package/build/modules/item/item.models.js.map +0 -1
  254. package/build/modules/item/item.router.d.ts +0 -263
  255. package/build/modules/item/item.router.js +0 -70
  256. package/build/modules/item/item.router.js.map +0 -1
  257. package/build/modules/item/item.schema.d.ts +0 -778
  258. package/build/modules/item/item.schema.js +0 -56
  259. package/build/modules/item/item.schema.js.map +0 -1
  260. package/build/modules/item/item.service.d.ts +0 -13
  261. package/build/modules/item/item.service.js +0 -116
  262. package/build/modules/item/item.service.js.map +0 -1
  263. package/build/modules/item/item.types.d.ts +0 -55
  264. package/build/modules/item/item.types.js +0 -2
  265. package/build/modules/item/item.types.js.map +0 -1
  266. package/build/modules/job/index.d.ts +0 -5
  267. package/build/modules/job/index.js +0 -6
  268. package/build/modules/job/index.js.map +0 -1
  269. package/build/modules/job/job.models.d.ts +0 -3
  270. package/build/modules/job/job.models.js +0 -9
  271. package/build/modules/job/job.models.js.map +0 -1
  272. package/build/modules/job/job.router.d.ts +0 -146
  273. package/build/modules/job/job.router.js +0 -32
  274. package/build/modules/job/job.router.js.map +0 -1
  275. package/build/modules/job/job.schema.d.ts +0 -67
  276. package/build/modules/job/job.schema.js +0 -7
  277. package/build/modules/job/job.schema.js.map +0 -1
  278. package/build/modules/job/job.service.d.ts +0 -7
  279. package/build/modules/job/job.service.js +0 -144
  280. package/build/modules/job/job.service.js.map +0 -1
  281. package/build/modules/job/job.types.d.ts +0 -16
  282. package/build/modules/job/job.types.js +0 -2
  283. package/build/modules/job/job.types.js.map +0 -1
  284. package/build/modules/market/index.d.ts +0 -5
  285. package/build/modules/market/index.js +0 -6
  286. package/build/modules/market/index.js.map +0 -1
  287. package/build/modules/market/market.models.d.ts +0 -14
  288. package/build/modules/market/market.models.js +0 -98
  289. package/build/modules/market/market.models.js.map +0 -1
  290. package/build/modules/market/market.router.d.ts +0 -230
  291. package/build/modules/market/market.router.js +0 -56
  292. package/build/modules/market/market.router.js.map +0 -1
  293. package/build/modules/market/market.schema.d.ts +0 -949
  294. package/build/modules/market/market.schema.js +0 -101
  295. package/build/modules/market/market.schema.js.map +0 -1
  296. package/build/modules/market/market.service.d.ts +0 -12
  297. package/build/modules/market/market.service.js +0 -88
  298. package/build/modules/market/market.service.js.map +0 -1
  299. package/build/modules/market/market.types.d.ts +0 -49
  300. package/build/modules/market/market.types.js +0 -2
  301. package/build/modules/market/market.types.js.map +0 -1
  302. package/build/modules/product/index.d.ts +0 -5
  303. package/build/modules/product/index.js +0 -6
  304. package/build/modules/product/index.js.map +0 -1
  305. package/build/modules/product/product.models.d.ts +0 -4
  306. package/build/modules/product/product.models.js +0 -113
  307. package/build/modules/product/product.models.js.map +0 -1
  308. package/build/modules/product/product.router.d.ts +0 -447
  309. package/build/modules/product/product.router.js +0 -71
  310. package/build/modules/product/product.router.js.map +0 -1
  311. package/build/modules/product/product.schema.d.ts +0 -654
  312. package/build/modules/product/product.schema.js +0 -117
  313. package/build/modules/product/product.schema.js.map +0 -1
  314. package/build/modules/product/product.service.d.ts +0 -15
  315. package/build/modules/product/product.service.js +0 -115
  316. package/build/modules/product/product.service.js.map +0 -1
  317. package/build/modules/product/product.types.d.ts +0 -28
  318. package/build/modules/product/product.types.js +0 -2
  319. package/build/modules/product/product.types.js.map +0 -1
  320. package/build/modules/profile/index.d.ts +0 -5
  321. package/build/modules/profile/index.js +0 -6
  322. package/build/modules/profile/index.js.map +0 -1
  323. package/build/modules/profile/profile.models.d.ts +0 -2
  324. package/build/modules/profile/profile.models.js +0 -165
  325. package/build/modules/profile/profile.models.js.map +0 -1
  326. package/build/modules/profile/profile.router.d.ts +0 -163
  327. package/build/modules/profile/profile.router.js +0 -54
  328. package/build/modules/profile/profile.router.js.map +0 -1
  329. package/build/modules/profile/profile.schema.d.ts +0 -1
  330. package/build/modules/profile/profile.schema.js +0 -138
  331. package/build/modules/profile/profile.schema.js.map +0 -1
  332. package/build/modules/profile/profile.service.d.ts +0 -11
  333. package/build/modules/profile/profile.service.js +0 -120
  334. package/build/modules/profile/profile.service.js.map +0 -1
  335. package/build/modules/profile/profile.types.d.ts +0 -16
  336. package/build/modules/profile/profile.types.js +0 -2
  337. package/build/modules/profile/profile.types.js.map +0 -1
  338. package/build/modules/raffle/index.d.ts +0 -5
  339. package/build/modules/raffle/index.js +0 -6
  340. package/build/modules/raffle/index.js.map +0 -1
  341. package/build/modules/raffle/raffle.models.d.ts +0 -6
  342. package/build/modules/raffle/raffle.models.js +0 -36
  343. package/build/modules/raffle/raffle.models.js.map +0 -1
  344. package/build/modules/raffle/raffle.router.d.ts +0 -299
  345. package/build/modules/raffle/raffle.router.js +0 -71
  346. package/build/modules/raffle/raffle.router.js.map +0 -1
  347. package/build/modules/raffle/raffle.schema.d.ts +0 -265
  348. package/build/modules/raffle/raffle.schema.js +0 -21
  349. package/build/modules/raffle/raffle.schema.js.map +0 -1
  350. package/build/modules/raffle/raffle.service.d.ts +0 -15
  351. package/build/modules/raffle/raffle.service.js +0 -115
  352. package/build/modules/raffle/raffle.service.js.map +0 -1
  353. package/build/modules/raffle/raffle.types.d.ts +0 -25
  354. package/build/modules/raffle/raffle.types.js +0 -2
  355. package/build/modules/raffle/raffle.types.js.map +0 -1
  356. package/build/modules/skill/index.d.ts +0 -5
  357. package/build/modules/skill/index.js +0 -6
  358. package/build/modules/skill/index.js.map +0 -1
  359. package/build/modules/skill/skill.models.d.ts +0 -9
  360. package/build/modules/skill/skill.models.js +0 -9
  361. package/build/modules/skill/skill.models.js.map +0 -1
  362. package/build/modules/skill/skill.router.d.ts +0 -659
  363. package/build/modules/skill/skill.router.js +0 -152
  364. package/build/modules/skill/skill.router.js.map +0 -1
  365. package/build/modules/skill/skill.schema.d.ts +0 -548
  366. package/build/modules/skill/skill.schema.js +0 -26
  367. package/build/modules/skill/skill.schema.js.map +0 -1
  368. package/build/modules/skill/skill.service.d.ts +0 -32
  369. package/build/modules/skill/skill.service.js +0 -279
  370. package/build/modules/skill/skill.service.js.map +0 -1
  371. package/build/modules/skill/skill.types.d.ts +0 -29
  372. package/build/modules/skill/skill.types.js +0 -2
  373. package/build/modules/skill/skill.types.js.map +0 -1
  374. package/build/modules/video/index.d.ts +0 -5
  375. package/build/modules/video/index.js +0 -6
  376. package/build/modules/video/index.js.map +0 -1
  377. package/build/modules/video/video.models.d.ts +0 -7
  378. package/build/modules/video/video.models.js +0 -19
  379. package/build/modules/video/video.models.js.map +0 -1
  380. package/build/modules/video/video.router.d.ts +0 -563
  381. package/build/modules/video/video.router.js +0 -112
  382. package/build/modules/video/video.router.js.map +0 -1
  383. package/build/modules/video/video.schema.d.ts +0 -456
  384. package/build/modules/video/video.schema.js +0 -31
  385. package/build/modules/video/video.schema.js.map +0 -1
  386. package/build/modules/video/video.service.d.ts +0 -23
  387. package/build/modules/video/video.service.js +0 -197
  388. package/build/modules/video/video.service.js.map +0 -1
  389. package/build/modules/video/video.types.d.ts +0 -28
  390. package/build/modules/video/video.types.js +0 -2
  391. package/build/modules/video/video.types.js.map +0 -1
  392. package/build/router.d.ts +0 -10406
  393. package/build/router.js +0 -44
  394. package/build/router.js.map +0 -1
  395. package/build/types.d.ts +0 -164
  396. package/build/types.js +0 -19
  397. package/build/types.js.map +0 -1
  398. package/build/util/api.js.map +0 -1
  399. package/build/util/array.js.map +0 -1
  400. package/build/util/browser.js.map +0 -1
  401. package/build/util/codebase.js.map +0 -1
  402. package/build/util/config.js.map +0 -1
  403. package/build/util/db/index.d.ts +0 -5
  404. package/build/util/db/index.js +0 -7
  405. package/build/util/db/index.js.map +0 -1
  406. package/build/util/db/isPostgresError.d.ts +0 -2
  407. package/build/util/db/isPostgresError.js +0 -8
  408. package/build/util/db/isPostgresError.js.map +0 -1
  409. package/build/util/db/isUniqueConstraintViolation.d.ts +0 -2
  410. package/build/util/db/isUniqueConstraintViolation.js +0 -3
  411. package/build/util/db/isUniqueConstraintViolation.js.map +0 -1
  412. package/build/util/db.d.ts +0 -6
  413. package/build/util/db.js +0 -51
  414. package/build/util/db.js.map +0 -1
  415. package/build/util/decoder.js.map +0 -1
  416. package/build/util/decoder.test.d.ts +0 -1
  417. package/build/util/decoder.test.js +0 -7
  418. package/build/util/decoder.test.js.map +0 -1
  419. package/build/util/format.js.map +0 -1
  420. package/build/util/guid.js.map +0 -1
  421. package/build/util/index.d.ts +0 -74
  422. package/build/util/index.js +0 -239
  423. package/build/util/index.js.map +0 -1
  424. package/build/util/json.js.map +0 -1
  425. package/build/util/log.d.ts +0 -1
  426. package/build/util/log.js +0 -6
  427. package/build/util/log.js.map +0 -1
  428. package/build/util/math.js.map +0 -1
  429. package/build/util/merkle.js.map +0 -1
  430. package/build/util/mongo.js.map +0 -1
  431. package/build/util/number.js.map +0 -1
  432. package/build/util/object.js.map +0 -1
  433. package/build/util/otp.js.map +0 -1
  434. package/build/util/physics.js.map +0 -1
  435. package/build/util/process.js.map +0 -1
  436. package/build/util/rpc.js.map +0 -1
  437. package/build/util/seer.js.map +0 -1
  438. package/build/util/string.js.map +0 -1
  439. package/build/util/text.js.map +0 -1
  440. package/build/util/time/date.js.map +0 -1
  441. package/build/util/time/fancyTimeFormat.js.map +0 -1
  442. package/build/util/time/index.js.map +0 -1
  443. package/build/util/time/now.js.map +0 -1
  444. package/build/util/web3/httpProvider.js.map +0 -1
  445. package/build/util/web3.js.map +0 -1
  446. package/build/util/websocket.js.map +0 -1
  447. package/build/util/zk.js.map +0 -1
  448. package/build/util/zod.js.map +0 -1
  449. package/router.ts +0 -49
  450. package/types.ts +0 -183
  451. /package/build/{util/api.d.ts → api.d.ts} +0 -0
  452. /package/build/{util/api.js → api.js} +0 -0
  453. /package/build/{util/array.d.ts → array.d.ts} +0 -0
  454. /package/build/{util/array.js → array.js} +0 -0
  455. /package/build/{util/browser.d.ts → browser.d.ts} +0 -0
  456. /package/build/{util/browser.js → browser.js} +0 -0
  457. /package/build/{util/codebase.d.ts → codebase.d.ts} +0 -0
  458. /package/build/{util/codebase.js → codebase.js} +0 -0
  459. /package/build/{util/config.d.ts → config.d.ts} +0 -0
  460. /package/build/{util/config.js → config.js} +0 -0
  461. /package/build/{util/decoder.d.ts → decoder.d.ts} +0 -0
  462. /package/build/{util/format.d.ts → format.d.ts} +0 -0
  463. /package/build/{util/format.js → format.js} +0 -0
  464. /package/build/{util/guid.d.ts → guid.d.ts} +0 -0
  465. /package/build/{util/guid.js → guid.js} +0 -0
  466. /package/build/{util/json.d.ts → json.d.ts} +0 -0
  467. /package/build/{util/json.js → json.js} +0 -0
  468. /package/build/{util/math.d.ts → math.d.ts} +0 -0
  469. /package/build/{util/math.js → math.js} +0 -0
  470. /package/build/{util/merkle.d.ts → merkle.d.ts} +0 -0
  471. /package/build/{util/mongo.d.ts → mongo.d.ts} +0 -0
  472. /package/build/{util/number.d.ts → number.d.ts} +0 -0
  473. /package/build/{util/number.js → number.js} +0 -0
  474. /package/build/{util/object.d.ts → object.d.ts} +0 -0
  475. /package/build/{util/object.js → object.js} +0 -0
  476. /package/build/{util/otp.d.ts → otp.d.ts} +0 -0
  477. /package/build/{util/otp.js → otp.js} +0 -0
  478. /package/build/{util/physics.d.ts → physics.d.ts} +0 -0
  479. /package/build/{util/physics.js → physics.js} +0 -0
  480. /package/build/{util/process.d.ts → process.d.ts} +0 -0
  481. /package/build/{util/rpc.d.ts → rpc.d.ts} +0 -0
  482. /package/build/{util/rpc.js → rpc.js} +0 -0
  483. /package/build/{util/seer.d.ts → seer.d.ts} +0 -0
  484. /package/build/{util/seer.js → seer.js} +0 -0
  485. /package/build/{util/string.d.ts → string.d.ts} +0 -0
  486. /package/build/{util/string.js → string.js} +0 -0
  487. /package/build/{util/text.d.ts → text.d.ts} +0 -0
  488. /package/build/{util/text.js → text.js} +0 -0
  489. /package/build/{util/time → time}/date.d.ts +0 -0
  490. /package/build/{util/time → time}/date.js +0 -0
  491. /package/build/{util/time → time}/fancyTimeFormat.d.ts +0 -0
  492. /package/build/{util/time → time}/fancyTimeFormat.js +0 -0
  493. /package/build/{util/time → time}/index.d.ts +0 -0
  494. /package/build/{util/time → time}/index.js +0 -0
  495. /package/build/{util/time → time}/now.d.ts +0 -0
  496. /package/build/{util/time → time}/now.js +0 -0
  497. /package/build/{util/web3 → web3}/httpProvider.d.ts +0 -0
  498. /package/build/{util/web3 → web3}/httpProvider.js +0 -0
  499. /package/build/{util/web3.d.ts → web3.d.ts} +0 -0
  500. /package/build/{util/websocket.d.ts → websocket.d.ts} +0 -0
  501. /package/build/{util/zk.d.ts → zk.d.ts} +0 -0
  502. /package/build/{util/zk.js → zk.js} +0 -0
@@ -1,416 +0,0 @@
1
- import get from 'lodash/get';
2
- import set from 'lodash/set';
3
- export function applyPatchToObject(obj, patch) {
4
- for (const p of patch) {
5
- if (p.op === 'set') {
6
- set(obj, p.key, p.value);
7
- }
8
- else if (p.op === 'unset') {
9
- const parts = p.key.split('.');
10
- const last = parts.pop();
11
- const parent = parts.reduce((acc, k) => (acc ? acc[k] : undefined), obj);
12
- if (parent && last)
13
- delete parent[last];
14
- }
15
- else if (p.op === 'inc') {
16
- const cur = Number(get(obj, p.key)) || 0;
17
- set(obj, p.key, cur + Number(p.value || 0));
18
- }
19
- else if (p.op === 'push') {
20
- const cur = get(obj, p.key);
21
- const arr = Array.isArray(cur) ? cur : [];
22
- arr.push(p.value);
23
- set(obj, p.key, arr);
24
- }
25
- else if (p.op === 'merge') {
26
- const cur = get(obj, p.key);
27
- const base = cur && typeof cur === 'object' ? cur : {};
28
- set(obj, p.key, { ...base, ...(p.value || {}) });
29
- }
30
- }
31
- }
32
- async function ensureItemByKey(ctx, itemKey, name) {
33
- const Item = ctx.app?.model?.Item;
34
- if (!Item)
35
- return null;
36
- const found = await Item.findOne?.({ key: itemKey })?.exec?.();
37
- if (found)
38
- return found;
39
- try {
40
- const res = await Item.findOneAndUpdate?.({ key: itemKey }, {
41
- $setOnInsert: {
42
- key: itemKey,
43
- name: name || itemKey,
44
- status: 'Active',
45
- meta: { name: name || itemKey },
46
- },
47
- }, { new: true, upsert: true })?.exec?.();
48
- return res || (await Item.findOne?.({ key: itemKey })?.exec?.());
49
- }
50
- catch {
51
- return null;
52
- }
53
- }
54
- export async function normalizeInventoryPatch(ctx, patch) {
55
- const out = [];
56
- for (const p of patch) {
57
- if (p.op === 'push' && (p.key === 'inventory.0.items' || p.key.startsWith('inventory.0.items'))) {
58
- const v = p.value || {};
59
- if (v.itemId) {
60
- const q = Math.max(1, Number(v.quantity ?? 1));
61
- for (let i = 0; i < q; i++) {
62
- out.push({
63
- op: 'push',
64
- key: p.key,
65
- value: { itemId: v.itemId, x: v.x ?? 1, y: v.y ?? 1, meta: v.meta ?? undefined },
66
- });
67
- }
68
- continue;
69
- }
70
- if (v.itemKey) {
71
- const itemKey = String(v.itemKey);
72
- const item = await ensureItemByKey(ctx, itemKey, itemKey);
73
- const q = Math.max(1, Number(v.quantity ?? 1));
74
- if (item?._id) {
75
- for (let i = 0; i < q; i++) {
76
- out.push({
77
- op: 'push',
78
- key: p.key,
79
- value: { itemId: item._id, x: v.x ?? 1, y: v.y ?? 1, meta: v.meta ?? undefined },
80
- });
81
- }
82
- }
83
- else {
84
- for (let i = 0; i < q; i++) {
85
- out.push({
86
- op: 'push',
87
- key: p.key,
88
- value: { itemKey, x: v.x ?? 1, y: v.y ?? 1, meta: v.meta ?? undefined },
89
- });
90
- }
91
- }
92
- continue;
93
- }
94
- }
95
- out.push(p);
96
- }
97
- return out;
98
- }
99
- function inventoryOpsFromPatchOps(patchOps) {
100
- const ops = [];
101
- const list = Array.isArray(patchOps) ? patchOps : [];
102
- for (const op of list) {
103
- const key = String(op?.key || '');
104
- const isInvItems = key === 'inventory.0.items' ||
105
- key.startsWith('inventory.0.items') ||
106
- key.includes('.items');
107
- if (!isInvItems)
108
- continue;
109
- if (op?.op === 'push') {
110
- const v = op?.value || {};
111
- const itemKey = v?.itemKey ?? v?.itemId;
112
- if (!itemKey)
113
- continue;
114
- const qty = Number(v?.quantity ?? 1);
115
- ops.push({ op: 'add', itemKey: String(itemKey), quantity: Number.isFinite(qty) ? qty : 1 });
116
- continue;
117
- }
118
- if (op?.op === 'pull') {
119
- const v = op?.value || {};
120
- const itemKey = v?.itemKey ?? v?.itemId;
121
- if (!itemKey)
122
- continue;
123
- const qty = Number(v?.quantity ?? 1);
124
- ops.push({ op: 'remove', itemKey: String(itemKey), quantity: Number.isFinite(qty) ? qty : 1 });
125
- continue;
126
- }
127
- }
128
- return ops;
129
- }
130
- function inventoryOpsFromEntityPatches(patches) {
131
- const out = [];
132
- for (const ep of patches || []) {
133
- if (ep?.entityType !== 'character.inventory')
134
- continue;
135
- const characterId = String(ep?.entityId || '');
136
- if (!characterId)
137
- continue;
138
- const ops = inventoryOpsFromPatchOps(ep?.ops || []);
139
- if (ops.length)
140
- out.push({ characterId, ops });
141
- }
142
- return out;
143
- }
144
- async function emitSyncPatch(ctx, input) {
145
- try {
146
- await ctx.client?.emit?.sync?.mutate?.({
147
- kind: 'patch',
148
- target: input.target,
149
- patch: input.patch,
150
- reason: input.reason,
151
- });
152
- }
153
- catch (e) {
154
- console.warn('[applyPatchesOrMail] emit.sync failed', e);
155
- }
156
- }
157
- export async function ensureMailConversation(params) {
158
- const { ctx, profileId, kind = 'mail', conversationKey, title, category, importance } = params;
159
- const mongoose = ctx.app.db?.mongoose ?? ctx.app.mongoose;
160
- const Conversation = ctx.app.model.Conversation;
161
- const profileObjId = (() => {
162
- try {
163
- return new mongoose.Types.ObjectId(profileId);
164
- }
165
- catch {
166
- return profileId;
167
- }
168
- })();
169
- let convo = (await Conversation.findOne?.({
170
- kind,
171
- key: conversationKey,
172
- $or: [{ profileId: profileObjId }, { 'participants.profileId': profileObjId }],
173
- status: { $ne: 'Archived' },
174
- })?.exec?.()) ?? null;
175
- if (convo)
176
- return convo;
177
- const updated = (await Conversation.findOneAndUpdate?.({
178
- kind,
179
- key: conversationKey,
180
- profileId: profileObjId,
181
- status: { $ne: 'Archived' },
182
- }, {
183
- $setOnInsert: {
184
- profileId: profileObjId,
185
- kind,
186
- key: conversationKey,
187
- isLocked: true,
188
- allowUserSend: false,
189
- participants: [{ profileId: profileObjId, role: 'user', unreadCount: 0, lastReadDate: new Date(0) }],
190
- name: title ?? 'System',
191
- category: category ?? 'system',
192
- importance: Number(importance ?? 0),
193
- lastMessageDate: null,
194
- lastMessagePreview: '',
195
- messageCount: 0,
196
- messages: [],
197
- status: 'Active',
198
- },
199
- }, { new: true, upsert: true })?.exec?.()) ?? null;
200
- if (updated)
201
- return updated;
202
- return await Conversation.findOne?.({ kind, conversationKey, profileId: profileObjId })?.exec?.();
203
- }
204
- function splitClaimable(patches) {
205
- const claimable = [];
206
- const immediate = [];
207
- for (const p of patches || []) {
208
- if (!p?.entityType || !Array.isArray(p.ops))
209
- continue;
210
- if (p.claimable)
211
- claimable.push(p);
212
- else
213
- immediate.push(p);
214
- }
215
- return { claimable, immediate };
216
- }
217
- export async function applyPatchesWithInventoryViaMail(params) {
218
- const { ctx, profile, character, patches, mail } = params;
219
- const { claimable, immediate } = splitClaimable(patches);
220
- const immediateInventorySync = inventoryOpsFromEntityPatches(immediate);
221
- for (const patch of immediate) {
222
- if (patch.entityType === 'profile.meta') {
223
- if (!profile.meta)
224
- profile.meta = {};
225
- applyPatchToObject(profile.meta, patch.ops);
226
- profile.markModified?.('meta');
227
- }
228
- else if (patch.entityType === 'character.data') {
229
- if (!character)
230
- continue;
231
- if (!character.data)
232
- character.data = {};
233
- applyPatchToObject(character.data, patch.ops);
234
- character.markModified?.('data');
235
- }
236
- else if (patch.entityType === 'character.inventory') {
237
- if (!character)
238
- continue;
239
- if (!Array.isArray(character.inventory))
240
- character.inventory = [];
241
- if (!character.inventory[0])
242
- character.inventory[0] = { items: [] };
243
- const normalized = await normalizeInventoryPatch(ctx, patch.ops);
244
- applyPatchToObject(character, normalized);
245
- character.markModified?.('inventory');
246
- }
247
- else {
248
- throw new Error(`applyPatchesWithInventoryViaMail: unsupported entityType=${patch.entityType}`);
249
- }
250
- }
251
- await profile.save?.();
252
- if (character && immediate.some((p) => p.entityType?.startsWith('character.'))) {
253
- await character.save?.();
254
- }
255
- for (const hit of immediateInventorySync) {
256
- await emitSyncPatch(ctx, {
257
- target: 'character.inventory',
258
- patch: {
259
- characterId: hit.characterId,
260
- ops: hit.ops,
261
- mode: 'patch',
262
- source: mail.source,
263
- reason: 'immediate',
264
- },
265
- reason: 'immediate',
266
- });
267
- }
268
- if (!claimable.length)
269
- return { appliedNow: immediate, mailed: null };
270
- const convo = await ensureMailConversation({
271
- ctx,
272
- profileId: mail.profileId,
273
- kind: mail.kind ?? 'mail',
274
- conversationKey: mail.conversationKey,
275
- title: mail.title ?? 'System',
276
- category: mail.category ?? 'system',
277
- importance: mail.importance ?? 0,
278
- });
279
- const ConversationMessage = ctx.app.model.ConversationMessage;
280
- const Conversation = ctx.app.model.Conversation;
281
- const dedupeKey = mail.dedupeKey ?? null;
282
- if (dedupeKey) {
283
- const existing = await ConversationMessage.findOne?.({
284
- conversationId: convo._id,
285
- 'claim.dedupeKey': dedupeKey,
286
- })?.exec?.();
287
- if (existing) {
288
- return {
289
- appliedNow: immediate,
290
- mailed: { conversationId: String(convo._id), messageId: String(existing._id) },
291
- };
292
- }
293
- }
294
- const payload = {
295
- kind: 'patch-grant',
296
- source: mail.source,
297
- title: mail.title,
298
- body: mail.body,
299
- patches: claimable,
300
- ui: mail.ui,
301
- };
302
- const msg = await ConversationMessage.create?.({
303
- conversationId: convo._id,
304
- role: 'system',
305
- type: 'reward',
306
- content: mail.body ?? '',
307
- payload,
308
- claim: {
309
- isClaimable: true,
310
- claimedDate: null,
311
- claimedByProfileId: null,
312
- dedupeKey,
313
- attachments: [],
314
- },
315
- });
316
- try {
317
- const preview = (mail.title ? `${mail.title} — ` : '') + (mail.body ?? '');
318
- await Conversation.updateOne?.({ _id: convo._id }, {
319
- $set: {
320
- lastMessageDate: new Date(),
321
- lastMessagePreview: String(preview).slice(0, 140),
322
- },
323
- $inc: { messageCount: 1 },
324
- $push: { messages: msg._id },
325
- })?.exec?.();
326
- }
327
- catch {
328
- }
329
- return { appliedNow: immediate, mailed: { conversationId: String(convo._id), messageId: String(msg._id) } };
330
- }
331
- export async function claimMailMessage(params) {
332
- const { ctx, profile, character, messageId } = params;
333
- const ConversationMessage = ctx.app.model.ConversationMessage;
334
- const msg = await ConversationMessage.findOneAndUpdate?.({
335
- _id: messageId,
336
- 'claim.isClaimable': true,
337
- 'claim.claimedDate': null,
338
- 'claim.claimedByProfileId': null,
339
- }, {
340
- $set: {
341
- 'claim.claimedDate': new Date(),
342
- 'claim.claimedByProfileId': String(profile._id),
343
- },
344
- }, { new: true })?.exec?.();
345
- if (!msg) {
346
- const err = new Error('Already claimed or not claimable');
347
- err.code = 'ALREADY_CLAIMED';
348
- throw err;
349
- }
350
- const payload = msg.payload;
351
- if (!payload || payload.kind !== 'patch-grant' || !Array.isArray(payload.patches))
352
- return { ok: true };
353
- const claimedInventorySync = inventoryOpsFromEntityPatches(payload.patches);
354
- let touchedProfileMeta = false;
355
- let touchedCharacterData = false;
356
- let touchedCharacterInventory = false;
357
- for (const patch of payload.patches) {
358
- if (!patch?.entityType || !Array.isArray(patch.ops))
359
- continue;
360
- if (patch.entityType === 'profile.meta') {
361
- if (!profile.meta)
362
- profile.meta = {};
363
- applyPatchToObject(profile.meta, patch.ops);
364
- touchedProfileMeta = true;
365
- continue;
366
- }
367
- if (patch.entityType === 'character.data') {
368
- if (!character)
369
- throw new Error('No character loaded for character.data claim');
370
- if (!character.data)
371
- character.data = {};
372
- applyPatchToObject(character.data, patch.ops);
373
- touchedCharacterData = true;
374
- continue;
375
- }
376
- if (patch.entityType === 'character.inventory') {
377
- if (!character)
378
- throw new Error('No character loaded for inventory claim');
379
- if (!Array.isArray(character.inventory))
380
- character.inventory = [];
381
- if (!character.inventory[0])
382
- character.inventory[0] = { items: [] };
383
- const normalized = await normalizeInventoryPatch(ctx, patch.ops);
384
- applyPatchToObject(character, normalized);
385
- touchedCharacterInventory = true;
386
- continue;
387
- }
388
- throw new Error(`claimMailMessage: unsupported entityType=${patch.entityType}`);
389
- }
390
- if (touchedProfileMeta)
391
- profile.markModified?.('meta');
392
- if (touchedCharacterData)
393
- character?.markModified?.('data');
394
- if (touchedCharacterInventory)
395
- character?.markModified?.('inventory');
396
- await profile.save?.();
397
- if (character && (touchedCharacterData || touchedCharacterInventory)) {
398
- await character.save?.();
399
- }
400
- for (const hit of claimedInventorySync) {
401
- await ctx.client.emit.sync.mutate({
402
- kind: 'patch',
403
- target: 'character.inventory',
404
- patch: {
405
- characterId: hit.characterId,
406
- ops: hit.ops,
407
- mode: 'patch',
408
- source: payload.source || 'mail.claim',
409
- reason: 'claim',
410
- },
411
- reason: 'claim',
412
- });
413
- }
414
- return { ok: true };
415
- }
416
- //# sourceMappingURL=applyPatchesOrMail.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"applyPatchesOrMail.js","sourceRoot":"","sources":["../../../../modules/core/mail/applyPatchesOrMail.ts"],"names":[],"mappings":"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"}
@@ -1,51 +0,0 @@
1
- import type { RouterContext } from '../core.types';
2
- import type { EntityPatch } from '../../../types';
3
- type MailKind = 'mail' | 'dm' | 'group' | 'support' | 'system';
4
- export type MailPatchMessagePayload = {
5
- kind: 'patch-grant';
6
- source: string;
7
- title?: string;
8
- body?: string;
9
- patches: EntityPatch[];
10
- ui?: {
11
- rewards?: Array<{
12
- type: 'item' | 'token' | 'reward';
13
- id: string;
14
- quantity?: number;
15
- meta?: any;
16
- }>;
17
- effects?: Array<{
18
- type: 'stat' | 'flag' | 'effect';
19
- key?: string;
20
- delta?: number;
21
- value?: any;
22
- label?: string;
23
- }>;
24
- };
25
- };
26
- export type MailClaimableBatchParams = {
27
- ctx: RouterContext;
28
- profileIds?: string[];
29
- streamAllProfiles?: boolean;
30
- kind?: MailKind;
31
- source: string;
32
- title: string;
33
- body: string;
34
- dedupeKey: string;
35
- claimablePatches: EntityPatch[];
36
- payloadUi?: MailPatchMessagePayload['ui'];
37
- batchSize?: number;
38
- conversationKey: string;
39
- conversationTitle?: string;
40
- conversationCategory?: string;
41
- conversationImportance?: number;
42
- };
43
- export type MailClaimableBatchResult = {
44
- processedProfiles: number;
45
- conversationsFound: number;
46
- conversationsCreated: number;
47
- messagesExisting: number;
48
- messagesCreated: number;
49
- };
50
- export declare function mailClaimablePatchesBatch(params: MailClaimableBatchParams): Promise<MailClaimableBatchResult>;
51
- export {};