@hypercerts-org/lexicon 0.10.0-beta.9 → 0.11.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 (256) hide show
  1. package/CHANGELOG.md +907 -0
  2. package/README.md +420 -168
  3. package/SCHEMAS.md +897 -142
  4. package/dist/exports.d.ts +1876 -453
  5. package/dist/exports.d.ts.map +1 -1
  6. package/dist/generated/exports.d.ts +1876 -453
  7. package/dist/generated/exports.d.ts.map +1 -1
  8. package/dist/generated/lexicons.d.ts +3709 -1113
  9. package/dist/generated/lexicons.d.ts.map +1 -1
  10. package/dist/generated/types/app/bsky/richtext/facet.d.ts +44 -7
  11. package/dist/generated/types/app/bsky/richtext/facet.d.ts.map +1 -1
  12. package/dist/generated/types/app/certified/actor/organization.d.ts +32 -0
  13. package/dist/generated/types/app/certified/actor/organization.d.ts.map +1 -0
  14. package/dist/generated/types/app/certified/actor/profile.d.ts +30 -0
  15. package/dist/generated/types/app/certified/actor/profile.d.ts.map +1 -0
  16. package/dist/generated/types/app/certified/badge/award.d.ts +4 -3
  17. package/dist/generated/types/app/certified/badge/award.d.ts.map +1 -1
  18. package/dist/generated/types/app/certified/badge/definition.d.ts +3 -3
  19. package/dist/generated/types/app/certified/badge/definition.d.ts.map +1 -1
  20. package/dist/generated/types/app/certified/badge/response.d.ts +3 -3
  21. package/dist/generated/types/app/certified/badge/response.d.ts.map +1 -1
  22. package/dist/generated/types/app/certified/defs.d.ts +11 -1
  23. package/dist/generated/types/app/certified/defs.d.ts.map +1 -1
  24. package/dist/generated/types/app/certified/link/evm.d.ts +45 -0
  25. package/dist/generated/types/app/certified/link/evm.d.ts.map +1 -0
  26. package/dist/generated/types/app/certified/location.d.ts +13 -5
  27. package/dist/generated/types/app/certified/location.d.ts.map +1 -1
  28. package/dist/generated/types/org/hyperboards/board.d.ts +75 -0
  29. package/dist/generated/types/org/hyperboards/board.d.ts.map +1 -0
  30. package/dist/generated/types/org/hyperboards/displayProfile.d.ts +31 -0
  31. package/dist/generated/types/org/hyperboards/displayProfile.d.ts.map +1 -0
  32. package/dist/generated/types/org/hypercerts/claim/activity.d.ts +33 -11
  33. package/dist/generated/types/org/hypercerts/claim/activity.d.ts.map +1 -1
  34. package/dist/generated/types/org/hypercerts/claim/{contributionDetails.d.ts → contribution.d.ts} +6 -6
  35. package/dist/generated/types/org/hypercerts/claim/contribution.d.ts.map +1 -0
  36. package/dist/generated/types/org/hypercerts/claim/contributorInformation.d.ts +2 -2
  37. package/dist/generated/types/org/hypercerts/claim/contributorInformation.d.ts.map +1 -1
  38. package/dist/generated/types/org/hypercerts/claim/rights.d.ts +3 -3
  39. package/dist/generated/types/org/hypercerts/claim/rights.d.ts.map +1 -1
  40. package/dist/generated/types/org/hypercerts/collection.d.ts +48 -0
  41. package/dist/generated/types/org/hypercerts/collection.d.ts.map +1 -0
  42. package/dist/generated/types/org/hypercerts/context/acknowledgement.d.ts +25 -0
  43. package/dist/generated/types/org/hypercerts/context/acknowledgement.d.ts.map +1 -0
  44. package/dist/generated/types/org/hypercerts/context/attachment.d.ts +37 -0
  45. package/dist/generated/types/org/hypercerts/context/attachment.d.ts.map +1 -0
  46. package/dist/{types/org/hypercerts/claim → generated/types/org/hypercerts/context}/evaluation.d.ts +15 -15
  47. package/dist/generated/types/org/hypercerts/context/evaluation.d.ts.map +1 -0
  48. package/dist/generated/types/org/hypercerts/context/measurement.d.ts +43 -0
  49. package/dist/generated/types/org/hypercerts/context/measurement.d.ts.map +1 -0
  50. package/dist/generated/types/org/hypercerts/defs.d.ts +19 -44
  51. package/dist/generated/types/org/hypercerts/defs.d.ts.map +1 -1
  52. package/dist/generated/types/org/hypercerts/funding/receipt.d.ts +18 -6
  53. package/dist/generated/types/org/hypercerts/funding/receipt.d.ts.map +1 -1
  54. package/dist/generated/types/org/hypercerts/workscope/cel.d.ts +20 -0
  55. package/dist/generated/types/org/hypercerts/workscope/cel.d.ts.map +1 -0
  56. package/dist/generated/types/org/hypercerts/workscope/tag.d.ts +36 -0
  57. package/dist/generated/types/org/hypercerts/workscope/tag.d.ts.map +1 -0
  58. package/dist/generated/types/pub/leaflet/blocks/blockquote.d.ts +13 -0
  59. package/dist/generated/types/pub/leaflet/blocks/blockquote.d.ts.map +1 -0
  60. package/dist/generated/types/pub/leaflet/blocks/bskyPost.d.ts +13 -0
  61. package/dist/generated/types/pub/leaflet/blocks/bskyPost.d.ts.map +1 -0
  62. package/dist/generated/types/pub/leaflet/blocks/button.d.ts +12 -0
  63. package/dist/generated/types/pub/leaflet/blocks/button.d.ts.map +1 -0
  64. package/dist/generated/types/pub/leaflet/blocks/code.d.ts +13 -0
  65. package/dist/generated/types/pub/leaflet/blocks/code.d.ts.map +1 -0
  66. package/dist/generated/types/pub/leaflet/blocks/header.d.ts +14 -0
  67. package/dist/generated/types/pub/leaflet/blocks/header.d.ts.map +1 -0
  68. package/dist/generated/types/pub/leaflet/blocks/horizontalRule.d.ts +10 -0
  69. package/dist/generated/types/pub/leaflet/blocks/horizontalRule.d.ts.map +1 -0
  70. package/dist/generated/types/pub/leaflet/blocks/iframe.d.ts +12 -0
  71. package/dist/generated/types/pub/leaflet/blocks/iframe.d.ts.map +1 -0
  72. package/dist/generated/types/pub/leaflet/blocks/image.d.ts +21 -0
  73. package/dist/generated/types/pub/leaflet/blocks/image.d.ts.map +1 -0
  74. package/dist/generated/types/pub/leaflet/blocks/math.d.ts +11 -0
  75. package/dist/generated/types/pub/leaflet/blocks/math.d.ts.map +1 -0
  76. package/dist/generated/types/pub/leaflet/blocks/orderedList.d.ts +31 -0
  77. package/dist/generated/types/pub/leaflet/blocks/orderedList.d.ts.map +1 -0
  78. package/dist/generated/types/pub/leaflet/blocks/page.d.ts +11 -0
  79. package/dist/generated/types/pub/leaflet/blocks/page.d.ts.map +1 -0
  80. package/dist/generated/types/pub/leaflet/blocks/poll.d.ts +12 -0
  81. package/dist/generated/types/pub/leaflet/blocks/poll.d.ts.map +1 -0
  82. package/dist/generated/types/pub/leaflet/blocks/text.d.ts +14 -0
  83. package/dist/generated/types/pub/leaflet/blocks/text.d.ts.map +1 -0
  84. package/dist/generated/types/pub/leaflet/blocks/unorderedList.d.ts +29 -0
  85. package/dist/generated/types/pub/leaflet/blocks/unorderedList.d.ts.map +1 -0
  86. package/dist/generated/types/pub/leaflet/blocks/website.d.ts +14 -0
  87. package/dist/generated/types/pub/leaflet/blocks/website.d.ts.map +1 -0
  88. package/dist/generated/types/pub/leaflet/pages/linearDocument.d.ts +54 -1
  89. package/dist/generated/types/pub/leaflet/pages/linearDocument.d.ts.map +1 -1
  90. package/dist/generated/types/pub/leaflet/richtext/facet.d.ts +97 -0
  91. package/dist/generated/types/pub/leaflet/richtext/facet.d.ts.map +1 -0
  92. package/dist/index.cjs +5682 -1668
  93. package/dist/index.cjs.map +1 -1
  94. package/dist/index.mjs +5554 -1640
  95. package/dist/index.mjs.map +1 -1
  96. package/dist/lexicons.cjs +1846 -419
  97. package/dist/lexicons.cjs.map +1 -1
  98. package/dist/lexicons.d.ts +3709 -1113
  99. package/dist/lexicons.d.ts.map +1 -1
  100. package/dist/lexicons.mjs +1846 -419
  101. package/dist/lexicons.mjs.map +1 -1
  102. package/dist/tests/validate-external-lexicons.test.d.ts +2 -0
  103. package/dist/tests/validate-external-lexicons.test.d.ts.map +1 -0
  104. package/dist/tests/validate-funding-receipt.test.d.ts +2 -0
  105. package/dist/tests/validate-funding-receipt.test.d.ts.map +1 -0
  106. package/dist/tests/validate-link-evm.test.d.ts +2 -0
  107. package/dist/tests/validate-link-evm.test.d.ts.map +1 -0
  108. package/dist/tests/validate-rights.test.d.ts +2 -0
  109. package/dist/tests/validate-rights.test.d.ts.map +1 -0
  110. package/dist/types/app/bsky/richtext/facet.d.ts +44 -7
  111. package/dist/types/app/bsky/richtext/facet.d.ts.map +1 -1
  112. package/dist/types/app/certified/actor/organization.d.ts +32 -0
  113. package/dist/types/app/certified/actor/organization.d.ts.map +1 -0
  114. package/dist/types/app/certified/actor/profile.d.ts +30 -0
  115. package/dist/types/app/certified/actor/profile.d.ts.map +1 -0
  116. package/dist/types/app/certified/badge/award.d.ts +4 -3
  117. package/dist/types/app/certified/badge/award.d.ts.map +1 -1
  118. package/dist/types/app/certified/badge/definition.d.ts +3 -3
  119. package/dist/types/app/certified/badge/definition.d.ts.map +1 -1
  120. package/dist/types/app/certified/badge/response.d.ts +3 -3
  121. package/dist/types/app/certified/badge/response.d.ts.map +1 -1
  122. package/dist/types/app/certified/defs.d.ts +11 -1
  123. package/dist/types/app/certified/defs.d.ts.map +1 -1
  124. package/dist/types/app/certified/link/evm.d.ts +45 -0
  125. package/dist/types/app/certified/link/evm.d.ts.map +1 -0
  126. package/dist/types/app/certified/location.d.ts +13 -5
  127. package/dist/types/app/certified/location.d.ts.map +1 -1
  128. package/dist/types/org/hyperboards/board.d.ts +75 -0
  129. package/dist/types/org/hyperboards/board.d.ts.map +1 -0
  130. package/dist/types/org/hyperboards/displayProfile.d.ts +31 -0
  131. package/dist/types/org/hyperboards/displayProfile.d.ts.map +1 -0
  132. package/dist/types/org/hypercerts/claim/activity.d.ts +33 -11
  133. package/dist/types/org/hypercerts/claim/activity.d.ts.map +1 -1
  134. package/dist/types/org/hypercerts/claim/{contributionDetails.d.ts → contribution.d.ts} +6 -6
  135. package/dist/types/org/hypercerts/claim/contribution.d.ts.map +1 -0
  136. package/dist/types/org/hypercerts/claim/contributorInformation.d.ts +2 -2
  137. package/dist/types/org/hypercerts/claim/contributorInformation.d.ts.map +1 -1
  138. package/dist/types/org/hypercerts/claim/rights.d.ts +3 -3
  139. package/dist/types/org/hypercerts/claim/rights.d.ts.map +1 -1
  140. package/dist/types/org/hypercerts/collection.d.ts +48 -0
  141. package/dist/types/org/hypercerts/collection.d.ts.map +1 -0
  142. package/dist/types/org/hypercerts/context/acknowledgement.d.ts +25 -0
  143. package/dist/types/org/hypercerts/context/acknowledgement.d.ts.map +1 -0
  144. package/dist/types/org/hypercerts/context/attachment.d.ts +37 -0
  145. package/dist/types/org/hypercerts/context/attachment.d.ts.map +1 -0
  146. package/dist/{generated/types/org/hypercerts/claim → types/org/hypercerts/context}/evaluation.d.ts +15 -15
  147. package/dist/types/org/hypercerts/context/evaluation.d.ts.map +1 -0
  148. package/dist/types/org/hypercerts/context/measurement.d.ts +43 -0
  149. package/dist/types/org/hypercerts/context/measurement.d.ts.map +1 -0
  150. package/dist/types/org/hypercerts/defs.d.ts +19 -44
  151. package/dist/types/org/hypercerts/defs.d.ts.map +1 -1
  152. package/dist/types/org/hypercerts/funding/receipt.d.ts +18 -6
  153. package/dist/types/org/hypercerts/funding/receipt.d.ts.map +1 -1
  154. package/dist/types/org/hypercerts/workscope/cel.d.ts +20 -0
  155. package/dist/types/org/hypercerts/workscope/cel.d.ts.map +1 -0
  156. package/dist/types/org/hypercerts/workscope/tag.d.ts +36 -0
  157. package/dist/types/org/hypercerts/workscope/tag.d.ts.map +1 -0
  158. package/dist/types/pub/leaflet/blocks/blockquote.d.ts +13 -0
  159. package/dist/types/pub/leaflet/blocks/blockquote.d.ts.map +1 -0
  160. package/dist/types/pub/leaflet/blocks/bskyPost.d.ts +13 -0
  161. package/dist/types/pub/leaflet/blocks/bskyPost.d.ts.map +1 -0
  162. package/dist/types/pub/leaflet/blocks/button.d.ts +12 -0
  163. package/dist/types/pub/leaflet/blocks/button.d.ts.map +1 -0
  164. package/dist/types/pub/leaflet/blocks/code.d.ts +13 -0
  165. package/dist/types/pub/leaflet/blocks/code.d.ts.map +1 -0
  166. package/dist/types/pub/leaflet/blocks/header.d.ts +14 -0
  167. package/dist/types/pub/leaflet/blocks/header.d.ts.map +1 -0
  168. package/dist/types/pub/leaflet/blocks/horizontalRule.d.ts +10 -0
  169. package/dist/types/pub/leaflet/blocks/horizontalRule.d.ts.map +1 -0
  170. package/dist/types/pub/leaflet/blocks/iframe.d.ts +12 -0
  171. package/dist/types/pub/leaflet/blocks/iframe.d.ts.map +1 -0
  172. package/dist/types/pub/leaflet/blocks/image.d.ts +21 -0
  173. package/dist/types/pub/leaflet/blocks/image.d.ts.map +1 -0
  174. package/dist/types/pub/leaflet/blocks/math.d.ts +11 -0
  175. package/dist/types/pub/leaflet/blocks/math.d.ts.map +1 -0
  176. package/dist/types/pub/leaflet/blocks/orderedList.d.ts +31 -0
  177. package/dist/types/pub/leaflet/blocks/orderedList.d.ts.map +1 -0
  178. package/dist/types/pub/leaflet/blocks/page.d.ts +11 -0
  179. package/dist/types/pub/leaflet/blocks/page.d.ts.map +1 -0
  180. package/dist/types/pub/leaflet/blocks/poll.d.ts +12 -0
  181. package/dist/types/pub/leaflet/blocks/poll.d.ts.map +1 -0
  182. package/dist/types/pub/leaflet/blocks/text.d.ts +14 -0
  183. package/dist/types/pub/leaflet/blocks/text.d.ts.map +1 -0
  184. package/dist/types/pub/leaflet/blocks/unorderedList.d.ts +29 -0
  185. package/dist/types/pub/leaflet/blocks/unorderedList.d.ts.map +1 -0
  186. package/dist/types/pub/leaflet/blocks/website.d.ts +14 -0
  187. package/dist/types/pub/leaflet/blocks/website.d.ts.map +1 -0
  188. package/dist/types/pub/leaflet/pages/linearDocument.d.ts +54 -1
  189. package/dist/types/pub/leaflet/pages/linearDocument.d.ts.map +1 -1
  190. package/dist/types/pub/leaflet/richtext/facet.d.ts +97 -0
  191. package/dist/types/pub/leaflet/richtext/facet.d.ts.map +1 -0
  192. package/lexicons/app/bsky/richtext/facet.json +51 -0
  193. package/lexicons/app/certified/actor/organization.json +70 -0
  194. package/lexicons/app/certified/actor/profile.json +61 -0
  195. package/lexicons/app/certified/badge/award.json +10 -3
  196. package/lexicons/app/certified/badge/definition.json +17 -4
  197. package/lexicons/app/certified/badge/response.json +5 -4
  198. package/lexicons/app/certified/defs.json +11 -3
  199. package/lexicons/app/certified/link/evm.json +88 -0
  200. package/lexicons/app/certified/location.json +29 -6
  201. package/lexicons/org/hyperboards/board.json +152 -0
  202. package/lexicons/org/hyperboards/displayProfile.json +64 -0
  203. package/lexicons/org/hypercerts/claim/activity.json +61 -39
  204. package/lexicons/org/hypercerts/claim/{contributionDetails.json → contribution.json} +4 -4
  205. package/lexicons/org/hypercerts/claim/contributorInformation.json +3 -2
  206. package/lexicons/org/hypercerts/claim/rights.json +5 -3
  207. package/lexicons/org/hypercerts/{claim/collection.json → collection.json} +33 -11
  208. package/lexicons/org/hypercerts/context/acknowledgement.json +42 -0
  209. package/lexicons/org/hypercerts/context/attachment.json +88 -0
  210. package/lexicons/org/hypercerts/{claim → context}/evaluation.json +25 -22
  211. package/lexicons/org/hypercerts/context/measurement.json +107 -0
  212. package/lexicons/org/hypercerts/defs.json +35 -89
  213. package/lexicons/org/hypercerts/funding/receipt.json +40 -14
  214. package/lexicons/org/hypercerts/workscope/cel.json +39 -0
  215. package/lexicons/org/hypercerts/workscope/tag.json +87 -0
  216. package/lexicons/pub/leaflet/blocks/blockquote.json +22 -0
  217. package/lexicons/pub/leaflet/blocks/bskyPost.json +19 -0
  218. package/lexicons/pub/leaflet/blocks/button.json +19 -0
  219. package/lexicons/pub/leaflet/blocks/code.json +21 -0
  220. package/lexicons/pub/leaflet/blocks/header.json +27 -0
  221. package/lexicons/pub/leaflet/blocks/horizontalRule.json +11 -0
  222. package/lexicons/pub/leaflet/blocks/iframe.json +21 -0
  223. package/lexicons/pub/leaflet/blocks/image.json +37 -0
  224. package/lexicons/pub/leaflet/blocks/math.json +15 -0
  225. package/lexicons/pub/leaflet/blocks/orderedList.json +54 -0
  226. package/lexicons/pub/leaflet/blocks/page.json +15 -0
  227. package/lexicons/pub/leaflet/blocks/poll.json +16 -0
  228. package/lexicons/pub/leaflet/blocks/text.json +26 -0
  229. package/lexicons/pub/leaflet/blocks/unorderedList.json +50 -0
  230. package/lexicons/pub/leaflet/blocks/website.json +27 -0
  231. package/lexicons/pub/leaflet/pages/linearDocument.json +98 -0
  232. package/lexicons/pub/leaflet/richtext/facet.json +149 -0
  233. package/package.json +4 -5
  234. package/dist/generated/types/org/hypercerts/claim/collection.d.ts +0 -41
  235. package/dist/generated/types/org/hypercerts/claim/collection.d.ts.map +0 -1
  236. package/dist/generated/types/org/hypercerts/claim/contributionDetails.d.ts.map +0 -1
  237. package/dist/generated/types/org/hypercerts/claim/evaluation.d.ts.map +0 -1
  238. package/dist/generated/types/org/hypercerts/claim/evidence.d.ts +0 -29
  239. package/dist/generated/types/org/hypercerts/claim/evidence.d.ts.map +0 -1
  240. package/dist/generated/types/org/hypercerts/claim/measurement.d.ts +0 -30
  241. package/dist/generated/types/org/hypercerts/claim/measurement.d.ts.map +0 -1
  242. package/dist/generated/types/org/hypercerts/helper/workScopeTag.d.ts +0 -31
  243. package/dist/generated/types/org/hypercerts/helper/workScopeTag.d.ts.map +0 -1
  244. package/dist/types/org/hypercerts/claim/collection.d.ts +0 -41
  245. package/dist/types/org/hypercerts/claim/collection.d.ts.map +0 -1
  246. package/dist/types/org/hypercerts/claim/contributionDetails.d.ts.map +0 -1
  247. package/dist/types/org/hypercerts/claim/evaluation.d.ts.map +0 -1
  248. package/dist/types/org/hypercerts/claim/evidence.d.ts +0 -29
  249. package/dist/types/org/hypercerts/claim/evidence.d.ts.map +0 -1
  250. package/dist/types/org/hypercerts/claim/measurement.d.ts +0 -30
  251. package/dist/types/org/hypercerts/claim/measurement.d.ts.map +0 -1
  252. package/dist/types/org/hypercerts/helper/workScopeTag.d.ts +0 -31
  253. package/dist/types/org/hypercerts/helper/workScopeTag.d.ts.map +0 -1
  254. package/lexicons/org/hypercerts/claim/evidence.json +0 -57
  255. package/lexicons/org/hypercerts/claim/measurement.json +0 -70
  256. package/lexicons/org/hypercerts/helper/workScopeTag.json +0 -65
@@ -8,41 +8,55 @@
8
8
  "key": "tid",
9
9
  "record": {
10
10
  "type": "object",
11
- "required": ["from", "to", "amount", "currency", "createdAt"],
11
+ "required": ["to", "amount", "currency", "createdAt"],
12
12
  "properties": {
13
13
  "from": {
14
- "type": "ref",
15
- "ref": "app.certified.defs#did",
16
- "description": "DID of the sender who transferred the funds. Leave empty if sender wants to stay anonymous."
14
+ "type": "union",
15
+ "description": "The sender of the funds (a free-text string, an account DID, or a strong reference to a record). Optional — omit to represent anonymity.",
16
+ "refs": [
17
+ "#text",
18
+ "app.certified.defs#did",
19
+ "com.atproto.repo.strongRef"
20
+ ]
17
21
  },
18
22
  "to": {
19
- "type": "string",
20
- "description": "The recipient of the funds. Can be identified by DID or a clear-text name."
23
+ "type": "union",
24
+ "description": "The recipient of the funds (a free-text string, an account DID, or a strong reference to a record).",
25
+ "refs": [
26
+ "#text",
27
+ "app.certified.defs#did",
28
+ "com.atproto.repo.strongRef"
29
+ ]
21
30
  },
22
31
  "amount": {
23
32
  "type": "string",
24
- "description": "Amount of funding received."
33
+ "description": "Amount of funding received as a numeric string (e.g. '1000.50').",
34
+ "maxLength": 50
25
35
  },
26
36
  "currency": {
27
37
  "type": "string",
28
- "description": "Currency of the payment (e.g. EUR, USD, ETH)."
38
+ "description": "Currency of the payment (e.g. EUR, USD, ETH).",
39
+ "maxLength": 10
29
40
  },
30
41
  "paymentRail": {
31
42
  "type": "string",
32
- "description": "How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor)."
43
+ "description": "How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor).",
44
+ "maxLength": 50
33
45
  },
34
46
  "paymentNetwork": {
35
47
  "type": "string",
36
- "description": "Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal)."
48
+ "description": "Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal).",
49
+ "maxLength": 50
37
50
  },
38
51
  "transactionId": {
39
52
  "type": "string",
40
- "description": "Identifier of the underlying payment transaction (e.g. bank reference, onchain transaction hash, or processor-specific ID). Use paymentNetwork to specify the network where applicable."
53
+ "description": "Identifier of the underlying payment transaction (e.g. bank reference, onchain transaction hash, or processor-specific ID). Use paymentNetwork to specify the network where applicable.",
54
+ "maxLength": 256
41
55
  },
42
56
  "for": {
43
- "type": "string",
44
- "format": "at-uri",
45
- "description": "Optional reference to the activity, project, or organization this funding relates to."
57
+ "type": "ref",
58
+ "ref": "com.atproto.repo.strongRef",
59
+ "description": "Optional strong reference to the activity, project, or organization this funding relates to."
46
60
  },
47
61
  "notes": {
48
62
  "type": "string",
@@ -61,6 +75,18 @@
61
75
  }
62
76
  }
63
77
  }
78
+ },
79
+ "text": {
80
+ "type": "object",
81
+ "description": "A free-text string value (e.g. a display name, wallet address, or other identifier).",
82
+ "required": ["value"],
83
+ "properties": {
84
+ "value": {
85
+ "type": "string",
86
+ "description": "The string value.",
87
+ "maxLength": 2048
88
+ }
89
+ }
64
90
  }
65
91
  }
66
92
  }
@@ -0,0 +1,39 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "org.hypercerts.workscope.cel",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "description": "A structured, machine-evaluable work scope definition using CEL (Common Expression Language). Tags referenced in the expression correspond to org.hypercerts.workscope.tag keys. See https://github.com/google/cel-spec. Note: this is intentionally type 'object' (not 'record') so it can be directly embedded inline in union types (e.g., activity.workScope) without requiring a separate collection or strongRef indirection.",
8
+ "required": ["expression", "usedTags", "version", "createdAt"],
9
+ "properties": {
10
+ "expression": {
11
+ "type": "string",
12
+ "maxLength": 10000,
13
+ "maxGraphemes": 5000,
14
+ "description": "A CEL expression encoding the work scope conditions. Example: scope.hasAll(['mangrove_restoration', 'environmental_education']) && location.country == 'KE'"
15
+ },
16
+ "usedTags": {
17
+ "type": "array",
18
+ "items": {
19
+ "type": "ref",
20
+ "ref": "com.atproto.repo.strongRef"
21
+ },
22
+ "maxLength": 100,
23
+ "description": "Strong references to org.hypercerts.workscope.tag records used in the expression. Enables fast indexing by AT-URI and provides referential integrity to the underlying tag records."
24
+ },
25
+ "version": {
26
+ "type": "string",
27
+ "maxLength": 16,
28
+ "knownValues": ["v1"],
29
+ "description": "CEL context schema version."
30
+ },
31
+ "createdAt": {
32
+ "type": "string",
33
+ "format": "datetime",
34
+ "description": "Client-declared timestamp when this expression was originally created."
35
+ }
36
+ }
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,87 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "org.hypercerts.workscope.tag",
4
+ "defs": {
5
+ "main": {
6
+ "type": "record",
7
+ "description": "A reusable scope atom for work scope logic expressions. Scopes can represent topics, languages, domains, deliverables, methods, regions, tags, or other categorical labels. Tags are composed into structured expressions via CEL (Common Expression Language) on activity records.",
8
+ "key": "tid",
9
+ "record": {
10
+ "type": "object",
11
+ "required": ["key", "name", "createdAt"],
12
+ "properties": {
13
+ "key": {
14
+ "type": "string",
15
+ "description": "Lowercase, underscore-separated machine-readable key for this scope (e.g., 'mangrove_restoration', 'biodiversity_monitoring'). Used as the canonical identifier in CEL expressions.",
16
+ "maxLength": 120
17
+ },
18
+ "name": {
19
+ "type": "string",
20
+ "description": "Human-readable name for this scope.",
21
+ "maxLength": 200
22
+ },
23
+ "category": {
24
+ "type": "string",
25
+ "description": "Category type of this scope.",
26
+ "knownValues": ["topic", "language", "domain", "method"],
27
+ "maxLength": 50
28
+ },
29
+ "description": {
30
+ "type": "string",
31
+ "description": "Optional longer description of this scope.",
32
+ "maxLength": 10000,
33
+ "maxGraphemes": 1000
34
+ },
35
+ "parent": {
36
+ "type": "ref",
37
+ "ref": "com.atproto.repo.strongRef",
38
+ "description": "Optional strong reference to a parent work scope tag record for taxonomy/hierarchy support. The record referenced must conform with the lexicon org.hypercerts.workscope.tag."
39
+ },
40
+ "status": {
41
+ "type": "string",
42
+ "description": "Lifecycle status of this tag. Communities propose tags, curators accept them, deprecated tags point to replacements via supersededBy.",
43
+ "knownValues": ["proposed", "accepted", "deprecated"],
44
+ "maxLength": 20
45
+ },
46
+ "supersededBy": {
47
+ "type": "ref",
48
+ "ref": "com.atproto.repo.strongRef",
49
+ "description": "When status is 'deprecated', points to the replacement work scope tag record. The record referenced must conform with the lexicon org.hypercerts.workscope.tag."
50
+ },
51
+ "aliases": {
52
+ "type": "array",
53
+ "items": {
54
+ "type": "string",
55
+ "maxLength": 200
56
+ },
57
+ "maxLength": 50,
58
+ "description": "Alternative human-readable names for this scope (e.g., translations, abbreviations, or common synonyms). Unlike sameAs, these are plain-text labels, not links to external ontologies."
59
+ },
60
+ "sameAs": {
61
+ "type": "array",
62
+ "items": {
63
+ "type": "string",
64
+ "format": "uri",
65
+ "maxLength": 2048
66
+ },
67
+ "maxLength": 20,
68
+ "description": "URIs to semantically equivalent concepts in external ontologies or taxonomies (e.g., Wikidata QIDs, ENVO terms, SDG targets). Used for interoperability, not as documentation."
69
+ },
70
+ "referenceDocument": {
71
+ "type": "union",
72
+ "refs": [
73
+ "org.hypercerts.defs#uri",
74
+ "org.hypercerts.defs#smallBlob"
75
+ ],
76
+ "description": "Link to a governance or reference document where this work scope tag is defined and further explained."
77
+ },
78
+ "createdAt": {
79
+ "type": "string",
80
+ "format": "datetime",
81
+ "description": "Client-declared timestamp when this record was originally created."
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.blockquote",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["plaintext"],
8
+ "properties": {
9
+ "plaintext": {
10
+ "type": "string"
11
+ },
12
+ "facets": {
13
+ "type": "array",
14
+ "items": {
15
+ "type": "ref",
16
+ "ref": "pub.leaflet.richtext.facet"
17
+ }
18
+ }
19
+ }
20
+ }
21
+ }
22
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.bskyPost",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["postRef"],
8
+ "properties": {
9
+ "postRef": {
10
+ "type": "ref",
11
+ "ref": "com.atproto.repo.strongRef"
12
+ },
13
+ "clientHost": {
14
+ "type": "string"
15
+ }
16
+ }
17
+ }
18
+ }
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.button",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["text", "url"],
8
+ "properties": {
9
+ "text": {
10
+ "type": "string"
11
+ },
12
+ "url": {
13
+ "type": "string",
14
+ "format": "uri"
15
+ }
16
+ }
17
+ }
18
+ }
19
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.code",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["plaintext"],
8
+ "properties": {
9
+ "plaintext": {
10
+ "type": "string"
11
+ },
12
+ "language": {
13
+ "type": "string"
14
+ },
15
+ "syntaxHighlightingTheme": {
16
+ "type": "string"
17
+ }
18
+ }
19
+ }
20
+ }
21
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.header",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["plaintext"],
8
+ "properties": {
9
+ "level": {
10
+ "type": "integer",
11
+ "minimum": 1,
12
+ "maximum": 6
13
+ },
14
+ "plaintext": {
15
+ "type": "string"
16
+ },
17
+ "facets": {
18
+ "type": "array",
19
+ "items": {
20
+ "type": "ref",
21
+ "ref": "pub.leaflet.richtext.facet"
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.horizontalRule",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": [],
8
+ "properties": {}
9
+ }
10
+ }
11
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.iframe",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["url"],
8
+ "properties": {
9
+ "url": {
10
+ "type": "string",
11
+ "format": "uri"
12
+ },
13
+ "height": {
14
+ "type": "integer",
15
+ "minimum": 16,
16
+ "maximum": 1600
17
+ }
18
+ }
19
+ }
20
+ }
21
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.image",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["image", "aspectRatio"],
8
+ "properties": {
9
+ "image": {
10
+ "type": "blob",
11
+ "accept": ["image/*"],
12
+ "maxSize": 1000000
13
+ },
14
+ "alt": {
15
+ "type": "string",
16
+ "description": "Alt text description of the image, for accessibility."
17
+ },
18
+ "aspectRatio": {
19
+ "type": "ref",
20
+ "ref": "#aspectRatio"
21
+ }
22
+ }
23
+ },
24
+ "aspectRatio": {
25
+ "type": "object",
26
+ "required": ["width", "height"],
27
+ "properties": {
28
+ "width": {
29
+ "type": "integer"
30
+ },
31
+ "height": {
32
+ "type": "integer"
33
+ }
34
+ }
35
+ }
36
+ }
37
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.math",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["tex"],
8
+ "properties": {
9
+ "tex": {
10
+ "type": "string"
11
+ }
12
+ }
13
+ }
14
+ }
15
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.orderedList",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["children"],
8
+ "properties": {
9
+ "startIndex": {
10
+ "type": "integer",
11
+ "description": "The starting number for this ordered list. Defaults to 1 if not specified."
12
+ },
13
+ "children": {
14
+ "type": "array",
15
+ "items": {
16
+ "type": "ref",
17
+ "ref": "#listItem"
18
+ }
19
+ }
20
+ }
21
+ },
22
+ "listItem": {
23
+ "type": "object",
24
+ "required": ["content"],
25
+ "properties": {
26
+ "checked": {
27
+ "type": "boolean",
28
+ "description": "If present, this item is a checklist item. true = checked, false = unchecked. If absent, this is a normal list item."
29
+ },
30
+ "content": {
31
+ "type": "union",
32
+ "refs": [
33
+ "pub.leaflet.blocks.text",
34
+ "pub.leaflet.blocks.header",
35
+ "pub.leaflet.blocks.image"
36
+ ]
37
+ },
38
+ "children": {
39
+ "type": "array",
40
+ "description": "Nested ordered list items. Mutually exclusive with unorderedListChildren; if both are present, children takes precedence.",
41
+ "items": {
42
+ "type": "ref",
43
+ "ref": "#listItem"
44
+ }
45
+ },
46
+ "unorderedListChildren": {
47
+ "type": "ref",
48
+ "description": "A nested unordered list. Mutually exclusive with children; if both are present, children takes precedence.",
49
+ "ref": "pub.leaflet.blocks.unorderedList"
50
+ }
51
+ }
52
+ }
53
+ }
54
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.page",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["id"],
8
+ "properties": {
9
+ "id": {
10
+ "type": "string"
11
+ }
12
+ }
13
+ }
14
+ }
15
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.poll",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["pollRef"],
8
+ "properties": {
9
+ "pollRef": {
10
+ "type": "ref",
11
+ "ref": "com.atproto.repo.strongRef"
12
+ }
13
+ }
14
+ }
15
+ }
16
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.text",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["plaintext"],
8
+ "properties": {
9
+ "plaintext": {
10
+ "type": "string"
11
+ },
12
+ "textSize": {
13
+ "type": "string",
14
+ "enum": ["default", "small", "large"]
15
+ },
16
+ "facets": {
17
+ "type": "array",
18
+ "items": {
19
+ "type": "ref",
20
+ "ref": "pub.leaflet.richtext.facet"
21
+ }
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,50 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.unorderedList",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["children"],
8
+ "properties": {
9
+ "children": {
10
+ "type": "array",
11
+ "items": {
12
+ "type": "ref",
13
+ "ref": "#listItem"
14
+ }
15
+ }
16
+ }
17
+ },
18
+ "listItem": {
19
+ "type": "object",
20
+ "required": ["content"],
21
+ "properties": {
22
+ "checked": {
23
+ "type": "boolean",
24
+ "description": "If present, this item is a checklist item. true = checked, false = unchecked. If absent, this is a normal list item."
25
+ },
26
+ "content": {
27
+ "type": "union",
28
+ "refs": [
29
+ "pub.leaflet.blocks.text",
30
+ "pub.leaflet.blocks.header",
31
+ "pub.leaflet.blocks.image"
32
+ ]
33
+ },
34
+ "children": {
35
+ "type": "array",
36
+ "description": "Nested unordered list items. Mutually exclusive with orderedListChildren; if both are present, children takes precedence.",
37
+ "items": {
38
+ "type": "ref",
39
+ "ref": "#listItem"
40
+ }
41
+ },
42
+ "orderedListChildren": {
43
+ "type": "ref",
44
+ "description": "Nested ordered list items. Mutually exclusive with children; if both are present, children takes precedence.",
45
+ "ref": "pub.leaflet.blocks.orderedList"
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "pub.leaflet.blocks.website",
4
+ "defs": {
5
+ "main": {
6
+ "type": "object",
7
+ "required": ["src"],
8
+ "properties": {
9
+ "previewImage": {
10
+ "type": "blob",
11
+ "accept": ["image/*"],
12
+ "maxSize": 1000000
13
+ },
14
+ "title": {
15
+ "type": "string"
16
+ },
17
+ "description": {
18
+ "type": "string"
19
+ },
20
+ "src": {
21
+ "type": "string",
22
+ "format": "uri"
23
+ }
24
+ }
25
+ }
26
+ }
27
+ }