@dxos/echo 0.8.4-main.fd6878d → 0.8.4-staging.ac66bdf99f

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 (527) hide show
  1. package/README.md +3 -4
  2. package/dist/lib/neutral/Annotation.mjs +37 -0
  3. package/dist/lib/neutral/Database.mjs +49 -0
  4. package/dist/lib/neutral/Entity.mjs +61 -0
  5. package/dist/lib/neutral/Entity.mjs.map +7 -0
  6. package/dist/lib/neutral/Err.mjs +12 -0
  7. package/dist/lib/neutral/Err.mjs.map +7 -0
  8. package/dist/lib/neutral/Extension.mjs +18 -0
  9. package/dist/lib/neutral/Extension.mjs.map +7 -0
  10. package/dist/lib/neutral/Feed.mjs +50 -0
  11. package/dist/lib/neutral/Feed.mjs.map +7 -0
  12. package/dist/lib/neutral/Filter.mjs +72 -0
  13. package/dist/lib/neutral/Filter.mjs.map +7 -0
  14. package/dist/lib/neutral/Format.mjs +66 -0
  15. package/dist/lib/neutral/Format.mjs.map +7 -0
  16. package/dist/lib/neutral/JsonSchema.mjs +19 -0
  17. package/dist/lib/neutral/JsonSchema.mjs.map +7 -0
  18. package/dist/lib/neutral/Key.mjs +12 -0
  19. package/dist/lib/neutral/Key.mjs.map +7 -0
  20. package/dist/lib/neutral/Migration.mjs +17 -0
  21. package/dist/lib/neutral/Migration.mjs.map +7 -0
  22. package/dist/lib/neutral/Obj.mjs +113 -0
  23. package/dist/lib/neutral/Obj.mjs.map +7 -0
  24. package/dist/lib/neutral/Order.mjs +12 -0
  25. package/dist/lib/neutral/Order.mjs.map +7 -0
  26. package/dist/lib/neutral/Query.mjs +38 -0
  27. package/dist/lib/neutral/Query.mjs.map +7 -0
  28. package/dist/lib/neutral/QueryResult.mjs +2 -0
  29. package/dist/lib/neutral/QueryResult.mjs.map +7 -0
  30. package/dist/lib/neutral/Ref.mjs +24 -0
  31. package/dist/lib/neutral/Ref.mjs.map +7 -0
  32. package/dist/lib/neutral/Relation.mjs +94 -0
  33. package/dist/lib/neutral/Relation.mjs.map +7 -0
  34. package/dist/lib/neutral/SchemaRegistry.mjs +2 -0
  35. package/dist/lib/neutral/SchemaRegistry.mjs.map +7 -0
  36. package/dist/lib/neutral/Tag.mjs +29 -0
  37. package/dist/lib/neutral/Tag.mjs.map +7 -0
  38. package/dist/lib/neutral/Type.mjs +37 -0
  39. package/dist/lib/neutral/Type.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-2KHZ36F5.mjs +361 -0
  41. package/dist/lib/neutral/chunk-2KHZ36F5.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-4OIBYSXE.mjs +159 -0
  43. package/dist/lib/neutral/chunk-4OIBYSXE.mjs.map +7 -0
  44. package/dist/lib/neutral/chunk-4P3IXBLT.mjs +45 -0
  45. package/dist/lib/neutral/chunk-4P3IXBLT.mjs.map +7 -0
  46. package/dist/lib/neutral/chunk-7RO7CPBZ.mjs +27 -0
  47. package/dist/lib/neutral/chunk-7RO7CPBZ.mjs.map +7 -0
  48. package/dist/lib/neutral/chunk-ANHVGJI4.mjs +21 -0
  49. package/dist/lib/neutral/chunk-ANHVGJI4.mjs.map +7 -0
  50. package/dist/lib/neutral/chunk-B4BASU6W.mjs +428 -0
  51. package/dist/lib/neutral/chunk-B4BASU6W.mjs.map +7 -0
  52. package/dist/lib/neutral/chunk-BNCCGLJN.mjs +7 -0
  53. package/dist/lib/neutral/chunk-BNCCGLJN.mjs.map +7 -0
  54. package/dist/lib/neutral/chunk-BVOFLCVF.mjs +45 -0
  55. package/dist/lib/neutral/chunk-BVOFLCVF.mjs.map +7 -0
  56. package/dist/lib/neutral/chunk-DQYLD2RB.mjs +402 -0
  57. package/dist/lib/neutral/chunk-DQYLD2RB.mjs.map +7 -0
  58. package/dist/lib/neutral/chunk-EAMSSLZC.mjs +299 -0
  59. package/dist/lib/neutral/chunk-EAMSSLZC.mjs.map +7 -0
  60. package/dist/lib/neutral/chunk-G3IQMKF7.mjs +396 -0
  61. package/dist/lib/neutral/chunk-G3IQMKF7.mjs.map +7 -0
  62. package/dist/lib/neutral/chunk-GZQTCRJB.mjs +73 -0
  63. package/dist/lib/neutral/chunk-GZQTCRJB.mjs.map +7 -0
  64. package/dist/lib/neutral/chunk-HBUZJNZO.mjs +286 -0
  65. package/dist/lib/neutral/chunk-HBUZJNZO.mjs.map +7 -0
  66. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  67. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  68. package/dist/lib/neutral/chunk-JUXPFOEI.mjs +787 -0
  69. package/dist/lib/neutral/chunk-JUXPFOEI.mjs.map +7 -0
  70. package/dist/lib/neutral/chunk-MOR5ERFM.mjs +2834 -0
  71. package/dist/lib/neutral/chunk-MOR5ERFM.mjs.map +7 -0
  72. package/dist/lib/neutral/chunk-OMUPQMLR.mjs +7 -0
  73. package/dist/lib/neutral/chunk-OMUPQMLR.mjs.map +7 -0
  74. package/dist/lib/neutral/chunk-OS35K56T.mjs +34 -0
  75. package/dist/lib/neutral/chunk-OS35K56T.mjs.map +7 -0
  76. package/dist/lib/neutral/chunk-PHU22NLC.mjs +136 -0
  77. package/dist/lib/neutral/chunk-PHU22NLC.mjs.map +7 -0
  78. package/dist/lib/neutral/chunk-ROG4RXXL.mjs +97 -0
  79. package/dist/lib/neutral/chunk-ROG4RXXL.mjs.map +7 -0
  80. package/dist/lib/neutral/chunk-T6W2LEZU.mjs +125 -0
  81. package/dist/lib/neutral/chunk-T6W2LEZU.mjs.map +7 -0
  82. package/dist/lib/neutral/chunk-TBKX6JQO.mjs +67 -0
  83. package/dist/lib/neutral/chunk-TBKX6JQO.mjs.map +7 -0
  84. package/dist/lib/neutral/chunk-TU3GW67D.mjs +132 -0
  85. package/dist/lib/neutral/chunk-TU3GW67D.mjs.map +7 -0
  86. package/dist/lib/neutral/chunk-UBEZSGXY.mjs +51 -0
  87. package/dist/lib/neutral/chunk-UBEZSGXY.mjs.map +7 -0
  88. package/dist/lib/neutral/chunk-UI6MWK5W.mjs +42 -0
  89. package/dist/lib/neutral/chunk-UI6MWK5W.mjs.map +7 -0
  90. package/dist/lib/neutral/chunk-V36VO5SS.mjs +354 -0
  91. package/dist/lib/neutral/chunk-V36VO5SS.mjs.map +7 -0
  92. package/dist/lib/neutral/chunk-WAK4DMFV.mjs +36 -0
  93. package/dist/lib/neutral/chunk-WAK4DMFV.mjs.map +7 -0
  94. package/dist/lib/neutral/chunk-YAHXAYOW.mjs +56 -0
  95. package/dist/lib/neutral/chunk-YAHXAYOW.mjs.map +7 -0
  96. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs +50 -0
  97. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs.map +7 -0
  98. package/dist/lib/neutral/index.mjs +105 -0
  99. package/dist/lib/neutral/index.mjs.map +7 -0
  100. package/dist/lib/neutral/internal/index.mjs +474 -0
  101. package/dist/lib/neutral/internal/index.mjs.map +7 -0
  102. package/dist/lib/neutral/meta.json +1 -0
  103. package/dist/lib/neutral/testing/index.mjs +375 -0
  104. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  105. package/dist/types/src/Annotation.d.ts +24 -0
  106. package/dist/types/src/Annotation.d.ts.map +1 -0
  107. package/dist/types/src/Collection.d.ts +16 -0
  108. package/dist/types/src/Collection.d.ts.map +1 -0
  109. package/dist/types/src/Database.d.ts +201 -0
  110. package/dist/types/src/Database.d.ts.map +1 -0
  111. package/dist/types/src/Dataset.d.ts +19 -0
  112. package/dist/types/src/Dataset.d.ts.map +1 -0
  113. package/dist/types/src/Entity.d.ts +174 -0
  114. package/dist/types/src/Entity.d.ts.map +1 -0
  115. package/dist/types/src/Entity.test.d.ts +2 -0
  116. package/dist/types/src/Entity.test.d.ts.map +1 -0
  117. package/dist/types/src/Err.d.ts +107 -0
  118. package/dist/types/src/Err.d.ts.map +1 -0
  119. package/dist/types/src/Extension.d.ts +80 -0
  120. package/dist/types/src/Extension.d.ts.map +1 -0
  121. package/dist/types/src/Extension.test.d.ts +2 -0
  122. package/dist/types/src/Extension.test.d.ts.map +1 -0
  123. package/dist/types/src/Feed.d.ts +182 -0
  124. package/dist/types/src/Feed.d.ts.map +1 -0
  125. package/dist/types/src/Filter.d.ts +149 -0
  126. package/dist/types/src/Filter.d.ts.map +1 -0
  127. package/dist/types/src/Filter.test.d.ts +2 -0
  128. package/dist/types/src/Filter.test.d.ts.map +1 -0
  129. package/dist/types/src/Format.d.ts +4 -0
  130. package/dist/types/src/Format.d.ts.map +1 -0
  131. package/dist/types/src/Hypergraph.d.ts +65 -0
  132. package/dist/types/src/Hypergraph.d.ts.map +1 -0
  133. package/dist/types/src/JsonSchema.d.ts +16 -0
  134. package/dist/types/src/JsonSchema.d.ts.map +1 -0
  135. package/dist/types/src/Key.d.ts +1 -0
  136. package/dist/types/src/Key.d.ts.map +1 -1
  137. package/dist/types/src/Migration.d.ts +57 -0
  138. package/dist/types/src/Migration.d.ts.map +1 -0
  139. package/dist/types/src/Obj.d.ts +466 -48
  140. package/dist/types/src/Obj.d.ts.map +1 -1
  141. package/dist/types/src/Obj.test.d.ts +2 -0
  142. package/dist/types/src/Obj.test.d.ts.map +1 -0
  143. package/dist/types/src/Order.d.ts +16 -0
  144. package/dist/types/src/Order.d.ts.map +1 -0
  145. package/dist/types/src/Query.d.ts +209 -0
  146. package/dist/types/src/Query.d.ts.map +1 -0
  147. package/dist/types/src/Query.test.d.ts +2 -0
  148. package/dist/types/src/Query.test.d.ts.map +1 -0
  149. package/dist/types/src/QueryResult.d.ts +80 -0
  150. package/dist/types/src/QueryResult.d.ts.map +1 -0
  151. package/dist/types/src/Ref.d.ts +61 -11
  152. package/dist/types/src/Ref.d.ts.map +1 -1
  153. package/dist/types/src/Relation.d.ts +288 -21
  154. package/dist/types/src/Relation.d.ts.map +1 -1
  155. package/dist/types/src/Relation.test.d.ts +2 -0
  156. package/dist/types/src/Relation.test.d.ts.map +1 -0
  157. package/dist/types/src/SchemaRegistry.d.ts +84 -0
  158. package/dist/types/src/SchemaRegistry.d.ts.map +1 -0
  159. package/dist/types/src/Tag.d.ts +18 -0
  160. package/dist/types/src/Tag.d.ts.map +1 -0
  161. package/dist/types/src/Type.d.ts +123 -100
  162. package/dist/types/src/Type.d.ts.map +1 -1
  163. package/dist/types/src/Type.test.d.ts +2 -0
  164. package/dist/types/src/Type.test.d.ts.map +1 -0
  165. package/dist/types/src/View.d.ts +68 -0
  166. package/dist/types/src/View.d.ts.map +1 -0
  167. package/dist/types/src/hierarchy.test.d.ts +2 -0
  168. package/dist/types/src/hierarchy.test.d.ts.map +1 -0
  169. package/dist/types/src/index.d.ts +21 -3
  170. package/dist/types/src/index.d.ts.map +1 -1
  171. package/dist/types/src/internal/Annotation/annotations.d.ts +231 -0
  172. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -0
  173. package/dist/types/src/internal/Annotation/annotations.test.d.ts +2 -0
  174. package/dist/types/src/internal/Annotation/annotations.test.d.ts.map +1 -0
  175. package/dist/types/src/internal/Annotation/index.d.ts +4 -0
  176. package/dist/types/src/internal/Annotation/index.d.ts.map +1 -0
  177. package/dist/types/src/internal/Annotation/sorting.d.ts +24 -0
  178. package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -0
  179. package/dist/types/src/internal/Annotation/util.d.ts +39 -0
  180. package/dist/types/src/internal/Annotation/util.d.ts.map +1 -0
  181. package/dist/types/src/internal/Entity/api.d.ts +13 -0
  182. package/dist/types/src/internal/Entity/api.d.ts.map +1 -0
  183. package/dist/types/src/internal/Entity/entity.d.ts +20 -0
  184. package/dist/types/src/internal/Entity/entity.d.ts.map +1 -0
  185. package/dist/types/src/internal/Entity/index.d.ts +8 -0
  186. package/dist/types/src/internal/Entity/index.d.ts.map +1 -0
  187. package/dist/types/src/internal/Entity/model.d.ts +55 -0
  188. package/dist/types/src/internal/Entity/model.d.ts.map +1 -0
  189. package/dist/types/src/internal/Entity/object.d.ts +18 -0
  190. package/dist/types/src/internal/Entity/object.d.ts.map +1 -0
  191. package/dist/types/src/internal/Entity/relation.d.ts +35 -0
  192. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -0
  193. package/dist/types/src/internal/Entity/util.d.ts +2 -0
  194. package/dist/types/src/internal/Entity/util.d.ts.map +1 -0
  195. package/dist/types/src/internal/Entity/version.d.ts +42 -0
  196. package/dist/types/src/internal/Entity/version.d.ts.map +1 -0
  197. package/dist/types/src/internal/Format/date.d.ts +63 -0
  198. package/dist/types/src/internal/Format/date.d.ts.map +1 -0
  199. package/dist/types/src/internal/Format/date.test.d.ts +2 -0
  200. package/dist/types/src/internal/Format/date.test.d.ts.map +1 -0
  201. package/dist/types/src/internal/Format/format.d.ts +32 -0
  202. package/dist/types/src/internal/Format/format.d.ts.map +1 -0
  203. package/dist/types/src/internal/Format/format.test.d.ts +2 -0
  204. package/dist/types/src/internal/Format/format.test.d.ts.map +1 -0
  205. package/dist/types/src/internal/Format/index.d.ts +8 -0
  206. package/dist/types/src/internal/Format/index.d.ts.map +1 -0
  207. package/dist/types/src/internal/Format/number.d.ts +31 -0
  208. package/dist/types/src/internal/Format/number.d.ts.map +1 -0
  209. package/dist/types/src/internal/Format/object.d.ts +35 -0
  210. package/dist/types/src/internal/Format/object.d.ts.map +1 -0
  211. package/dist/types/src/internal/Format/select.d.ts +13 -0
  212. package/dist/types/src/internal/Format/select.d.ts.map +1 -0
  213. package/dist/types/src/internal/Format/string.d.ts +42 -0
  214. package/dist/types/src/internal/Format/string.d.ts.map +1 -0
  215. package/dist/types/src/internal/Format/types.d.ts +72 -0
  216. package/dist/types/src/internal/Format/types.d.ts.map +1 -0
  217. package/dist/types/src/internal/JsonSchema/annotations.d.ts +19 -0
  218. package/dist/types/src/internal/JsonSchema/annotations.d.ts.map +1 -0
  219. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts +2 -0
  220. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts.map +1 -0
  221. package/dist/types/src/internal/JsonSchema/index.d.ts +5 -0
  222. package/dist/types/src/internal/JsonSchema/index.d.ts.map +1 -0
  223. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts +7 -0
  224. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -0
  225. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts +351 -0
  226. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -0
  227. package/dist/types/src/internal/JsonSchema/json-schema.d.ts +30 -0
  228. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -0
  229. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts +2 -0
  230. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts.map +1 -0
  231. package/dist/types/src/internal/Obj/clone.d.ts +8 -0
  232. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -0
  233. package/dist/types/src/internal/Obj/common.d.ts +18 -0
  234. package/dist/types/src/internal/Obj/common.d.ts.map +1 -0
  235. package/dist/types/src/internal/Obj/create-object.d.ts +39 -0
  236. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -0
  237. package/dist/types/src/internal/Obj/create-object.test.d.ts +2 -0
  238. package/dist/types/src/internal/Obj/create-object.test.d.ts.map +1 -0
  239. package/dist/types/src/internal/Obj/deleted.d.ts +6 -0
  240. package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -0
  241. package/dist/types/src/internal/Obj/ids.d.ts +6 -0
  242. package/dist/types/src/internal/Obj/ids.d.ts.map +1 -0
  243. package/dist/types/src/internal/Obj/index.d.ts +11 -0
  244. package/dist/types/src/internal/Obj/index.d.ts.map +1 -0
  245. package/dist/types/src/internal/Obj/inspect.d.ts +2 -0
  246. package/dist/types/src/internal/Obj/inspect.d.ts.map +1 -0
  247. package/dist/types/src/internal/Obj/json-serializer.d.ts +45 -0
  248. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -0
  249. package/dist/types/src/internal/Obj/json-serializer.test.d.ts +2 -0
  250. package/dist/types/src/internal/Obj/json-serializer.test.d.ts.map +1 -0
  251. package/dist/types/src/internal/Obj/schema-validator.d.ts +2 -0
  252. package/dist/types/src/internal/Obj/schema-validator.d.ts.map +1 -0
  253. package/dist/types/src/internal/Obj/schema-validator.test.d.ts +2 -0
  254. package/dist/types/src/internal/Obj/schema-validator.test.d.ts.map +1 -0
  255. package/dist/types/src/internal/Obj/set-value.d.ts +7 -0
  256. package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -0
  257. package/dist/types/src/internal/Obj/set-value.test.d.ts +2 -0
  258. package/dist/types/src/internal/Obj/set-value.test.d.ts.map +1 -0
  259. package/dist/types/src/internal/Obj/snapshot.d.ts +6 -0
  260. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -0
  261. package/dist/types/src/internal/Obj/typed-object.d.ts +25 -0
  262. package/dist/types/src/internal/Obj/typed-object.d.ts.map +1 -0
  263. package/dist/types/src/internal/Obj/typed-object.test.d.ts +2 -0
  264. package/dist/types/src/internal/Obj/typed-object.test.d.ts.map +1 -0
  265. package/dist/types/src/internal/Query.d.ts +10 -0
  266. package/dist/types/src/internal/Query.d.ts.map +1 -0
  267. package/dist/types/src/internal/Ref/index.d.ts +3 -0
  268. package/dist/types/src/internal/Ref/index.d.ts.map +1 -0
  269. package/dist/types/src/internal/Ref/ref-array.d.ts +21 -0
  270. package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -0
  271. package/dist/types/src/internal/Ref/ref.d.ts +231 -0
  272. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -0
  273. package/dist/types/src/internal/Ref/ref.test.d.ts +2 -0
  274. package/dist/types/src/internal/Ref/ref.test.d.ts.map +1 -0
  275. package/dist/types/src/internal/Type/compose.d.ts +7 -0
  276. package/dist/types/src/internal/Type/compose.d.ts.map +1 -0
  277. package/dist/types/src/internal/Type/compose.test.d.ts +2 -0
  278. package/dist/types/src/internal/Type/compose.test.d.ts.map +1 -0
  279. package/dist/types/src/internal/Type/echo-schema.d.ts +181 -0
  280. package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -0
  281. package/dist/types/src/internal/Type/index.d.ts +4 -0
  282. package/dist/types/src/internal/Type/index.d.ts.map +1 -0
  283. package/dist/types/src/internal/Type/manipulation.d.ts +10 -0
  284. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -0
  285. package/dist/types/src/internal/Type/persistent-schema.d.ts +20 -0
  286. package/dist/types/src/internal/Type/persistent-schema.d.ts.map +1 -0
  287. package/dist/types/src/internal/common/api/index.d.ts +11 -0
  288. package/dist/types/src/internal/common/api/index.d.ts.map +1 -0
  289. package/dist/types/src/internal/common/api/meta.d.ts +42 -0
  290. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -0
  291. package/dist/types/src/internal/common/index.d.ts +4 -0
  292. package/dist/types/src/internal/common/index.d.ts.map +1 -0
  293. package/dist/types/src/internal/common/proxy/change-context.d.ts +55 -0
  294. package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -0
  295. package/dist/types/src/internal/common/proxy/change.test.d.ts +2 -0
  296. package/dist/types/src/internal/common/proxy/change.test.d.ts.map +1 -0
  297. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts +5 -0
  298. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -0
  299. package/dist/types/src/internal/common/proxy/errors.d.ts +19 -0
  300. package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -0
  301. package/dist/types/src/internal/common/proxy/event-batch.d.ts +10 -0
  302. package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -0
  303. package/dist/types/src/internal/common/proxy/handler.test.d.ts +2 -0
  304. package/dist/types/src/internal/common/proxy/handler.test.d.ts.map +1 -0
  305. package/dist/types/src/internal/common/proxy/index.d.ts +14 -0
  306. package/dist/types/src/internal/common/proxy/index.d.ts.map +1 -0
  307. package/dist/types/src/internal/common/proxy/json-serializer.d.ts +6 -0
  308. package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -0
  309. package/dist/types/src/internal/common/proxy/make-object.d.ts +14 -0
  310. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -0
  311. package/dist/types/src/internal/common/proxy/ownership.d.ts +57 -0
  312. package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -0
  313. package/dist/types/src/internal/common/proxy/proxy-types.d.ts +18 -0
  314. package/dist/types/src/internal/common/proxy/proxy-types.d.ts.map +1 -0
  315. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts +47 -0
  316. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -0
  317. package/dist/types/src/internal/common/proxy/reactive-array.d.ts +8 -0
  318. package/dist/types/src/internal/common/proxy/reactive-array.d.ts.map +1 -0
  319. package/dist/types/src/internal/common/proxy/reactive.d.ts +39 -0
  320. package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -0
  321. package/dist/types/src/internal/common/proxy/schema-validator.d.ts +15 -0
  322. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -0
  323. package/dist/types/src/internal/common/proxy/schema.test.d.ts +2 -0
  324. package/dist/types/src/internal/common/proxy/schema.test.d.ts.map +1 -0
  325. package/dist/types/src/internal/common/proxy/symbols.d.ts +3 -0
  326. package/dist/types/src/internal/common/proxy/symbols.d.ts.map +1 -0
  327. package/dist/types/src/internal/common/proxy/typed-handler.d.ts +48 -0
  328. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -0
  329. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts +2 -0
  330. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts.map +1 -0
  331. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts +2 -0
  332. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts.map +1 -0
  333. package/dist/types/src/internal/common/types/base.d.ts +27 -0
  334. package/dist/types/src/internal/common/types/base.d.ts.map +1 -0
  335. package/dist/types/src/internal/common/types/entity.d.ts +37 -0
  336. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -0
  337. package/dist/types/src/internal/common/types/index.d.ts +7 -0
  338. package/dist/types/src/internal/common/types/index.d.ts.map +1 -0
  339. package/dist/types/src/internal/common/types/meta.d.ts +33 -0
  340. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -0
  341. package/dist/types/src/internal/common/types/model-symbols.d.ts +54 -0
  342. package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -0
  343. package/dist/types/src/internal/common/types/typename.d.ts +21 -0
  344. package/dist/types/src/internal/common/types/typename.d.ts.map +1 -0
  345. package/dist/types/src/internal/common/types/version.d.ts +15 -0
  346. package/dist/types/src/internal/common/types/version.d.ts.map +1 -0
  347. package/dist/types/src/internal/index.d.ts +11 -0
  348. package/dist/types/src/internal/index.d.ts.map +1 -0
  349. package/dist/types/src/{test → testing}/api.test.d.ts.map +1 -1
  350. package/dist/types/src/testing/index.d.ts +3 -1
  351. package/dist/types/src/testing/index.d.ts.map +1 -1
  352. package/dist/types/src/testing/test-data.d.ts +18 -0
  353. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  354. package/dist/types/src/testing/test-schema.d.ts +304 -0
  355. package/dist/types/src/testing/test-schema.d.ts.map +1 -0
  356. package/dist/types/src/testing/util.d.ts +21 -0
  357. package/dist/types/src/testing/util.d.ts.map +1 -0
  358. package/dist/types/tsconfig.tsbuildinfo +1 -1
  359. package/package.json +119 -56
  360. package/src/Annotation.ts +48 -0
  361. package/src/Collection.ts +37 -0
  362. package/src/Database.ts +352 -0
  363. package/src/Dataset.ts +26 -0
  364. package/src/Entity.test.ts +22 -0
  365. package/src/Entity.ts +243 -0
  366. package/src/Err.ts +40 -0
  367. package/src/Extension.test.ts +235 -0
  368. package/src/Extension.ts +122 -0
  369. package/src/Feed.ts +304 -0
  370. package/src/Filter.test.ts +90 -0
  371. package/src/Filter.ts +454 -0
  372. package/src/Format.ts +9 -0
  373. package/src/Hypergraph.ts +79 -0
  374. package/src/JsonSchema.ts +26 -0
  375. package/src/Key.ts +3 -0
  376. package/src/Migration.ts +94 -0
  377. package/src/Obj.test.ts +539 -0
  378. package/src/Obj.ts +755 -101
  379. package/src/Order.ts +46 -0
  380. package/src/Query.test.ts +806 -0
  381. package/src/Query.ts +547 -0
  382. package/src/QueryResult.ts +106 -0
  383. package/src/Ref.ts +78 -9
  384. package/src/Relation.test.ts +88 -0
  385. package/src/Relation.ts +453 -53
  386. package/src/SchemaRegistry.ts +106 -0
  387. package/src/Tag.ts +41 -0
  388. package/src/Type.test.ts +52 -0
  389. package/src/Type.ts +168 -155
  390. package/src/View.ts +107 -0
  391. package/src/hierarchy.test.ts +33 -0
  392. package/src/index.ts +24 -4
  393. package/src/internal/Annotation/annotations.test.ts +145 -0
  394. package/src/internal/Annotation/annotations.ts +577 -0
  395. package/src/internal/Annotation/index.ts +7 -0
  396. package/src/internal/Annotation/sorting.ts +51 -0
  397. package/src/internal/Annotation/util.ts +85 -0
  398. package/src/internal/Entity/api.ts +30 -0
  399. package/src/internal/Entity/entity.ts +128 -0
  400. package/src/internal/Entity/index.ts +11 -0
  401. package/src/internal/Entity/model.ts +109 -0
  402. package/src/internal/Entity/object.ts +57 -0
  403. package/src/internal/Entity/relation.ts +154 -0
  404. package/src/internal/Entity/util.ts +33 -0
  405. package/src/internal/Entity/version.ts +96 -0
  406. package/src/internal/Format/date.test.ts +55 -0
  407. package/src/internal/Format/date.ts +217 -0
  408. package/src/internal/Format/format.test.ts +76 -0
  409. package/src/internal/Format/format.ts +54 -0
  410. package/src/internal/Format/index.ts +12 -0
  411. package/src/internal/Format/number.ts +89 -0
  412. package/src/internal/Format/object.ts +80 -0
  413. package/src/internal/Format/select.ts +18 -0
  414. package/src/internal/Format/string.ts +81 -0
  415. package/src/internal/Format/types.ts +186 -0
  416. package/src/internal/JsonSchema/annotations.ts +50 -0
  417. package/src/internal/JsonSchema/effect-schema.test.ts +143 -0
  418. package/src/internal/JsonSchema/index.ts +8 -0
  419. package/src/internal/JsonSchema/json-schema-normalize.ts +111 -0
  420. package/src/internal/JsonSchema/json-schema-type.ts +403 -0
  421. package/src/internal/JsonSchema/json-schema.test.ts +860 -0
  422. package/src/internal/JsonSchema/json-schema.ts +533 -0
  423. package/src/internal/Obj/clone.ts +48 -0
  424. package/src/internal/Obj/common.ts +75 -0
  425. package/src/internal/Obj/create-object.test.ts +114 -0
  426. package/src/internal/Obj/create-object.ts +94 -0
  427. package/src/internal/Obj/deleted.ts +19 -0
  428. package/src/internal/Obj/ids.ts +12 -0
  429. package/src/internal/Obj/index.ts +14 -0
  430. package/src/internal/Obj/inspect.ts +46 -0
  431. package/src/internal/Obj/json-serializer.test.ts +120 -0
  432. package/src/internal/Obj/json-serializer.ts +222 -0
  433. package/src/internal/Obj/schema-validator.test.ts +182 -0
  434. package/src/internal/Obj/schema-validator.ts +6 -0
  435. package/src/internal/Obj/set-value.test.ts +281 -0
  436. package/src/internal/Obj/set-value.ts +165 -0
  437. package/src/internal/Obj/snapshot.ts +105 -0
  438. package/src/internal/Obj/typed-object.test.ts +34 -0
  439. package/src/internal/Obj/typed-object.ts +30 -0
  440. package/src/internal/Query.ts +134 -0
  441. package/src/internal/Ref/index.ts +6 -0
  442. package/src/internal/Ref/ref-array.ts +38 -0
  443. package/src/internal/Ref/ref.test.ts +100 -0
  444. package/src/internal/Ref/ref.ts +572 -0
  445. package/src/internal/Type/compose.test.ts +41 -0
  446. package/src/internal/Type/compose.ts +41 -0
  447. package/src/internal/Type/echo-schema.ts +423 -0
  448. package/src/internal/Type/index.ts +7 -0
  449. package/src/internal/Type/manipulation.ts +92 -0
  450. package/src/internal/Type/persistent-schema.ts +33 -0
  451. package/src/internal/common/README.md +102 -0
  452. package/src/internal/common/api/index.ts +15 -0
  453. package/src/internal/common/api/meta.ts +88 -0
  454. package/src/internal/common/index.ts +7 -0
  455. package/src/internal/common/proxy/change-context.ts +138 -0
  456. package/src/internal/common/proxy/change.test.ts +519 -0
  457. package/src/internal/common/proxy/define-hidden-property.ts +14 -0
  458. package/src/internal/common/proxy/errors.ts +42 -0
  459. package/src/internal/common/proxy/event-batch.ts +44 -0
  460. package/src/internal/common/proxy/handler.test.ts +121 -0
  461. package/src/internal/common/proxy/index.ts +17 -0
  462. package/src/internal/common/proxy/json-serializer.ts +90 -0
  463. package/src/internal/common/proxy/make-object.ts +105 -0
  464. package/src/internal/common/proxy/ownership.ts +252 -0
  465. package/src/internal/common/proxy/proxy-types.ts +23 -0
  466. package/src/internal/common/proxy/proxy-utils.ts +150 -0
  467. package/src/internal/common/proxy/reactive-array.ts +71 -0
  468. package/src/internal/common/proxy/reactive.ts +68 -0
  469. package/src/internal/common/proxy/schema-validator.ts +244 -0
  470. package/src/internal/common/proxy/schema.test.ts +145 -0
  471. package/src/internal/common/proxy/symbols.ts +7 -0
  472. package/src/internal/common/proxy/typed-handler.test.ts +313 -0
  473. package/src/internal/common/proxy/typed-handler.ts +447 -0
  474. package/src/internal/common/proxy/typed-object.test.ts +115 -0
  475. package/src/internal/common/types/base.ts +43 -0
  476. package/src/internal/common/types/entity.ts +54 -0
  477. package/src/internal/common/types/index.ts +10 -0
  478. package/src/internal/common/types/meta.ts +67 -0
  479. package/src/internal/common/types/model-symbols.ts +69 -0
  480. package/src/internal/common/types/typename.ts +55 -0
  481. package/src/internal/common/types/version.ts +19 -0
  482. package/src/internal/index.ts +17 -0
  483. package/src/testing/api.test.ts +125 -0
  484. package/src/testing/index.ts +3 -1
  485. package/src/testing/test-data.ts +129 -0
  486. package/src/testing/test-schema.ts +240 -0
  487. package/src/testing/util.ts +85 -0
  488. package/dist/lib/browser/chunk-NLPBTYZV.mjs +0 -647
  489. package/dist/lib/browser/chunk-NLPBTYZV.mjs.map +0 -7
  490. package/dist/lib/browser/index.mjs +0 -22
  491. package/dist/lib/browser/meta.json +0 -1
  492. package/dist/lib/browser/testing/index.mjs +0 -70
  493. package/dist/lib/browser/testing/index.mjs.map +0 -7
  494. package/dist/lib/node-esm/chunk-BQZZRMFX.mjs +0 -647
  495. package/dist/lib/node-esm/chunk-BQZZRMFX.mjs.map +0 -7
  496. package/dist/lib/node-esm/index.mjs +0 -22
  497. package/dist/lib/node-esm/meta.json +0 -1
  498. package/dist/lib/node-esm/testing/index.mjs +0 -70
  499. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  500. package/dist/types/src/experimental/database.d.ts +0 -8
  501. package/dist/types/src/experimental/database.d.ts.map +0 -1
  502. package/dist/types/src/experimental/index.d.ts +0 -1
  503. package/dist/types/src/experimental/index.d.ts.map +0 -1
  504. package/dist/types/src/experimental/queue.d.ts +0 -8
  505. package/dist/types/src/experimental/queue.d.ts.map +0 -1
  506. package/dist/types/src/experimental/space.d.ts +0 -8
  507. package/dist/types/src/experimental/space.d.ts.map +0 -1
  508. package/dist/types/src/query/dsl.d.ts +0 -218
  509. package/dist/types/src/query/dsl.d.ts.map +0 -1
  510. package/dist/types/src/query/dsl.test.d.ts +0 -2
  511. package/dist/types/src/query/dsl.test.d.ts.map +0 -1
  512. package/dist/types/src/query/index.d.ts +0 -2
  513. package/dist/types/src/query/index.d.ts.map +0 -1
  514. package/dist/types/src/testing/types.d.ts +0 -113
  515. package/dist/types/src/testing/types.d.ts.map +0 -1
  516. package/src/experimental/database.ts +0 -11
  517. package/src/experimental/index.ts +0 -7
  518. package/src/experimental/queue.ts +0 -11
  519. package/src/experimental/space.ts +0 -11
  520. package/src/query/dsl.test.ts +0 -324
  521. package/src/query/dsl.ts +0 -646
  522. package/src/query/index.ts +0 -5
  523. package/src/test/api.test.ts +0 -173
  524. package/src/testing/types.ts +0 -91
  525. /package/dist/lib/{browser/index.mjs.map → neutral/Annotation.mjs.map} +0 -0
  526. /package/dist/lib/{node-esm/index.mjs.map → neutral/Database.mjs.map} +0 -0
  527. /package/dist/types/src/{test → testing}/api.test.d.ts +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/internal/common/types/typename.ts", "../../../src/internal/Annotation/annotations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport type * as Schema from 'effect/Schema';\n\n/**\n * Property name for typename when object is serialized to JSON.\n */\nexport const ATTR_TYPE = '@type';\n\n/**\n * DXN to the object type.\n */\nexport const TypeId = Symbol.for('@dxos/echo/Type');\n\n/**\n * Reference to the object schema.\n */\nexport const SchemaId = Symbol.for('@dxos/echo/Schema');\n\n/**\n * Property name for parent when object is serialized to JSON.\n */\nexport const ATTR_PARENT = '@parent';\n\n/**\n * Reference to the object parent.\n */\nexport const ParentId = Symbol.for('@dxos/echo/Parent');\n\n/**\n * Returns the schema for the given object if one is defined.\n *\n * @internal (Use Obj.getSchema)\n */\n// TODO(burdon): Narrow type.\n// TODO(dmaretskyi): For echo objects, this always returns the root schema.\nexport const getSchema = (obj: unknown | undefined): Schema.Schema.AnyNoContext | undefined => {\n if (obj) {\n return (obj as any)[SchemaId];\n }\n};\n\n/**\n * @internal\n */\nexport const setSchema = (obj: any, schema: Schema.Schema.AnyNoContext): void => {\n Object.defineProperty(obj, SchemaId, {\n value: schema,\n writable: false,\n enumerable: false,\n configurable: false,\n });\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\nimport * as SchemaAST from 'effect/SchemaAST';\n\nimport { raise } from '@dxos/debug';\nimport { type JsonPath, getField } from '@dxos/effect';\nimport { assertArgument, invariant } from '@dxos/invariant';\nimport { DXN } from '@dxos/keys';\nimport { type Primitive } from '@dxos/util';\n\nimport { type Mutable } from '../common/proxy';\nimport { type AnyProperties, EntityKind, TypeId, getSchema } from '../common/types';\nimport { type AnnotationHelper, createAnnotationHelper } from './util';\n\n/**\n * @internal\n */\nexport const FIELD_PATH_ANNOTATION = 'path';\n\n/**\n * Sets the path for the field.\n * @param path Data source path in the json path format. This is the field path in the source object.\n */\n// TODO(burdon): Field, vs. path vs. property.\nexport const FieldPath = (path: string) => PropertyMeta(FIELD_PATH_ANNOTATION, path);\n\n//\n// Type\n//\n\n/**\n * ECHO identifier (for a stored schema).\n * Must be a `dxn:echo:` URI.\n */\nexport const TypeIdentifierAnnotationId = Symbol.for('@dxos/schema/annotation/TypeIdentifier');\n\nexport const getTypeIdentifierAnnotation = (schema: Schema.Schema.All) =>\n Function.flow(\n SchemaAST.getAnnotation<string>(TypeIdentifierAnnotationId),\n Option.getOrElse(() => undefined),\n )(schema.ast);\n\n/**\n * @returns DXN of the schema.\n *\n * For non-stored schema returns `dxn:type:`.\n * For stored schema returns `dxn:echo:`.\n */\nexport const getSchemaDXN = (schema: Schema.Schema.All): DXN | undefined => {\n assertArgument(Schema.isSchema(schema), 'schema', 'invalid schema');\n const id = getTypeIdentifierAnnotation(schema);\n if (id) {\n return DXN.parse(id);\n }\n\n // TODO(dmaretskyi): Add support for dynamic schema.\n const objectAnnotation = getTypeAnnotation(schema);\n if (!objectAnnotation) {\n return undefined;\n }\n\n return DXN.fromTypenameAndVersion(objectAnnotation.typename, objectAnnotation.version);\n};\n\n/**\n * @param input schema or a typename string.\n * @return type DXN.\n */\nexport const getTypeDXNFromSpecifier = (input: Schema.Schema.All | string): DXN => {\n if (Schema.isSchema(input)) {\n return getSchemaDXN(input) ?? raise(new TypeError('Schema has no DXN'));\n } else {\n assertArgument(typeof input === 'string', 'input');\n assertArgument(!input.startsWith('dxn:'), 'input');\n return DXN.fromTypename(input);\n }\n};\n\n//\n// TypeAnnotation\n//\n\n/**\n * Fully qualified globally unique typename.\n * Example: `org.dxos.type.message`\n */\n// TODO(wittjosiah): Factor out to DXN spec.\nexport const TypenameSchema = Schema.String.pipe(\n Schema.pattern(\n /^[a-zA-Z]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(\\.[a-zA-Z]([a-zA-Z0-9]{0,62})?)$/,\n ),\n).annotations({\n description: 'Fully qualified globally unique typename in reverse-DNS form.',\n example: 'org.dxos.type.message',\n});\n\n/**\n * Semantic version format: `major.minor.patch`\n * Example: `1.0.0`\n */\nexport const VersionSchema = Schema.String.pipe(Schema.pattern(/^\\d+.\\d+.\\d+$/)).annotations({\n description: 'Semantic version format: `major.minor.patch`',\n example: '1.0.0',\n});\n\nexport const TypeMeta = Schema.Struct({\n typename: TypenameSchema,\n version: VersionSchema,\n});\n\nexport interface TypeMeta extends Schema.Schema.Type<typeof TypeMeta> {}\n\n/**\n * Entity type.\n */\nexport const TypeAnnotationId = Symbol.for('@dxos/schema/annotation/Type');\n\n/**\n * Payload stored under {@link TypeAnnotationId}.\n */\nexport const TypeAnnotation = Schema.extend(\n TypeMeta,\n Schema.Struct({\n kind: Schema.Enums(EntityKind),\n\n /**\n * If this is a relation, the schema of the source object.\n * Must be present if entity kind is {@link EntityKind.Relation}.\n */\n sourceSchema: Schema.optional(DXN.Schema),\n\n /**\n * If this is a relation, the schema of the target object.\n * Must be present if entity kind is {@link EntityKind.Relation}.\n */\n targetSchema: Schema.optional(DXN.Schema),\n }),\n);\n\nexport interface TypeAnnotation extends Schema.Schema.Type<typeof TypeAnnotation> {}\n\n/**\n * @returns {@link TypeAnnotation} from a schema.\n * Schema must have been created with {@link TypedObject} or {@link TypedLink} or manually assigned an appropriate annotation.\n */\nexport const getTypeAnnotation = (schema: Schema.Schema.All): TypeAnnotation | undefined => {\n assertArgument(schema != null && schema.ast != null, 'schema', 'invalid schema');\n return Function.flow(\n SchemaAST.getAnnotation<TypeAnnotation>(TypeAnnotationId),\n Option.getOrElse(() => undefined),\n )(schema.ast);\n};\n\n/**\n * @returns {@link EntityKind} from a schema.\n */\nexport const getEntityKind = (schema: Schema.Schema.All): EntityKind | undefined => getTypeAnnotation(schema)?.kind;\n\n/**\n * @internal\n * @returns Schema typename (without dxn: prefix or version number).\n */\nexport const getSchemaTypename = (schema: Schema.Schema.All): string | undefined => getTypeAnnotation(schema)?.typename;\n\n/**\n * @internal\n * @returns Schema version in semver format.\n */\nexport const getSchemaVersion = (schema: Schema.Schema.All): string | undefined => getTypeAnnotation(schema)?.version;\n\n/**\n * Gets the typename of the object without the version.\n * Returns only the name portion, not the DXN.\n * @example \"org.example.type.contact\"\n *\n * @internal (use Obj.getTypename)\n */\nexport const getTypename = (obj: AnyProperties): string | undefined => {\n const schema = getSchema(obj);\n if (schema != null) {\n // Try to extract typename from DXN.\n return getSchemaTypename(schema);\n } else {\n const type = getTypeDXN(obj);\n return type?.asTypeDXN()?.type;\n }\n};\n\n/**\n * @internal (use Type.setTypename)\n */\n// TODO(dmaretskyi): Rename setTypeDXN.\nexport const setTypename = (obj: any, typename: DXN): void => {\n invariant(typename instanceof DXN, 'Invalid type.');\n Object.defineProperty(obj, TypeId, {\n value: typename,\n writable: false,\n enumerable: false,\n configurable: false,\n });\n};\n\n/**\n * @returns Object type as {@link DXN}.\n * @returns undefined if the object doesn't have a type.\n * @example `dxn:com.example.type.person:1.0.0`\n *\n * @internal (use Obj.getTypeDXN)\n */\n// TODO(burdon): Narrow type.\nexport const getTypeDXN = (obj: AnyProperties): DXN | undefined => {\n if (!obj) {\n return undefined;\n }\n\n const type = (obj as any)[TypeId];\n if (!type) {\n return undefined;\n }\n\n invariant(type instanceof DXN, 'Invalid object.');\n return type;\n};\n\n/**\n * Checks if the object is an instance of the schema.\n * Only typename is compared, the schema version is ignored.\n *\n * The following cases are considered to mean that the object is an instance of the schema:\n * - Object was created with this exact schema.\n * - Object was created with a different version of this schema.\n * - Object was created with a different schema (maybe dynamic) that has the same typename.\n */\n// TODO(burdon): Can we use `Schema.is`?\nexport const isInstanceOf = <Schema extends Schema.Schema.AnyNoContext>(\n schema: Schema,\n object: any,\n): object is Schema.Schema.Type<Schema> => {\n if (object == null) {\n return false;\n }\n\n const schemaDXN = getSchemaDXN(schema);\n if (!schemaDXN) {\n throw new Error('Schema must have an object annotation.');\n }\n\n const type = getTypeDXN(object);\n if (type && DXN.equals(type, schemaDXN)) {\n return true;\n }\n\n const typename = getTypename(object);\n if (!typename) {\n return false;\n }\n\n const typeDXN = schemaDXN.asTypeDXN();\n if (!typeDXN) {\n return false;\n }\n\n return typeDXN.type === typename;\n};\n\n//\n// PropertyMeta\n//\n\n/**\n * PropertyMeta (metadata for dynamic schema properties).\n * For user-defined annotations.\n */\nexport const PropertyMetaAnnotationId = Symbol.for('@dxos/schema/annotation/PropertyMeta');\n\nexport type PropertyMetaValue = Primitive | Record<string, Primitive> | Primitive[];\n\nexport type PropertyMetaAnnotation = {\n [name: string]: PropertyMetaValue;\n};\n\n// TODO(wittjosiah): Align with other annotations.\n// TODO(wittjosiah): Why is this separate from FormatAnnotation?\nexport const PropertyMeta = (name: string, value: PropertyMetaValue) => {\n return <A, I, R>(self: Schema.Schema<A, I, R>): Schema.Schema<A, I, R> => {\n const existingMeta = self.ast.annotations[PropertyMetaAnnotationId] as PropertyMetaAnnotation;\n return self.annotations({\n [PropertyMetaAnnotationId]: {\n ...existingMeta,\n [name]: value,\n },\n });\n };\n};\n\nexport const getPropertyMetaAnnotation = <T>(prop: SchemaAST.PropertySignature, name: string) =>\n Function.pipe(\n SchemaAST.getAnnotation<PropertyMetaAnnotation>(PropertyMetaAnnotationId)(prop.type),\n Option.map((meta) => meta[name] as T),\n Option.getOrElse(() => undefined),\n );\n\n//\n// Reference\n//\n\n/**\n * Schema reference.\n */\nexport const ReferenceAnnotationId = Symbol.for('@dxos/schema/annotation/Reference');\nexport type ReferenceAnnotationValue = TypeAnnotation;\nexport const ReferenceAnnotation = createAnnotationHelper<ReferenceAnnotationValue>(ReferenceAnnotationId);\n\n/**\n * SchemaMeta.\n */\nexport const SchemaMetaSymbol = Symbol.for('@dxos/schema/SchemaMeta');\nexport type SchemaMeta = TypeMeta & { id: string };\n\n/**\n * Identifies a schema as a schema for a hidden system type.\n */\nexport const SystemTypeAnnotationId = Symbol.for('@dxos/schema/annotation/SystemType');\nexport const SystemTypeAnnotation = createAnnotationHelper<boolean>(SystemTypeAnnotationId);\n\n/**\n * Identifies label property or JSON path expression.\n * Either a string or an array of strings representing field accessors each matched in priority order.\n */\nexport const LabelAnnotationId = Symbol.for('@dxos/schema/annotation/Label');\nexport const LabelAnnotation = createAnnotationHelper<string[]>(LabelAnnotationId);\n\n/**\n * Returns the label for a given object based on {@link LabelAnnotationId}.\n * Lower-level version that requires explicit schema parameter.\n * Skips empty strings and whitespace-only strings, continuing to the next field.\n */\n// TODO(burdon): Convert to JsonPath?\nexport const getLabelWithSchema = <S extends Schema.Schema.Any>(\n schema: S,\n object: Schema.Schema.Type<S>,\n): string | undefined => {\n const annotation = LabelAnnotation.get(schema).pipe(Option.getOrElse(() => ['name']));\n for (const accessor of annotation) {\n assertArgument(\n typeof accessor === 'string',\n 'accessor',\n 'Label annotation must be a string or an array of strings',\n );\n const value = getField(object, accessor as JsonPath);\n switch (typeof value) {\n case 'string': {\n const trimmed = value.trim();\n if (trimmed.length > 0) {\n return value;\n }\n continue;\n }\n case 'number':\n case 'boolean':\n case 'bigint':\n case 'symbol':\n return value.toString();\n case 'undefined':\n case 'object':\n case 'function':\n continue;\n }\n }\n\n return undefined;\n};\n\n/**\n * Sets the label for a given object based on {@link LabelAnnotationId}.\n * Lower-level version that requires explicit schema parameter.\n */\nexport const setLabelWithSchema = <S extends Schema.Schema.Any>(\n schema: S,\n object: Schema.Schema.Type<S>,\n label: string,\n) => {\n const annotation = LabelAnnotation.get(schema).pipe(\n Option.map((field) => field[0]),\n Option.getOrElse(() => 'name'),\n );\n object[annotation] = label;\n};\n\n/**\n * Identifies description property or JSON path expression.\n * A string representing field accessor.\n */\nexport const DescriptionAnnotationId = Symbol.for('@dxos/schema/annotation/Description');\nexport const DescriptionAnnotation = createAnnotationHelper<string>(DescriptionAnnotationId);\n\n/**\n * Returns the description for a given object based on {@link DescriptionAnnotationId}.\n * Lower-level version that requires explicit schema parameter.\n */\n// TODO(burdon): Convert to JsonPath?\nexport const getDescriptionWithSchema = <S extends Schema.Schema.Any>(\n schema: S,\n object: Schema.Schema.Type<S>,\n): string | undefined => {\n const accessor = DescriptionAnnotation.get(schema).pipe(Option.getOrElse(() => 'description'));\n assertArgument(typeof accessor === 'string', 'accessor', 'Description annotation must be a string');\n const value = getField(object, accessor as JsonPath);\n switch (typeof value) {\n case 'string':\n case 'number':\n case 'boolean':\n case 'bigint':\n case 'symbol':\n return value.toString();\n case 'undefined':\n case 'object':\n case 'function':\n default:\n return undefined;\n }\n};\n\n/**\n * Sets the description for a given object based on {@link DescriptionAnnotationId}.\n * Lower-level version that requires explicit schema parameter.\n */\nexport const setDescriptionWithSchema = <S extends Schema.Schema.Any>(\n schema: S,\n object: Schema.Schema.Type<S>,\n description: string,\n) => {\n const accessor = DescriptionAnnotation.get(schema).pipe(Option.getOrElse(() => 'description'));\n object[accessor] = description;\n};\n\n/**\n * Identifies if a property should be included in a form or not.\n * By default, all properties are included in forms, so this is opt-out.\n */\nexport const FormInputAnnotationId = Symbol.for('@dxos/schema/annotation/FormInput');\nexport const FormInputAnnotation = createAnnotationHelper<boolean>(FormInputAnnotationId);\n\n/**\n * Default field to be used on referenced schema to lookup the value.\n */\nexport const FieldLookupAnnotationId = Symbol.for('@dxos/schema/annotation/FieldLookup');\n\n/**\n * Generate test data.\n */\nexport const GeneratorAnnotationId = Symbol.for('@dxos/schema/annotation/Generator');\n\nexport type GeneratorAnnotationValue =\n | string\n | {\n generator: string;\n args?: any[];\n probability?: number;\n };\n\nexport const GeneratorAnnotation = createAnnotationHelper<GeneratorAnnotationValue>(GeneratorAnnotationId);\n\ninterface MakeAnnoationsProps<T> {\n id: string;\n schema: Schema.Schema<T, any, never>;\n}\n\n// TODO(wittjosiah): Comment.\nexport const makeUserAnnotation = <T>(props: MakeAnnoationsProps<T>): AnnotationHelper<T> => {\n assertArgument(\n /^[a-z][a-z0-9]*(\\.[a-z][a-z0-9-]*){2,}$/.test(props.id),\n 'id',\n 'Annotation id must be in the FQN format (org.dxos.annotation.example).',\n );\n\n const getFromAst = (ast: SchemaAST.AST) =>\n SchemaAST.getAnnotation<PropertyMetaAnnotation>(PropertyMetaAnnotationId)(ast).pipe(\n Option.map((meta) => meta[props.id] as unknown),\n Option.map(Schema.decodeUnknownSync(props.schema)),\n );\n\n return {\n get: (schema) => getFromAst(schema.ast),\n getFromAst: (ast) => getFromAst(ast),\n set: (value) =>\n PropertyMeta(props.id, Schema.encodeSync(props.schema)(value)) as <S extends Schema.Schema.Any>(schema: S) => S,\n };\n};\n\nconst IconAnnotationSchema = Schema.Struct({\n /**\n * Phosphor icon name (e.g., 'ph--user--regular', 'ph--cube--regular', 'ph--link--regular ', etc.)\n */\n icon: Schema.String.pipe(Schema.pattern(/^ph--[a-z-]+--[a-z]+$/)),\n\n /**\n * Color name.\n *\n * List of colors:\n * - 'red'\n * - 'orange'\n * - 'amber'\n * - 'yellow'\n * - 'lime'\n * - 'green'\n * - 'emerald'\n * - 'teal'\n * - 'cyan'\n * - 'violet'\n * - 'purple'\n * - 'fuchsia'\n * - 'pink'\n * - 'rose'\n */\n\n hue: Schema.optional(Schema.String),\n});\n\nexport interface IconAnnotation extends Schema.Schema.Type<typeof IconAnnotationSchema> {}\n\n/**\n * Icon to render in the UI.\n */\nexport const IconAnnotation = makeUserAnnotation<IconAnnotation>({\n id: 'org.dxos.annotation.icon',\n schema: IconAnnotationSchema,\n});\n\n/**\n * Get the label of an entity.\n * Accepts both reactive entities and snapshots.\n */\nexport const getLabel = (entity: AnyProperties): string | undefined => {\n const schema = getSchema(entity);\n if (schema != null) {\n return getLabelWithSchema(schema, entity);\n }\n};\n\n/**\n * Set the label of an entity.\n * Must be called within an Obj.change or Relation.change callback.\n */\nexport const setLabel = (entity: Mutable<AnyProperties>, label: string) => {\n const schema = getSchema(entity);\n if (schema != null) {\n setLabelWithSchema(schema, entity, label);\n }\n};\n\n/**\n * Get the description of an entity.\n * Accepts both reactive entities and snapshots.\n */\nexport const getDescription = (entity: AnyProperties): string | undefined => {\n const schema = getSchema(entity);\n if (schema != null) {\n return getDescriptionWithSchema(schema, entity);\n }\n};\n\n/**\n * Set the description of an entity.\n * Must be called within an Obj.change or Relation.change callback.\n */\nexport const setDescription = (entity: Mutable<AnyProperties>, description: string) => {\n const schema = getSchema(entity);\n if (schema != null) {\n setDescriptionWithSchema(schema, entity, description);\n }\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["ATTR_TYPE", "TypeId", "Symbol", "for", "SchemaId", "ATTR_PARENT", "ParentId", "getSchema", "obj", "setSchema", "schema", "Object", "defineProperty", "value", "writable", "enumerable", "configurable", "Function", "Option", "Schema", "SchemaAST", "raise", "getField", "assertArgument", "invariant", "DXN", "FIELD_PATH_ANNOTATION", "FieldPath", "path", "PropertyMeta", "TypeIdentifierAnnotationId", "Symbol", "for", "getTypeIdentifierAnnotation", "schema", "flow", "getAnnotation", "getOrElse", "undefined", "ast", "getSchemaDXN", "assertArgument", "isSchema", "id", "DXN", "parse", "objectAnnotation", "getTypeAnnotation", "fromTypenameAndVersion", "typename", "version", "getTypeDXNFromSpecifier", "input", "raise", "TypeError", "startsWith", "fromTypename", "TypenameSchema", "String", "pipe", "pattern", "annotations", "description", "example", "VersionSchema", "TypeMeta", "Struct", "TypeAnnotationId", "TypeAnnotation", "extend", "kind", "Enums", "EntityKind", "sourceSchema", "optional", "Schema", "targetSchema", "getEntityKind", "getSchemaTypename", "getSchemaVersion", "getTypename", "obj", "getSchema", "type", "getTypeDXN", "asTypeDXN", "setTypename", "invariant", "Object", "defineProperty", "TypeId", "value", "writable", "enumerable", "configurable", "isInstanceOf", "object", "schemaDXN", "Error", "equals", "typeDXN", "PropertyMetaAnnotationId", "name", "self", "existingMeta", "getPropertyMetaAnnotation", "prop", "map", "meta", "ReferenceAnnotationId", "ReferenceAnnotation", "createAnnotationHelper", "SchemaMetaSymbol", "SystemTypeAnnotationId", "SystemTypeAnnotation", "LabelAnnotationId", "LabelAnnotation", "getLabelWithSchema", "annotation", "get", "accessor", "getField", "trimmed", "trim", "length", "toString", "setLabelWithSchema", "label", "field", "DescriptionAnnotationId", "DescriptionAnnotation", "getDescriptionWithSchema", "setDescriptionWithSchema", "FormInputAnnotationId", "FormInputAnnotation", "FieldLookupAnnotationId", "GeneratorAnnotationId", "GeneratorAnnotation", "makeUserAnnotation", "props", "test", "getFromAst", "decodeUnknownSync", "set", "encodeSync", "IconAnnotationSchema", "icon", "hue", "IconAnnotation", "getLabel", "entity", "setLabel", "getDescription", "setDescription"]
7
+ }
@@ -0,0 +1,159 @@
1
+ import {
2
+ select
3
+ } from "./chunk-EAMSSLZC.mjs";
4
+ import {
5
+ Feed
6
+ } from "./chunk-TU3GW67D.mjs";
7
+ import {
8
+ object
9
+ } from "./chunk-ROG4RXXL.mjs";
10
+ import {
11
+ nothing
12
+ } from "./chunk-V36VO5SS.mjs";
13
+ import {
14
+ Unknown,
15
+ instanceOf,
16
+ make
17
+ } from "./chunk-B4BASU6W.mjs";
18
+ import {
19
+ Ref
20
+ } from "./chunk-BVOFLCVF.mjs";
21
+ import {
22
+ JsonSchemaType
23
+ } from "./chunk-JUXPFOEI.mjs";
24
+ import {
25
+ FormInputAnnotation,
26
+ IconAnnotation,
27
+ SystemTypeAnnotation
28
+ } from "./chunk-2KHZ36F5.mjs";
29
+ import {
30
+ __export
31
+ } from "./chunk-J5LGTIGS.mjs";
32
+
33
+ // src/index.ts
34
+ import { QueryAST as QueryAST2 } from "@dxos/echo-protocol";
35
+ import { DXN } from "@dxos/keys";
36
+
37
+ // src/Hypergraph.ts
38
+ var Hypergraph_exports = {};
39
+
40
+ // src/Collection.ts
41
+ var Collection_exports = {};
42
+ __export(Collection_exports, {
43
+ Collection: () => Collection,
44
+ isCollection: () => isCollection,
45
+ make: () => make2
46
+ });
47
+ import * as Schema from "effect/Schema";
48
+ var Collection = Schema.Struct({
49
+ name: Schema.String.pipe(Schema.optional),
50
+ objects: Schema.Array(Ref(Unknown)).pipe(FormInputAnnotation.set(false))
51
+ }).pipe(object({
52
+ typename: "org.dxos.type.collection",
53
+ version: "0.1.0"
54
+ }), IconAnnotation.set({
55
+ icon: "ph--folder--regular",
56
+ hue: "neutral"
57
+ }));
58
+ var make2 = (props = {}) => make(Collection, {
59
+ objects: [],
60
+ ...props
61
+ });
62
+ var isCollection = instanceOf(Collection);
63
+
64
+ // src/View.ts
65
+ var View_exports = {};
66
+ __export(View_exports, {
67
+ FieldSchema: () => FieldSchema,
68
+ KeyValueProps: () => KeyValueProps,
69
+ Projection: () => Projection,
70
+ View: () => View,
71
+ createFieldId: () => createFieldId,
72
+ make: () => make3
73
+ });
74
+ import * as Schema2 from "effect/Schema";
75
+ import { QueryAST } from "@dxos/echo-protocol";
76
+ import { JsonPath } from "@dxos/effect";
77
+ import { PublicKey } from "@dxos/keys";
78
+ var FieldSchema = Schema2.Struct({
79
+ id: Schema2.String,
80
+ path: JsonPath,
81
+ visible: Schema2.optional(Schema2.Boolean),
82
+ // TODO(wittjosiah): Presentation-specific?
83
+ referencePath: Schema2.optional(JsonPath)
84
+ });
85
+ var KeyValueProps = Schema2.Record({
86
+ key: Schema2.String,
87
+ value: Schema2.Any
88
+ });
89
+ var createFieldId = () => PublicKey.random().truncate();
90
+ var Projection = Schema2.Struct({
91
+ /**
92
+ * Optional schema override used to customize the underlying schema.
93
+ */
94
+ schema: JsonSchemaType.pipe(Schema2.optional),
95
+ /**
96
+ * UX metadata associated with displayed fields (in table, form, etc.)
97
+ */
98
+ // TODO(wittjosiah): Should this just be an array of JsonPath?
99
+ fields: Schema2.Array(FieldSchema),
100
+ /**
101
+ * The id for the field used to pivot the view.
102
+ * E.g., the field to use for kanban columns or the field to use for map coordinates.
103
+ */
104
+ pivotFieldId: Schema2.String.pipe(Schema2.optional)
105
+ });
106
+ var ViewSchema = Schema2.Struct({
107
+ /**
108
+ * Query used to retrieve data.
109
+ * Can be a user-provided query grammar string or a query AST.
110
+ */
111
+ query: Schema2.Struct({
112
+ raw: Schema2.optional(Schema2.String),
113
+ ast: QueryAST.Query
114
+ }),
115
+ /**
116
+ * Projection of the data returned from the query.
117
+ */
118
+ projection: Projection
119
+ }).pipe(object({
120
+ typename: "org.dxos.type.view",
121
+ version: "0.1.0"
122
+ }), SystemTypeAnnotation.set(true), IconAnnotation.set({
123
+ icon: "ph--funnel--regular",
124
+ hue: "green"
125
+ }));
126
+ var View = ViewSchema;
127
+ var make3 = (props) => {
128
+ return make(View, {
129
+ query: {
130
+ ast: select(nothing()).ast
131
+ },
132
+ projection: {
133
+ fields: []
134
+ },
135
+ ...props
136
+ });
137
+ };
138
+
139
+ // src/Dataset.ts
140
+ var Dataset_exports = {};
141
+ __export(Dataset_exports, {
142
+ Dataset: () => Dataset,
143
+ isDataset: () => isDataset
144
+ });
145
+ import { pipe } from "effect/Function";
146
+ import * as Predicate from "effect/Predicate";
147
+ import * as Schema3 from "effect/Schema";
148
+ var Dataset = Schema3.Union(Feed, Collection, View);
149
+ var isDataset = pipe(instanceOf(Feed), Predicate.or(instanceOf(Collection)), Predicate.or(instanceOf(View)));
150
+
151
+ export {
152
+ Hypergraph_exports,
153
+ Collection_exports,
154
+ View_exports,
155
+ Dataset_exports,
156
+ QueryAST2 as QueryAST,
157
+ DXN
158
+ };
159
+ //# sourceMappingURL=chunk-4OIBYSXE.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/index.ts", "../../../src/Hypergraph.ts", "../../../src/Collection.ts", "../../../src/View.ts", "../../../src/Dataset.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nexport { QueryAST } from '@dxos/echo-protocol';\n// TODO(wittjosiah): Refactor DXN to not use statics similar to Query.\nexport { DXN } from '@dxos/keys';\n\nexport * as Annotation from './Annotation';\nexport * as Database from './Database';\nexport * as Entity from './Entity';\n// TODO(burdon): Rename to Error (less problematic than Obj/Object).\nexport * as Err from './Err';\nexport * as Feed from './Feed';\nexport * as Filter from './Filter';\nexport * as Format from './Format';\nexport * as Hypergraph from './Hypergraph';\nexport * as JsonSchema from './JsonSchema';\nexport * as Key from './Key';\nexport * as Migration from './Migration';\nexport * as Obj from './Obj';\nexport * as Order from './Order';\nexport * as Query from './Query';\nexport * as QueryResult from './QueryResult';\nexport * as Ref from './Ref';\nexport * as Relation from './Relation';\nexport * as SchemaRegistry from './SchemaRegistry';\nexport * as Tag from './Tag';\nexport * as Type from './Type';\nexport * as Collection from './Collection';\nexport * as View from './View';\nexport * as Dataset from './Dataset';\nexport * as Extension from './Extension';\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type DXN } from '@dxos/keys';\n\nimport type * as Database from './Database';\nimport type * as Entity from './Entity';\nimport type * as internal from './internal';\nimport type * as Key from './Key';\nimport type * as Ref from './Ref';\nimport type * as SchemaRegistry from './SchemaRegistry';\n\n/**\n * Resolution context.\n * Affects how non-absolute DXNs are resolved.\n */\nexport interface RefResolutionContext {\n /**\n * Space that the resolution is happening from.\n */\n space?: Key.SpaceId;\n\n /**\n * Queue that the resolution is happening from.\n * This queue will be searched first, and then the space it belongs to.\n */\n queue?: DXN;\n}\n\nexport interface RefResolverOptions {\n /**\n * Resolution context.\n * Affects how non-absolute DXNs are resolved.\n */\n context?: RefResolutionContext;\n\n /**\n * Middleware to change the resolved object before returning it.\n * @deprecated On track to be removed.\n */\n middleware?: (obj: internal.AnyProperties) => internal.AnyProperties;\n}\n\n/**\n * Manages cross-space database interactions.\n */\nexport interface Hypergraph extends Database.Queryable {\n get schemaRegistry(): SchemaRegistry.SchemaRegistry;\n\n /**\n * Query objects.\n */\n query: Database.QueryFn;\n\n /**\n * Creates a reference to an existing object in the database.\n *\n * NOTE: The reference may be dangling if the object is not present in the database.\n * NOTE: Difference from `Ref.fromDXN`\n * `Ref.fromDXN(dxn)` returns an unhydrated reference. The `.load` and `.target` APIs will not work.\n * `db.makeRef(dxn)` is preferable in cases with access to the database.\n */\n makeRef<T extends Entity.Unknown = Entity.Unknown>(dxn: DXN): Ref.Ref<T>;\n\n /**\n * @param hostDb Host database for reference resolution.\n * @param middleware Called with the loaded object. The caller may change the object.\n * @returns Result of `onLoad`.\n */\n // TODO(dmaretskyi): Restructure API: Remove middleware.\n createRefResolver(options: RefResolverOptions): Ref.Resolver;\n\n /**\n * Get a database by space ID.\n * @returns The database for the given space ID, or undefined if not found.\n */\n getDatabase(spaceId: Key.SpaceId): Database.Database | undefined;\n}\n", "//\n// Copyright 2024 DXOS.org\n//\n\n// @import-as-namespace\n\nimport * as Schema from 'effect/Schema';\n\nimport * as Annotation from './Annotation';\nimport * as internal from './internal';\nimport * as Obj from './Obj';\nimport * as Ref from './Ref';\nimport * as Type from './Type';\n\n/**\n * A an ordered set of objects.\n */\nexport const Collection = Schema.Struct({\n name: Schema.String.pipe(Schema.optional),\n objects: Schema.Array(Ref.Ref(Obj.Unknown)).pipe(internal.FormInputAnnotation.set(false)),\n}).pipe(\n Type.object({\n typename: 'org.dxos.type.collection',\n version: '0.1.0',\n }),\n Annotation.IconAnnotation.set({\n icon: 'ph--folder--regular',\n hue: 'neutral',\n }),\n);\n\nexport interface Collection extends Schema.Schema.Type<typeof Collection> {}\n\nexport const make = (props: Partial<Obj.MakeProps<typeof Collection>> = {}): Collection =>\n Obj.make(Collection, { objects: [], ...props });\n\nexport const isCollection: (value: unknown) => value is Collection = Obj.instanceOf(Collection);\n", "//\n// Copyright 2025 DXOS.org\n//\n\n// @import-as-namespace\n\nimport * as Schema from 'effect/Schema';\n\nimport { QueryAST } from '@dxos/echo-protocol';\nimport { JsonPath } from '@dxos/effect';\nimport { PublicKey } from '@dxos/keys';\n\nimport * as Annotation from './Annotation';\nimport * as Filter from './Filter';\nimport * as internal from './internal';\nimport * as Obj from './Obj';\nimport * as Query from './Query';\nimport * as Type from './Type';\n\n/**\n * Stored field metadata (e.g., for UX).\n */\nexport const FieldSchema = Schema.Struct({\n id: Schema.String,\n path: JsonPath,\n visible: Schema.optional(Schema.Boolean),\n\n // TODO(wittjosiah): Presentation-specific?\n referencePath: Schema.optional(JsonPath),\n});\n\nexport type FieldType = Schema.Schema.Type<typeof FieldSchema>;\n\nexport const KeyValueProps = Schema.Record({ key: Schema.String, value: Schema.Any });\n\nexport const createFieldId = () => PublicKey.random().truncate();\n\nexport const Projection = Schema.Struct({\n /**\n * Optional schema override used to customize the underlying schema.\n */\n schema: internal.JsonSchemaType.pipe(Schema.optional),\n\n /**\n * UX metadata associated with displayed fields (in table, form, etc.)\n */\n // TODO(wittjosiah): Should this just be an array of JsonPath?\n fields: Schema.Array(FieldSchema),\n\n /**\n * The id for the field used to pivot the view.\n * E.g., the field to use for kanban columns or the field to use for map coordinates.\n */\n pivotFieldId: Schema.String.pipe(Schema.optional),\n});\n\nexport type Projection = Schema.Schema.Type<typeof Projection>;\n\n/**\n * Views are generated or user-defined projections of a schema's properties.\n * They are used to configure the visual representation of the data.\n */\nconst ViewSchema = Schema.Struct({\n /**\n * Query used to retrieve data.\n * Can be a user-provided query grammar string or a query AST.\n */\n query: Schema.Struct({\n raw: Schema.optional(Schema.String),\n ast: QueryAST.Query,\n }),\n\n /**\n * Projection of the data returned from the query.\n */\n projection: Projection,\n}).pipe(\n Type.object({\n typename: 'org.dxos.type.view',\n version: '0.1.0',\n }),\n internal.SystemTypeAnnotation.set(true),\n Annotation.IconAnnotation.set({\n icon: 'ph--funnel--regular',\n hue: 'green',\n }),\n);\n\nexport interface View extends Schema.Schema.Type<typeof ViewSchema> {}\n\n/**\n * View instance type.\n */\n// NOTE: This interface is explicitly defined rather than derived from the schema to avoid\n// TypeScript \"cannot be named\" portability errors. The schema contains QueryAST.Query which\n// references internal @dxos/echo-protocol module paths. Without this explicit interface,\n// any schema using Ref.Ref(View) would inherit the non-portable type and fail to compile.\n// TODO(wittjosiah): Find a better solution that doesn't require manually keeping the interface in sync.\nexport const View: Type.Obj<View> = ViewSchema as any;\n\nexport const make = (props: Partial<Obj.MakeProps<typeof View>>): View => {\n return Obj.make(View, {\n query: { ast: Query.select(Filter.nothing()).ast },\n projection: { fields: [] },\n ...props,\n });\n};\n", "//\n// Copyright 2026 DXOS.org\n//\n\n// @import-as-namespace\n\nimport { pipe } from 'effect/Function';\nimport * as Predicate from 'effect/Predicate';\nimport * as Schema from 'effect/Schema';\n\nimport * as Collection from './Collection';\nimport * as Feed from './Feed';\nimport * as Obj from './Obj';\nimport * as View from './View';\n\n/**\n * Abstart set of objects, represented by a view, feed, or collection.\n */\nexport const Dataset = Schema.Union(Feed.Feed, Collection.Collection, View.View);\nexport type Dataset = Feed.Feed | Collection.Collection | View.View;\n\nexport const isDataset: (value: unknown) => value is Dataset = pipe(\n Obj.instanceOf(Feed.Feed),\n Predicate.or(Obj.instanceOf(Collection.Collection)),\n Predicate.or(Obj.instanceOf(View.View)),\n);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAASA,YAAAA,iBAAgB;AAEzB,SAASC,WAAW;;;ACNpB;;;ACAA;;;;cAAAC;;AAMA,YAAYC,YAAY;AAWjB,IAAMC,aAAoBC,cAAO;EACtCC,MAAaC,cAAOC,KAAYC,eAAQ;EACxCC,SAAgBC,aAAUC,IAAQC,OAAO,CAAA,EAAGL,KAAcM,oBAAoBC,IAAI,KAAA,CAAA;AACpF,CAAA,EAAGP,KACIQ,OAAO;EACVC,UAAU;EACVC,SAAS;AACX,CAAA,GACWC,eAAeJ,IAAI;EAC5BK,MAAM;EACNC,KAAK;AACP,CAAA,CAAA;AAKK,IAAMC,QAAO,CAACC,QAAmD,CAAC,MACnED,KAAKlB,YAAY;EAAEM,SAAS,CAAA;EAAI,GAAGa;AAAM,CAAA;AAExC,IAAMC,eAA4DC,WAAWrB,UAAAA;;;ACpCpF;;;;;;;cAAAsB;;AAMA,YAAYC,aAAY;AAExB,SAASC,gBAAgB;AACzB,SAASC,gBAAgB;AACzB,SAASC,iBAAiB;AAYnB,IAAMC,cAAqBC,eAAO;EACvCC,IAAWC;EACXC,MAAMC;EACNC,SAAgBC,iBAAgBC,eAAO;;EAGvCC,eAAsBF,iBAASF,QAAAA;AACjC,CAAA;AAIO,IAAMK,gBAAuBC,eAAO;EAAEC,KAAYT;EAAQU,OAAcC;AAAI,CAAA;AAE5E,IAAMC,gBAAgB,MAAMC,UAAUC,OAAM,EAAGC,SAAQ;AAEvD,IAAMC,aAAoBlB,eAAO;;;;EAItCmB,QAAiBC,eAAeC,KAAYf,gBAAQ;;;;;EAMpDgB,QAAeC,cAAMxB,WAAAA;;;;;EAMrByB,cAAqBtB,eAAOmB,KAAYf,gBAAQ;AAClD,CAAA;AAQA,IAAMmB,aAAoBzB,eAAO;;;;;EAK/B0B,OAAc1B,eAAO;IACnB2B,KAAYrB,iBAAgBJ,cAAM;IAClC0B,KAAKC,SAASC;EAChB,CAAA;;;;EAKAC,YAAYb;AACd,CAAA,EAAGG,KACIW,OAAO;EACVC,UAAU;EACVC,SAAS;AACX,CAAA,GACSC,qBAAqBC,IAAI,IAAA,GACvBC,eAAeD,IAAI;EAC5BE,MAAM;EACNC,KAAK;AACP,CAAA,CAAA;AAaK,IAAMC,OAAuBf;AAE7B,IAAMgB,QAAO,CAACC,UAAAA;AACnB,SAAWD,KAAKD,MAAM;IACpBd,OAAO;MAAEE,KAAWe,OAAcC,QAAO,CAAA,EAAIhB;IAAI;IACjDG,YAAY;MAAET,QAAQ,CAAA;IAAG;IACzB,GAAGoB;EACL,CAAA;AACF;;;AC1GA;;;;;AAMA,SAASG,YAAY;AACrB,YAAYC,eAAe;AAC3B,YAAYC,aAAY;AAUjB,IAAMC,UAAiBC,cAAWC,MAAiBC,YAAiBC,IAAI;AAGxE,IAAMC,YAAkDC,KACzDC,WAAgBL,IAAI,GACdM,aAAOD,WAAsBJ,UAAU,CAAA,GACvCK,aAAOD,WAAgBH,IAAI,CAAA,CAAA;",
6
+ "names": ["QueryAST", "DXN", "make", "Schema", "Collection", "Struct", "name", "String", "pipe", "optional", "objects", "Array", "Ref", "Unknown", "FormInputAnnotation", "set", "object", "typename", "version", "IconAnnotation", "icon", "hue", "make", "props", "isCollection", "instanceOf", "make", "Schema", "QueryAST", "JsonPath", "PublicKey", "FieldSchema", "Struct", "id", "String", "path", "JsonPath", "visible", "optional", "Boolean", "referencePath", "KeyValueProps", "Record", "key", "value", "Any", "createFieldId", "PublicKey", "random", "truncate", "Projection", "schema", "JsonSchemaType", "pipe", "fields", "Array", "pivotFieldId", "ViewSchema", "query", "raw", "ast", "QueryAST", "Query", "projection", "object", "typename", "version", "SystemTypeAnnotation", "set", "IconAnnotation", "icon", "hue", "View", "make", "props", "select", "nothing", "pipe", "Predicate", "Schema", "Dataset", "Union", "Feed", "Collection", "View", "isDataset", "pipe", "instanceOf", "or"]
7
+ }
@@ -0,0 +1,45 @@
1
+ import {
2
+ DescriptionAnnotation,
3
+ FormInputAnnotation,
4
+ GeneratorAnnotation,
5
+ IconAnnotation,
6
+ LabelAnnotation,
7
+ ReferenceAnnotation,
8
+ SystemTypeAnnotation,
9
+ TypeAnnotation,
10
+ getDescriptionWithSchema,
11
+ getLabelWithSchema,
12
+ getTypeAnnotation,
13
+ makeUserAnnotation,
14
+ setDescriptionWithSchema,
15
+ setLabelWithSchema
16
+ } from "./chunk-2KHZ36F5.mjs";
17
+ import {
18
+ __export
19
+ } from "./chunk-J5LGTIGS.mjs";
20
+
21
+ // src/Annotation.ts
22
+ var Annotation_exports = {};
23
+ __export(Annotation_exports, {
24
+ DescriptionAnnotation: () => DescriptionAnnotation,
25
+ FormInputAnnotation: () => FormInputAnnotation,
26
+ GeneratorAnnotation: () => GeneratorAnnotation,
27
+ IconAnnotation: () => IconAnnotation,
28
+ LabelAnnotation: () => LabelAnnotation,
29
+ ReferenceAnnotation: () => ReferenceAnnotation,
30
+ SystemTypeAnnotation: () => SystemTypeAnnotation,
31
+ TypeAnnotation: () => TypeAnnotation,
32
+ getDescriptionWithSchema: () => getDescriptionWithSchema,
33
+ getLabelWithSchema: () => getLabelWithSchema,
34
+ getTypeAnnotation: () => getTypeAnnotation,
35
+ make: () => make,
36
+ setDescriptionWithSchema: () => setDescriptionWithSchema,
37
+ setLabelWithSchema: () => setLabelWithSchema
38
+ });
39
+ var make = makeUserAnnotation;
40
+
41
+ export {
42
+ make,
43
+ Annotation_exports
44
+ };
45
+ //# sourceMappingURL=chunk-4P3IXBLT.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/Annotation.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\n// @import-as-namespace\n\nexport {\n DescriptionAnnotation,\n FormInputAnnotation,\n GeneratorAnnotation,\n LabelAnnotation,\n ReferenceAnnotation,\n SystemTypeAnnotation,\n TypeAnnotation,\n getDescriptionWithSchema,\n getLabelWithSchema,\n getTypeAnnotation,\n setDescriptionWithSchema,\n setLabelWithSchema,\n IconAnnotation,\n} from './internal/Annotation';\n\nimport type * as Schema from 'effect/Schema';\n\nimport * as internalAnnotations from './internal/Annotation';\n\ninterface MakeProps<T> {\n id: string;\n schema: Schema.Schema<T, any, never>;\n}\n\n/**\n * Create a new schema annotation.\n * Annotation can be assigned both to fields and to the schema itself.\n * Annotation is serialized with the schema.\n *\n * @example\n * ```ts\n * const ColorAnnotation = Annotation.make({\n * id: 'org.dxos.annotation.color',\n * schema: Schema.String,\n * });\n *\n * const schema = Schema.String.annotations(ColorAnnotation.set('red'));\n * ```\n */\nexport const make: <T>(props: MakeProps<T>) => internalAnnotations.AnnotationHelper<T> =\n internalAnnotations.makeUserAnnotation;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;AA8CO,IAAMA,OACSC;",
6
+ "names": ["make", "makeUserAnnotation"]
7
+ }
@@ -0,0 +1,27 @@
1
+ import {
2
+ JsonSchemaType,
3
+ toEffectSchema,
4
+ toJsonSchema
5
+ } from "./chunk-JUXPFOEI.mjs";
6
+ import {
7
+ __export
8
+ } from "./chunk-J5LGTIGS.mjs";
9
+
10
+ // src/JsonSchema.ts
11
+ var JsonSchema_exports = {};
12
+ __export(JsonSchema_exports, {
13
+ JsonSchema: () => JsonSchema,
14
+ toEffectSchema: () => toEffectSchema2,
15
+ toJsonSchema: () => toJsonSchema2
16
+ });
17
+ var toEffectSchema2 = toEffectSchema;
18
+ var toJsonSchema2 = toJsonSchema;
19
+ var JsonSchema = JsonSchemaType;
20
+
21
+ export {
22
+ toEffectSchema2 as toEffectSchema,
23
+ toJsonSchema2 as toJsonSchema,
24
+ JsonSchema,
25
+ JsonSchema_exports
26
+ };
27
+ //# sourceMappingURL=chunk-7RO7CPBZ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/JsonSchema.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\n// @import-as-namespace\n\nimport type * as Schema from 'effect/Schema';\n\nimport * as jsonSchemaInternal from './internal/JsonSchema';\n\n/**\n * Decode JSON Schema to Effect Schema.\n */\nexport const toEffectSchema = jsonSchemaInternal.toEffectSchema;\n\n/**\n * Encode Effect Schema to JSON Schema.\n */\nexport const toJsonSchema = jsonSchemaInternal.toJsonSchema;\n\n/**\n * Serializable JsonSchema type definition.\n */\nexport type JsonSchema = jsonSchemaInternal.JsonSchemaType;\n\nexport const JsonSchema: Schema.Schema<jsonSchemaInternal.JsonSchemaType> = jsonSchemaInternal.JsonSchemaType;\n"],
5
+ "mappings": ";;;;;;;;;;AAAA;;;wBAAAA;EAAA,oBAAAC;;AAaO,IAAMC,kBAAoCA;AAK1C,IAAMC,gBAAkCA;AAOxC,IAAMC,aAAkFC;",
6
+ "names": ["toEffectSchema", "toJsonSchema", "toEffectSchema", "toJsonSchema", "JsonSchema", "JsonSchemaType"]
7
+ }
@@ -0,0 +1,21 @@
1
+ import {
2
+ __export
3
+ } from "./chunk-J5LGTIGS.mjs";
4
+
5
+ // src/Key.ts
6
+ var Key_exports = {};
7
+ __export(Key_exports, {
8
+ ForeignKey: () => ForeignKey,
9
+ ObjectId: () => ObjectId,
10
+ SpaceId: () => SpaceId
11
+ });
12
+ import { ForeignKey } from "@dxos/echo-protocol";
13
+ import { SpaceId, ObjectId } from "@dxos/keys";
14
+
15
+ export {
16
+ Key_exports,
17
+ ForeignKey,
18
+ SpaceId,
19
+ ObjectId
20
+ };
21
+ //# sourceMappingURL=chunk-ANHVGJI4.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/Key.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\n// TODO(wittjosiah): Should this be a subset of Type?\n\nexport { ForeignKey } from '@dxos/echo-protocol';\nexport { SpaceId, ObjectId } from '@dxos/keys';\n"],
5
+ "mappings": ";;;;;AAAA;;;;;;AAMA,SAASA,kBAAkB;AAC3B,SAASC,SAASC,gBAAgB;",
6
+ "names": ["ForeignKey", "SpaceId", "ObjectId"]
7
+ }