@ixo/openhands-sdk 0.0.0-stage → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1205) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +246 -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 +95 -0
  344. package/dist/cjs/data/install.d.ts.map +1 -0
  345. package/dist/cjs/data/install.js +123 -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 +95 -0
  945. package/dist/esm/data/install.d.ts.map +1 -0
  946. package/dist/esm/data/install.js +116 -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,85 @@
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
+ const EARTH_RADIUS_M = 6_371_008.8;
19
+ const toRadians = (degrees) => (degrees * Math.PI) / 180;
20
+ /** Whether a box is one at all — the guard every entry point uses. */
21
+ export function isBox(box) {
22
+ if (!box || typeof box !== "object")
23
+ return false;
24
+ const { west, south, east, north } = box;
25
+ const numbers = [west, south, east, north];
26
+ if (!numbers.every((value) => typeof value === "number" && Number.isFinite(value)))
27
+ return false;
28
+ if (south < -90 || north > 90 || south >= north)
29
+ return false;
30
+ /* A box that wraps the antimeridian is legal on earth and illegal in both
31
+ APIs' query strings. Refusing it here beats a silently empty answer. */
32
+ if (west < -180 || east > 180 || west >= east)
33
+ return false;
34
+ return true;
35
+ }
36
+ export const isPoint = (point) => Boolean(point) &&
37
+ typeof point === "object" &&
38
+ typeof point.lat === "number" &&
39
+ typeof point.lon === "number" &&
40
+ Number.isFinite(point.lat) &&
41
+ Number.isFinite(point.lon) &&
42
+ Math.abs(point.lat) <= 90 &&
43
+ Math.abs(point.lon) <= 180;
44
+ /** `min_lon,min_lat,max_lon,max_lat` — the OSM changesets API's order. */
45
+ export const osmBboxParam = (box) => `${box.west},${box.south},${box.east},${box.north}`;
46
+ /** `south,west,north,east` — Overpass's order, and not the one above. */
47
+ export const overpassBbox = (box) => `${box.south},${box.west},${box.north},${box.east}`;
48
+ /**
49
+ * A box around a point, sized in metres.
50
+ *
51
+ * Longitude degrees shrink towards the poles, so the east–west half-width is
52
+ * divided by cos(latitude); without that a "500 m" box in Reykjavík is half
53
+ * the width it claims. Clamped near the poles, where the correction runs away
54
+ * and the whole idea of a rectangle stops being useful.
55
+ */
56
+ export function boxAround(centre, metres) {
57
+ const latitudeSpan = (metres / EARTH_RADIUS_M) * (180 / Math.PI);
58
+ const shrink = Math.max(Math.cos(toRadians(centre.lat)), 0.01);
59
+ const longitudeSpan = latitudeSpan / shrink;
60
+ return {
61
+ west: Math.max(centre.lon - longitudeSpan, -180),
62
+ south: Math.max(centre.lat - latitudeSpan, -90),
63
+ east: Math.min(centre.lon + longitudeSpan, 180),
64
+ north: Math.min(centre.lat + latitudeSpan, 90)
65
+ };
66
+ }
67
+ /** Great-circle distance in metres — what `within-radius` actually measures. */
68
+ export function haversineMetres(from, to) {
69
+ const dLat = toRadians(to.lat - from.lat);
70
+ const dLon = toRadians(to.lon - from.lon);
71
+ const a = Math.sin(dLat / 2) ** 2 + Math.cos(toRadians(from.lat)) * Math.cos(toRadians(to.lat)) * Math.sin(dLon / 2) ** 2;
72
+ return 2 * EARTH_RADIUS_M * Math.asin(Math.min(1, Math.sqrt(a)));
73
+ }
74
+ export const containsPoint = (box, point) => point.lat >= box.south && point.lat <= box.north && point.lon >= box.west && point.lon <= box.east;
75
+ /** Whether two boxes share any ground — how a changeset's own bounds are judged. */
76
+ export const boxesOverlap = (a, b) => a.west <= b.east && b.west <= a.east && a.south <= b.north && b.south <= a.north;
77
+ /** Metres per side for a cell, by the widget's precision. Coarse on purpose. */
78
+ const PRECISION_METRES = { "1": 100_000, "2": 20_000, "3": 5_000, "4": 1_000, "5": 250, "6": 60, "7": 15 };
79
+ export function boxForGridCell(cell, fallbackMetres = 1_000) {
80
+ if (typeof cell?.latitude !== "number" || typeof cell?.longitude !== "number")
81
+ return null;
82
+ const metres = PRECISION_METRES[String(cell.gridPrecision ?? "")] ?? fallbackMetres;
83
+ return boxAround({ lat: cell.latitude, lon: cell.longitude }, metres / 2);
84
+ }
85
+ //# 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,215 @@
1
+ /**
2
+ * Where a photograph says it was taken.
3
+ *
4
+ * Hand-rolled rather than a dependency, for the same reason the Matrix client
5
+ * here is five REST calls instead of a library: this reads two tags out of one
6
+ * container, it runs inside a Cloudflare Worker whose deployability is already
7
+ * proven, and an EXIF library brings orientation, thumbnails, XMP, IPTC and a
8
+ * decoder for every camera maker's private notes to answer a question about
9
+ * six numbers.
10
+ *
11
+ * The format, briefly. A JPEG is segments beginning `FF D8`; the one marked
12
+ * `FF E1` and starting `Exif\0\0` holds a TIFF block, which has its own byte
13
+ * order (`II` little-endian or `MM` big-endian — cameras genuinely use both),
14
+ * a table of tags, and a pointer at tag `0x8825` to a second table holding the
15
+ * GPS tags. Latitude and longitude are each three rationals — degrees,
16
+ * minutes, seconds — with a separate tag saying N/S and E/W, and **the sign
17
+ * lives only in that letter**: a photograph taken in Chile carries a positive
18
+ * latitude and an `S`, and reading the number without the letter puts it in
19
+ * Canada.
20
+ *
21
+ * Everything is bounds-checked and every failure is `null`, because this is
22
+ * handed bytes from strangers. It is also **client-assisted evidence**: EXIF
23
+ * is trivially editable, and the gate that reads it says so.
24
+ */
25
+ const GPS_IFD_POINTER = 0x8825;
26
+ const EXIF_IFD_POINTER = 0x8769;
27
+ /** When the shutter fired. `DateTimeOriginal` in the Exif sub-IFD... */
28
+ const TAG_DATE_ORIGINAL = 0x9003;
29
+ /** ...and `DateTime` in IFD0, which is the file's own modification stamp and
30
+ the weaker of the two — used only when the first is absent. */
31
+ const TAG_DATE_MODIFIED = 0x0132;
32
+ const TAG_LAT_REF = 0x0001;
33
+ const TAG_LAT = 0x0002;
34
+ const TAG_LON_REF = 0x0003;
35
+ const TAG_LON = 0x0004;
36
+ /** Bytes per TIFF type code, indexed by the code itself. 0 = one we skip. */
37
+ const TYPE_SIZE = [0, 1, 1, 2, 4, 8, 1, 1, 2, 4, 8, 4, 8];
38
+ const u16 = (r, at) => r.view.getUint16(at, r.little);
39
+ const u32 = (r, at) => r.view.getUint32(at, r.little);
40
+ /** Three rationals — degrees, minutes, seconds — as one decimal degree. */
41
+ function degrees(r, at, count) {
42
+ if (count < 3)
43
+ return null;
44
+ let total = 0;
45
+ for (let part = 0; part < 3; part += 1) {
46
+ const offset = at + part * 8;
47
+ if (offset + 8 > r.view.byteLength)
48
+ return null;
49
+ const denominator = u32(r, offset + 4);
50
+ if (denominator === 0)
51
+ return null;
52
+ total += u32(r, offset) / denominator / 60 ** part;
53
+ }
54
+ return total;
55
+ }
56
+ /** The one-letter reference, which carries the sign. */
57
+ function letter(r, entry) {
58
+ const count = u32(r, entry + 4);
59
+ /* A value of four bytes or fewer is stored in the entry itself; anything
60
+ larger is a pointer. A single letter is always inline. */
61
+ const at = count <= 4 ? entry + 8 : r.base + u32(r, entry + 8);
62
+ return at < r.view.byteLength ? String.fromCharCode(r.view.getUint8(at)).toUpperCase() : "";
63
+ }
64
+ /**
65
+ * An ASCII value, for the date tags.
66
+ *
67
+ * EXIF dates are `YYYY:MM:DD HH:MM:SS` in **local time with no zone** — the
68
+ * standard simply has nowhere to put one. Two photographs from the same phone
69
+ * an hour apart are therefore comparable to each other, which is exactly and
70
+ * only what the before/after gate asks of them. Treating one as an instant on
71
+ * a world clock would be inventing a timezone.
72
+ */
73
+ function ascii(r, entry) {
74
+ const count = u32(r, entry + 4);
75
+ if (count === 0 || count > 64)
76
+ return "";
77
+ const at = count <= 4 ? entry + 8 : r.base + u32(r, entry + 8);
78
+ if (at + count > r.view.byteLength)
79
+ return "";
80
+ let out = "";
81
+ for (let index = 0; index < count; index += 1) {
82
+ const code = r.view.getUint8(at + index);
83
+ if (code === 0)
84
+ break;
85
+ out += String.fromCharCode(code);
86
+ }
87
+ return out.trim();
88
+ }
89
+ /** `2026:09:20 09:35:12` → `2026-09-20T09:35:12`. Empty for anything else. */
90
+ function exifDate(raw) {
91
+ const match = /^(\d{4}):(\d{2}):(\d{2})[ T](\d{2}):(\d{2}):(\d{2})$/.exec(raw);
92
+ if (!match)
93
+ return null;
94
+ const [, year, month, day, hour, minute, second] = match;
95
+ const iso = `${year}-${month}-${day}T${hour}:${minute}:${second}`;
96
+ return Number.isFinite(Date.parse(iso)) ? iso : null;
97
+ }
98
+ function readGpsIfd(r, at) {
99
+ if (at + 2 > r.view.byteLength)
100
+ return null;
101
+ const entries = u16(r, at);
102
+ if (entries > 200)
103
+ return null;
104
+ let lat = null;
105
+ let lon = null;
106
+ let latRef = "N";
107
+ let lonRef = "E";
108
+ for (let index = 0; index < entries; index += 1) {
109
+ const entry = at + 2 + index * 12;
110
+ if (entry + 12 > r.view.byteLength)
111
+ return null;
112
+ const tag = u16(r, entry);
113
+ const type = u16(r, entry + 2);
114
+ const count = u32(r, entry + 4);
115
+ const size = (TYPE_SIZE[type] ?? 0) * count;
116
+ const valueAt = size <= 4 ? entry + 8 : r.base + u32(r, entry + 8);
117
+ if (tag === TAG_LAT)
118
+ lat = degrees(r, valueAt, count);
119
+ else if (tag === TAG_LON)
120
+ lon = degrees(r, valueAt, count);
121
+ else if (tag === TAG_LAT_REF)
122
+ latRef = letter(r, entry);
123
+ else if (tag === TAG_LON_REF)
124
+ lonRef = letter(r, entry);
125
+ }
126
+ if (lat === null || lon === null)
127
+ return null;
128
+ /* The sign lives in the letter, and only there. */
129
+ const point = { lat: latRef === "S" ? -lat : lat, lon: lonRef === "W" ? -lon : lon };
130
+ return Math.abs(point.lat) <= 90 && Math.abs(point.lon) <= 180 ? point : null;
131
+ }
132
+ /** The coordinates a JPEG carries, or null — which is the ordinary answer. */
133
+ export const gpsFromJpeg = (bytes) => factsFromJpeg(bytes).point;
134
+ export function factsFromJpeg(bytes) {
135
+ const none = { point: null, takenAt: null };
136
+ try {
137
+ if (bytes.length < 12 || bytes[0] !== 0xff || bytes[1] !== 0xd8)
138
+ return none;
139
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
140
+ /* Walk the segment chain rather than scanning for a magic string: a byte
141
+ sequence spelling "Exif" can appear inside image data. */
142
+ let at = 2;
143
+ while (at + 4 <= bytes.length) {
144
+ if (bytes[at] !== 0xff)
145
+ return none;
146
+ const marker = bytes[at + 1];
147
+ /* Start of scan — the compressed image begins and metadata is behind us. */
148
+ if (marker === 0xda)
149
+ return none;
150
+ const length = view.getUint16(at + 2, false);
151
+ if (length < 2)
152
+ return none;
153
+ if (marker === 0xe1 && at + 10 <= bytes.length) {
154
+ const isExif = bytes[at + 4] === 0x45 && bytes[at + 5] === 0x78 && bytes[at + 6] === 0x69 && bytes[at + 7] === 0x66;
155
+ if (isExif) {
156
+ const base = at + 10;
157
+ if (base + 8 > bytes.length)
158
+ return none;
159
+ const order = view.getUint16(base, false);
160
+ if (order !== 0x4949 && order !== 0x4d4d)
161
+ return none;
162
+ const r = { view, base, little: order === 0x4949 };
163
+ const first = u32(r, base + 4);
164
+ const ifd0 = base + first;
165
+ if (ifd0 + 2 > bytes.length)
166
+ return none;
167
+ const count = u16(r, ifd0);
168
+ if (count > 200)
169
+ return none;
170
+ const found = { point: null, takenAt: null };
171
+ let exifIfd = 0;
172
+ for (let index = 0; index < count; index += 1) {
173
+ const entry = ifd0 + 2 + index * 12;
174
+ if (entry + 12 > bytes.length)
175
+ return found;
176
+ const tag = u16(r, entry);
177
+ if (tag === GPS_IFD_POINTER)
178
+ found.point = readGpsIfd(r, base + u32(r, entry + 8));
179
+ else if (tag === EXIF_IFD_POINTER)
180
+ exifIfd = base + u32(r, entry + 8);
181
+ /* The weaker stamp, kept only until the real one turns up. */
182
+ else if (tag === TAG_DATE_MODIFIED)
183
+ found.takenAt = exifDate(ascii(r, entry));
184
+ }
185
+ /* `DateTimeOriginal` lives in the Exif sub-IFD and is the shutter
186
+ time — it wins over IFD0's file stamp, which an edit can move. */
187
+ if (exifIfd && exifIfd + 2 <= bytes.length) {
188
+ const subCount = u16(r, exifIfd);
189
+ if (subCount <= 200) {
190
+ for (let index = 0; index < subCount; index += 1) {
191
+ const entry = exifIfd + 2 + index * 12;
192
+ if (entry + 12 > bytes.length)
193
+ break;
194
+ if (u16(r, entry) === TAG_DATE_ORIGINAL) {
195
+ const original = exifDate(ascii(r, entry));
196
+ if (original)
197
+ found.takenAt = original;
198
+ break;
199
+ }
200
+ }
201
+ }
202
+ }
203
+ return found;
204
+ }
205
+ }
206
+ at += 2 + length;
207
+ }
208
+ return none;
209
+ }
210
+ catch {
211
+ /* Bytes from a stranger. Absence is an answer; a crash is not. */
212
+ return none;
213
+ }
214
+ }
215
+ //# sourceMappingURL=exif.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exif.js","sourceRoot":"","sources":["../../../src/geo/exif.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,eAAe,GAAG,MAAM,CAAC;AAC/B,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAChC,wEAAwE;AACxE,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACjC;kEACkE;AAClE,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACjC,MAAM,WAAW,GAAG,MAAM,CAAC;AAC3B,MAAM,OAAO,GAAG,MAAM,CAAC;AACvB,MAAM,WAAW,GAAG,MAAM,CAAC;AAC3B,MAAM,OAAO,GAAG,MAAM,CAAC;AAEvB,6EAA6E;AAC7E,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAS1D,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAU,EAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAC9E,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAU,EAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E,2EAA2E;AAC3E,SAAS,OAAO,CAAC,CAAS,EAAE,EAAU,EAAE,KAAa;IACnD,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC;QAC7B,IAAI,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAChD,MAAM,WAAW,GAAG,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;QACvC,IAAI,WAAW,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,KAAK,IAAI,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,WAAW,GAAG,EAAE,IAAI,IAAI,CAAC;IACrD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,wDAAwD;AACxD,SAAS,MAAM,CAAC,CAAS,EAAE,KAAa;IACtC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAChC;gEAC4D;IAC5D,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAC/D,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9F,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,KAAK,CAAC,CAAS,EAAE,KAAa;IACrC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAChC,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,GAAG,EAAE;QAAE,OAAO,EAAE,CAAC;IACzC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAC/D,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC9C,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;QACzC,IAAI,IAAI,KAAK,CAAC;YAAE,MAAM;QACtB,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED,8EAA8E;AAC9E,SAAS,QAAQ,CAAC,GAAW;IAC3B,MAAM,KAAK,GAAG,sDAAsD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/E,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;IACzD,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,KAAK,IAAI,GAAG,IAAI,IAAI,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;IAClE,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC;AAED,SAAS,UAAU,CAAC,CAAS,EAAE,EAAU;IACvC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3B,IAAI,OAAO,GAAG,GAAG;QAAE,OAAO,IAAI,CAAC;IAE/B,IAAI,GAAG,GAAkB,IAAI,CAAC;IAC9B,IAAI,GAAG,GAAkB,IAAI,CAAC;IAC9B,IAAI,MAAM,GAAG,GAAG,CAAC;IACjB,IAAI,MAAM,GAAG,GAAG,CAAC;IAEjB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QAClC,IAAI,KAAK,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAEhD,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAEnE,IAAI,GAAG,KAAK,OAAO;YAAE,GAAG,GAAG,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;aACjD,IAAI,GAAG,KAAK,OAAO;YAAE,GAAG,GAAG,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;aACtD,IAAI,GAAG,KAAK,WAAW;YAAE,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;aACnD,IAAI,GAAG,KAAK,WAAW;YAAE,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAE9C,mDAAmD;IACnD,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IACrF,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAChF,CAAC;AAkBD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAiB,EAAmB,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;AAE9F,MAAM,UAAU,aAAa,CAAC,KAAiB;IAC7C,MAAM,IAAI,GAAe,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACxD,IAAI,CAAC;QACH,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC7E,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAE5E;oEAC4D;QAC5D,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,OAAO,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YACpC,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,GAAG,CAAC,CAAE,CAAC;YAC9B,4EAA4E;YAC5E,IAAI,MAAM,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YACjC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7C,IAAI,MAAM,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YAE5B,IAAI,MAAM,KAAK,IAAI,IAAI,EAAE,GAAG,EAAE,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;gBACpH,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC;oBACrB,IAAI,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM;wBAAE,OAAO,IAAI,CAAC;oBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBAC1C,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM;wBAAE,OAAO,IAAI,CAAC;oBAEtD,MAAM,CAAC,GAAW,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,KAAK,MAAM,EAAE,CAAC;oBAC3D,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;oBAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;oBAC1B,IAAI,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM;wBAAE,OAAO,IAAI,CAAC;oBAEzC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;oBAC3B,IAAI,KAAK,GAAG,GAAG;wBAAE,OAAO,IAAI,CAAC;oBAE7B,MAAM,KAAK,GAAe,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBACzD,IAAI,OAAO,GAAG,CAAC,CAAC;oBAEhB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;wBAC9C,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;wBACpC,IAAI,KAAK,GAAG,EAAE,GAAG,KAAK,CAAC,MAAM;4BAAE,OAAO,KAAK,CAAC;wBAC5C,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;wBAC1B,IAAI,GAAG,KAAK,eAAe;4BAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;6BAC9E,IAAI,GAAG,KAAK,gBAAgB;4BAAE,OAAO,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;wBACtE,8DAA8D;6BACzD,IAAI,GAAG,KAAK,iBAAiB;4BAAE,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;oBAChF,CAAC;oBAED;wFACoE;oBACpE,IAAI,OAAO,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;wBAC3C,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;wBACjC,IAAI,QAAQ,IAAI,GAAG,EAAE,CAAC;4BACpB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;gCACjD,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gCACvC,IAAI,KAAK,GAAG,EAAE,GAAG,KAAK,CAAC,MAAM;oCAAE,MAAM;gCACrC,IAAI,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,iBAAiB,EAAE,CAAC;oCACxC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;oCAC3C,IAAI,QAAQ;wCAAE,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC;oCACvC,MAAM;gCACR,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;YACD,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,kEAAkE;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -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"}
@@ -0,0 +1,77 @@
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 function exifSegment(bytes) {
23
+ if (bytes.length < 4 || bytes[0] !== 0xff || bytes[1] !== 0xd8)
24
+ return null;
25
+ let at = 2;
26
+ while (at + 4 <= bytes.length) {
27
+ if (bytes[at] !== 0xff)
28
+ return null;
29
+ const marker = bytes[at + 1];
30
+ /* Start of scan: the pixels begin and the metadata is behind us. */
31
+ if (marker === 0xda)
32
+ return null;
33
+ const length = (bytes[at + 2] << 8) | bytes[at + 3];
34
+ if (length < 2)
35
+ return null;
36
+ if (marker === 0xe1 && at + 10 <= bytes.length) {
37
+ const isExif = bytes[at + 4] === 0x45 && bytes[at + 5] === 0x78 && bytes[at + 6] === 0x69 && bytes[at + 7] === 0x66;
38
+ if (isExif)
39
+ return bytes.slice(at, at + 2 + length);
40
+ }
41
+ at += 2 + length;
42
+ }
43
+ return null;
44
+ }
45
+ /**
46
+ * Put a segment back, immediately after the start-of-image marker.
47
+ *
48
+ * Any APP1 the encoder wrote itself is dropped first: two Exif segments is an
49
+ * ambiguity readers resolve differently, including ours, which takes the first
50
+ * it meets. One photograph, one answer about where it was taken.
51
+ */
52
+ export function withExifSegment(jpeg, segment) {
53
+ if (jpeg.length < 2 || jpeg[0] !== 0xff || jpeg[1] !== 0xd8)
54
+ return jpeg;
55
+ const kept = [];
56
+ let at = 2;
57
+ while (at + 4 <= jpeg.length) {
58
+ if (jpeg[at] !== 0xff)
59
+ break;
60
+ const marker = jpeg[at + 1];
61
+ if (marker === 0xda)
62
+ break;
63
+ const length = (jpeg[at + 2] << 8) | jpeg[at + 3];
64
+ if (length < 2)
65
+ break;
66
+ if (marker !== 0xe1)
67
+ kept.push(...Array.from(jpeg.slice(at, at + 2 + length)));
68
+ at += 2 + length;
69
+ }
70
+ const out = new Uint8Array(2 + segment.length + kept.length + (jpeg.length - at));
71
+ out.set([0xff, 0xd8], 0);
72
+ out.set(segment, 2);
73
+ out.set(Uint8Array.from(kept), 2 + segment.length);
74
+ out.set(jpeg.slice(at), 2 + segment.length + kept.length);
75
+ return out;
76
+ }
77
+ //# sourceMappingURL=exifcarry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exifcarry.js","sourceRoot":"","sources":["../../../src/geo/exifcarry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * The app's own note of when and where, written into the photograph.
3
+ *
4
+ * A live capture through `<input capture>` on iOS hands the page a JPEG with
5
+ * an APP1 stub — orientation and nothing else — while a photo-roll pick
6
+ * carries the camera's full EXIF (Michael's iPhone 16 Pro, iOS 26.6.2,
7
+ * 2026-09-19). The page knows the moment and the place anyway: `nowAndHere`
8
+ * asks the browser as the shutter closes and the envelope carries the
9
+ * answer. But the oracle's stock before/after gate reads the photographs,
10
+ * not the envelope, so a live-capture cleanup was refused before any judge
11
+ * saw it.
12
+ *
13
+ * This writes that same note where the gate looks: a minimal, valid
14
+ * `Exif\0\0` TIFF block with `DateTimeOriginal` (+ its offset), a GPS IFD
15
+ * when the place is known, and `Software = "openhands-app"` so a reviewer
16
+ * can tell the app's note from a camera's. It **never overwrites a camera's
17
+ * own values**: a photograph that already says when and where is left
18
+ * untouched; one that says only one of the two keeps that value and gains
19
+ * the other. The orientation tag a stub carries is kept, so the picture
20
+ * still stands the right way up.
21
+ *
22
+ * As with everything EXIF, this is client-assisted evidence and says so:
23
+ * the note is the phone's testimony about itself, exactly as it was in the
24
+ * envelope — no more true, no less, only now where the check reads it.
25
+ *
26
+ * Little-endian TIFF, offsets relative to the TIFF header, values of four
27
+ * bytes or fewer inline, the rest in a data area after the IFDs — the shape
28
+ * `exif.ts` (and the oracle's port of it) reads.
29
+ */
30
+ export interface ExifNote {
31
+ /** The moment, as an ISO instant. A value with no zone is read as UTC. */
32
+ at: string;
33
+ lat?: number;
34
+ lon?: number;
35
+ }
36
+ export interface NoteOptions {
37
+ /** The local offset to write the time in, minutes east of UTC. Default: this runtime's offset at that instant. */
38
+ offsetMinutes?: number;
39
+ /** What `Software` says. */
40
+ software?: string;
41
+ }
42
+ export interface Noted {
43
+ bytes: Uint8Array;
44
+ /** Whether anything was written. False is not a failure: a camera's own EXIF is the better note. */
45
+ noted: boolean;
46
+ why: "camera-exif" | "not-jpeg" | "nothing-to-note" | null;
47
+ }
48
+ export declare const NOTE_SOFTWARE = "openhands-app";
49
+ /** Degrees as the three positive rationals EXIF wants; the sign is the caller's letter. */
50
+ export declare function dms(value: number): [number, number, number][];
51
+ /** An ISO instant, or a zone-less stamp read as UTC. Null when it is neither. */
52
+ export declare function instantOf(at: string): number | null;
53
+ /** `YYYY:MM:DD HH:MM:SS` in the given offset, and the offset as EXIF writes it. */
54
+ export declare function exifClock(instantMs: number, offsetMinutes: number): {
55
+ stamp: string;
56
+ offset: string;
57
+ };
58
+ /** The orientation a JPEG's existing APP1 carries, if any. */
59
+ export declare function orientationOf(jpeg: Uint8Array): number | null;
60
+ /** A complete `FF E1` APP1 segment holding the note. Exported for the tests; `noteJpeg` is the door. */
61
+ export declare function noteSegment(parts: {
62
+ stamp?: string;
63
+ offset?: string;
64
+ point?: {
65
+ lat: number;
66
+ lon: number;
67
+ } | null;
68
+ orientation?: number | null;
69
+ software?: string;
70
+ }): Uint8Array;
71
+ /**
72
+ * The note, written into a JPEG that lacks it.
73
+ *
74
+ * Untouched when the photograph already says when *and* where — a camera's
75
+ * word beats the page's. Otherwise the camera's value is kept for whichever
76
+ * of the two it did give, the note fills the other, and the orientation is
77
+ * carried over.
78
+ */
79
+ export declare function noteJpeg(jpeg: Uint8Array, note: ExifNote, options?: NoteOptions): Noted;
80
+ /** The same, for a browser's `File`. A file that needed no note is returned as it was. */
81
+ export declare function noteFile(file: File, note: ExifNote, options?: NoteOptions): Promise<{
82
+ file: File;
83
+ noted: boolean;
84
+ why: Noted["why"];
85
+ }>;
86
+ //# sourceMappingURL=exifnote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exifnote.d.ts","sourceRoot":"","sources":["../../../src/geo/exifnote.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAKH,MAAM,WAAW,QAAQ;IACvB,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,kHAAkH;IAClH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,UAAU,CAAC;IAClB,oGAAoG;IACpG,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,aAAa,GAAG,UAAU,GAAG,iBAAiB,GAAG,IAAI,CAAC;CAC5D;AAED,eAAO,MAAM,aAAa,kBAAkB,CAAC;AA6C7C,2FAA2F;AAC3F,wBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAY7D;AAED,iFAAiF;AACjF,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMnD;AAID,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAMrG;AAED,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAwB7D;AAgCD,wGAAwG;AACxG,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAoC/K;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,GAAE,WAAgB,GAAG,KAAK,CA4B3F;AAED,0FAA0F;AAC1F,wBAAsB,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;CAAE,CAAC,CAMhJ"}