@ixo/openhands-sdk 0.0.0-stage → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1205) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +245 -2
  3. package/dist/cjs/board.d.ts +20 -0
  4. package/dist/cjs/board.d.ts.map +1 -0
  5. package/dist/cjs/board.js +60 -0
  6. package/dist/cjs/board.js.map +1 -0
  7. package/dist/cjs/campaign/badges.d.ts +30 -0
  8. package/dist/cjs/campaign/badges.d.ts.map +1 -0
  9. package/dist/cjs/campaign/badges.js +69 -0
  10. package/dist/cjs/campaign/badges.js.map +1 -0
  11. package/dist/cjs/campaign/bands.d.ts +161 -0
  12. package/dist/cjs/campaign/bands.d.ts.map +1 -0
  13. package/dist/cjs/campaign/bands.js +186 -0
  14. package/dist/cjs/campaign/bands.js.map +1 -0
  15. package/dist/cjs/campaign/campaign.d.ts +50 -0
  16. package/dist/cjs/campaign/campaign.d.ts.map +1 -0
  17. package/dist/cjs/campaign/campaign.js +183 -0
  18. package/dist/cjs/campaign/campaign.js.map +1 -0
  19. package/dist/cjs/campaign/campaigns.d.ts +2 -0
  20. package/dist/cjs/campaign/campaigns.d.ts.map +1 -0
  21. package/dist/cjs/campaign/campaigns.js +37 -0
  22. package/dist/cjs/campaign/campaigns.js.map +1 -0
  23. package/dist/cjs/campaign/cleanable.d.ts +13 -0
  24. package/dist/cjs/campaign/cleanable.d.ts.map +1 -0
  25. package/dist/cjs/campaign/cleanable.js +6 -0
  26. package/dist/cjs/campaign/cleanable.js.map +1 -0
  27. package/dist/cjs/campaign/cleanup.d.ts +78 -0
  28. package/dist/cjs/campaign/cleanup.d.ts.map +1 -0
  29. package/dist/cjs/campaign/cleanup.js +132 -0
  30. package/dist/cjs/campaign/cleanup.js.map +1 -0
  31. package/dist/cjs/campaign/commit.d.ts +39 -0
  32. package/dist/cjs/campaign/commit.d.ts.map +1 -0
  33. package/dist/cjs/campaign/commit.js +43 -0
  34. package/dist/cjs/campaign/commit.js.map +1 -0
  35. package/dist/cjs/campaign/field.d.ts +50 -0
  36. package/dist/cjs/campaign/field.d.ts.map +1 -0
  37. package/dist/cjs/campaign/field.js +94 -0
  38. package/dist/cjs/campaign/field.js.map +1 -0
  39. package/dist/cjs/campaign/fold.d.ts +227 -0
  40. package/dist/cjs/campaign/fold.d.ts.map +1 -0
  41. package/dist/cjs/campaign/fold.js +459 -0
  42. package/dist/cjs/campaign/fold.js.map +1 -0
  43. package/dist/cjs/campaign/funding.d.ts +153 -0
  44. package/dist/cjs/campaign/funding.d.ts.map +1 -0
  45. package/dist/cjs/campaign/funding.js +168 -0
  46. package/dist/cjs/campaign/funding.js.map +1 -0
  47. package/dist/cjs/campaign/landing.d.ts +20 -0
  48. package/dist/cjs/campaign/landing.d.ts.map +1 -0
  49. package/dist/cjs/campaign/landing.js +54 -0
  50. package/dist/cjs/campaign/landing.js.map +1 -0
  51. package/dist/cjs/campaign/pledges.d.ts +237 -0
  52. package/dist/cjs/campaign/pledges.d.ts.map +1 -0
  53. package/dist/cjs/campaign/pledges.js +235 -0
  54. package/dist/cjs/campaign/pledges.js.map +1 -0
  55. package/dist/cjs/campaign/pledgesChain.d.ts +58 -0
  56. package/dist/cjs/campaign/pledgesChain.d.ts.map +1 -0
  57. package/dist/cjs/campaign/pledgesChain.js +102 -0
  58. package/dist/cjs/campaign/pledgesChain.js.map +1 -0
  59. package/dist/cjs/campaign/pool.d.ts +137 -0
  60. package/dist/cjs/campaign/pool.d.ts.map +1 -0
  61. package/dist/cjs/campaign/pool.js +237 -0
  62. package/dist/cjs/campaign/pool.js.map +1 -0
  63. package/dist/cjs/campaign/record.d.ts +115 -0
  64. package/dist/cjs/campaign/record.d.ts.map +1 -0
  65. package/dist/cjs/campaign/record.js +291 -0
  66. package/dist/cjs/campaign/record.js.map +1 -0
  67. package/dist/cjs/campaign/rule.d.ts +311 -0
  68. package/dist/cjs/campaign/rule.d.ts.map +1 -0
  69. package/dist/cjs/campaign/rule.js +210 -0
  70. package/dist/cjs/campaign/rule.js.map +1 -0
  71. package/dist/cjs/campaign/spot.d.ts +37 -0
  72. package/dist/cjs/campaign/spot.d.ts.map +1 -0
  73. package/dist/cjs/campaign/spot.js +170 -0
  74. package/dist/cjs/campaign/spot.js.map +1 -0
  75. package/dist/cjs/campaign/spots.d.ts +437 -0
  76. package/dist/cjs/campaign/spots.d.ts.map +1 -0
  77. package/dist/cjs/campaign/spots.js +790 -0
  78. package/dist/cjs/campaign/spots.js.map +1 -0
  79. package/dist/cjs/campaign/standings.d.ts +236 -0
  80. package/dist/cjs/campaign/standings.d.ts.map +1 -0
  81. package/dist/cjs/campaign/standings.js +372 -0
  82. package/dist/cjs/campaign/standings.js.map +1 -0
  83. package/dist/cjs/campaign/treasurySends.d.ts +116 -0
  84. package/dist/cjs/campaign/treasurySends.d.ts.map +1 -0
  85. package/dist/cjs/campaign/treasurySends.js +198 -0
  86. package/dist/cjs/campaign/treasurySends.js.map +1 -0
  87. package/dist/cjs/campaign.d.ts +29 -0
  88. package/dist/cjs/campaign.d.ts.map +1 -0
  89. package/dist/cjs/campaign.js +44 -0
  90. package/dist/cjs/campaign.js.map +1 -0
  91. package/dist/cjs/chain/account.d.ts +47 -0
  92. package/dist/cjs/chain/account.d.ts.map +1 -0
  93. package/dist/cjs/chain/account.js +196 -0
  94. package/dist/cjs/chain/account.js.map +1 -0
  95. package/dist/cjs/chain/accountProof.d.ts +135 -0
  96. package/dist/cjs/chain/accountProof.d.ts.map +1 -0
  97. package/dist/cjs/chain/accountProof.js +199 -0
  98. package/dist/cjs/chain/accountProof.js.map +1 -0
  99. package/dist/cjs/chain/allowance.d.ts +17 -0
  100. package/dist/cjs/chain/allowance.d.ts.map +1 -0
  101. package/dist/cjs/chain/allowance.js +81 -0
  102. package/dist/cjs/chain/allowance.js.map +1 -0
  103. package/dist/cjs/chain/allowanceRead.d.ts +2 -0
  104. package/dist/cjs/chain/allowanceRead.d.ts.map +1 -0
  105. package/dist/cjs/chain/allowanceRead.js +59 -0
  106. package/dist/cjs/chain/allowanceRead.js.map +1 -0
  107. package/dist/cjs/chain/ask.d.ts +211 -0
  108. package/dist/cjs/chain/ask.d.ts.map +1 -0
  109. package/dist/cjs/chain/ask.js +559 -0
  110. package/dist/cjs/chain/ask.js.map +1 -0
  111. package/dist/cjs/chain/bridge.d.ts +50 -0
  112. package/dist/cjs/chain/bridge.d.ts.map +1 -0
  113. package/dist/cjs/chain/bridge.js +82 -0
  114. package/dist/cjs/chain/bridge.js.map +1 -0
  115. package/dist/cjs/chain/broadcast.d.ts +40 -0
  116. package/dist/cjs/chain/broadcast.d.ts.map +1 -0
  117. package/dist/cjs/chain/broadcast.js +189 -0
  118. package/dist/cjs/chain/broadcast.js.map +1 -0
  119. package/dist/cjs/chain/delegate.d.ts +154 -0
  120. package/dist/cjs/chain/delegate.d.ts.map +1 -0
  121. package/dist/cjs/chain/delegate.js +245 -0
  122. package/dist/cjs/chain/delegate.js.map +1 -0
  123. package/dist/cjs/chain/encoding.d.ts +7 -0
  124. package/dist/cjs/chain/encoding.d.ts.map +1 -0
  125. package/dist/cjs/chain/encoding.js +29 -0
  126. package/dist/cjs/chain/encoding.js.map +1 -0
  127. package/dist/cjs/chain/env.d.ts +50 -0
  128. package/dist/cjs/chain/env.d.ts.map +1 -0
  129. package/dist/cjs/chain/env.js +89 -0
  130. package/dist/cjs/chain/env.js.map +1 -0
  131. package/dist/cjs/chain/gate.d.ts +12 -0
  132. package/dist/cjs/chain/gate.d.ts.map +1 -0
  133. package/dist/cjs/chain/gate.js +55 -0
  134. package/dist/cjs/chain/gate.js.map +1 -0
  135. package/dist/cjs/chain/grantPending.d.ts +31 -0
  136. package/dist/cjs/chain/grantPending.d.ts.map +1 -0
  137. package/dist/cjs/chain/grantPending.js +56 -0
  138. package/dist/cjs/chain/grantPending.js.map +1 -0
  139. package/dist/cjs/chain/guest.d.ts +97 -0
  140. package/dist/cjs/chain/guest.d.ts.map +1 -0
  141. package/dist/cjs/chain/guest.js +211 -0
  142. package/dist/cjs/chain/guest.js.map +1 -0
  143. package/dist/cjs/chain/iid.d.ts +26 -0
  144. package/dist/cjs/chain/iid.d.ts.map +1 -0
  145. package/dist/cjs/chain/iid.js +71 -0
  146. package/dist/cjs/chain/iid.js.map +1 -0
  147. package/dist/cjs/chain/money.d.ts +48 -0
  148. package/dist/cjs/chain/money.d.ts.map +1 -0
  149. package/dist/cjs/chain/money.js +72 -0
  150. package/dist/cjs/chain/money.js.map +1 -0
  151. package/dist/cjs/chain/oracle.d.ts +24 -0
  152. package/dist/cjs/chain/oracle.d.ts.map +1 -0
  153. package/dist/cjs/chain/oracle.js +46 -0
  154. package/dist/cjs/chain/oracle.js.map +1 -0
  155. package/dist/cjs/chain/pendingTransact.d.ts +31 -0
  156. package/dist/cjs/chain/pendingTransact.d.ts.map +1 -0
  157. package/dist/cjs/chain/pendingTransact.js +64 -0
  158. package/dist/cjs/chain/pendingTransact.js.map +1 -0
  159. package/dist/cjs/chain/query.d.ts +75 -0
  160. package/dist/cjs/chain/query.d.ts.map +1 -0
  161. package/dist/cjs/chain/query.js +171 -0
  162. package/dist/cjs/chain/query.js.map +1 -0
  163. package/dist/cjs/chain/send.d.ts +42 -0
  164. package/dist/cjs/chain/send.d.ts.map +1 -0
  165. package/dist/cjs/chain/send.js +54 -0
  166. package/dist/cjs/chain/send.js.map +1 -0
  167. package/dist/cjs/chain/session.d.ts +109 -0
  168. package/dist/cjs/chain/session.d.ts.map +1 -0
  169. package/dist/cjs/chain/session.js +145 -0
  170. package/dist/cjs/chain/session.js.map +1 -0
  171. package/dist/cjs/chain/signWith.d.ts +69 -0
  172. package/dist/cjs/chain/signWith.d.ts.map +1 -0
  173. package/dist/cjs/chain/signWith.js +277 -0
  174. package/dist/cjs/chain/signWith.js.map +1 -0
  175. package/dist/cjs/chain/signer.d.ts +38 -0
  176. package/dist/cjs/chain/signer.d.ts.map +1 -0
  177. package/dist/cjs/chain/signer.js +78 -0
  178. package/dist/cjs/chain/signer.js.map +1 -0
  179. package/dist/cjs/chain/signx.d.ts +233 -0
  180. package/dist/cjs/chain/signx.d.ts.map +1 -0
  181. package/dist/cjs/chain/signx.js +490 -0
  182. package/dist/cjs/chain/signx.js.map +1 -0
  183. package/dist/cjs/chain/sponsor.d.ts +2 -0
  184. package/dist/cjs/chain/sponsor.d.ts.map +1 -0
  185. package/dist/cjs/chain/sponsor.js +76 -0
  186. package/dist/cjs/chain/sponsor.js.map +1 -0
  187. package/dist/cjs/chain/store.d.ts +115 -0
  188. package/dist/cjs/chain/store.d.ts.map +1 -0
  189. package/dist/cjs/chain/store.js +212 -0
  190. package/dist/cjs/chain/store.js.map +1 -0
  191. package/dist/cjs/chain/subscription.d.ts +73 -0
  192. package/dist/cjs/chain/subscription.d.ts.map +1 -0
  193. package/dist/cjs/chain/subscription.js +248 -0
  194. package/dist/cjs/chain/subscription.js.map +1 -0
  195. package/dist/cjs/chain/takeBack.d.ts +114 -0
  196. package/dist/cjs/chain/takeBack.d.ts.map +1 -0
  197. package/dist/cjs/chain/takeBack.js +190 -0
  198. package/dist/cjs/chain/takeBack.js.map +1 -0
  199. package/dist/cjs/chain/union.d.ts +125 -0
  200. package/dist/cjs/chain/union.d.ts.map +1 -0
  201. package/dist/cjs/chain/union.js +338 -0
  202. package/dist/cjs/chain/union.js.map +1 -0
  203. package/dist/cjs/chain/webauthn.d.ts +22 -0
  204. package/dist/cjs/chain/webauthn.d.ts.map +1 -0
  205. package/dist/cjs/chain/webauthn.js +70 -0
  206. package/dist/cjs/chain/webauthn.js.map +1 -0
  207. package/dist/cjs/chain.d.ts +35 -0
  208. package/dist/cjs/chain.d.ts.map +1 -0
  209. package/dist/cjs/chain.js +119 -0
  210. package/dist/cjs/chain.js.map +1 -0
  211. package/dist/cjs/config.d.ts +120 -0
  212. package/dist/cjs/config.d.ts.map +1 -0
  213. package/dist/cjs/config.js +128 -0
  214. package/dist/cjs/config.js.map +1 -0
  215. package/dist/cjs/data/accept.d.ts +69 -0
  216. package/dist/cjs/data/accept.d.ts.map +1 -0
  217. package/dist/cjs/data/accept.js +192 -0
  218. package/dist/cjs/data/accept.js.map +1 -0
  219. package/dist/cjs/data/agent.d.ts +87 -0
  220. package/dist/cjs/data/agent.d.ts.map +1 -0
  221. package/dist/cjs/data/agent.js +112 -0
  222. package/dist/cjs/data/agent.js.map +1 -0
  223. package/dist/cjs/data/askFilter.d.ts +45 -0
  224. package/dist/cjs/data/askFilter.d.ts.map +1 -0
  225. package/dist/cjs/data/askFilter.js +53 -0
  226. package/dist/cjs/data/askFilter.js.map +1 -0
  227. package/dist/cjs/data/authenticators.d.ts +35 -0
  228. package/dist/cjs/data/authenticators.d.ts.map +1 -0
  229. package/dist/cjs/data/authenticators.js +76 -0
  230. package/dist/cjs/data/authenticators.js.map +1 -0
  231. package/dist/cjs/data/balance.d.ts +39 -0
  232. package/dist/cjs/data/balance.d.ts.map +1 -0
  233. package/dist/cjs/data/balance.js +119 -0
  234. package/dist/cjs/data/balance.js.map +1 -0
  235. package/dist/cjs/data/board/assemble.d.ts +140 -0
  236. package/dist/cjs/data/board/assemble.d.ts.map +1 -0
  237. package/dist/cjs/data/board/assemble.js +556 -0
  238. package/dist/cjs/data/board/assemble.js.map +1 -0
  239. package/dist/cjs/data/board/coverage.d.ts +112 -0
  240. package/dist/cjs/data/board/coverage.d.ts.map +1 -0
  241. package/dist/cjs/data/board/coverage.js +192 -0
  242. package/dist/cjs/data/board/coverage.js.map +1 -0
  243. package/dist/cjs/data/board/facts.d.ts +63 -0
  244. package/dist/cjs/data/board/facts.d.ts.map +1 -0
  245. package/dist/cjs/data/board/facts.js +137 -0
  246. package/dist/cjs/data/board/facts.js.map +1 -0
  247. package/dist/cjs/data/board/fixtures.d.ts +21 -0
  248. package/dist/cjs/data/board/fixtures.d.ts.map +1 -0
  249. package/dist/cjs/data/board/fixtures.js +46 -0
  250. package/dist/cjs/data/board/fixtures.js.map +1 -0
  251. package/dist/cjs/data/board/query.d.ts +12 -0
  252. package/dist/cjs/data/board/query.d.ts.map +1 -0
  253. package/dist/cjs/data/board/query.js +82 -0
  254. package/dist/cjs/data/board/query.js.map +1 -0
  255. package/dist/cjs/data/board/rank.d.ts +22 -0
  256. package/dist/cjs/data/board/rank.d.ts.map +1 -0
  257. package/dist/cjs/data/board/rank.js +51 -0
  258. package/dist/cjs/data/board/rank.js.map +1 -0
  259. package/dist/cjs/data/board/read.d.ts +102 -0
  260. package/dist/cjs/data/board/read.d.ts.map +1 -0
  261. package/dist/cjs/data/board/read.js +211 -0
  262. package/dist/cjs/data/board/read.js.map +1 -0
  263. package/dist/cjs/data/board/series.d.ts +50 -0
  264. package/dist/cjs/data/board/series.d.ts.map +1 -0
  265. package/dist/cjs/data/board/series.js +161 -0
  266. package/dist/cjs/data/board/series.js.map +1 -0
  267. package/dist/cjs/data/board/trust.d.ts +31 -0
  268. package/dist/cjs/data/board/trust.d.ts.map +1 -0
  269. package/dist/cjs/data/board/trust.js +53 -0
  270. package/dist/cjs/data/board/trust.js.map +1 -0
  271. package/dist/cjs/data/board/types.d.ts +338 -0
  272. package/dist/cjs/data/board/types.d.ts.map +1 -0
  273. package/dist/cjs/data/board/types.js +88 -0
  274. package/dist/cjs/data/board/types.js.map +1 -0
  275. package/dist/cjs/data/board/url.d.ts +22 -0
  276. package/dist/cjs/data/board/url.d.ts.map +1 -0
  277. package/dist/cjs/data/board/url.js +70 -0
  278. package/dist/cjs/data/board/url.js.map +1 -0
  279. package/dist/cjs/data/board/words.d.ts +25 -0
  280. package/dist/cjs/data/board/words.d.ts.map +1 -0
  281. package/dist/cjs/data/board/words.js +60 -0
  282. package/dist/cjs/data/board/words.js.map +1 -0
  283. package/dist/cjs/data/cid.d.ts +49 -0
  284. package/dist/cjs/data/cid.d.ts.map +1 -0
  285. package/dist/cjs/data/cid.js +91 -0
  286. package/dist/cjs/data/cid.js.map +1 -0
  287. package/dist/cjs/data/concurrency.d.ts +14 -0
  288. package/dist/cjs/data/concurrency.d.ts.map +1 -0
  289. package/dist/cjs/data/concurrency.js +32 -0
  290. package/dist/cjs/data/concurrency.js.map +1 -0
  291. package/dist/cjs/data/credentials.d.ts +28 -0
  292. package/dist/cjs/data/credentials.d.ts.map +1 -0
  293. package/dist/cjs/data/credentials.js +81 -0
  294. package/dist/cjs/data/credentials.js.map +1 -0
  295. package/dist/cjs/data/denoms.d.ts +11 -0
  296. package/dist/cjs/data/denoms.d.ts.map +1 -0
  297. package/dist/cjs/data/denoms.js +106 -0
  298. package/dist/cjs/data/denoms.js.map +1 -0
  299. package/dist/cjs/data/displayNames.d.ts +58 -0
  300. package/dist/cjs/data/displayNames.d.ts.map +1 -0
  301. package/dist/cjs/data/displayNames.js +99 -0
  302. package/dist/cjs/data/displayNames.js.map +1 -0
  303. package/dist/cjs/data/docPath.d.ts +28 -0
  304. package/dist/cjs/data/docPath.d.ts.map +1 -0
  305. package/dist/cjs/data/docPath.js +44 -0
  306. package/dist/cjs/data/docPath.js.map +1 -0
  307. package/dist/cjs/data/docUrls.d.ts +38 -0
  308. package/dist/cjs/data/docUrls.d.ts.map +1 -0
  309. package/dist/cjs/data/docUrls.js +70 -0
  310. package/dist/cjs/data/docUrls.js.map +1 -0
  311. package/dist/cjs/data/docs.d.ts +61 -0
  312. package/dist/cjs/data/docs.d.ts.map +1 -0
  313. package/dist/cjs/data/docs.js +199 -0
  314. package/dist/cjs/data/docs.js.map +1 -0
  315. package/dist/cjs/data/engine.d.ts +193 -0
  316. package/dist/cjs/data/engine.d.ts.map +1 -0
  317. package/dist/cjs/data/engine.js +411 -0
  318. package/dist/cjs/data/engine.js.map +1 -0
  319. package/dist/cjs/data/engineUrl.d.ts +19 -0
  320. package/dist/cjs/data/engineUrl.d.ts.map +1 -0
  321. package/dist/cjs/data/engineUrl.js +30 -0
  322. package/dist/cjs/data/engineUrl.js.map +1 -0
  323. package/dist/cjs/data/envelope.d.ts +69 -0
  324. package/dist/cjs/data/envelope.d.ts.map +1 -0
  325. package/dist/cjs/data/envelope.js +77 -0
  326. package/dist/cjs/data/envelope.js.map +1 -0
  327. package/dist/cjs/data/format.d.ts +122 -0
  328. package/dist/cjs/data/format.d.ts.map +1 -0
  329. package/dist/cjs/data/format.js +272 -0
  330. package/dist/cjs/data/format.js.map +1 -0
  331. package/dist/cjs/data/gql.d.ts +56 -0
  332. package/dist/cjs/data/gql.d.ts.map +1 -0
  333. package/dist/cjs/data/gql.js +109 -0
  334. package/dist/cjs/data/gql.js.map +1 -0
  335. package/dist/cjs/data/granters.d.ts +15 -0
  336. package/dist/cjs/data/granters.d.ts.map +1 -0
  337. package/dist/cjs/data/granters.js +76 -0
  338. package/dist/cjs/data/granters.js.map +1 -0
  339. package/dist/cjs/data/index.d.ts +18 -0
  340. package/dist/cjs/data/index.d.ts.map +1 -0
  341. package/dist/cjs/data/index.js +88 -0
  342. package/dist/cjs/data/index.js.map +1 -0
  343. package/dist/cjs/data/install.d.ts +124 -0
  344. package/dist/cjs/data/install.d.ts.map +1 -0
  345. package/dist/cjs/data/install.js +164 -0
  346. package/dist/cjs/data/install.js.map +1 -0
  347. package/dist/cjs/data/issueMessage.d.ts +20 -0
  348. package/dist/cjs/data/issueMessage.d.ts.map +1 -0
  349. package/dist/cjs/data/issueMessage.js +20 -0
  350. package/dist/cjs/data/issueMessage.js.map +1 -0
  351. package/dist/cjs/data/linked.d.ts +54 -0
  352. package/dist/cjs/data/linked.d.ts.map +1 -0
  353. package/dist/cjs/data/linked.js +142 -0
  354. package/dist/cjs/data/linked.js.map +1 -0
  355. package/dist/cjs/data/network.d.ts +21 -0
  356. package/dist/cjs/data/network.d.ts.map +1 -0
  357. package/dist/cjs/data/network.js +28 -0
  358. package/dist/cjs/data/network.js.map +1 -0
  359. package/dist/cjs/data/openness.d.ts +93 -0
  360. package/dist/cjs/data/openness.d.ts.map +1 -0
  361. package/dist/cjs/data/openness.js +145 -0
  362. package/dist/cjs/data/openness.js.map +1 -0
  363. package/dist/cjs/data/oracleInfo.d.ts +20 -0
  364. package/dist/cjs/data/oracleInfo.d.ts.map +1 -0
  365. package/dist/cjs/data/oracleInfo.js +38 -0
  366. package/dist/cjs/data/oracleInfo.js.map +1 -0
  367. package/dist/cjs/data/oracles.d.ts +44 -0
  368. package/dist/cjs/data/oracles.d.ts.map +1 -0
  369. package/dist/cjs/data/oracles.js +115 -0
  370. package/dist/cjs/data/oracles.js.map +1 -0
  371. package/dist/cjs/data/outbound.d.ts +50 -0
  372. package/dist/cjs/data/outbound.d.ts.map +1 -0
  373. package/dist/cjs/data/outbound.js +102 -0
  374. package/dist/cjs/data/outbound.js.map +1 -0
  375. package/dist/cjs/data/paged.d.ts +48 -0
  376. package/dist/cjs/data/paged.d.ts.map +1 -0
  377. package/dist/cjs/data/paged.js +81 -0
  378. package/dist/cjs/data/paged.js.map +1 -0
  379. package/dist/cjs/data/profiles.d.ts +3 -0
  380. package/dist/cjs/data/profiles.d.ts.map +1 -0
  381. package/dist/cjs/data/profiles.js +71 -0
  382. package/dist/cjs/data/profiles.js.map +1 -0
  383. package/dist/cjs/data/proof.d.ts +93 -0
  384. package/dist/cjs/data/proof.d.ts.map +1 -0
  385. package/dist/cjs/data/proof.js +166 -0
  386. package/dist/cjs/data/proof.js.map +1 -0
  387. package/dist/cjs/data/queue.d.ts +49 -0
  388. package/dist/cjs/data/queue.d.ts.map +1 -0
  389. package/dist/cjs/data/queue.js +118 -0
  390. package/dist/cjs/data/queue.js.map +1 -0
  391. package/dist/cjs/data/rates.d.ts +143 -0
  392. package/dist/cjs/data/rates.d.ts.map +1 -0
  393. package/dist/cjs/data/rates.js +265 -0
  394. package/dist/cjs/data/rates.js.map +1 -0
  395. package/dist/cjs/data/receipt.d.ts +207 -0
  396. package/dist/cjs/data/receipt.d.ts.map +1 -0
  397. package/dist/cjs/data/receipt.js +320 -0
  398. package/dist/cjs/data/receipt.js.map +1 -0
  399. package/dist/cjs/data/resources.d.ts +30 -0
  400. package/dist/cjs/data/resources.d.ts.map +1 -0
  401. package/dist/cjs/data/resources.js +29 -0
  402. package/dist/cjs/data/resources.js.map +1 -0
  403. package/dist/cjs/data/sametask.d.ts +35 -0
  404. package/dist/cjs/data/sametask.d.ts.map +1 -0
  405. package/dist/cjs/data/sametask.js +45 -0
  406. package/dist/cjs/data/sametask.js.map +1 -0
  407. package/dist/cjs/data/shortName.d.ts +52 -0
  408. package/dist/cjs/data/shortName.d.ts.map +1 -0
  409. package/dist/cjs/data/shortName.js +122 -0
  410. package/dist/cjs/data/shortName.js.map +1 -0
  411. package/dist/cjs/data/threads.d.ts +97 -0
  412. package/dist/cjs/data/threads.d.ts.map +1 -0
  413. package/dist/cjs/data/threads.js +214 -0
  414. package/dist/cjs/data/threads.js.map +1 -0
  415. package/dist/cjs/data/trace.d.ts +133 -0
  416. package/dist/cjs/data/trace.d.ts.map +1 -0
  417. package/dist/cjs/data/trace.js +125 -0
  418. package/dist/cjs/data/trace.js.map +1 -0
  419. package/dist/cjs/data/traceWords.d.ts +54 -0
  420. package/dist/cjs/data/traceWords.d.ts.map +1 -0
  421. package/dist/cjs/data/traceWords.js +192 -0
  422. package/dist/cjs/data/traceWords.js.map +1 -0
  423. package/dist/cjs/data/types.d.ts +50 -0
  424. package/dist/cjs/data/types.d.ts.map +1 -0
  425. package/dist/cjs/data/types.js +9 -0
  426. package/dist/cjs/data/types.js.map +1 -0
  427. package/dist/cjs/data/verdict.d.ts +37 -0
  428. package/dist/cjs/data/verdict.d.ts.map +1 -0
  429. package/dist/cjs/data/verdict.js +57 -0
  430. package/dist/cjs/data/verdict.js.map +1 -0
  431. package/dist/cjs/data/work.d.ts +46 -0
  432. package/dist/cjs/data/work.d.ts.map +1 -0
  433. package/dist/cjs/data/work.js +105 -0
  434. package/dist/cjs/data/work.js.map +1 -0
  435. package/dist/cjs/envRead.d.ts +15 -0
  436. package/dist/cjs/envRead.d.ts.map +1 -0
  437. package/dist/cjs/envRead.js +26 -0
  438. package/dist/cjs/envRead.js.map +1 -0
  439. package/dist/cjs/geo/box.d.ts +64 -0
  440. package/dist/cjs/geo/box.d.ts.map +1 -0
  441. package/dist/cjs/geo/box.js +97 -0
  442. package/dist/cjs/geo/box.js.map +1 -0
  443. package/dist/cjs/geo/exif.d.ts +20 -0
  444. package/dist/cjs/geo/exif.d.ts.map +1 -0
  445. package/dist/cjs/geo/exif.js +220 -0
  446. package/dist/cjs/geo/exif.js.map +1 -0
  447. package/dist/cjs/geo/exifcarry.d.ts +31 -0
  448. package/dist/cjs/geo/exifcarry.d.ts.map +1 -0
  449. package/dist/cjs/geo/exifcarry.js +81 -0
  450. package/dist/cjs/geo/exifcarry.js.map +1 -0
  451. package/dist/cjs/geo/exifnote.d.ts +86 -0
  452. package/dist/cjs/geo/exifnote.d.ts.map +1 -0
  453. package/dist/cjs/geo/exifnote.js +253 -0
  454. package/dist/cjs/geo/exifnote.js.map +1 -0
  455. package/dist/cjs/geo/mentions.d.ts +44 -0
  456. package/dist/cjs/geo/mentions.d.ts.map +1 -0
  457. package/dist/cjs/geo/mentions.js +199 -0
  458. package/dist/cjs/geo/mentions.js.map +1 -0
  459. package/dist/cjs/geo/osm.d.ts +112 -0
  460. package/dist/cjs/geo/osm.d.ts.map +1 -0
  461. package/dist/cjs/geo/osm.js +178 -0
  462. package/dist/cjs/geo/osm.js.map +1 -0
  463. package/dist/cjs/geo/place.d.ts +51 -0
  464. package/dist/cjs/geo/place.d.ts.map +1 -0
  465. package/dist/cjs/geo/place.js +106 -0
  466. package/dist/cjs/geo/place.js.map +1 -0
  467. package/dist/cjs/geo/search.d.ts +41 -0
  468. package/dist/cjs/geo/search.d.ts.map +1 -0
  469. package/dist/cjs/geo/search.js +187 -0
  470. package/dist/cjs/geo/search.js.map +1 -0
  471. package/dist/cjs/geo/sun.d.ts +39 -0
  472. package/dist/cjs/geo/sun.d.ts.map +1 -0
  473. package/dist/cjs/geo/sun.js +55 -0
  474. package/dist/cjs/geo/sun.js.map +1 -0
  475. package/dist/cjs/geo/tiles.d.ts +89 -0
  476. package/dist/cjs/geo/tiles.d.ts.map +1 -0
  477. package/dist/cjs/geo/tiles.js +146 -0
  478. package/dist/cjs/geo/tiles.js.map +1 -0
  479. package/dist/cjs/geo.d.ts +20 -0
  480. package/dist/cjs/geo.d.ts.map +1 -0
  481. package/dist/cjs/geo.js +35 -0
  482. package/dist/cjs/geo.js.map +1 -0
  483. package/dist/cjs/given.d.ts +15 -0
  484. package/dist/cjs/given.d.ts.map +1 -0
  485. package/dist/cjs/given.js +25 -0
  486. package/dist/cjs/given.js.map +1 -0
  487. package/dist/cjs/network.d.ts +23 -0
  488. package/dist/cjs/network.d.ts.map +1 -0
  489. package/dist/cjs/network.js +56 -0
  490. package/dist/cjs/network.js.map +1 -0
  491. package/dist/cjs/package.json +3 -0
  492. package/dist/cjs/protocol.d.ts +40 -0
  493. package/dist/cjs/protocol.d.ts.map +1 -0
  494. package/dist/cjs/protocol.js +54 -0
  495. package/dist/cjs/protocol.js.map +1 -0
  496. package/dist/cjs/rubric/bridge.d.ts +428 -0
  497. package/dist/cjs/rubric/bridge.d.ts.map +1 -0
  498. package/dist/cjs/rubric/bridge.js +917 -0
  499. package/dist/cjs/rubric/bridge.js.map +1 -0
  500. package/dist/cjs/rubric/call.d.ts +73 -0
  501. package/dist/cjs/rubric/call.d.ts.map +1 -0
  502. package/dist/cjs/rubric/call.js +132 -0
  503. package/dist/cjs/rubric/call.js.map +1 -0
  504. package/dist/cjs/rubric/card.d.ts +74 -0
  505. package/dist/cjs/rubric/card.d.ts.map +1 -0
  506. package/dist/cjs/rubric/card.js +45 -0
  507. package/dist/cjs/rubric/card.js.map +1 -0
  508. package/dist/cjs/rubric/chain.d.ts +44 -0
  509. package/dist/cjs/rubric/chain.d.ts.map +1 -0
  510. package/dist/cjs/rubric/chain.js +52 -0
  511. package/dist/cjs/rubric/chain.js.map +1 -0
  512. package/dist/cjs/rubric/claimForm.d.ts +142 -0
  513. package/dist/cjs/rubric/claimForm.d.ts.map +1 -0
  514. package/dist/cjs/rubric/claimForm.js +112 -0
  515. package/dist/cjs/rubric/claimForm.js.map +1 -0
  516. package/dist/cjs/rubric/claimFormResource.d.ts +34 -0
  517. package/dist/cjs/rubric/claimFormResource.d.ts.map +1 -0
  518. package/dist/cjs/rubric/claimFormResource.js +38 -0
  519. package/dist/cjs/rubric/claimFormResource.js.map +1 -0
  520. package/dist/cjs/rubric/compose.d.ts +99 -0
  521. package/dist/cjs/rubric/compose.d.ts.map +1 -0
  522. package/dist/cjs/rubric/compose.js +229 -0
  523. package/dist/cjs/rubric/compose.js.map +1 -0
  524. package/dist/cjs/rubric/confidence.d.ts +81 -0
  525. package/dist/cjs/rubric/confidence.d.ts.map +1 -0
  526. package/dist/cjs/rubric/confidence.js +87 -0
  527. package/dist/cjs/rubric/confidence.js.map +1 -0
  528. package/dist/cjs/rubric/draft.d.ts +224 -0
  529. package/dist/cjs/rubric/draft.d.ts.map +1 -0
  530. package/dist/cjs/rubric/draft.js +214 -0
  531. package/dist/cjs/rubric/draft.js.map +1 -0
  532. package/dist/cjs/rubric/gateMet.d.ts +46 -0
  533. package/dist/cjs/rubric/gateMet.d.ts.map +1 -0
  534. package/dist/cjs/rubric/gateMet.js +110 -0
  535. package/dist/cjs/rubric/gateMet.js.map +1 -0
  536. package/dist/cjs/rubric/leg.d.ts +106 -0
  537. package/dist/cjs/rubric/leg.d.ts.map +1 -0
  538. package/dist/cjs/rubric/leg.js +147 -0
  539. package/dist/cjs/rubric/leg.js.map +1 -0
  540. package/dist/cjs/rubric/publish.d.ts +39 -0
  541. package/dist/cjs/rubric/publish.d.ts.map +1 -0
  542. package/dist/cjs/rubric/publish.js +34 -0
  543. package/dist/cjs/rubric/publish.js.map +1 -0
  544. package/dist/cjs/rubric/reanchor.d.ts +79 -0
  545. package/dist/cjs/rubric/reanchor.d.ts.map +1 -0
  546. package/dist/cjs/rubric/reanchor.js +154 -0
  547. package/dist/cjs/rubric/reanchor.js.map +1 -0
  548. package/dist/cjs/rubric/receipt.d.ts +96 -0
  549. package/dist/cjs/rubric/receipt.d.ts.map +1 -0
  550. package/dist/cjs/rubric/receipt.js +28 -0
  551. package/dist/cjs/rubric/receipt.js.map +1 -0
  552. package/dist/cjs/rubric/roundTrips.d.ts +17 -0
  553. package/dist/cjs/rubric/roundTrips.d.ts.map +1 -0
  554. package/dist/cjs/rubric/roundTrips.js +24 -0
  555. package/dist/cjs/rubric/roundTrips.js.map +1 -0
  556. package/dist/cjs/rubric/terms.d.ts +611 -0
  557. package/dist/cjs/rubric/terms.d.ts.map +1 -0
  558. package/dist/cjs/rubric/terms.js +777 -0
  559. package/dist/cjs/rubric/terms.js.map +1 -0
  560. package/dist/cjs/rubric/wants.d.ts +36 -0
  561. package/dist/cjs/rubric/wants.d.ts.map +1 -0
  562. package/dist/cjs/rubric/wants.js +57 -0
  563. package/dist/cjs/rubric/wants.js.map +1 -0
  564. package/dist/cjs/rubric.d.ts +30 -0
  565. package/dist/cjs/rubric.d.ts.map +1 -0
  566. package/dist/cjs/rubric.js +71 -0
  567. package/dist/cjs/rubric.js.map +1 -0
  568. package/dist/cjs/udid/base58.d.ts +8 -0
  569. package/dist/cjs/udid/base58.d.ts.map +1 -0
  570. package/dist/cjs/udid/base58.js +57 -0
  571. package/dist/cjs/udid/base58.js.map +1 -0
  572. package/dist/cjs/udid/canonical.d.ts +17 -0
  573. package/dist/cjs/udid/canonical.d.ts.map +1 -0
  574. package/dist/cjs/udid/canonical.js +34 -0
  575. package/dist/cjs/udid/canonical.js.map +1 -0
  576. package/dist/cjs/udid/cid.d.ts +22 -0
  577. package/dist/cjs/udid/cid.d.ts.map +1 -0
  578. package/dist/cjs/udid/cid.js +54 -0
  579. package/dist/cjs/udid/cid.js.map +1 -0
  580. package/dist/cjs/udid/key.d.ts +41 -0
  581. package/dist/cjs/udid/key.d.ts.map +1 -0
  582. package/dist/cjs/udid/key.js +64 -0
  583. package/dist/cjs/udid/key.js.map +1 -0
  584. package/dist/cjs/udid/resolve.d.ts +56 -0
  585. package/dist/cjs/udid/resolve.d.ts.map +1 -0
  586. package/dist/cjs/udid/resolve.js +168 -0
  587. package/dist/cjs/udid/resolve.js.map +1 -0
  588. package/dist/cjs/udid/schema.d.ts +150 -0
  589. package/dist/cjs/udid/schema.d.ts.map +1 -0
  590. package/dist/cjs/udid/schema.js +155 -0
  591. package/dist/cjs/udid/schema.js.map +1 -0
  592. package/dist/cjs/udid/verify.d.ts +35 -0
  593. package/dist/cjs/udid/verify.d.ts.map +1 -0
  594. package/dist/cjs/udid/verify.js +97 -0
  595. package/dist/cjs/udid/verify.js.map +1 -0
  596. package/dist/cjs/udid/wrapper.d.ts +90 -0
  597. package/dist/cjs/udid/wrapper.d.ts.map +1 -0
  598. package/dist/cjs/udid/wrapper.js +41 -0
  599. package/dist/cjs/udid/wrapper.js.map +1 -0
  600. package/dist/cjs/udid.d.ts +17 -0
  601. package/dist/cjs/udid.d.ts.map +1 -0
  602. package/dist/cjs/udid.js +33 -0
  603. package/dist/cjs/udid.js.map +1 -0
  604. package/dist/esm/board.d.ts +20 -0
  605. package/dist/esm/board.d.ts.map +1 -0
  606. package/dist/esm/board.js +23 -0
  607. package/dist/esm/board.js.map +1 -0
  608. package/dist/esm/campaign/badges.d.ts +30 -0
  609. package/dist/esm/campaign/badges.d.ts.map +1 -0
  610. package/dist/esm/campaign/badges.js +65 -0
  611. package/dist/esm/campaign/badges.js.map +1 -0
  612. package/dist/esm/campaign/bands.d.ts +161 -0
  613. package/dist/esm/campaign/bands.d.ts.map +1 -0
  614. package/dist/esm/campaign/bands.js +176 -0
  615. package/dist/esm/campaign/bands.js.map +1 -0
  616. package/dist/esm/campaign/campaign.d.ts +50 -0
  617. package/dist/esm/campaign/campaign.d.ts.map +1 -0
  618. package/dist/esm/campaign/campaign.js +147 -0
  619. package/dist/esm/campaign/campaign.js.map +1 -0
  620. package/dist/esm/campaign/campaigns.d.ts +2 -0
  621. package/dist/esm/campaign/campaigns.d.ts.map +1 -0
  622. package/dist/esm/campaign/campaigns.js +34 -0
  623. package/dist/esm/campaign/campaigns.js.map +1 -0
  624. package/dist/esm/campaign/cleanable.d.ts +13 -0
  625. package/dist/esm/campaign/cleanable.d.ts.map +1 -0
  626. package/dist/esm/campaign/cleanable.js +2 -0
  627. package/dist/esm/campaign/cleanable.js.map +1 -0
  628. package/dist/esm/campaign/cleanup.d.ts +78 -0
  629. package/dist/esm/campaign/cleanup.d.ts.map +1 -0
  630. package/dist/esm/campaign/cleanup.js +129 -0
  631. package/dist/esm/campaign/cleanup.js.map +1 -0
  632. package/dist/esm/campaign/commit.d.ts +39 -0
  633. package/dist/esm/campaign/commit.d.ts.map +1 -0
  634. package/dist/esm/campaign/commit.js +37 -0
  635. package/dist/esm/campaign/commit.js.map +1 -0
  636. package/dist/esm/campaign/field.d.ts +50 -0
  637. package/dist/esm/campaign/field.d.ts.map +1 -0
  638. package/dist/esm/campaign/field.js +88 -0
  639. package/dist/esm/campaign/field.js.map +1 -0
  640. package/dist/esm/campaign/fold.d.ts +227 -0
  641. package/dist/esm/campaign/fold.d.ts.map +1 -0
  642. package/dist/esm/campaign/fold.js +403 -0
  643. package/dist/esm/campaign/fold.js.map +1 -0
  644. package/dist/esm/campaign/funding.d.ts +153 -0
  645. package/dist/esm/campaign/funding.d.ts.map +1 -0
  646. package/dist/esm/campaign/funding.js +160 -0
  647. package/dist/esm/campaign/funding.js.map +1 -0
  648. package/dist/esm/campaign/landing.d.ts +20 -0
  649. package/dist/esm/campaign/landing.d.ts.map +1 -0
  650. package/dist/esm/campaign/landing.js +49 -0
  651. package/dist/esm/campaign/landing.js.map +1 -0
  652. package/dist/esm/campaign/pledges.d.ts +237 -0
  653. package/dist/esm/campaign/pledges.d.ts.map +1 -0
  654. package/dist/esm/campaign/pledges.js +210 -0
  655. package/dist/esm/campaign/pledges.js.map +1 -0
  656. package/dist/esm/campaign/pledgesChain.d.ts +58 -0
  657. package/dist/esm/campaign/pledgesChain.d.ts.map +1 -0
  658. package/dist/esm/campaign/pledgesChain.js +96 -0
  659. package/dist/esm/campaign/pledgesChain.js.map +1 -0
  660. package/dist/esm/campaign/pool.d.ts +137 -0
  661. package/dist/esm/campaign/pool.d.ts.map +1 -0
  662. package/dist/esm/campaign/pool.js +194 -0
  663. package/dist/esm/campaign/pool.js.map +1 -0
  664. package/dist/esm/campaign/record.d.ts +115 -0
  665. package/dist/esm/campaign/record.d.ts.map +1 -0
  666. package/dist/esm/campaign/record.js +252 -0
  667. package/dist/esm/campaign/record.js.map +1 -0
  668. package/dist/esm/campaign/rule.d.ts +311 -0
  669. package/dist/esm/campaign/rule.d.ts.map +1 -0
  670. package/dist/esm/campaign/rule.js +197 -0
  671. package/dist/esm/campaign/rule.js.map +1 -0
  672. package/dist/esm/campaign/spot.d.ts +37 -0
  673. package/dist/esm/campaign/spot.d.ts.map +1 -0
  674. package/dist/esm/campaign/spot.js +167 -0
  675. package/dist/esm/campaign/spot.js.map +1 -0
  676. package/dist/esm/campaign/spots.d.ts +437 -0
  677. package/dist/esm/campaign/spots.d.ts.map +1 -0
  678. package/dist/esm/campaign/spots.js +735 -0
  679. package/dist/esm/campaign/spots.js.map +1 -0
  680. package/dist/esm/campaign/standings.d.ts +236 -0
  681. package/dist/esm/campaign/standings.d.ts.map +1 -0
  682. package/dist/esm/campaign/standings.js +357 -0
  683. package/dist/esm/campaign/standings.js.map +1 -0
  684. package/dist/esm/campaign/treasurySends.d.ts +116 -0
  685. package/dist/esm/campaign/treasurySends.d.ts.map +1 -0
  686. package/dist/esm/campaign/treasurySends.js +190 -0
  687. package/dist/esm/campaign/treasurySends.js.map +1 -0
  688. package/dist/esm/campaign.d.ts +29 -0
  689. package/dist/esm/campaign.d.ts.map +1 -0
  690. package/dist/esm/campaign.js +28 -0
  691. package/dist/esm/campaign.js.map +1 -0
  692. package/dist/esm/chain/account.d.ts +47 -0
  693. package/dist/esm/chain/account.d.ts.map +1 -0
  694. package/dist/esm/chain/account.js +156 -0
  695. package/dist/esm/chain/account.js.map +1 -0
  696. package/dist/esm/chain/accountProof.d.ts +135 -0
  697. package/dist/esm/chain/accountProof.d.ts.map +1 -0
  698. package/dist/esm/chain/accountProof.js +153 -0
  699. package/dist/esm/chain/accountProof.js.map +1 -0
  700. package/dist/esm/chain/allowance.d.ts +17 -0
  701. package/dist/esm/chain/allowance.d.ts.map +1 -0
  702. package/dist/esm/chain/allowance.js +74 -0
  703. package/dist/esm/chain/allowance.js.map +1 -0
  704. package/dist/esm/chain/allowanceRead.d.ts +2 -0
  705. package/dist/esm/chain/allowanceRead.d.ts.map +1 -0
  706. package/dist/esm/chain/allowanceRead.js +56 -0
  707. package/dist/esm/chain/allowanceRead.js.map +1 -0
  708. package/dist/esm/chain/ask.d.ts +211 -0
  709. package/dist/esm/chain/ask.d.ts.map +1 -0
  710. package/dist/esm/chain/ask.js +509 -0
  711. package/dist/esm/chain/ask.js.map +1 -0
  712. package/dist/esm/chain/bridge.d.ts +50 -0
  713. package/dist/esm/chain/bridge.d.ts.map +1 -0
  714. package/dist/esm/chain/bridge.js +78 -0
  715. package/dist/esm/chain/bridge.js.map +1 -0
  716. package/dist/esm/chain/broadcast.d.ts +40 -0
  717. package/dist/esm/chain/broadcast.d.ts.map +1 -0
  718. package/dist/esm/chain/broadcast.js +147 -0
  719. package/dist/esm/chain/broadcast.js.map +1 -0
  720. package/dist/esm/chain/delegate.d.ts +154 -0
  721. package/dist/esm/chain/delegate.d.ts.map +1 -0
  722. package/dist/esm/chain/delegate.js +230 -0
  723. package/dist/esm/chain/delegate.js.map +1 -0
  724. package/dist/esm/chain/encoding.d.ts +7 -0
  725. package/dist/esm/chain/encoding.d.ts.map +1 -0
  726. package/dist/esm/chain/encoding.js +22 -0
  727. package/dist/esm/chain/encoding.js.map +1 -0
  728. package/dist/esm/chain/env.d.ts +50 -0
  729. package/dist/esm/chain/env.d.ts.map +1 -0
  730. package/dist/esm/chain/env.js +83 -0
  731. package/dist/esm/chain/env.js.map +1 -0
  732. package/dist/esm/chain/gate.d.ts +12 -0
  733. package/dist/esm/chain/gate.d.ts.map +1 -0
  734. package/dist/esm/chain/gate.js +52 -0
  735. package/dist/esm/chain/gate.js.map +1 -0
  736. package/dist/esm/chain/grantPending.d.ts +31 -0
  737. package/dist/esm/chain/grantPending.d.ts.map +1 -0
  738. package/dist/esm/chain/grantPending.js +50 -0
  739. package/dist/esm/chain/grantPending.js.map +1 -0
  740. package/dist/esm/chain/guest.d.ts +97 -0
  741. package/dist/esm/chain/guest.d.ts.map +1 -0
  742. package/dist/esm/chain/guest.js +168 -0
  743. package/dist/esm/chain/guest.js.map +1 -0
  744. package/dist/esm/chain/iid.d.ts +26 -0
  745. package/dist/esm/chain/iid.d.ts.map +1 -0
  746. package/dist/esm/chain/iid.js +62 -0
  747. package/dist/esm/chain/iid.js.map +1 -0
  748. package/dist/esm/chain/money.d.ts +48 -0
  749. package/dist/esm/chain/money.d.ts.map +1 -0
  750. package/dist/esm/chain/money.js +65 -0
  751. package/dist/esm/chain/money.js.map +1 -0
  752. package/dist/esm/chain/oracle.d.ts +24 -0
  753. package/dist/esm/chain/oracle.d.ts.map +1 -0
  754. package/dist/esm/chain/oracle.js +41 -0
  755. package/dist/esm/chain/oracle.js.map +1 -0
  756. package/dist/esm/chain/pendingTransact.d.ts +31 -0
  757. package/dist/esm/chain/pendingTransact.d.ts.map +1 -0
  758. package/dist/esm/chain/pendingTransact.js +59 -0
  759. package/dist/esm/chain/pendingTransact.js.map +1 -0
  760. package/dist/esm/chain/query.d.ts +75 -0
  761. package/dist/esm/chain/query.d.ts.map +1 -0
  762. package/dist/esm/chain/query.js +160 -0
  763. package/dist/esm/chain/query.js.map +1 -0
  764. package/dist/esm/chain/send.d.ts +42 -0
  765. package/dist/esm/chain/send.d.ts.map +1 -0
  766. package/dist/esm/chain/send.js +48 -0
  767. package/dist/esm/chain/send.js.map +1 -0
  768. package/dist/esm/chain/session.d.ts +109 -0
  769. package/dist/esm/chain/session.d.ts.map +1 -0
  770. package/dist/esm/chain/session.js +133 -0
  771. package/dist/esm/chain/session.js.map +1 -0
  772. package/dist/esm/chain/signWith.d.ts +69 -0
  773. package/dist/esm/chain/signWith.d.ts.map +1 -0
  774. package/dist/esm/chain/signWith.js +238 -0
  775. package/dist/esm/chain/signWith.js.map +1 -0
  776. package/dist/esm/chain/signer.d.ts +38 -0
  777. package/dist/esm/chain/signer.d.ts.map +1 -0
  778. package/dist/esm/chain/signer.js +73 -0
  779. package/dist/esm/chain/signer.js.map +1 -0
  780. package/dist/esm/chain/signx.d.ts +233 -0
  781. package/dist/esm/chain/signx.d.ts.map +1 -0
  782. package/dist/esm/chain/signx.js +475 -0
  783. package/dist/esm/chain/signx.js.map +1 -0
  784. package/dist/esm/chain/sponsor.d.ts +2 -0
  785. package/dist/esm/chain/sponsor.d.ts.map +1 -0
  786. package/dist/esm/chain/sponsor.js +73 -0
  787. package/dist/esm/chain/sponsor.js.map +1 -0
  788. package/dist/esm/chain/store.d.ts +115 -0
  789. package/dist/esm/chain/store.d.ts.map +1 -0
  790. package/dist/esm/chain/store.js +164 -0
  791. package/dist/esm/chain/store.js.map +1 -0
  792. package/dist/esm/chain/subscription.d.ts +73 -0
  793. package/dist/esm/chain/subscription.d.ts.map +1 -0
  794. package/dist/esm/chain/subscription.js +206 -0
  795. package/dist/esm/chain/subscription.js.map +1 -0
  796. package/dist/esm/chain/takeBack.d.ts +114 -0
  797. package/dist/esm/chain/takeBack.d.ts.map +1 -0
  798. package/dist/esm/chain/takeBack.js +177 -0
  799. package/dist/esm/chain/takeBack.js.map +1 -0
  800. package/dist/esm/chain/union.d.ts +125 -0
  801. package/dist/esm/chain/union.d.ts.map +1 -0
  802. package/dist/esm/chain/union.js +295 -0
  803. package/dist/esm/chain/union.js.map +1 -0
  804. package/dist/esm/chain/webauthn.d.ts +22 -0
  805. package/dist/esm/chain/webauthn.d.ts.map +1 -0
  806. package/dist/esm/chain/webauthn.js +65 -0
  807. package/dist/esm/chain/webauthn.js.map +1 -0
  808. package/dist/esm/chain.d.ts +35 -0
  809. package/dist/esm/chain.d.ts.map +1 -0
  810. package/dist/esm/chain.js +50 -0
  811. package/dist/esm/chain.js.map +1 -0
  812. package/dist/esm/config.d.ts +120 -0
  813. package/dist/esm/config.d.ts.map +1 -0
  814. package/dist/esm/config.js +115 -0
  815. package/dist/esm/config.js.map +1 -0
  816. package/dist/esm/data/accept.d.ts +69 -0
  817. package/dist/esm/data/accept.d.ts.map +1 -0
  818. package/dist/esm/data/accept.js +151 -0
  819. package/dist/esm/data/accept.js.map +1 -0
  820. package/dist/esm/data/agent.d.ts +87 -0
  821. package/dist/esm/data/agent.d.ts.map +1 -0
  822. package/dist/esm/data/agent.js +108 -0
  823. package/dist/esm/data/agent.js.map +1 -0
  824. package/dist/esm/data/askFilter.d.ts +45 -0
  825. package/dist/esm/data/askFilter.d.ts.map +1 -0
  826. package/dist/esm/data/askFilter.js +45 -0
  827. package/dist/esm/data/askFilter.js.map +1 -0
  828. package/dist/esm/data/authenticators.d.ts +35 -0
  829. package/dist/esm/data/authenticators.d.ts.map +1 -0
  830. package/dist/esm/data/authenticators.js +71 -0
  831. package/dist/esm/data/authenticators.js.map +1 -0
  832. package/dist/esm/data/balance.d.ts +39 -0
  833. package/dist/esm/data/balance.d.ts.map +1 -0
  834. package/dist/esm/data/balance.js +111 -0
  835. package/dist/esm/data/balance.js.map +1 -0
  836. package/dist/esm/data/board/assemble.d.ts +140 -0
  837. package/dist/esm/data/board/assemble.d.ts.map +1 -0
  838. package/dist/esm/data/board/assemble.js +539 -0
  839. package/dist/esm/data/board/assemble.js.map +1 -0
  840. package/dist/esm/data/board/coverage.d.ts +112 -0
  841. package/dist/esm/data/board/coverage.d.ts.map +1 -0
  842. package/dist/esm/data/board/coverage.js +180 -0
  843. package/dist/esm/data/board/coverage.js.map +1 -0
  844. package/dist/esm/data/board/facts.d.ts +63 -0
  845. package/dist/esm/data/board/facts.d.ts.map +1 -0
  846. package/dist/esm/data/board/facts.js +127 -0
  847. package/dist/esm/data/board/facts.js.map +1 -0
  848. package/dist/esm/data/board/fixtures.d.ts +21 -0
  849. package/dist/esm/data/board/fixtures.d.ts.map +1 -0
  850. package/dist/esm/data/board/fixtures.js +40 -0
  851. package/dist/esm/data/board/fixtures.js.map +1 -0
  852. package/dist/esm/data/board/query.d.ts +12 -0
  853. package/dist/esm/data/board/query.d.ts.map +1 -0
  854. package/dist/esm/data/board/query.js +67 -0
  855. package/dist/esm/data/board/query.js.map +1 -0
  856. package/dist/esm/data/board/rank.d.ts +22 -0
  857. package/dist/esm/data/board/rank.d.ts.map +1 -0
  858. package/dist/esm/data/board/rank.js +45 -0
  859. package/dist/esm/data/board/rank.js.map +1 -0
  860. package/dist/esm/data/board/read.d.ts +102 -0
  861. package/dist/esm/data/board/read.d.ts.map +1 -0
  862. package/dist/esm/data/board/read.js +163 -0
  863. package/dist/esm/data/board/read.js.map +1 -0
  864. package/dist/esm/data/board/series.d.ts +50 -0
  865. package/dist/esm/data/board/series.d.ts.map +1 -0
  866. package/dist/esm/data/board/series.js +153 -0
  867. package/dist/esm/data/board/series.js.map +1 -0
  868. package/dist/esm/data/board/trust.d.ts +31 -0
  869. package/dist/esm/data/board/trust.d.ts.map +1 -0
  870. package/dist/esm/data/board/trust.js +47 -0
  871. package/dist/esm/data/board/trust.js.map +1 -0
  872. package/dist/esm/data/board/types.d.ts +338 -0
  873. package/dist/esm/data/board/types.d.ts.map +1 -0
  874. package/dist/esm/data/board/types.js +79 -0
  875. package/dist/esm/data/board/types.js.map +1 -0
  876. package/dist/esm/data/board/url.d.ts +22 -0
  877. package/dist/esm/data/board/url.d.ts.map +1 -0
  878. package/dist/esm/data/board/url.js +65 -0
  879. package/dist/esm/data/board/url.js.map +1 -0
  880. package/dist/esm/data/board/words.d.ts +25 -0
  881. package/dist/esm/data/board/words.d.ts.map +1 -0
  882. package/dist/esm/data/board/words.js +53 -0
  883. package/dist/esm/data/board/words.js.map +1 -0
  884. package/dist/esm/data/cid.d.ts +49 -0
  885. package/dist/esm/data/cid.d.ts.map +1 -0
  886. package/dist/esm/data/cid.js +82 -0
  887. package/dist/esm/data/cid.js.map +1 -0
  888. package/dist/esm/data/concurrency.d.ts +14 -0
  889. package/dist/esm/data/concurrency.d.ts.map +1 -0
  890. package/dist/esm/data/concurrency.js +29 -0
  891. package/dist/esm/data/concurrency.js.map +1 -0
  892. package/dist/esm/data/credentials.d.ts +28 -0
  893. package/dist/esm/data/credentials.d.ts.map +1 -0
  894. package/dist/esm/data/credentials.js +78 -0
  895. package/dist/esm/data/credentials.js.map +1 -0
  896. package/dist/esm/data/denoms.d.ts +11 -0
  897. package/dist/esm/data/denoms.d.ts.map +1 -0
  898. package/dist/esm/data/denoms.js +102 -0
  899. package/dist/esm/data/denoms.js.map +1 -0
  900. package/dist/esm/data/displayNames.d.ts +58 -0
  901. package/dist/esm/data/displayNames.d.ts.map +1 -0
  902. package/dist/esm/data/displayNames.js +94 -0
  903. package/dist/esm/data/displayNames.js.map +1 -0
  904. package/dist/esm/data/docPath.d.ts +28 -0
  905. package/dist/esm/data/docPath.d.ts.map +1 -0
  906. package/dist/esm/data/docPath.js +37 -0
  907. package/dist/esm/data/docPath.js.map +1 -0
  908. package/dist/esm/data/docUrls.d.ts +38 -0
  909. package/dist/esm/data/docUrls.d.ts.map +1 -0
  910. package/dist/esm/data/docUrls.js +46 -0
  911. package/dist/esm/data/docUrls.js.map +1 -0
  912. package/dist/esm/data/docs.d.ts +61 -0
  913. package/dist/esm/data/docs.d.ts.map +1 -0
  914. package/dist/esm/data/docs.js +177 -0
  915. package/dist/esm/data/docs.js.map +1 -0
  916. package/dist/esm/data/engine.d.ts +193 -0
  917. package/dist/esm/data/engine.d.ts.map +1 -0
  918. package/dist/esm/data/engine.js +362 -0
  919. package/dist/esm/data/engine.js.map +1 -0
  920. package/dist/esm/data/engineUrl.d.ts +19 -0
  921. package/dist/esm/data/engineUrl.d.ts.map +1 -0
  922. package/dist/esm/data/engineUrl.js +23 -0
  923. package/dist/esm/data/engineUrl.js.map +1 -0
  924. package/dist/esm/data/envelope.d.ts +69 -0
  925. package/dist/esm/data/envelope.d.ts.map +1 -0
  926. package/dist/esm/data/envelope.js +72 -0
  927. package/dist/esm/data/envelope.js.map +1 -0
  928. package/dist/esm/data/format.d.ts +122 -0
  929. package/dist/esm/data/format.d.ts.map +1 -0
  930. package/dist/esm/data/format.js +250 -0
  931. package/dist/esm/data/format.js.map +1 -0
  932. package/dist/esm/data/gql.d.ts +56 -0
  933. package/dist/esm/data/gql.d.ts.map +1 -0
  934. package/dist/esm/data/gql.js +100 -0
  935. package/dist/esm/data/gql.js.map +1 -0
  936. package/dist/esm/data/granters.d.ts +15 -0
  937. package/dist/esm/data/granters.d.ts.map +1 -0
  938. package/dist/esm/data/granters.js +71 -0
  939. package/dist/esm/data/granters.js.map +1 -0
  940. package/dist/esm/data/index.d.ts +18 -0
  941. package/dist/esm/data/index.d.ts.map +1 -0
  942. package/dist/esm/data/index.js +39 -0
  943. package/dist/esm/data/index.js.map +1 -0
  944. package/dist/esm/data/install.d.ts +124 -0
  945. package/dist/esm/data/install.d.ts.map +1 -0
  946. package/dist/esm/data/install.js +156 -0
  947. package/dist/esm/data/install.js.map +1 -0
  948. package/dist/esm/data/issueMessage.d.ts +20 -0
  949. package/dist/esm/data/issueMessage.d.ts.map +1 -0
  950. package/dist/esm/data/issueMessage.js +15 -0
  951. package/dist/esm/data/issueMessage.js.map +1 -0
  952. package/dist/esm/data/linked.d.ts +54 -0
  953. package/dist/esm/data/linked.d.ts.map +1 -0
  954. package/dist/esm/data/linked.js +136 -0
  955. package/dist/esm/data/linked.js.map +1 -0
  956. package/dist/esm/data/network.d.ts +21 -0
  957. package/dist/esm/data/network.d.ts.map +1 -0
  958. package/dist/esm/data/network.js +23 -0
  959. package/dist/esm/data/network.js.map +1 -0
  960. package/dist/esm/data/openness.d.ts +93 -0
  961. package/dist/esm/data/openness.d.ts.map +1 -0
  962. package/dist/esm/data/openness.js +140 -0
  963. package/dist/esm/data/openness.js.map +1 -0
  964. package/dist/esm/data/oracleInfo.d.ts +20 -0
  965. package/dist/esm/data/oracleInfo.d.ts.map +1 -0
  966. package/dist/esm/data/oracleInfo.js +35 -0
  967. package/dist/esm/data/oracleInfo.js.map +1 -0
  968. package/dist/esm/data/oracles.d.ts +44 -0
  969. package/dist/esm/data/oracles.d.ts.map +1 -0
  970. package/dist/esm/data/oracles.js +110 -0
  971. package/dist/esm/data/oracles.js.map +1 -0
  972. package/dist/esm/data/outbound.d.ts +50 -0
  973. package/dist/esm/data/outbound.d.ts.map +1 -0
  974. package/dist/esm/data/outbound.js +96 -0
  975. package/dist/esm/data/outbound.js.map +1 -0
  976. package/dist/esm/data/paged.d.ts +48 -0
  977. package/dist/esm/data/paged.d.ts.map +1 -0
  978. package/dist/esm/data/paged.js +75 -0
  979. package/dist/esm/data/paged.js.map +1 -0
  980. package/dist/esm/data/profiles.d.ts +3 -0
  981. package/dist/esm/data/profiles.d.ts.map +1 -0
  982. package/dist/esm/data/profiles.js +66 -0
  983. package/dist/esm/data/profiles.js.map +1 -0
  984. package/dist/esm/data/proof.d.ts +93 -0
  985. package/dist/esm/data/proof.d.ts.map +1 -0
  986. package/dist/esm/data/proof.js +128 -0
  987. package/dist/esm/data/proof.js.map +1 -0
  988. package/dist/esm/data/queue.d.ts +49 -0
  989. package/dist/esm/data/queue.d.ts.map +1 -0
  990. package/dist/esm/data/queue.js +115 -0
  991. package/dist/esm/data/queue.js.map +1 -0
  992. package/dist/esm/data/rates.d.ts +143 -0
  993. package/dist/esm/data/rates.d.ts.map +1 -0
  994. package/dist/esm/data/rates.js +249 -0
  995. package/dist/esm/data/rates.js.map +1 -0
  996. package/dist/esm/data/receipt.d.ts +207 -0
  997. package/dist/esm/data/receipt.d.ts.map +1 -0
  998. package/dist/esm/data/receipt.js +305 -0
  999. package/dist/esm/data/receipt.js.map +1 -0
  1000. package/dist/esm/data/resources.d.ts +30 -0
  1001. package/dist/esm/data/resources.d.ts.map +1 -0
  1002. package/dist/esm/data/resources.js +24 -0
  1003. package/dist/esm/data/resources.js.map +1 -0
  1004. package/dist/esm/data/sametask.d.ts +35 -0
  1005. package/dist/esm/data/sametask.d.ts.map +1 -0
  1006. package/dist/esm/data/sametask.js +40 -0
  1007. package/dist/esm/data/sametask.js.map +1 -0
  1008. package/dist/esm/data/shortName.d.ts +52 -0
  1009. package/dist/esm/data/shortName.d.ts.map +1 -0
  1010. package/dist/esm/data/shortName.js +119 -0
  1011. package/dist/esm/data/shortName.js.map +1 -0
  1012. package/dist/esm/data/threads.d.ts +97 -0
  1013. package/dist/esm/data/threads.d.ts.map +1 -0
  1014. package/dist/esm/data/threads.js +177 -0
  1015. package/dist/esm/data/threads.js.map +1 -0
  1016. package/dist/esm/data/trace.d.ts +133 -0
  1017. package/dist/esm/data/trace.d.ts.map +1 -0
  1018. package/dist/esm/data/trace.js +122 -0
  1019. package/dist/esm/data/trace.js.map +1 -0
  1020. package/dist/esm/data/traceWords.d.ts +54 -0
  1021. package/dist/esm/data/traceWords.d.ts.map +1 -0
  1022. package/dist/esm/data/traceWords.js +178 -0
  1023. package/dist/esm/data/traceWords.js.map +1 -0
  1024. package/dist/esm/data/types.d.ts +50 -0
  1025. package/dist/esm/data/types.d.ts.map +1 -0
  1026. package/dist/esm/data/types.js +6 -0
  1027. package/dist/esm/data/types.js.map +1 -0
  1028. package/dist/esm/data/verdict.d.ts +37 -0
  1029. package/dist/esm/data/verdict.d.ts.map +1 -0
  1030. package/dist/esm/data/verdict.js +51 -0
  1031. package/dist/esm/data/verdict.js.map +1 -0
  1032. package/dist/esm/data/work.d.ts +46 -0
  1033. package/dist/esm/data/work.d.ts.map +1 -0
  1034. package/dist/esm/data/work.js +68 -0
  1035. package/dist/esm/data/work.js.map +1 -0
  1036. package/dist/esm/envRead.d.ts +15 -0
  1037. package/dist/esm/envRead.d.ts.map +1 -0
  1038. package/dist/esm/envRead.js +20 -0
  1039. package/dist/esm/envRead.js.map +1 -0
  1040. package/dist/esm/geo/box.d.ts +64 -0
  1041. package/dist/esm/geo/box.d.ts.map +1 -0
  1042. package/dist/esm/geo/box.js +85 -0
  1043. package/dist/esm/geo/box.js.map +1 -0
  1044. package/dist/esm/geo/exif.d.ts +20 -0
  1045. package/dist/esm/geo/exif.d.ts.map +1 -0
  1046. package/dist/esm/geo/exif.js +215 -0
  1047. package/dist/esm/geo/exif.js.map +1 -0
  1048. package/dist/esm/geo/exifcarry.d.ts +31 -0
  1049. package/dist/esm/geo/exifcarry.d.ts.map +1 -0
  1050. package/dist/esm/geo/exifcarry.js +77 -0
  1051. package/dist/esm/geo/exifcarry.js.map +1 -0
  1052. package/dist/esm/geo/exifnote.d.ts +86 -0
  1053. package/dist/esm/geo/exifnote.d.ts.map +1 -0
  1054. package/dist/esm/geo/exifnote.js +243 -0
  1055. package/dist/esm/geo/exifnote.js.map +1 -0
  1056. package/dist/esm/geo/mentions.d.ts +44 -0
  1057. package/dist/esm/geo/mentions.d.ts.map +1 -0
  1058. package/dist/esm/geo/mentions.js +190 -0
  1059. package/dist/esm/geo/mentions.js.map +1 -0
  1060. package/dist/esm/geo/osm.d.ts +112 -0
  1061. package/dist/esm/geo/osm.d.ts.map +1 -0
  1062. package/dist/esm/geo/osm.js +171 -0
  1063. package/dist/esm/geo/osm.js.map +1 -0
  1064. package/dist/esm/geo/place.d.ts +51 -0
  1065. package/dist/esm/geo/place.d.ts.map +1 -0
  1066. package/dist/esm/geo/place.js +99 -0
  1067. package/dist/esm/geo/place.js.map +1 -0
  1068. package/dist/esm/geo/search.d.ts +41 -0
  1069. package/dist/esm/geo/search.d.ts.map +1 -0
  1070. package/dist/esm/geo/search.js +182 -0
  1071. package/dist/esm/geo/search.js.map +1 -0
  1072. package/dist/esm/geo/sun.d.ts +39 -0
  1073. package/dist/esm/geo/sun.d.ts.map +1 -0
  1074. package/dist/esm/geo/sun.js +51 -0
  1075. package/dist/esm/geo/sun.js.map +1 -0
  1076. package/dist/esm/geo/tiles.d.ts +89 -0
  1077. package/dist/esm/geo/tiles.d.ts.map +1 -0
  1078. package/dist/esm/geo/tiles.js +136 -0
  1079. package/dist/esm/geo/tiles.js.map +1 -0
  1080. package/dist/esm/geo.d.ts +20 -0
  1081. package/dist/esm/geo.d.ts.map +1 -0
  1082. package/dist/esm/geo.js +19 -0
  1083. package/dist/esm/geo.js.map +1 -0
  1084. package/dist/esm/given.d.ts +15 -0
  1085. package/dist/esm/given.d.ts.map +1 -0
  1086. package/dist/esm/given.js +18 -0
  1087. package/dist/esm/given.js.map +1 -0
  1088. package/dist/esm/network.d.ts +23 -0
  1089. package/dist/esm/network.d.ts.map +1 -0
  1090. package/dist/esm/network.js +48 -0
  1091. package/dist/esm/network.js.map +1 -0
  1092. package/dist/esm/package.json +3 -0
  1093. package/dist/esm/protocol.d.ts +40 -0
  1094. package/dist/esm/protocol.d.ts.map +1 -0
  1095. package/dist/esm/protocol.js +38 -0
  1096. package/dist/esm/protocol.js.map +1 -0
  1097. package/dist/esm/rubric/bridge.d.ts +428 -0
  1098. package/dist/esm/rubric/bridge.d.ts.map +1 -0
  1099. package/dist/esm/rubric/bridge.js +911 -0
  1100. package/dist/esm/rubric/bridge.js.map +1 -0
  1101. package/dist/esm/rubric/call.d.ts +73 -0
  1102. package/dist/esm/rubric/call.d.ts.map +1 -0
  1103. package/dist/esm/rubric/call.js +120 -0
  1104. package/dist/esm/rubric/call.js.map +1 -0
  1105. package/dist/esm/rubric/card.d.ts +74 -0
  1106. package/dist/esm/rubric/card.d.ts.map +1 -0
  1107. package/dist/esm/rubric/card.js +38 -0
  1108. package/dist/esm/rubric/card.js.map +1 -0
  1109. package/dist/esm/rubric/chain.d.ts +44 -0
  1110. package/dist/esm/rubric/chain.d.ts.map +1 -0
  1111. package/dist/esm/rubric/chain.js +49 -0
  1112. package/dist/esm/rubric/chain.js.map +1 -0
  1113. package/dist/esm/rubric/claimForm.d.ts +142 -0
  1114. package/dist/esm/rubric/claimForm.d.ts.map +1 -0
  1115. package/dist/esm/rubric/claimForm.js +109 -0
  1116. package/dist/esm/rubric/claimForm.js.map +1 -0
  1117. package/dist/esm/rubric/claimFormResource.d.ts +34 -0
  1118. package/dist/esm/rubric/claimFormResource.d.ts.map +1 -0
  1119. package/dist/esm/rubric/claimFormResource.js +33 -0
  1120. package/dist/esm/rubric/claimFormResource.js.map +1 -0
  1121. package/dist/esm/rubric/compose.d.ts +99 -0
  1122. package/dist/esm/rubric/compose.d.ts.map +1 -0
  1123. package/dist/esm/rubric/compose.js +225 -0
  1124. package/dist/esm/rubric/compose.js.map +1 -0
  1125. package/dist/esm/rubric/confidence.d.ts +81 -0
  1126. package/dist/esm/rubric/confidence.d.ts.map +1 -0
  1127. package/dist/esm/rubric/confidence.js +82 -0
  1128. package/dist/esm/rubric/confidence.js.map +1 -0
  1129. package/dist/esm/rubric/draft.d.ts +224 -0
  1130. package/dist/esm/rubric/draft.d.ts.map +1 -0
  1131. package/dist/esm/rubric/draft.js +206 -0
  1132. package/dist/esm/rubric/draft.js.map +1 -0
  1133. package/dist/esm/rubric/gateMet.d.ts +46 -0
  1134. package/dist/esm/rubric/gateMet.d.ts.map +1 -0
  1135. package/dist/esm/rubric/gateMet.js +104 -0
  1136. package/dist/esm/rubric/gateMet.js.map +1 -0
  1137. package/dist/esm/rubric/leg.d.ts +106 -0
  1138. package/dist/esm/rubric/leg.d.ts.map +1 -0
  1139. package/dist/esm/rubric/leg.js +138 -0
  1140. package/dist/esm/rubric/leg.js.map +1 -0
  1141. package/dist/esm/rubric/publish.d.ts +39 -0
  1142. package/dist/esm/rubric/publish.d.ts.map +1 -0
  1143. package/dist/esm/rubric/publish.js +29 -0
  1144. package/dist/esm/rubric/publish.js.map +1 -0
  1145. package/dist/esm/rubric/reanchor.d.ts +79 -0
  1146. package/dist/esm/rubric/reanchor.d.ts.map +1 -0
  1147. package/dist/esm/rubric/reanchor.js +146 -0
  1148. package/dist/esm/rubric/reanchor.js.map +1 -0
  1149. package/dist/esm/rubric/receipt.d.ts +96 -0
  1150. package/dist/esm/rubric/receipt.d.ts.map +1 -0
  1151. package/dist/esm/rubric/receipt.js +25 -0
  1152. package/dist/esm/rubric/receipt.js.map +1 -0
  1153. package/dist/esm/rubric/roundTrips.d.ts +17 -0
  1154. package/dist/esm/rubric/roundTrips.d.ts.map +1 -0
  1155. package/dist/esm/rubric/roundTrips.js +20 -0
  1156. package/dist/esm/rubric/roundTrips.js.map +1 -0
  1157. package/dist/esm/rubric/terms.d.ts +611 -0
  1158. package/dist/esm/rubric/terms.d.ts.map +1 -0
  1159. package/dist/esm/rubric/terms.js +755 -0
  1160. package/dist/esm/rubric/terms.js.map +1 -0
  1161. package/dist/esm/rubric/wants.d.ts +36 -0
  1162. package/dist/esm/rubric/wants.d.ts.map +1 -0
  1163. package/dist/esm/rubric/wants.js +52 -0
  1164. package/dist/esm/rubric/wants.js.map +1 -0
  1165. package/dist/esm/rubric.d.ts +30 -0
  1166. package/dist/esm/rubric.d.ts.map +1 -0
  1167. package/dist/esm/rubric.js +30 -0
  1168. package/dist/esm/rubric.js.map +1 -0
  1169. package/dist/esm/udid/base58.d.ts +8 -0
  1170. package/dist/esm/udid/base58.d.ts.map +1 -0
  1171. package/dist/esm/udid/base58.js +53 -0
  1172. package/dist/esm/udid/base58.js.map +1 -0
  1173. package/dist/esm/udid/canonical.d.ts +17 -0
  1174. package/dist/esm/udid/canonical.d.ts.map +1 -0
  1175. package/dist/esm/udid/canonical.js +28 -0
  1176. package/dist/esm/udid/canonical.js.map +1 -0
  1177. package/dist/esm/udid/cid.d.ts +22 -0
  1178. package/dist/esm/udid/cid.d.ts.map +1 -0
  1179. package/dist/esm/udid/cid.js +46 -0
  1180. package/dist/esm/udid/cid.js.map +1 -0
  1181. package/dist/esm/udid/key.d.ts +41 -0
  1182. package/dist/esm/udid/key.d.ts.map +1 -0
  1183. package/dist/esm/udid/key.js +58 -0
  1184. package/dist/esm/udid/key.js.map +1 -0
  1185. package/dist/esm/udid/resolve.d.ts +56 -0
  1186. package/dist/esm/udid/resolve.d.ts.map +1 -0
  1187. package/dist/esm/udid/resolve.js +162 -0
  1188. package/dist/esm/udid/resolve.js.map +1 -0
  1189. package/dist/esm/udid/schema.d.ts +150 -0
  1190. package/dist/esm/udid/schema.d.ts.map +1 -0
  1191. package/dist/esm/udid/schema.js +151 -0
  1192. package/dist/esm/udid/schema.js.map +1 -0
  1193. package/dist/esm/udid/verify.d.ts +35 -0
  1194. package/dist/esm/udid/verify.d.ts.map +1 -0
  1195. package/dist/esm/udid/verify.js +93 -0
  1196. package/dist/esm/udid/verify.js.map +1 -0
  1197. package/dist/esm/udid/wrapper.d.ts +90 -0
  1198. package/dist/esm/udid/wrapper.d.ts.map +1 -0
  1199. package/dist/esm/udid/wrapper.js +37 -0
  1200. package/dist/esm/udid/wrapper.js.map +1 -0
  1201. package/dist/esm/udid.d.ts +17 -0
  1202. package/dist/esm/udid.d.ts.map +1 -0
  1203. package/dist/esm/udid.js +17 -0
  1204. package/dist/esm/udid.js.map +1 -0
  1205. package/package.json +210 -4
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.loadWork = loadWork;
37
+ exports.loadWorkFor = loadWorkFor;
38
+ const docPath_ts_1 = require("./docPath.js");
39
+ /* Long enough for real work, short enough that one runaway envelope cannot
40
+ flood a thread page. */
41
+ const MAX_TEXT = 20_000;
42
+ async function loadWork(claimId) {
43
+ if (!(0, docPath_ts_1.isCid)(claimId))
44
+ return null;
45
+ try {
46
+ const { fetchDoc } = await Promise.resolve().then(() => __importStar(require("./docs.js")));
47
+ const upstream = await fetchDoc(claimId, { timeoutMs: 8000, next: { revalidate: 3600 } });
48
+ if (!upstream.ok)
49
+ return null;
50
+ const type = upstream.headers.get("content-type") ?? "";
51
+ /* The bytes just answered from one store; `url` is that store's, so the
52
+ browser is sent straight there rather than through the redirect. */
53
+ if (type.startsWith("image/"))
54
+ return { image: upstream.url || (0, docPath_ts_1.docPath)(claimId) };
55
+ const raw = (await upstream.text()).slice(0, MAX_TEXT);
56
+ try {
57
+ const parsed = JSON.parse(raw);
58
+ const text = typeof parsed.deliverable === "string" ? parsed.deliverable.trim() : "";
59
+ const image = typeof parsed.file === "string" && (0, docPath_ts_1.isCid)(parsed.file) ? (0, docPath_ts_1.docPath)(parsed.file) : undefined;
60
+ /* A self-chosen label, bounded and stripped of line breaks — it renders
61
+ inline beside a mark, and a name with a newline in it is a layout bug
62
+ somebody else gets to choose. */
63
+ const alias = typeof parsed.alias === "string" ? parsed.alias.replace(/\s+/g, " ").trim().slice(0, 40) : "";
64
+ /* The second file, offered as a link by its own name — bounded, one
65
+ line, and only ever the content address the claim itself carries. */
66
+ const extraCid = typeof parsed.extra?.cid === "string" && (0, docPath_ts_1.isCid)(parsed.extra.cid) ? parsed.extra.cid : null;
67
+ const attachment = extraCid
68
+ ? {
69
+ url: (0, docPath_ts_1.docPath)(extraCid),
70
+ name: (typeof parsed.extra?.name === "string" ? parsed.extra.name.replace(/\s+/g, " ").trim().slice(0, 60) : "") || "the file",
71
+ mediaType: typeof parsed.extra?.mediaType === "string" ? parsed.extra.mediaType.slice(0, 80) : "application/octet-stream"
72
+ }
73
+ : undefined;
74
+ const via = parsed.via === "mcp" ? "mcp" : undefined;
75
+ const delegate = via && typeof parsed.delegate === "string" && /^ixo1[a-z0-9]{38,58}$/.test(parsed.delegate) ? parsed.delegate : undefined;
76
+ if (!text && !image && !alias && !attachment)
77
+ return null;
78
+ return { ...(text ? { text } : {}), ...(image ? { image } : {}), ...(alias ? { alias } : {}), ...(attachment ? { attachment } : {}), ...(via ? { via } : {}), ...(delegate ? { delegate } : {}) };
79
+ }
80
+ catch {
81
+ /* Not an envelope — plain text handed straight over is still work. */
82
+ return raw.trim() ? { text: raw.trim() } : null;
83
+ }
84
+ }
85
+ catch {
86
+ return null;
87
+ }
88
+ }
89
+ /**
90
+ * The work for every claim on a thread, fetched together.
91
+ *
92
+ * Bounded on purpose: a thread with fifty submissions would otherwise open
93
+ * fifty connections to render one page, and the ones a reader can see are the
94
+ * recent ones. The rest still have their own receipt.
95
+ */
96
+ async function loadWorkFor(claimIds, limit = 12) {
97
+ const wanted = claimIds.slice(0, limit);
98
+ const found = await Promise.all(wanted.map(async (id) => [id, await loadWork(id)]));
99
+ const out = {};
100
+ for (const [id, work] of found)
101
+ if (work)
102
+ out[id] = work;
103
+ return out;
104
+ }
105
+ //# sourceMappingURL=work.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"work.js","sourceRoot":"","sources":["../../../src/data/work.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * The helpers the accessors share, kept OUT of `given.ts` on purpose:
3
+ * `given.ts` rides into first-load chunks (via `docPath`, `engineUrl`,
4
+ * `askDenom`), and webpack keeps every export of a shared module that any
5
+ * chunk uses — so helpers living there were carried by pages that never call
6
+ * them. Each accessor still reads its OWN variable by its literal name
7
+ * (`process.env.NEXT_PUBLIC_X`, never `process.env[name]`), so Next inlines
8
+ * exactly the values a module uses and nothing else.
9
+ *
10
+ * `hasEnv()` guards runtimes with no `process` at all (a plain browser bundle
11
+ * that is not Next, a Worker without nodejs_compat); Next provides `process`
12
+ * in client and edge bundles.
13
+ */
14
+ export { firstSet, hasEnv, strictBase } from "./network.ts";
15
+ //# sourceMappingURL=envRead.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envRead.d.ts","sourceRoot":"","sources":["../../src/envRead.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAOH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ /**
3
+ * The helpers the accessors share, kept OUT of `given.ts` on purpose:
4
+ * `given.ts` rides into first-load chunks (via `docPath`, `engineUrl`,
5
+ * `askDenom`), and webpack keeps every export of a shared module that any
6
+ * chunk uses — so helpers living there were carried by pages that never call
7
+ * them. Each accessor still reads its OWN variable by its literal name
8
+ * (`process.env.NEXT_PUBLIC_X`, never `process.env[name]`), so Next inlines
9
+ * exactly the values a module uses and nothing else.
10
+ *
11
+ * `hasEnv()` guards runtimes with no `process` at all (a plain browser bundle
12
+ * that is not Next, a Worker without nodejs_compat); Next provides `process`
13
+ * in client and edge bundles.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.strictBase = exports.hasEnv = exports.firstSet = void 0;
17
+ /* Implemented in `network.ts` (one shared module, one chunk); re-exported
18
+ here so accessors keep a name that says what they import. Kept as a
19
+ separate re-export on purpose: measured on the app build, importing the
20
+ helpers through this module produced a smaller webpack runtime
21
+ (4,233 B gzip) than importing them from network.ts directly (4,264 B). */
22
+ var network_ts_1 = require("./network.js");
23
+ Object.defineProperty(exports, "firstSet", { enumerable: true, get: function () { return network_ts_1.firstSet; } });
24
+ Object.defineProperty(exports, "hasEnv", { enumerable: true, get: function () { return network_ts_1.hasEnv; } });
25
+ Object.defineProperty(exports, "strictBase", { enumerable: true, get: function () { return network_ts_1.strictBase; } });
26
+ //# sourceMappingURL=envRead.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envRead.js","sourceRoot":"","sources":["../../src/envRead.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAEH;;;;4EAI4E;AAC5E,2CAA4D;AAAnD,sGAAA,QAAQ,OAAA;AAAE,oGAAA,MAAM,OAAA;AAAE,wGAAA,UAAU,OAAA"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Where on earth an ask is about.
3
+ *
4
+ * A box with named sides, because the two APIs that answer questions about
5
+ * boxes disagree about how to write one — and they disagree in the worst
6
+ * possible way, by both taking four bare numbers in a comma-separated string:
7
+ *
8
+ * OpenStreetMap's changesets API → min_lon, min_lat, max_lon, max_lat
9
+ * Overpass → south, west, north, east
10
+ *
11
+ * Longitude first in one, latitude first in the other. A box written for the
12
+ * wrong one is not an error, it is a *different place* — usually in the sea
13
+ * off West Africa, where (0,0)-ish mistakes go — and the answer comes back
14
+ * cheerfully empty. So no part of this codebase writes those strings by hand;
15
+ * both spellings come from here, and a test asserts they describe the same
16
+ * box, which is the only way to be sure they never drift apart.
17
+ */
18
+ export interface GeoBox {
19
+ /** Degrees, WGS84. West and south are the low corners. */
20
+ west: number;
21
+ south: number;
22
+ east: number;
23
+ north: number;
24
+ }
25
+ export interface GeoPoint {
26
+ lat: number;
27
+ lon: number;
28
+ }
29
+ /** Whether a box is one at all — the guard every entry point uses. */
30
+ export declare function isBox(box: unknown): box is GeoBox;
31
+ export declare const isPoint: (point: unknown) => point is GeoPoint;
32
+ /** `min_lon,min_lat,max_lon,max_lat` — the OSM changesets API's order. */
33
+ export declare const osmBboxParam: (box: GeoBox) => string;
34
+ /** `south,west,north,east` — Overpass's order, and not the one above. */
35
+ export declare const overpassBbox: (box: GeoBox) => string;
36
+ /**
37
+ * A box around a point, sized in metres.
38
+ *
39
+ * Longitude degrees shrink towards the poles, so the east–west half-width is
40
+ * divided by cos(latitude); without that a "500 m" box in Reykjavík is half
41
+ * the width it claims. Clamped near the poles, where the correction runs away
42
+ * and the whole idea of a rectangle stops being useful.
43
+ */
44
+ export declare function boxAround(centre: GeoPoint, metres: number): GeoBox;
45
+ /** Great-circle distance in metres — what `within-radius` actually measures. */
46
+ export declare function haversineMetres(from: GeoPoint, to: GeoPoint): number;
47
+ export declare const containsPoint: (box: GeoBox, point: GeoPoint) => boolean;
48
+ /** Whether two boxes share any ground — how a changeset's own bounds are judged. */
49
+ export declare const boxesOverlap: (a: GeoBox, b: GeoBox) => boolean;
50
+ /**
51
+ * The centre of a `map-grid-selector` cell, as the portal stores it.
52
+ *
53
+ * The HOT pilot's claim form (collection 43773) asks for a target grid with
54
+ * that widget, and each cell it saves carries its own `latitude`/`longitude`
55
+ * — so reading one needs no geoId decoding, only a size. Read-only interop:
56
+ * nothing here writes to that collection.
57
+ */
58
+ export interface GridCellLike {
59
+ latitude?: number;
60
+ longitude?: number;
61
+ gridPrecision?: number | string;
62
+ }
63
+ export declare function boxForGridCell(cell: GridCellLike, fallbackMetres?: number): GeoBox | null;
64
+ //# sourceMappingURL=box.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../src/geo/box.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,MAAM;IACrB,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAKD,sEAAsE;AACtE,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,MAAM,CAUjD;AAED,eAAO,MAAM,OAAO,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,QAQR,CAAC;AAE3C,0EAA0E;AAC1E,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,KAAG,MAA6D,CAAC;AAEzG,yEAAyE;AACzE,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,KAAG,MAA6D,CAAC;AAEzG;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAWlE;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,GAAG,MAAM,CAKpE;AAED,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,EAAE,OAAO,QAAQ,KAAG,OACuC,CAAC;AAErG,oFAAoF;AACpF,eAAO,MAAM,YAAY,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,KAAG,OAA2F,CAAC;AAEhJ;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACjC;AAKD,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,cAAc,SAAQ,GAAG,MAAM,GAAG,IAAI,CAIxF"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ /**
3
+ * Where on earth an ask is about.
4
+ *
5
+ * A box with named sides, because the two APIs that answer questions about
6
+ * boxes disagree about how to write one — and they disagree in the worst
7
+ * possible way, by both taking four bare numbers in a comma-separated string:
8
+ *
9
+ * OpenStreetMap's changesets API → min_lon, min_lat, max_lon, max_lat
10
+ * Overpass → south, west, north, east
11
+ *
12
+ * Longitude first in one, latitude first in the other. A box written for the
13
+ * wrong one is not an error, it is a *different place* — usually in the sea
14
+ * off West Africa, where (0,0)-ish mistakes go — and the answer comes back
15
+ * cheerfully empty. So no part of this codebase writes those strings by hand;
16
+ * both spellings come from here, and a test asserts they describe the same
17
+ * box, which is the only way to be sure they never drift apart.
18
+ */
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.boxesOverlap = exports.containsPoint = exports.overpassBbox = exports.osmBboxParam = exports.isPoint = void 0;
21
+ exports.isBox = isBox;
22
+ exports.boxAround = boxAround;
23
+ exports.haversineMetres = haversineMetres;
24
+ exports.boxForGridCell = boxForGridCell;
25
+ const EARTH_RADIUS_M = 6_371_008.8;
26
+ const toRadians = (degrees) => (degrees * Math.PI) / 180;
27
+ /** Whether a box is one at all — the guard every entry point uses. */
28
+ function isBox(box) {
29
+ if (!box || typeof box !== "object")
30
+ return false;
31
+ const { west, south, east, north } = box;
32
+ const numbers = [west, south, east, north];
33
+ if (!numbers.every((value) => typeof value === "number" && Number.isFinite(value)))
34
+ return false;
35
+ if (south < -90 || north > 90 || south >= north)
36
+ return false;
37
+ /* A box that wraps the antimeridian is legal on earth and illegal in both
38
+ APIs' query strings. Refusing it here beats a silently empty answer. */
39
+ if (west < -180 || east > 180 || west >= east)
40
+ return false;
41
+ return true;
42
+ }
43
+ const isPoint = (point) => Boolean(point) &&
44
+ typeof point === "object" &&
45
+ typeof point.lat === "number" &&
46
+ typeof point.lon === "number" &&
47
+ Number.isFinite(point.lat) &&
48
+ Number.isFinite(point.lon) &&
49
+ Math.abs(point.lat) <= 90 &&
50
+ Math.abs(point.lon) <= 180;
51
+ exports.isPoint = isPoint;
52
+ /** `min_lon,min_lat,max_lon,max_lat` — the OSM changesets API's order. */
53
+ const osmBboxParam = (box) => `${box.west},${box.south},${box.east},${box.north}`;
54
+ exports.osmBboxParam = osmBboxParam;
55
+ /** `south,west,north,east` — Overpass's order, and not the one above. */
56
+ const overpassBbox = (box) => `${box.south},${box.west},${box.north},${box.east}`;
57
+ exports.overpassBbox = overpassBbox;
58
+ /**
59
+ * A box around a point, sized in metres.
60
+ *
61
+ * Longitude degrees shrink towards the poles, so the east–west half-width is
62
+ * divided by cos(latitude); without that a "500 m" box in Reykjavík is half
63
+ * the width it claims. Clamped near the poles, where the correction runs away
64
+ * and the whole idea of a rectangle stops being useful.
65
+ */
66
+ function boxAround(centre, metres) {
67
+ const latitudeSpan = (metres / EARTH_RADIUS_M) * (180 / Math.PI);
68
+ const shrink = Math.max(Math.cos(toRadians(centre.lat)), 0.01);
69
+ const longitudeSpan = latitudeSpan / shrink;
70
+ return {
71
+ west: Math.max(centre.lon - longitudeSpan, -180),
72
+ south: Math.max(centre.lat - latitudeSpan, -90),
73
+ east: Math.min(centre.lon + longitudeSpan, 180),
74
+ north: Math.min(centre.lat + latitudeSpan, 90)
75
+ };
76
+ }
77
+ /** Great-circle distance in metres — what `within-radius` actually measures. */
78
+ function haversineMetres(from, to) {
79
+ const dLat = toRadians(to.lat - from.lat);
80
+ const dLon = toRadians(to.lon - from.lon);
81
+ const a = Math.sin(dLat / 2) ** 2 + Math.cos(toRadians(from.lat)) * Math.cos(toRadians(to.lat)) * Math.sin(dLon / 2) ** 2;
82
+ return 2 * EARTH_RADIUS_M * Math.asin(Math.min(1, Math.sqrt(a)));
83
+ }
84
+ const containsPoint = (box, point) => point.lat >= box.south && point.lat <= box.north && point.lon >= box.west && point.lon <= box.east;
85
+ exports.containsPoint = containsPoint;
86
+ /** Whether two boxes share any ground — how a changeset's own bounds are judged. */
87
+ const boxesOverlap = (a, b) => a.west <= b.east && b.west <= a.east && a.south <= b.north && b.south <= a.north;
88
+ exports.boxesOverlap = boxesOverlap;
89
+ /** Metres per side for a cell, by the widget's precision. Coarse on purpose. */
90
+ const PRECISION_METRES = { "1": 100_000, "2": 20_000, "3": 5_000, "4": 1_000, "5": 250, "6": 60, "7": 15 };
91
+ function boxForGridCell(cell, fallbackMetres = 1_000) {
92
+ if (typeof cell?.latitude !== "number" || typeof cell?.longitude !== "number")
93
+ return null;
94
+ const metres = PRECISION_METRES[String(cell.gridPrecision ?? "")] ?? fallbackMetres;
95
+ return boxAround({ lat: cell.latitude, lon: cell.longitude }, metres / 2);
96
+ }
97
+ //# sourceMappingURL=box.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"box.js","sourceRoot":"","sources":["../../../src/geo/box.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { GeoPoint } from "./box.ts";
2
+ /**
3
+ * What a photograph says about itself: where, and when.
4
+ *
5
+ * One walk yields both, because the before/after gate needs both of two files
6
+ * and parsing each twice would double the work for no gain. `gpsFromJpeg`
7
+ * stays as it was — every existing caller wants only the point.
8
+ *
9
+ * Both are **client-assisted evidence**: EXIF is trivially editable, and every
10
+ * gate that reads it says so where a person can read it.
11
+ */
12
+ export interface PhotoFacts {
13
+ point: GeoPoint | null;
14
+ /** Local time as the camera wrote it, no zone. Comparable to its own pair. */
15
+ takenAt: string | null;
16
+ }
17
+ /** The coordinates a JPEG carries, or null — which is the ordinary answer. */
18
+ export declare const gpsFromJpeg: (bytes: Uint8Array) => GeoPoint | null;
19
+ export declare function factsFromJpeg(bytes: Uint8Array): PhotoFacts;
20
+ //# sourceMappingURL=exif.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exif.d.ts","sourceRoot":"","sources":["../../../src/geo/exif.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AA4IzC;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,8EAA8E;IAC9E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,8EAA8E;AAC9E,eAAO,MAAM,WAAW,GAAI,OAAO,UAAU,KAAG,QAAQ,GAAG,IAAkC,CAAC;AAE9F,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAyE3D"}
@@ -0,0 +1,220 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.gpsFromJpeg = void 0;
4
+ exports.factsFromJpeg = factsFromJpeg;
5
+ /**
6
+ * Where a photograph says it was taken.
7
+ *
8
+ * Hand-rolled rather than a dependency, for the same reason the Matrix client
9
+ * here is five REST calls instead of a library: this reads two tags out of one
10
+ * container, it runs inside a Cloudflare Worker whose deployability is already
11
+ * proven, and an EXIF library brings orientation, thumbnails, XMP, IPTC and a
12
+ * decoder for every camera maker's private notes to answer a question about
13
+ * six numbers.
14
+ *
15
+ * The format, briefly. A JPEG is segments beginning `FF D8`; the one marked
16
+ * `FF E1` and starting `Exif\0\0` holds a TIFF block, which has its own byte
17
+ * order (`II` little-endian or `MM` big-endian — cameras genuinely use both),
18
+ * a table of tags, and a pointer at tag `0x8825` to a second table holding the
19
+ * GPS tags. Latitude and longitude are each three rationals — degrees,
20
+ * minutes, seconds — with a separate tag saying N/S and E/W, and **the sign
21
+ * lives only in that letter**: a photograph taken in Chile carries a positive
22
+ * latitude and an `S`, and reading the number without the letter puts it in
23
+ * Canada.
24
+ *
25
+ * Everything is bounds-checked and every failure is `null`, because this is
26
+ * handed bytes from strangers. It is also **client-assisted evidence**: EXIF
27
+ * is trivially editable, and the gate that reads it says so.
28
+ */
29
+ const GPS_IFD_POINTER = 0x8825;
30
+ const EXIF_IFD_POINTER = 0x8769;
31
+ /** When the shutter fired. `DateTimeOriginal` in the Exif sub-IFD... */
32
+ const TAG_DATE_ORIGINAL = 0x9003;
33
+ /** ...and `DateTime` in IFD0, which is the file's own modification stamp and
34
+ the weaker of the two — used only when the first is absent. */
35
+ const TAG_DATE_MODIFIED = 0x0132;
36
+ const TAG_LAT_REF = 0x0001;
37
+ const TAG_LAT = 0x0002;
38
+ const TAG_LON_REF = 0x0003;
39
+ const TAG_LON = 0x0004;
40
+ /** Bytes per TIFF type code, indexed by the code itself. 0 = one we skip. */
41
+ const TYPE_SIZE = [0, 1, 1, 2, 4, 8, 1, 1, 2, 4, 8, 4, 8];
42
+ const u16 = (r, at) => r.view.getUint16(at, r.little);
43
+ const u32 = (r, at) => r.view.getUint32(at, r.little);
44
+ /** Three rationals — degrees, minutes, seconds — as one decimal degree. */
45
+ function degrees(r, at, count) {
46
+ if (count < 3)
47
+ return null;
48
+ let total = 0;
49
+ for (let part = 0; part < 3; part += 1) {
50
+ const offset = at + part * 8;
51
+ if (offset + 8 > r.view.byteLength)
52
+ return null;
53
+ const denominator = u32(r, offset + 4);
54
+ if (denominator === 0)
55
+ return null;
56
+ total += u32(r, offset) / denominator / 60 ** part;
57
+ }
58
+ return total;
59
+ }
60
+ /** The one-letter reference, which carries the sign. */
61
+ function letter(r, entry) {
62
+ const count = u32(r, entry + 4);
63
+ /* A value of four bytes or fewer is stored in the entry itself; anything
64
+ larger is a pointer. A single letter is always inline. */
65
+ const at = count <= 4 ? entry + 8 : r.base + u32(r, entry + 8);
66
+ return at < r.view.byteLength ? String.fromCharCode(r.view.getUint8(at)).toUpperCase() : "";
67
+ }
68
+ /**
69
+ * An ASCII value, for the date tags.
70
+ *
71
+ * EXIF dates are `YYYY:MM:DD HH:MM:SS` in **local time with no zone** — the
72
+ * standard simply has nowhere to put one. Two photographs from the same phone
73
+ * an hour apart are therefore comparable to each other, which is exactly and
74
+ * only what the before/after gate asks of them. Treating one as an instant on
75
+ * a world clock would be inventing a timezone.
76
+ */
77
+ function ascii(r, entry) {
78
+ const count = u32(r, entry + 4);
79
+ if (count === 0 || count > 64)
80
+ return "";
81
+ const at = count <= 4 ? entry + 8 : r.base + u32(r, entry + 8);
82
+ if (at + count > r.view.byteLength)
83
+ return "";
84
+ let out = "";
85
+ for (let index = 0; index < count; index += 1) {
86
+ const code = r.view.getUint8(at + index);
87
+ if (code === 0)
88
+ break;
89
+ out += String.fromCharCode(code);
90
+ }
91
+ return out.trim();
92
+ }
93
+ /** `2026:09:20 09:35:12` → `2026-09-20T09:35:12`. Empty for anything else. */
94
+ function exifDate(raw) {
95
+ const match = /^(\d{4}):(\d{2}):(\d{2})[ T](\d{2}):(\d{2}):(\d{2})$/.exec(raw);
96
+ if (!match)
97
+ return null;
98
+ const [, year, month, day, hour, minute, second] = match;
99
+ const iso = `${year}-${month}-${day}T${hour}:${minute}:${second}`;
100
+ return Number.isFinite(Date.parse(iso)) ? iso : null;
101
+ }
102
+ function readGpsIfd(r, at) {
103
+ if (at + 2 > r.view.byteLength)
104
+ return null;
105
+ const entries = u16(r, at);
106
+ if (entries > 200)
107
+ return null;
108
+ let lat = null;
109
+ let lon = null;
110
+ let latRef = "N";
111
+ let lonRef = "E";
112
+ for (let index = 0; index < entries; index += 1) {
113
+ const entry = at + 2 + index * 12;
114
+ if (entry + 12 > r.view.byteLength)
115
+ return null;
116
+ const tag = u16(r, entry);
117
+ const type = u16(r, entry + 2);
118
+ const count = u32(r, entry + 4);
119
+ const size = (TYPE_SIZE[type] ?? 0) * count;
120
+ const valueAt = size <= 4 ? entry + 8 : r.base + u32(r, entry + 8);
121
+ if (tag === TAG_LAT)
122
+ lat = degrees(r, valueAt, count);
123
+ else if (tag === TAG_LON)
124
+ lon = degrees(r, valueAt, count);
125
+ else if (tag === TAG_LAT_REF)
126
+ latRef = letter(r, entry);
127
+ else if (tag === TAG_LON_REF)
128
+ lonRef = letter(r, entry);
129
+ }
130
+ if (lat === null || lon === null)
131
+ return null;
132
+ /* The sign lives in the letter, and only there. */
133
+ const point = { lat: latRef === "S" ? -lat : lat, lon: lonRef === "W" ? -lon : lon };
134
+ return Math.abs(point.lat) <= 90 && Math.abs(point.lon) <= 180 ? point : null;
135
+ }
136
+ /** The coordinates a JPEG carries, or null — which is the ordinary answer. */
137
+ const gpsFromJpeg = (bytes) => factsFromJpeg(bytes).point;
138
+ exports.gpsFromJpeg = gpsFromJpeg;
139
+ function factsFromJpeg(bytes) {
140
+ const none = { point: null, takenAt: null };
141
+ try {
142
+ if (bytes.length < 12 || bytes[0] !== 0xff || bytes[1] !== 0xd8)
143
+ return none;
144
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
145
+ /* Walk the segment chain rather than scanning for a magic string: a byte
146
+ sequence spelling "Exif" can appear inside image data. */
147
+ let at = 2;
148
+ while (at + 4 <= bytes.length) {
149
+ if (bytes[at] !== 0xff)
150
+ return none;
151
+ const marker = bytes[at + 1];
152
+ /* Start of scan — the compressed image begins and metadata is behind us. */
153
+ if (marker === 0xda)
154
+ return none;
155
+ const length = view.getUint16(at + 2, false);
156
+ if (length < 2)
157
+ return none;
158
+ if (marker === 0xe1 && at + 10 <= bytes.length) {
159
+ const isExif = bytes[at + 4] === 0x45 && bytes[at + 5] === 0x78 && bytes[at + 6] === 0x69 && bytes[at + 7] === 0x66;
160
+ if (isExif) {
161
+ const base = at + 10;
162
+ if (base + 8 > bytes.length)
163
+ return none;
164
+ const order = view.getUint16(base, false);
165
+ if (order !== 0x4949 && order !== 0x4d4d)
166
+ return none;
167
+ const r = { view, base, little: order === 0x4949 };
168
+ const first = u32(r, base + 4);
169
+ const ifd0 = base + first;
170
+ if (ifd0 + 2 > bytes.length)
171
+ return none;
172
+ const count = u16(r, ifd0);
173
+ if (count > 200)
174
+ return none;
175
+ const found = { point: null, takenAt: null };
176
+ let exifIfd = 0;
177
+ for (let index = 0; index < count; index += 1) {
178
+ const entry = ifd0 + 2 + index * 12;
179
+ if (entry + 12 > bytes.length)
180
+ return found;
181
+ const tag = u16(r, entry);
182
+ if (tag === GPS_IFD_POINTER)
183
+ found.point = readGpsIfd(r, base + u32(r, entry + 8));
184
+ else if (tag === EXIF_IFD_POINTER)
185
+ exifIfd = base + u32(r, entry + 8);
186
+ /* The weaker stamp, kept only until the real one turns up. */
187
+ else if (tag === TAG_DATE_MODIFIED)
188
+ found.takenAt = exifDate(ascii(r, entry));
189
+ }
190
+ /* `DateTimeOriginal` lives in the Exif sub-IFD and is the shutter
191
+ time — it wins over IFD0's file stamp, which an edit can move. */
192
+ if (exifIfd && exifIfd + 2 <= bytes.length) {
193
+ const subCount = u16(r, exifIfd);
194
+ if (subCount <= 200) {
195
+ for (let index = 0; index < subCount; index += 1) {
196
+ const entry = exifIfd + 2 + index * 12;
197
+ if (entry + 12 > bytes.length)
198
+ break;
199
+ if (u16(r, entry) === TAG_DATE_ORIGINAL) {
200
+ const original = exifDate(ascii(r, entry));
201
+ if (original)
202
+ found.takenAt = original;
203
+ break;
204
+ }
205
+ }
206
+ }
207
+ }
208
+ return found;
209
+ }
210
+ }
211
+ at += 2 + length;
212
+ }
213
+ return none;
214
+ }
215
+ catch {
216
+ /* Bytes from a stranger. Absence is an answer; a crash is not. */
217
+ return none;
218
+ }
219
+ }
220
+ //# sourceMappingURL=exif.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exif.js","sourceRoot":"","sources":["../../../src/geo/exif.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Moving a photograph's own metadata onto a smaller copy of itself.
3
+ *
4
+ * The problem this solves is concrete and was found in a village: the upload
5
+ * ceiling is a few megabytes, phone photographs are routinely 2–5 MB, and
6
+ * a canvas resize — the obvious fix — **throws away the EXIF the whole check
7
+ * reads**. So a worker either cannot upload, or uploads something nobody can
8
+ * verify. Neither is a product.
9
+ *
10
+ * The answer is to keep the camera's own APP1 segment byte for byte and put it
11
+ * back on the resized image. What that claims is exactly what it should: this
12
+ * is the same photograph, at fewer pixels, and its metadata is the camera's
13
+ * unmodified. Nothing is invented — the alternative is a stripped file, which
14
+ * is strictly less true.
15
+ *
16
+ * It is worth being plain that EXIF is editable by anyone who wants to, which
17
+ * is why every gate that reads it calls itself client-assisted. Carrying it
18
+ * across a resize does not make it weaker; it keeps it exactly as weak as it
19
+ * already was.
20
+ */
21
+ /** The `FF E1 … Exif\0\0 …` segment, exactly as the camera wrote it. */
22
+ export declare function exifSegment(bytes: Uint8Array): Uint8Array | null;
23
+ /**
24
+ * Put a segment back, immediately after the start-of-image marker.
25
+ *
26
+ * Any APP1 the encoder wrote itself is dropped first: two Exif segments is an
27
+ * ambiguity readers resolve differently, including ours, which takes the first
28
+ * it meets. One photograph, one answer about where it was taken.
29
+ */
30
+ export declare function withExifSegment(jpeg: Uint8Array, segment: Uint8Array): Uint8Array;
31
+ //# sourceMappingURL=exifcarry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exifcarry.d.ts","sourceRoot":"","sources":["../../../src/geo/exifcarry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,wEAAwE;AACxE,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI,CAiBhE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU,CAqBjF"}