@dxos/echo 0.8.4-main.70d3990 → 0.8.4-main.74a063c4e0

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 (609) hide show
  1. package/README.md +3 -4
  2. package/dist/lib/neutral/Annotation.mjs +37 -0
  3. package/dist/lib/neutral/Database.mjs +47 -0
  4. package/dist/lib/neutral/Entity.mjs +59 -0
  5. package/dist/lib/neutral/Err.mjs +12 -0
  6. package/dist/lib/neutral/Extension.mjs +18 -0
  7. package/dist/lib/neutral/Extension.mjs.map +7 -0
  8. package/dist/lib/neutral/Feed.mjs +48 -0
  9. package/dist/lib/neutral/Feed.mjs.map +7 -0
  10. package/dist/lib/neutral/Filter.mjs +70 -0
  11. package/dist/lib/neutral/Filter.mjs.map +7 -0
  12. package/dist/lib/neutral/Format.mjs +66 -0
  13. package/dist/lib/neutral/Format.mjs.map +7 -0
  14. package/dist/lib/neutral/JsonSchema.mjs +19 -0
  15. package/dist/lib/neutral/JsonSchema.mjs.map +7 -0
  16. package/dist/lib/neutral/Key.mjs +12 -0
  17. package/dist/lib/neutral/Key.mjs.map +7 -0
  18. package/dist/lib/neutral/Obj.mjs +113 -0
  19. package/dist/lib/neutral/Obj.mjs.map +7 -0
  20. package/dist/lib/neutral/Order.mjs +12 -0
  21. package/dist/lib/neutral/Order.mjs.map +7 -0
  22. package/dist/lib/neutral/Query.mjs +38 -0
  23. package/dist/lib/neutral/Query.mjs.map +7 -0
  24. package/dist/lib/neutral/QueryResult.mjs +2 -0
  25. package/dist/lib/neutral/QueryResult.mjs.map +7 -0
  26. package/dist/lib/neutral/Ref.mjs +24 -0
  27. package/dist/lib/neutral/Ref.mjs.map +7 -0
  28. package/dist/lib/neutral/Relation.mjs +94 -0
  29. package/dist/lib/neutral/Relation.mjs.map +7 -0
  30. package/dist/lib/neutral/SchemaRegistry.mjs +2 -0
  31. package/dist/lib/neutral/SchemaRegistry.mjs.map +7 -0
  32. package/dist/lib/neutral/Tag.mjs +29 -0
  33. package/dist/lib/neutral/Tag.mjs.map +7 -0
  34. package/dist/lib/neutral/Type.mjs +37 -0
  35. package/dist/lib/neutral/Type.mjs.map +7 -0
  36. package/dist/lib/neutral/chunk-2U2BZDLU.mjs +121 -0
  37. package/dist/lib/neutral/chunk-2U2BZDLU.mjs.map +7 -0
  38. package/dist/lib/neutral/chunk-46QNGNTY.mjs +45 -0
  39. package/dist/lib/neutral/chunk-46QNGNTY.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-66GBFH43.mjs +298 -0
  41. package/dist/lib/neutral/chunk-66GBFH43.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-6URFBQJH.mjs +361 -0
  43. package/dist/lib/neutral/chunk-6URFBQJH.mjs.map +7 -0
  44. package/dist/lib/neutral/chunk-7QQMUDE6.mjs +159 -0
  45. package/dist/lib/neutral/chunk-7QQMUDE6.mjs.map +7 -0
  46. package/dist/lib/neutral/chunk-ANHVGJI4.mjs +21 -0
  47. package/dist/lib/neutral/chunk-ANHVGJI4.mjs.map +7 -0
  48. package/dist/lib/neutral/chunk-BNCCGLJN.mjs +7 -0
  49. package/dist/lib/neutral/chunk-BNCCGLJN.mjs.map +7 -0
  50. package/dist/lib/neutral/chunk-DQYLD2RB.mjs +402 -0
  51. package/dist/lib/neutral/chunk-DQYLD2RB.mjs.map +7 -0
  52. package/dist/lib/neutral/chunk-E5PBQJWV.mjs +27 -0
  53. package/dist/lib/neutral/chunk-E5PBQJWV.mjs.map +7 -0
  54. package/dist/lib/neutral/chunk-EBVB5NOH.mjs +133 -0
  55. package/dist/lib/neutral/chunk-EBVB5NOH.mjs.map +7 -0
  56. package/dist/lib/neutral/chunk-FNEFSO2C.mjs +787 -0
  57. package/dist/lib/neutral/chunk-FNEFSO2C.mjs.map +7 -0
  58. package/dist/lib/neutral/chunk-GZQTCRJB.mjs +73 -0
  59. package/dist/lib/neutral/chunk-GZQTCRJB.mjs.map +7 -0
  60. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  61. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  62. package/dist/lib/neutral/chunk-KPY6FC5I.mjs +415 -0
  63. package/dist/lib/neutral/chunk-KPY6FC5I.mjs.map +7 -0
  64. package/dist/lib/neutral/chunk-MYMU4TWK.mjs +299 -0
  65. package/dist/lib/neutral/chunk-MYMU4TWK.mjs.map +7 -0
  66. package/dist/lib/neutral/chunk-MZXWVR3T.mjs +97 -0
  67. package/dist/lib/neutral/chunk-MZXWVR3T.mjs.map +7 -0
  68. package/dist/lib/neutral/chunk-OMUPQMLR.mjs +7 -0
  69. package/dist/lib/neutral/chunk-OMUPQMLR.mjs.map +7 -0
  70. package/dist/lib/neutral/chunk-QWAOTFCY.mjs +396 -0
  71. package/dist/lib/neutral/chunk-QWAOTFCY.mjs.map +7 -0
  72. package/dist/lib/neutral/chunk-R72KFH2X.mjs +34 -0
  73. package/dist/lib/neutral/chunk-R72KFH2X.mjs.map +7 -0
  74. package/dist/lib/neutral/chunk-TBKX6JQO.mjs +67 -0
  75. package/dist/lib/neutral/chunk-TBKX6JQO.mjs.map +7 -0
  76. package/dist/lib/neutral/chunk-UBEZSGXY.mjs +51 -0
  77. package/dist/lib/neutral/chunk-UBEZSGXY.mjs.map +7 -0
  78. package/dist/lib/neutral/chunk-UI6MWK5W.mjs +42 -0
  79. package/dist/lib/neutral/chunk-UI6MWK5W.mjs.map +7 -0
  80. package/dist/lib/neutral/chunk-VCAP4OOT.mjs +120 -0
  81. package/dist/lib/neutral/chunk-VCAP4OOT.mjs.map +7 -0
  82. package/dist/lib/neutral/chunk-WMFVS4KR.mjs +2830 -0
  83. package/dist/lib/neutral/chunk-WMFVS4KR.mjs.map +7 -0
  84. package/dist/lib/neutral/chunk-XZJUNTML.mjs +335 -0
  85. package/dist/lib/neutral/chunk-XZJUNTML.mjs.map +7 -0
  86. package/dist/lib/neutral/chunk-XZM7FERR.mjs +56 -0
  87. package/dist/lib/neutral/chunk-XZM7FERR.mjs.map +7 -0
  88. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs +50 -0
  89. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs.map +7 -0
  90. package/dist/lib/neutral/chunk-ZIXGDU6F.mjs +45 -0
  91. package/dist/lib/neutral/chunk-ZIXGDU6F.mjs.map +7 -0
  92. package/dist/lib/neutral/index.mjs +101 -0
  93. package/dist/lib/neutral/index.mjs.map +7 -0
  94. package/dist/lib/{node-esm → neutral}/internal/index.mjs +261 -123
  95. package/dist/lib/neutral/internal/index.mjs.map +7 -0
  96. package/dist/lib/neutral/meta.json +1 -0
  97. package/dist/lib/{browser → neutral}/testing/index.mjs +98 -52
  98. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  99. package/dist/types/src/Annotation.d.ts +23 -1
  100. package/dist/types/src/Annotation.d.ts.map +1 -1
  101. package/dist/types/src/Collection.d.ts +16 -0
  102. package/dist/types/src/Collection.d.ts.map +1 -0
  103. package/dist/types/src/Database.d.ts +146 -87
  104. package/dist/types/src/Database.d.ts.map +1 -1
  105. package/dist/types/src/Dataset.d.ts +19 -0
  106. package/dist/types/src/Dataset.d.ts.map +1 -0
  107. package/dist/types/src/Entity.d.ts +141 -9
  108. package/dist/types/src/Entity.d.ts.map +1 -1
  109. package/dist/types/src/Entity.test.d.ts +2 -0
  110. package/dist/types/src/Entity.test.d.ts.map +1 -0
  111. package/dist/types/src/Err.d.ts +107 -0
  112. package/dist/types/src/Err.d.ts.map +1 -0
  113. package/dist/types/src/Extension.d.ts +80 -0
  114. package/dist/types/src/Extension.d.ts.map +1 -0
  115. package/dist/types/src/Extension.test.d.ts +2 -0
  116. package/dist/types/src/Extension.test.d.ts.map +1 -0
  117. package/dist/types/src/Feed.d.ts +171 -0
  118. package/dist/types/src/Feed.d.ts.map +1 -0
  119. package/dist/types/src/Filter.d.ts +136 -0
  120. package/dist/types/src/Filter.d.ts.map +1 -0
  121. package/dist/types/src/Filter.test.d.ts +2 -0
  122. package/dist/types/src/Filter.test.d.ts.map +1 -0
  123. package/dist/types/src/Format.d.ts +3 -3
  124. package/dist/types/src/Format.d.ts.map +1 -1
  125. package/dist/types/src/Hypergraph.d.ts +65 -0
  126. package/dist/types/src/Hypergraph.d.ts.map +1 -0
  127. package/dist/types/src/JsonSchema.d.ts +11 -4
  128. package/dist/types/src/JsonSchema.d.ts.map +1 -1
  129. package/dist/types/src/Obj.d.ts +403 -84
  130. package/dist/types/src/Obj.d.ts.map +1 -1
  131. package/dist/types/src/Obj.test.d.ts +2 -0
  132. package/dist/types/src/Obj.test.d.ts.map +1 -0
  133. package/dist/types/src/Order.d.ts +16 -0
  134. package/dist/types/src/Order.d.ts.map +1 -0
  135. package/dist/types/src/Query.d.ts +209 -0
  136. package/dist/types/src/Query.d.ts.map +1 -0
  137. package/dist/types/src/Query.test.d.ts +2 -0
  138. package/dist/types/src/Query.test.d.ts.map +1 -0
  139. package/dist/types/src/QueryResult.d.ts +80 -0
  140. package/dist/types/src/QueryResult.d.ts.map +1 -0
  141. package/dist/types/src/Ref.d.ts +61 -11
  142. package/dist/types/src/Ref.d.ts.map +1 -1
  143. package/dist/types/src/Relation.d.ts +281 -18
  144. package/dist/types/src/Relation.d.ts.map +1 -1
  145. package/dist/types/src/Relation.test.d.ts +2 -0
  146. package/dist/types/src/Relation.test.d.ts.map +1 -0
  147. package/dist/types/src/SchemaRegistry.d.ts +84 -0
  148. package/dist/types/src/SchemaRegistry.d.ts.map +1 -0
  149. package/dist/types/src/Tag.d.ts +8 -7
  150. package/dist/types/src/Tag.d.ts.map +1 -1
  151. package/dist/types/src/Type.d.ts +124 -90
  152. package/dist/types/src/Type.d.ts.map +1 -1
  153. package/dist/types/src/Type.test.d.ts +2 -0
  154. package/dist/types/src/Type.test.d.ts.map +1 -0
  155. package/dist/types/src/View.d.ts +68 -0
  156. package/dist/types/src/View.d.ts.map +1 -0
  157. package/dist/types/src/hierarchy.test.d.ts +2 -0
  158. package/dist/types/src/hierarchy.test.d.ts.map +1 -0
  159. package/dist/types/src/index.d.ts +13 -2
  160. package/dist/types/src/index.d.ts.map +1 -1
  161. package/dist/types/src/internal/{annotations → Annotation}/annotations.d.ts +84 -27
  162. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -0
  163. package/dist/types/src/internal/Annotation/annotations.test.d.ts.map +1 -0
  164. package/dist/types/src/internal/Annotation/index.d.ts +4 -0
  165. package/dist/types/src/internal/Annotation/index.d.ts.map +1 -0
  166. package/dist/types/src/internal/Annotation/sorting.d.ts +24 -0
  167. package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -0
  168. package/dist/types/src/internal/{annotations → Annotation}/util.d.ts +14 -1
  169. package/dist/types/src/internal/Annotation/util.d.ts.map +1 -0
  170. package/dist/types/src/internal/Entity/api.d.ts +13 -0
  171. package/dist/types/src/internal/Entity/api.d.ts.map +1 -0
  172. package/dist/types/src/internal/Entity/entity.d.ts +20 -0
  173. package/dist/types/src/internal/Entity/entity.d.ts.map +1 -0
  174. package/dist/types/src/internal/Entity/index.d.ts +8 -0
  175. package/dist/types/src/internal/Entity/index.d.ts.map +1 -0
  176. package/dist/types/src/internal/{entities → Entity}/model.d.ts +14 -29
  177. package/dist/types/src/internal/Entity/model.d.ts.map +1 -0
  178. package/dist/types/src/internal/Entity/object.d.ts +18 -0
  179. package/dist/types/src/internal/Entity/object.d.ts.map +1 -0
  180. package/dist/types/src/internal/Entity/relation.d.ts +35 -0
  181. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -0
  182. package/dist/types/src/internal/Entity/util.d.ts.map +1 -0
  183. package/dist/types/src/internal/Entity/version.d.ts +42 -0
  184. package/dist/types/src/internal/Entity/version.d.ts.map +1 -0
  185. package/dist/types/src/internal/Format/date.d.ts.map +1 -0
  186. package/dist/types/src/internal/Format/date.test.d.ts.map +1 -0
  187. package/dist/types/src/internal/{formats → Format}/format.d.ts +4 -4
  188. package/dist/types/src/internal/Format/format.d.ts.map +1 -0
  189. package/dist/types/src/internal/Format/format.test.d.ts.map +1 -0
  190. package/dist/types/src/internal/Format/index.d.ts.map +1 -0
  191. package/dist/types/src/internal/Format/number.d.ts.map +1 -0
  192. package/dist/types/src/internal/Format/object.d.ts.map +1 -0
  193. package/dist/types/src/internal/{formats → Format}/select.d.ts +6 -4
  194. package/dist/types/src/internal/Format/select.d.ts.map +1 -0
  195. package/dist/types/src/internal/{formats → Format}/string.d.ts +4 -0
  196. package/dist/types/src/internal/Format/string.d.ts.map +1 -0
  197. package/dist/types/src/internal/{formats → Format}/types.d.ts +7 -3
  198. package/dist/types/src/internal/Format/types.d.ts.map +1 -0
  199. package/dist/types/src/internal/{json-schema → JsonSchema}/annotations.d.ts +1 -1
  200. package/dist/types/src/internal/JsonSchema/annotations.d.ts.map +1 -0
  201. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts.map +1 -0
  202. package/dist/types/src/internal/JsonSchema/index.d.ts.map +1 -0
  203. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -0
  204. package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-type.d.ts +131 -30
  205. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -0
  206. package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema.d.ts +2 -1
  207. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -0
  208. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts.map +1 -0
  209. package/dist/types/src/internal/Obj/clone.d.ts +8 -0
  210. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -0
  211. package/dist/types/src/internal/Obj/common.d.ts.map +1 -0
  212. package/dist/types/src/internal/{object → Obj}/create-object.d.ts +3 -3
  213. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -0
  214. package/dist/types/src/internal/Obj/create-object.test.d.ts.map +1 -0
  215. package/dist/types/src/internal/{object → Obj}/deleted.d.ts +1 -1
  216. package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -0
  217. package/dist/types/src/internal/Obj/ids.d.ts.map +1 -0
  218. package/dist/types/src/internal/{object → Obj}/index.d.ts +3 -0
  219. package/dist/types/src/internal/Obj/index.d.ts.map +1 -0
  220. package/dist/types/src/internal/Obj/inspect.d.ts.map +1 -0
  221. package/dist/types/src/internal/Obj/json-serializer.d.ts +44 -0
  222. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -0
  223. package/dist/types/src/internal/Obj/json-serializer.test.d.ts.map +1 -0
  224. package/dist/types/src/internal/Obj/schema-validator.d.ts +2 -0
  225. package/dist/types/src/internal/Obj/schema-validator.d.ts.map +1 -0
  226. package/dist/types/src/internal/Obj/schema-validator.test.d.ts.map +1 -0
  227. package/dist/types/src/internal/Obj/set-value.d.ts +7 -0
  228. package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -0
  229. package/dist/types/src/internal/Obj/set-value.test.d.ts +2 -0
  230. package/dist/types/src/internal/Obj/set-value.test.d.ts.map +1 -0
  231. package/dist/types/src/internal/Obj/snapshot.d.ts +6 -0
  232. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -0
  233. package/dist/types/src/internal/Obj/typed-object.d.ts +25 -0
  234. package/dist/types/src/internal/Obj/typed-object.d.ts.map +1 -0
  235. package/dist/types/src/internal/Obj/typed-object.test.d.ts.map +1 -0
  236. package/dist/types/src/internal/Query.d.ts +10 -0
  237. package/dist/types/src/internal/Query.d.ts.map +1 -0
  238. package/dist/types/src/internal/Ref/index.d.ts.map +1 -0
  239. package/dist/types/src/internal/{ref → Ref}/ref-array.d.ts +4 -4
  240. package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -0
  241. package/dist/types/src/internal/{ref → Ref}/ref.d.ts +31 -9
  242. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -0
  243. package/dist/types/src/internal/Ref/ref.test.d.ts.map +1 -0
  244. package/dist/types/src/internal/Type/compose.d.ts +7 -0
  245. package/dist/types/src/internal/Type/compose.d.ts.map +1 -0
  246. package/dist/types/src/internal/Type/compose.test.d.ts.map +1 -0
  247. package/dist/types/src/internal/{schema → Type}/echo-schema.d.ts +20 -7
  248. package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -0
  249. package/dist/types/src/internal/Type/index.d.ts +4 -0
  250. package/dist/types/src/internal/Type/index.d.ts.map +1 -0
  251. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -0
  252. package/dist/types/src/internal/Type/persistent-schema.d.ts +20 -0
  253. package/dist/types/src/internal/Type/persistent-schema.d.ts.map +1 -0
  254. package/dist/types/src/internal/common/api/index.d.ts +11 -0
  255. package/dist/types/src/internal/common/api/index.d.ts.map +1 -0
  256. package/dist/types/src/internal/common/api/meta.d.ts +42 -0
  257. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -0
  258. package/dist/types/src/internal/common/index.d.ts +4 -0
  259. package/dist/types/src/internal/common/index.d.ts.map +1 -0
  260. package/dist/types/src/internal/common/proxy/change-context.d.ts +55 -0
  261. package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -0
  262. package/dist/types/src/internal/common/proxy/change.test.d.ts +2 -0
  263. package/dist/types/src/internal/common/proxy/change.test.d.ts.map +1 -0
  264. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts +5 -0
  265. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -0
  266. package/dist/types/src/internal/common/proxy/errors.d.ts +19 -0
  267. package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -0
  268. package/dist/types/src/internal/common/proxy/event-batch.d.ts +10 -0
  269. package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -0
  270. package/dist/types/src/internal/common/proxy/handler.test.d.ts.map +1 -0
  271. package/dist/types/src/internal/common/proxy/index.d.ts +14 -0
  272. package/dist/types/src/internal/common/proxy/index.d.ts.map +1 -0
  273. package/dist/types/src/internal/common/proxy/json-serializer.d.ts +6 -0
  274. package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -0
  275. package/dist/types/src/internal/{proxy → common/proxy}/make-object.d.ts +2 -4
  276. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -0
  277. package/dist/types/src/internal/common/proxy/ownership.d.ts +57 -0
  278. package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -0
  279. package/dist/types/src/internal/common/proxy/proxy-types.d.ts +18 -0
  280. package/dist/types/src/internal/common/proxy/proxy-types.d.ts.map +1 -0
  281. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts +47 -0
  282. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -0
  283. package/dist/types/src/internal/common/proxy/reactive-array.d.ts +8 -0
  284. package/dist/types/src/internal/common/proxy/reactive-array.d.ts.map +1 -0
  285. package/dist/types/src/internal/common/proxy/reactive.d.ts +39 -0
  286. package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -0
  287. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -0
  288. package/dist/types/src/internal/common/proxy/schema.test.d.ts.map +1 -0
  289. package/dist/types/src/internal/common/proxy/symbols.d.ts +3 -0
  290. package/dist/types/src/internal/common/proxy/symbols.d.ts.map +1 -0
  291. package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.d.ts +16 -12
  292. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -0
  293. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts.map +1 -0
  294. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts.map +1 -0
  295. package/dist/types/src/internal/{types → common/types}/base.d.ts +6 -16
  296. package/dist/types/src/internal/common/types/base.d.ts.map +1 -0
  297. package/dist/types/src/internal/common/types/entity.d.ts +37 -0
  298. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -0
  299. package/dist/types/src/internal/{types → common/types}/index.d.ts +1 -0
  300. package/dist/types/src/internal/common/types/index.d.ts.map +1 -0
  301. package/dist/types/src/internal/{types → common/types}/meta.d.ts +8 -15
  302. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -0
  303. package/dist/types/src/internal/common/types/model-symbols.d.ts +54 -0
  304. package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -0
  305. package/dist/types/src/internal/{types → common/types}/typename.d.ts +8 -0
  306. package/dist/types/src/internal/common/types/typename.d.ts.map +1 -0
  307. package/dist/types/src/internal/{types → common/types}/version.d.ts +2 -2
  308. package/dist/types/src/internal/common/types/version.d.ts.map +1 -0
  309. package/dist/types/src/internal/index.d.ts +10 -10
  310. package/dist/types/src/internal/index.d.ts.map +1 -1
  311. package/dist/types/src/testing/test-data.d.ts.map +1 -1
  312. package/dist/types/src/testing/test-schema.d.ts +146 -179
  313. package/dist/types/src/testing/test-schema.d.ts.map +1 -1
  314. package/dist/types/src/testing/util.d.ts +6 -1
  315. package/dist/types/src/testing/util.d.ts.map +1 -1
  316. package/dist/types/tsconfig.tsbuildinfo +1 -1
  317. package/package.json +99 -61
  318. package/src/Annotation.ts +36 -5
  319. package/src/Collection.ts +37 -0
  320. package/src/Database.ts +263 -122
  321. package/src/Dataset.ts +26 -0
  322. package/src/Entity.test.ts +22 -0
  323. package/src/Entity.ts +196 -11
  324. package/src/Err.ts +40 -0
  325. package/src/Extension.test.ts +235 -0
  326. package/src/Extension.ts +122 -0
  327. package/src/Feed.ts +283 -0
  328. package/src/Filter.test.ts +90 -0
  329. package/src/Filter.ts +424 -0
  330. package/src/Format.ts +3 -5
  331. package/src/Hypergraph.ts +79 -0
  332. package/src/JsonSchema.ts +14 -4
  333. package/src/Obj.test.ts +539 -0
  334. package/src/Obj.ts +639 -289
  335. package/src/Order.ts +46 -0
  336. package/src/Query.test.ts +698 -0
  337. package/src/Query.ts +547 -0
  338. package/src/QueryResult.ts +106 -0
  339. package/src/Ref.ts +79 -9
  340. package/src/Relation.test.ts +88 -0
  341. package/src/Relation.ts +439 -68
  342. package/src/SchemaRegistry.ts +106 -0
  343. package/src/Tag.ts +7 -6
  344. package/src/Type.test.ts +52 -0
  345. package/src/Type.ts +167 -166
  346. package/src/View.ts +107 -0
  347. package/src/hierarchy.test.ts +33 -0
  348. package/src/index.ts +14 -5
  349. package/src/internal/{annotations → Annotation}/annotations.test.ts +62 -13
  350. package/src/internal/{annotations → Annotation}/annotations.ts +186 -71
  351. package/src/internal/{annotations → Annotation}/index.ts +1 -0
  352. package/src/internal/Annotation/sorting.ts +51 -0
  353. package/src/internal/{annotations → Annotation}/util.ts +16 -1
  354. package/src/internal/Entity/api.ts +30 -0
  355. package/src/internal/{entities → Entity}/entity.ts +39 -20
  356. package/src/internal/{entities → Entity}/index.ts +3 -1
  357. package/src/internal/{entities → Entity}/model.ts +29 -49
  358. package/src/internal/{entities → Entity}/object.ts +23 -11
  359. package/src/internal/{entities → Entity}/relation.ts +42 -43
  360. package/src/internal/Entity/version.ts +96 -0
  361. package/src/internal/{formats → Format}/date.test.ts +1 -2
  362. package/src/internal/{formats → Format}/format.test.ts +2 -3
  363. package/src/internal/{formats → Format}/format.ts +7 -8
  364. package/src/internal/{formats → Format}/object.ts +2 -2
  365. package/src/internal/{formats → Format}/select.ts +6 -4
  366. package/src/internal/{formats → Format}/string.ts +5 -0
  367. package/src/internal/{formats → Format}/types.ts +12 -6
  368. package/src/internal/{json-schema → JsonSchema}/annotations.ts +3 -3
  369. package/src/internal/{json-schema → JsonSchema}/json-schema-normalize.ts +4 -2
  370. package/src/internal/{json-schema → JsonSchema}/json-schema-type.ts +34 -35
  371. package/src/internal/{json-schema → JsonSchema}/json-schema.test.ts +67 -66
  372. package/src/internal/{json-schema → JsonSchema}/json-schema.ts +18 -13
  373. package/src/internal/Obj/clone.ts +48 -0
  374. package/src/internal/{object → Obj}/common.ts +2 -2
  375. package/src/internal/{object → Obj}/create-object.test.ts +5 -7
  376. package/src/internal/{object → Obj}/create-object.ts +6 -7
  377. package/src/internal/{object → Obj}/deleted.ts +2 -2
  378. package/src/internal/{object → Obj}/index.ts +3 -0
  379. package/src/internal/{object → Obj}/inspect.ts +4 -4
  380. package/src/internal/{object → Obj}/json-serializer.test.ts +33 -7
  381. package/src/internal/{object → Obj}/json-serializer.ts +77 -92
  382. package/src/internal/{object → Obj}/schema-validator.test.ts +3 -7
  383. package/src/internal/Obj/schema-validator.ts +6 -0
  384. package/src/internal/Obj/set-value.test.ts +281 -0
  385. package/src/internal/Obj/set-value.ts +165 -0
  386. package/src/internal/Obj/snapshot.ts +105 -0
  387. package/src/internal/{object → Obj}/typed-object.test.ts +12 -12
  388. package/src/internal/Obj/typed-object.ts +30 -0
  389. package/src/internal/Query.ts +132 -0
  390. package/src/internal/{ref → Ref}/ref-array.ts +4 -5
  391. package/src/internal/{ref → Ref}/ref.test.ts +5 -6
  392. package/src/internal/{ref → Ref}/ref.ts +90 -43
  393. package/src/internal/{schema → Type}/compose.test.ts +6 -7
  394. package/src/internal/{schema → Type}/compose.ts +14 -10
  395. package/src/internal/{schema → Type}/echo-schema.ts +55 -17
  396. package/src/internal/{schema → Type}/index.ts +0 -2
  397. package/src/internal/{schema → Type}/manipulation.ts +1 -1
  398. package/src/internal/Type/persistent-schema.ts +33 -0
  399. package/src/internal/{README.md → common/README.md} +36 -17
  400. package/src/internal/common/api/index.ts +15 -0
  401. package/src/internal/common/api/meta.ts +88 -0
  402. package/src/internal/common/index.ts +7 -0
  403. package/src/internal/common/proxy/change-context.ts +138 -0
  404. package/src/internal/common/proxy/change.test.ts +519 -0
  405. package/src/internal/common/proxy/define-hidden-property.ts +14 -0
  406. package/src/internal/common/proxy/errors.ts +42 -0
  407. package/src/internal/common/proxy/event-batch.ts +44 -0
  408. package/src/internal/{proxy → common/proxy}/handler.test.ts +32 -84
  409. package/src/internal/common/proxy/index.ts +17 -0
  410. package/src/internal/common/proxy/json-serializer.ts +90 -0
  411. package/src/internal/common/proxy/make-object.ts +105 -0
  412. package/src/internal/common/proxy/ownership.ts +252 -0
  413. package/src/internal/common/proxy/proxy-types.ts +23 -0
  414. package/src/internal/common/proxy/proxy-utils.ts +150 -0
  415. package/src/internal/common/proxy/reactive-array.ts +71 -0
  416. package/src/internal/common/proxy/reactive.ts +68 -0
  417. package/src/internal/{object → common/proxy}/schema-validator.ts +3 -1
  418. package/src/internal/{proxy → common/proxy}/schema.test.ts +29 -21
  419. package/src/internal/common/proxy/symbols.ts +7 -0
  420. package/src/internal/common/proxy/typed-handler.test.ts +313 -0
  421. package/src/internal/common/proxy/typed-handler.ts +447 -0
  422. package/src/internal/common/proxy/typed-object.test.ts +115 -0
  423. package/src/internal/{types → common/types}/base.ts +7 -22
  424. package/src/internal/common/types/entity.ts +54 -0
  425. package/src/internal/{types → common/types}/index.ts +1 -0
  426. package/src/internal/{types → common/types}/meta.ts +16 -25
  427. package/src/internal/common/types/model-symbols.ts +69 -0
  428. package/src/internal/{types → common/types}/typename.ts +10 -0
  429. package/src/internal/{types → common/types}/version.ts +2 -3
  430. package/src/internal/index.ts +10 -31
  431. package/src/testing/api.test.ts +32 -7
  432. package/src/testing/test-data.ts +0 -1
  433. package/src/testing/test-schema.ts +68 -41
  434. package/src/testing/util.ts +22 -15
  435. package/dist/lib/browser/chunk-7GH6RXJ3.mjs +0 -3683
  436. package/dist/lib/browser/chunk-7GH6RXJ3.mjs.map +0 -7
  437. package/dist/lib/browser/chunk-E4UTVJNF.mjs +0 -1111
  438. package/dist/lib/browser/chunk-E4UTVJNF.mjs.map +0 -7
  439. package/dist/lib/browser/index.mjs +0 -45
  440. package/dist/lib/browser/internal/index.mjs +0 -336
  441. package/dist/lib/browser/meta.json +0 -1
  442. package/dist/lib/browser/testing/index.mjs.map +0 -7
  443. package/dist/lib/node-esm/chunk-JE5RXM2I.mjs +0 -1111
  444. package/dist/lib/node-esm/chunk-JE5RXM2I.mjs.map +0 -7
  445. package/dist/lib/node-esm/chunk-M4B6BMD2.mjs +0 -3683
  446. package/dist/lib/node-esm/chunk-M4B6BMD2.mjs.map +0 -7
  447. package/dist/lib/node-esm/index.mjs +0 -45
  448. package/dist/lib/node-esm/meta.json +0 -1
  449. package/dist/lib/node-esm/testing/index.mjs +0 -328
  450. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  451. package/dist/types/src/errors.d.ts +0 -68
  452. package/dist/types/src/errors.d.ts.map +0 -1
  453. package/dist/types/src/internal/annotations/annotations.d.ts.map +0 -1
  454. package/dist/types/src/internal/annotations/annotations.test.d.ts.map +0 -1
  455. package/dist/types/src/internal/annotations/index.d.ts +0 -3
  456. package/dist/types/src/internal/annotations/index.d.ts.map +0 -1
  457. package/dist/types/src/internal/annotations/util.d.ts.map +0 -1
  458. package/dist/types/src/internal/entities/entity.d.ts +0 -10
  459. package/dist/types/src/internal/entities/entity.d.ts.map +0 -1
  460. package/dist/types/src/internal/entities/expando.d.ts +0 -16
  461. package/dist/types/src/internal/entities/expando.d.ts.map +0 -1
  462. package/dist/types/src/internal/entities/index.d.ts +0 -6
  463. package/dist/types/src/internal/entities/index.d.ts.map +0 -1
  464. package/dist/types/src/internal/entities/model.d.ts.map +0 -1
  465. package/dist/types/src/internal/entities/object.d.ts +0 -11
  466. package/dist/types/src/internal/entities/object.d.ts.map +0 -1
  467. package/dist/types/src/internal/entities/relation.d.ts +0 -55
  468. package/dist/types/src/internal/entities/relation.d.ts.map +0 -1
  469. package/dist/types/src/internal/entities/util.d.ts.map +0 -1
  470. package/dist/types/src/internal/formats/date.d.ts.map +0 -1
  471. package/dist/types/src/internal/formats/date.test.d.ts.map +0 -1
  472. package/dist/types/src/internal/formats/format.d.ts.map +0 -1
  473. package/dist/types/src/internal/formats/format.test.d.ts.map +0 -1
  474. package/dist/types/src/internal/formats/index.d.ts.map +0 -1
  475. package/dist/types/src/internal/formats/number.d.ts.map +0 -1
  476. package/dist/types/src/internal/formats/object.d.ts.map +0 -1
  477. package/dist/types/src/internal/formats/select.d.ts.map +0 -1
  478. package/dist/types/src/internal/formats/string.d.ts.map +0 -1
  479. package/dist/types/src/internal/formats/types.d.ts.map +0 -1
  480. package/dist/types/src/internal/json-schema/annotations.d.ts.map +0 -1
  481. package/dist/types/src/internal/json-schema/effect-schema.test.d.ts.map +0 -1
  482. package/dist/types/src/internal/json-schema/index.d.ts.map +0 -1
  483. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +0 -1
  484. package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +0 -1
  485. package/dist/types/src/internal/json-schema/json-schema.d.ts.map +0 -1
  486. package/dist/types/src/internal/json-schema/json-schema.test.d.ts.map +0 -1
  487. package/dist/types/src/internal/object/common.d.ts.map +0 -1
  488. package/dist/types/src/internal/object/create-object.d.ts.map +0 -1
  489. package/dist/types/src/internal/object/create-object.test.d.ts.map +0 -1
  490. package/dist/types/src/internal/object/deleted.d.ts.map +0 -1
  491. package/dist/types/src/internal/object/ids.d.ts.map +0 -1
  492. package/dist/types/src/internal/object/index.d.ts.map +0 -1
  493. package/dist/types/src/internal/object/inspect.d.ts.map +0 -1
  494. package/dist/types/src/internal/object/json-serializer.d.ts +0 -31
  495. package/dist/types/src/internal/object/json-serializer.d.ts.map +0 -1
  496. package/dist/types/src/internal/object/json-serializer.test.d.ts.map +0 -1
  497. package/dist/types/src/internal/object/schema-validator.d.ts.map +0 -1
  498. package/dist/types/src/internal/object/schema-validator.test.d.ts.map +0 -1
  499. package/dist/types/src/internal/object/typed-object.d.ts +0 -31
  500. package/dist/types/src/internal/object/typed-object.d.ts.map +0 -1
  501. package/dist/types/src/internal/object/typed-object.test.d.ts.map +0 -1
  502. package/dist/types/src/internal/proxy/handler.test.d.ts.map +0 -1
  503. package/dist/types/src/internal/proxy/index.d.ts +0 -3
  504. package/dist/types/src/internal/proxy/index.d.ts.map +0 -1
  505. package/dist/types/src/internal/proxy/make-object.d.ts.map +0 -1
  506. package/dist/types/src/internal/proxy/schema.test.d.ts.map +0 -1
  507. package/dist/types/src/internal/proxy/typed-handler.d.ts.map +0 -1
  508. package/dist/types/src/internal/proxy/typed-handler.test.d.ts.map +0 -1
  509. package/dist/types/src/internal/proxy/typed-object.test.d.ts.map +0 -1
  510. package/dist/types/src/internal/ref/index.d.ts.map +0 -1
  511. package/dist/types/src/internal/ref/ref-array.d.ts.map +0 -1
  512. package/dist/types/src/internal/ref/ref.d.ts.map +0 -1
  513. package/dist/types/src/internal/ref/ref.test.d.ts.map +0 -1
  514. package/dist/types/src/internal/schema/compose.d.ts +0 -6
  515. package/dist/types/src/internal/schema/compose.d.ts.map +0 -1
  516. package/dist/types/src/internal/schema/compose.test.d.ts.map +0 -1
  517. package/dist/types/src/internal/schema/echo-schema.d.ts.map +0 -1
  518. package/dist/types/src/internal/schema/index.d.ts +0 -6
  519. package/dist/types/src/internal/schema/index.d.ts.map +0 -1
  520. package/dist/types/src/internal/schema/manipulation.d.ts.map +0 -1
  521. package/dist/types/src/internal/schema/persistent-schema.d.ts +0 -18
  522. package/dist/types/src/internal/schema/persistent-schema.d.ts.map +0 -1
  523. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts +0 -18
  524. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts.map +0 -1
  525. package/dist/types/src/internal/schema/snapshot.d.ts +0 -6
  526. package/dist/types/src/internal/schema/snapshot.d.ts.map +0 -1
  527. package/dist/types/src/internal/types/base.d.ts.map +0 -1
  528. package/dist/types/src/internal/types/entity.d.ts +0 -12
  529. package/dist/types/src/internal/types/entity.d.ts.map +0 -1
  530. package/dist/types/src/internal/types/index.d.ts.map +0 -1
  531. package/dist/types/src/internal/types/meta.d.ts.map +0 -1
  532. package/dist/types/src/internal/types/typename.d.ts.map +0 -1
  533. package/dist/types/src/internal/types/version.d.ts.map +0 -1
  534. package/dist/types/src/query/filter.d.ts +0 -167
  535. package/dist/types/src/query/filter.d.ts.map +0 -1
  536. package/dist/types/src/query/index.d.ts +0 -5
  537. package/dist/types/src/query/index.d.ts.map +0 -1
  538. package/dist/types/src/query/order.d.ts +0 -12
  539. package/dist/types/src/query/order.d.ts.map +0 -1
  540. package/dist/types/src/query/query.d.ts +0 -112
  541. package/dist/types/src/query/query.d.ts.map +0 -1
  542. package/dist/types/src/query/query.test.d.ts +0 -2
  543. package/dist/types/src/query/query.test.d.ts.map +0 -1
  544. package/dist/types/src/query/testing.d.ts +0 -51
  545. package/dist/types/src/query/testing.d.ts.map +0 -1
  546. package/dist/types/src/query/types.d.ts +0 -17
  547. package/dist/types/src/query/types.d.ts.map +0 -1
  548. package/dist/types/src/query/util.d.ts +0 -8
  549. package/dist/types/src/query/util.d.ts.map +0 -1
  550. package/src/errors.ts +0 -18
  551. package/src/internal/entities/expando.ts +0 -23
  552. package/src/internal/object/typed-object.ts +0 -94
  553. package/src/internal/proxy/index.ts +0 -6
  554. package/src/internal/proxy/make-object.ts +0 -113
  555. package/src/internal/proxy/typed-handler.test.ts +0 -102
  556. package/src/internal/proxy/typed-handler.ts +0 -233
  557. package/src/internal/proxy/typed-object.test.ts +0 -105
  558. package/src/internal/schema/persistent-schema.ts +0 -28
  559. package/src/internal/schema/runtime-schema-registry.ts +0 -78
  560. package/src/internal/schema/snapshot.ts +0 -25
  561. package/src/internal/types/entity.ts +0 -23
  562. package/src/query/filter.ts +0 -455
  563. package/src/query/index.ts +0 -9
  564. package/src/query/order.ts +0 -34
  565. package/src/query/query.test.ts +0 -334
  566. package/src/query/query.ts +0 -303
  567. package/src/query/testing.ts +0 -64
  568. package/src/query/types.ts +0 -23
  569. package/src/query/util.ts +0 -25
  570. /package/dist/lib/{browser/index.mjs.map → neutral/Annotation.mjs.map} +0 -0
  571. /package/dist/lib/{browser/internal/index.mjs.map → neutral/Database.mjs.map} +0 -0
  572. /package/dist/lib/{node-esm/index.mjs.map → neutral/Entity.mjs.map} +0 -0
  573. /package/dist/lib/{node-esm/internal/index.mjs.map → neutral/Err.mjs.map} +0 -0
  574. /package/dist/types/src/internal/{annotations → Annotation}/annotations.test.d.ts +0 -0
  575. /package/dist/types/src/internal/{entities → Entity}/util.d.ts +0 -0
  576. /package/dist/types/src/internal/{formats → Format}/date.d.ts +0 -0
  577. /package/dist/types/src/internal/{formats → Format}/date.test.d.ts +0 -0
  578. /package/dist/types/src/internal/{formats → Format}/format.test.d.ts +0 -0
  579. /package/dist/types/src/internal/{formats → Format}/index.d.ts +0 -0
  580. /package/dist/types/src/internal/{formats → Format}/number.d.ts +0 -0
  581. /package/dist/types/src/internal/{formats → Format}/object.d.ts +0 -0
  582. /package/dist/types/src/internal/{json-schema → JsonSchema}/effect-schema.test.d.ts +0 -0
  583. /package/dist/types/src/internal/{json-schema → JsonSchema}/index.d.ts +0 -0
  584. /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-normalize.d.ts +0 -0
  585. /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema.test.d.ts +0 -0
  586. /package/dist/types/src/internal/{object → Obj}/common.d.ts +0 -0
  587. /package/dist/types/src/internal/{object → Obj}/create-object.test.d.ts +0 -0
  588. /package/dist/types/src/internal/{object → Obj}/ids.d.ts +0 -0
  589. /package/dist/types/src/internal/{object → Obj}/inspect.d.ts +0 -0
  590. /package/dist/types/src/internal/{object → Obj}/json-serializer.test.d.ts +0 -0
  591. /package/dist/types/src/internal/{object → Obj}/schema-validator.test.d.ts +0 -0
  592. /package/dist/types/src/internal/{object → Obj}/typed-object.test.d.ts +0 -0
  593. /package/dist/types/src/internal/{ref → Ref}/index.d.ts +0 -0
  594. /package/dist/types/src/internal/{ref → Ref}/ref.test.d.ts +0 -0
  595. /package/dist/types/src/internal/{schema → Type}/compose.test.d.ts +0 -0
  596. /package/dist/types/src/internal/{schema → Type}/manipulation.d.ts +0 -0
  597. /package/dist/types/src/internal/{proxy → common/proxy}/handler.test.d.ts +0 -0
  598. /package/dist/types/src/internal/{object → common/proxy}/schema-validator.d.ts +0 -0
  599. /package/dist/types/src/internal/{proxy → common/proxy}/schema.test.d.ts +0 -0
  600. /package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.test.d.ts +0 -0
  601. /package/dist/types/src/internal/{proxy → common/proxy}/typed-object.test.d.ts +0 -0
  602. /package/src/internal/{entities → Entity}/util.ts +0 -0
  603. /package/src/internal/{formats → Format}/date.ts +0 -0
  604. /package/src/internal/{formats → Format}/index.ts +0 -0
  605. /package/src/internal/{formats → Format}/number.ts +0 -0
  606. /package/src/internal/{json-schema → JsonSchema}/effect-schema.test.ts +0 -0
  607. /package/src/internal/{json-schema → JsonSchema}/index.ts +0 -0
  608. /package/src/internal/{object → Obj}/ids.ts +0 -0
  609. /package/src/internal/{ref → Ref}/index.ts +0 -0
@@ -1,142 +1,176 @@
1
- import type * as Schema$ from 'effect/Schema';
1
+ import type * as Schema from 'effect/Schema';
2
2
  import { type EncodedReference } from '@dxos/echo-protocol';
3
3
  import { type DXN } from '@dxos/keys';
4
4
  import { type ToMutable } from '@dxos/util';
5
- import type * as Entity$ from './Entity';
6
- import { type ATTR_RELATION_SOURCE, type ATTR_RELATION_TARGET, type EchoRelationSchemaOptions, EchoSchema, Expando as Expando$, type ExpandoEncoded, PersistentSchema, type PersistentSchemaEncoded, Ref as Ref$, type RefFn, type RefSchema, type TypeAnnotation, type TypeMeta, toEffectSchema, toJsonSchema } from './internal';
7
- import type * as Relation$ from './Relation';
8
- export { toEffectSchema, toJsonSchema };
5
+ import type * as Entity from './Entity';
6
+ import * as internal from './internal';
7
+ import * as typeInternal from './internal/Type';
8
+ import type * as ObjModule from './Obj';
9
+ import type * as RelationModule from './Relation';
9
10
  /**
10
- * Returns all properties of an object or relation except for the id and kind.
11
+ * Dynamic type that can be constructed, mutated, and persisted in the ECHO database.
11
12
  */
12
- export type Properties<T = any> = Omit<T, 'id' | Entity$.KindId | Relation$.Source | Relation$.Target>;
13
- export declare namespace Entity {
14
- /**
15
- * Type.Obj.Any | Type.Relation.Any.
16
- */
17
- type Any = Obj.Any | Relation.Any;
18
- }
19
- interface ObjJsonProps {
20
- id: string;
21
- }
13
+ export declare const RuntimeType: typeof internal.EchoSchema;
22
14
  /**
23
- * Return type of the `Obj` schema constructor.
24
- *
25
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
26
- * See Effect's note on interface types.
15
+ * Dynamic type that can be constructed, mutated, and persisted in the ECHO database.
27
16
  */
28
- export interface obj<Self extends Schema$.Schema.Any> extends TypeMeta, Schema$.AnnotableClass<obj<Self>, Entity$.OfKind<typeof Entity$.Kind.Object> & ToMutable<Schema$.Schema.Type<Self>>, Schema$.Simplify<ObjJsonProps & ToMutable<Schema$.Schema.Encoded<Self>>>, Schema$.Schema.Context<Self>> {
29
- }
17
+ export type RuntimeType = typeInternal.EchoSchema;
30
18
  /**
31
- * Object schema.
19
+ * Type that marks a schema as an ECHO schema.
20
+ * The value indicates the entity kind (Object or Relation).
32
21
  */
33
- export declare const Obj: {
34
- (opts: TypeMeta): <Self extends Schema$.Schema.Any>(self: Self) => obj<Self>;
22
+ type EchoSchemaKind<K extends internal.EntityKind = internal.EntityKind> = {
23
+ readonly [internal.SchemaKindId]: K;
35
24
  };
36
25
  /**
37
- * Object schema type definitions.
26
+ * TypeScript type for an ECHO object schema.
27
+ * `T` is the instance type produced by the schema.
28
+ * `Fields` is the optional struct fields type for introspection.
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * const PersonSchema: Type.Obj<Person> = Schema.Struct({
33
+ * name: Schema.String,
34
+ * }).pipe(Type.object({ typename: 'Person', version: '0.1.0' }));
35
+ *
36
+ * // Access fields for introspection:
37
+ * Object.keys(PersonSchema.fields); // ['name']
38
+ * ```
38
39
  */
39
- export declare namespace Obj {
40
+ export interface Obj<T, Fields extends Schema.Struct.Fields = Schema.Struct.Fields> extends internal.TypeMeta, EchoSchemaKind<internal.EntityKind.Object>, Schema.AnnotableClass<Obj<T, Fields>, Entity.OfKind<typeof Entity.Kind.Object> & T, Schema.Simplify<ObjModule.BaseObjJson & ToMutable<T>>, never> {
40
41
  /**
41
- * Type that represents an arbitrary schema type of an object.
42
- * NOTE: This is not an instance type.
42
+ * The fields defined in the original struct schema.
43
+ * Allows accessing field definitions for introspection.
43
44
  */
44
- type Any = obj<Schema$.Schema.AnyNoContext>;
45
- }
46
- export declare const Expando: obj<Schema$.Schema<Expando$, ExpandoEncoded>>;
47
- export type Expando = obj<Schema$.Schema<Expando$, ExpandoEncoded>>;
48
- export declare const PersistentType: obj<Schema$.Schema<PersistentSchema, PersistentSchemaEncoded>>;
49
- export type PersistentType = obj<Schema$.Schema<PersistentSchema, PersistentSchemaEncoded>>;
50
- export { EchoSchema as RuntimeType };
51
- interface RelationJsonProps {
52
- id: string;
53
- [ATTR_RELATION_SOURCE]: string;
54
- [ATTR_RELATION_TARGET]: string;
45
+ readonly fields: Fields;
55
46
  }
56
47
  /**
57
- * Return type of the `Relation` schema constructor.
58
- *
59
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
60
- * See Effect's note on interface types.
48
+ * Structural base type for any ECHO object schema.
49
+ * Accepts both static schemas (created with Type.object()) and EchoSchema.
50
+ * NOTE: Does not include the brand symbol to avoid TS4053 declaration portability issues.
51
+ * Use Type.isObjectSchema() for runtime type guards.
61
52
  */
62
- export interface relation<Self extends Schema$.Schema.Any, SourceSchema extends Schema$.Schema.Any, TargetSchema extends Schema$.Schema.Any> extends TypeMeta, Schema$.AnnotableClass<relation<Self, SourceSchema, TargetSchema>, Entity$.OfKind<typeof Entity$.Kind.Relation> & Relation.Endpoints<Schema$.Schema.Type<SourceSchema>, Schema$.Schema.Type<TargetSchema>> & ToMutable<Schema$.Schema.Type<Self>>, Schema$.Simplify<RelationJsonProps & ToMutable<Schema$.Schema.Encoded<Self>>>, Schema$.Schema.Context<Self>> {
63
- }
53
+ type ObjectSchemaBase = Schema.Schema.AnyNoContext & {
54
+ readonly typename: string;
55
+ readonly version: string;
56
+ };
64
57
  /**
65
- * Relation schema.
58
+ * Type that represents any ECHO object schema.
59
+ * Accepts both static schemas (Type.object()) and mutable schemas (EchoSchema).
60
+ */
61
+ export type AnyObj = ObjectSchemaBase;
62
+ /**
63
+ * Factory function to create an ECHO object schema.
64
+ * Adds object metadata annotations to an Effect schema.
65
+ *
66
+ * @example
67
+ * ```ts
68
+ * const Person = Schema.Struct({
69
+ * name: Schema.String,
70
+ * }).pipe(Type.object({ typename: 'com.example.type.person', version: '0.1.0' }));
71
+ * ```
66
72
  */
67
- export declare const Relation: {
68
- <Source extends Schema$.Schema.AnyNoContext, Target extends Schema$.Schema.AnyNoContext>(opts: EchoRelationSchemaOptions<Source, Target>): <Self extends Schema$.Schema.Any>(self: Self) => relation<Self, Source, Target>;
73
+ export declare const object: {
74
+ (opts: internal.TypeMeta): <Self extends Schema.Schema.Any>(self: Self) => Obj<Schema.Schema.Type<Self>>;
69
75
  };
76
+ export declare const PersistentType: Obj<typeInternal.PersistentSchema>;
77
+ export interface PersistentType extends Schema.Schema.Type<typeof PersistentType> {
78
+ }
70
79
  /**
71
- * Relation schema type definitions.
80
+ * TypeScript type for an ECHO relation schema.
81
+ * `T` is the instance type produced by the schema (excluding source/target).
82
+ * `Source` and `Target` are the endpoint types.
83
+ * `Fields` is the optional struct fields type for introspection.
72
84
  */
73
- export declare namespace Relation {
74
- /**
75
- * Type that represents an arbitrary schema type of a relation.
76
- * NOTE: This is not an instance type.
77
- */
78
- type Any = Schema$.Schema.AnyNoContext;
85
+ export interface Relation<T, Source, Target, Fields extends Schema.Struct.Fields = Schema.Struct.Fields> extends internal.TypeMeta, EchoSchemaKind<internal.EntityKind.Relation>, Schema.AnnotableClass<Relation<T, Source, Target, Fields>, Entity.OfKind<typeof Entity.Kind.Relation> & RelationModule.Endpoints<Source, Target> & T, Schema.Simplify<RelationModule.BaseRelationJson & ToMutable<T>>, never> {
79
86
  /**
80
- * Get relation source type.
87
+ * The fields defined in the original struct schema.
88
+ * Allows accessing field definitions for introspection.
81
89
  */
82
- type Source<A> = A extends Relation.Endpoints<infer S, infer _T> ? S : never;
83
- /**
84
- * Get relation target type.
85
- */
86
- type Target<A> = A extends Relation.Endpoints<infer _S, infer T> ? T : never;
87
- type Endpoints<Source, Target> = {
88
- [Relation$.Source]: Source;
89
- [Relation$.Target]: Target;
90
- };
90
+ readonly fields: Fields;
91
91
  }
92
92
  /**
93
- * Return type of the `Ref` schema constructor.
93
+ * Structural base type for any ECHO relation schema.
94
+ * Accepts static schemas (created with Type.relation()).
95
+ * NOTE: Does not include the brand symbol to avoid TS4053 declaration portability issues.
96
+ * Use Type.isRelationSchema() for runtime type guards.
97
+ */
98
+ type RelationSchemaBase = Schema.Schema.AnyNoContext & {
99
+ readonly typename: string;
100
+ readonly version: string;
101
+ };
102
+ /**
103
+ * Type that represents any ECHO relation schema.
104
+ * Accepts static schemas (Type.relation()).
105
+ */
106
+ export type AnyRelation = RelationSchemaBase;
107
+ /**
108
+ * Factory function to create an ECHO relation schema.
109
+ * Adds relation metadata annotations to an Effect schema.
94
110
  *
95
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
96
- * See Effect's note on interface types.
111
+ * @example
112
+ * ```ts
113
+ * const WorksFor = Schema.Struct({
114
+ * role: Schema.String,
115
+ * }).pipe(Type.relation({
116
+ * typename: 'com.example.type.works-for',
117
+ * version: '0.1.0',
118
+ * source: Person,
119
+ * target: Company,
120
+ * }));
121
+ * ```
97
122
  */
98
- export interface ref<TargetSchema extends Schema$.Schema.Any> extends RefSchema<Schema$.Schema.Type<TargetSchema>> {
99
- }
123
+ export declare const relation: {
124
+ <SourceSchema extends Schema.Schema.AnyNoContext, TargetSchema extends Schema.Schema.AnyNoContext>(opts: internal.EchoRelationSchemaOptions<SourceSchema, TargetSchema>): <Self extends Schema.Schema.Any>(self: Self) => Relation<Schema.Schema.Type<Self>, Schema.Schema.Type<SourceSchema>, Schema.Schema.Type<TargetSchema>>;
125
+ };
100
126
  /**
101
- * Ref schema.
127
+ * Type alias for any ECHO entity schema (object or relation).
128
+ * Use this in type annotations for schema parameters.
102
129
  */
103
- export declare const Ref: RefFn;
104
- export interface Ref<T> extends Schema$.SchemaClass<Ref$<T>, EncodedReference> {
105
- }
106
- export declare namespace Ref {
107
- /**
108
- * Type that represents an arbitrary schema type of a reference.
109
- * NOTE: This is not an instance type.
110
- */
111
- type Any = Schema$.Schema<Ref$<any>, EncodedReference>;
112
- }
130
+ export type AnyEntity = AnyObj | AnyRelation;
131
+ /**
132
+ * Type guard to check if a schema is an object schema.
133
+ * NOTE: This checks SCHEMAS, not instances. Use Obj.isObject for instances.
134
+ */
135
+ export declare const isObjectSchema: (schema: AnyEntity) => schema is AnyObj;
136
+ /**
137
+ * Type guard to check if a schema is a relation schema.
138
+ * NOTE: This checks SCHEMAS, not instances. Use Relation.isRelation for instances.
139
+ */
140
+ export declare const isRelationSchema: (schema: AnyEntity) => schema is AnyRelation;
141
+ /**
142
+ * Type that represents any Ref schema (with unknown target type).
143
+ * This is a schema type, not an instance type.
144
+ */
145
+ export type AnyRef = Schema.Schema<internal.Ref<any>, EncodedReference>;
113
146
  /**
114
147
  * Gets the full DXN of the schema.
115
148
  * Will include the version if it's a `type` DXN.
116
- * @example "dxn:example.com/type/Person:0.1.0"
149
+ * @example "dxn:com.example.type.person:0.1.0"
117
150
  * @example "dxn:echo:SSSSSSSSSS:XXXXXXXXXXXXX"
118
151
  */
119
- export declare const getDXN: (schema: Entity.Any) => DXN | undefined;
152
+ export declare const getDXN: (schema: AnyEntity) => DXN | undefined;
120
153
  /**
121
154
  * @param schema - Schema to get the typename from.
122
- * @returns The typename of the schema. Example: `example.com/type/Person`.
155
+ * @returns The typename of the schema. Example: `com.example.type.person`.
123
156
  */
124
- export declare const getTypename: (schema: Entity.Any) => string;
157
+ export declare const getTypename: (schema: AnyEntity) => string;
125
158
  /**
126
159
  * Gets the version of the schema.
127
160
  * @example 0.1.0
128
161
  */
129
- export declare const getVersion: (schema: Entity.Any) => string;
162
+ export declare const getVersion: (schema: AnyEntity) => string;
130
163
  /**
131
164
  * @returns True if the schema is mutable.
132
165
  */
133
- export declare const isMutable: (schema: Schema$.Schema.AnyNoContext) => schema is EchoSchema;
166
+ export declare const isMutable: (schema: Schema.Schema.AnyNoContext) => schema is internal.EchoSchema;
134
167
  /**
135
168
  * ECHO type metadata.
136
169
  */
137
- export type Meta = TypeAnnotation;
170
+ export type Meta = internal.TypeAnnotation;
138
171
  /**
139
172
  * Gets the meta data of the schema.
140
173
  */
141
- export declare const getMeta: (schema: Entity.Any) => Meta | undefined;
174
+ export declare const getMeta: (schema: AnyEntity) => Meta | undefined;
175
+ export {};
142
176
  //# sourceMappingURL=Type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/Type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/Type.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Type.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Type.test.d.ts","sourceRoot":"","sources":["../../../src/Type.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,68 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import { QueryAST } from '@dxos/echo-protocol';
3
+ import { JsonPath } from '@dxos/effect';
4
+ import * as internal from './internal';
5
+ import * as Obj from './Obj';
6
+ import * as Type from './Type';
7
+ /**
8
+ * Stored field metadata (e.g., for UX).
9
+ */
10
+ export declare const FieldSchema: Schema.Struct<{
11
+ id: typeof Schema.String;
12
+ path: Schema.Schema<JsonPath, JsonPath, never>;
13
+ visible: Schema.optional<typeof Schema.Boolean>;
14
+ referencePath: Schema.optional<Schema.Schema<JsonPath, JsonPath, never>>;
15
+ }>;
16
+ export type FieldType = Schema.Schema.Type<typeof FieldSchema>;
17
+ export declare const KeyValueProps: Schema.Record$<typeof Schema.String, typeof Schema.Any>;
18
+ export declare const createFieldId: () => string;
19
+ export declare const Projection: Schema.Struct<{
20
+ /**
21
+ * Optional schema override used to customize the underlying schema.
22
+ */
23
+ schema: Schema.optional<Schema.Schema<internal.JsonSchemaType, internal.JsonSchemaType, never>>;
24
+ /**
25
+ * UX metadata associated with displayed fields (in table, form, etc.)
26
+ */
27
+ fields: Schema.Array$<Schema.Struct<{
28
+ id: typeof Schema.String;
29
+ path: Schema.Schema<JsonPath, JsonPath, never>;
30
+ visible: Schema.optional<typeof Schema.Boolean>;
31
+ referencePath: Schema.optional<Schema.Schema<JsonPath, JsonPath, never>>;
32
+ }>>;
33
+ /**
34
+ * The id for the field used to pivot the view.
35
+ * E.g., the field to use for kanban columns or the field to use for map coordinates.
36
+ */
37
+ pivotFieldId: Schema.optional<typeof Schema.String>;
38
+ }>;
39
+ export type Projection = Schema.Schema.Type<typeof Projection>;
40
+ /**
41
+ * Views are generated or user-defined projections of a schema's properties.
42
+ * They are used to configure the visual representation of the data.
43
+ */
44
+ declare const ViewSchema: Type.Obj<{
45
+ readonly query: {
46
+ readonly ast: QueryAST.QuerySelectClause | QueryAST.QueryFilterClause | QueryAST.QueryReferenceTraversalClause | QueryAST.QueryIncomingReferencesClause | QueryAST.QueryRelationClause | QueryAST.QueryRelationTraversalClause | QueryAST.QueryHierarchyTraversalClause | QueryAST.QueryUnionClause | QueryAST.QuerySetDifferenceClause | QueryAST.QueryOrderClause | QueryAST.QueryOptionsClause | QueryAST.QueryLimitClause | QueryAST.QueryFromClause;
47
+ readonly raw?: string | undefined;
48
+ };
49
+ readonly projection: {
50
+ readonly schema?: internal.JsonSchemaType | undefined;
51
+ readonly fields: readonly {
52
+ readonly id: string;
53
+ readonly path: JsonPath;
54
+ readonly visible?: boolean | undefined;
55
+ readonly referencePath?: JsonPath | undefined;
56
+ }[];
57
+ readonly pivotFieldId?: string | undefined;
58
+ };
59
+ }, Schema.Struct.Fields>;
60
+ export interface View extends Schema.Schema.Type<typeof ViewSchema> {
61
+ }
62
+ /**
63
+ * View instance type.
64
+ */
65
+ export declare const View: Type.Obj<View>;
66
+ export declare const make: (props: Partial<Obj.MakeProps<typeof View>>) => View;
67
+ export {};
68
+ //# sourceMappingURL=View.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"View.d.ts","sourceRoot":"","sources":["../../../src/View.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAKxC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAE7B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;EAOtB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,CAAC;AAE/D,eAAO,MAAM,aAAa,yDAA2D,CAAC;AAEtF,eAAO,MAAM,aAAa,cAAsC,CAAC;AAEjE,eAAO,MAAM,UAAU;IACrB;;OAEG;;IAGH;;OAEG;;;;;;;IAIH;;;OAGG;;EAEH,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,CAAC;AAE/D;;;GAGG;AACH,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;wBAwBf,CAAC;AAEF,MAAM,WAAW,IAAK,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC;CAAG;AAEtE;;GAEG;AAMH,eAAO,MAAM,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAqB,CAAC;AAEtD,eAAO,MAAM,IAAI,GAAI,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,CAAC,KAAG,IAMjE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hierarchy.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hierarchy.test.d.ts","sourceRoot":"","sources":["../../../src/hierarchy.test.ts"],"names":[],"mappings":""}
@@ -1,15 +1,26 @@
1
+ export { QueryAST } from '@dxos/echo-protocol';
1
2
  export { DXN } from '@dxos/keys';
2
- export * from './errors';
3
- export * from './query';
4
3
  export * as Annotation from './Annotation';
5
4
  export * as Database from './Database';
6
5
  export * as Entity from './Entity';
6
+ export * as Err from './Err';
7
+ export * as Feed from './Feed';
8
+ export * as Filter from './Filter';
7
9
  export * as Format from './Format';
10
+ export * as Hypergraph from './Hypergraph';
8
11
  export * as JsonSchema from './JsonSchema';
9
12
  export * as Key from './Key';
10
13
  export * as Obj from './Obj';
14
+ export * as Order from './Order';
15
+ export * as Query from './Query';
16
+ export * as QueryResult from './QueryResult';
11
17
  export * as Ref from './Ref';
12
18
  export * as Relation from './Relation';
19
+ export * as SchemaRegistry from './SchemaRegistry';
13
20
  export * as Tag from './Tag';
14
21
  export * as Type from './Type';
22
+ export * as Collection from './Collection';
23
+ export * as View from './View';
24
+ export * as Dataset from './Dataset';
25
+ export * as Extension from './Extension';
15
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAExB,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,cAAc,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import * as SchemaAST from 'effect/SchemaAST';
3
- import { Reference } from '@dxos/echo-protocol';
4
3
  import { DXN } from '@dxos/keys';
5
4
  import { type Primitive } from '@dxos/util';
6
- import { EntityKind } from '../types';
5
+ import { type Mutable } from '../common/proxy';
6
+ import { type AnyProperties, EntityKind } from '../common/types';
7
+ import { type AnnotationHelper } from './util';
7
8
  /**
8
9
  * Sets the path for the field.
9
10
  * @param path Data source path in the json path format. This is the field path in the source object.
@@ -15,9 +16,21 @@ export declare const FieldPath: (path: string) => <A, I, R>(self: Schema.Schema<
15
16
  */
16
17
  export declare const TypeIdentifierAnnotationId: unique symbol;
17
18
  export declare const getTypeIdentifierAnnotation: (schema: Schema.Schema.All) => string | undefined;
19
+ /**
20
+ * @returns DXN of the schema.
21
+ *
22
+ * For non-stored schema returns `dxn:type:`.
23
+ * For stored schema returns `dxn:echo:`.
24
+ */
25
+ export declare const getSchemaDXN: (schema: Schema.Schema.All) => DXN | undefined;
26
+ /**
27
+ * @param input schema or a typename string.
28
+ * @return type DXN.
29
+ */
30
+ export declare const getTypeDXNFromSpecifier: (input: Schema.Schema.All | string) => DXN;
18
31
  /**
19
32
  * Fully qualified globally unique typename.
20
- * Example: `dxos.org/type/Person`
33
+ * Example: `org.dxos.type.message`
21
34
  */
22
35
  export declare const TypenameSchema: Schema.refine<string, typeof Schema.String>;
23
36
  /**
@@ -91,7 +104,7 @@ export declare const getPropertyMetaAnnotation: <T>(prop: SchemaAST.PropertySign
91
104
  */
92
105
  export declare const ReferenceAnnotationId: unique symbol;
93
106
  export type ReferenceAnnotationValue = TypeAnnotation;
94
- export declare const getReferenceAnnotation: (schema: Schema.Schema.AnyNoContext) => TypeAnnotation | undefined;
107
+ export declare const ReferenceAnnotation: AnnotationHelper<TypeAnnotation>;
95
108
  /**
96
109
  * SchemaMeta.
97
110
  */
@@ -103,41 +116,46 @@ export type SchemaMeta = TypeMeta & {
103
116
  * Identifies a schema as a schema for a hidden system type.
104
117
  */
105
118
  export declare const SystemTypeAnnotationId: unique symbol;
106
- export declare const SystemTypeAnnotation: import("./util").AnnotationHelper<boolean>;
119
+ export declare const SystemTypeAnnotation: AnnotationHelper<boolean>;
107
120
  /**
108
121
  * Identifies label property or JSON path expression.
109
122
  * Either a string or an array of strings representing field accessors each matched in priority order.
110
123
  */
111
124
  export declare const LabelAnnotationId: unique symbol;
112
- export declare const LabelAnnotation: import("./util").AnnotationHelper<string[]>;
125
+ export declare const LabelAnnotation: AnnotationHelper<string[]>;
113
126
  /**
114
127
  * Returns the label for a given object based on {@link LabelAnnotationId}.
128
+ * Lower-level version that requires explicit schema parameter.
129
+ * Skips empty strings and whitespace-only strings, continuing to the next field.
115
130
  */
116
- export declare const getLabel: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>) => string | undefined;
131
+ export declare const getLabelWithSchema: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>) => string | undefined;
117
132
  /**
118
133
  * Sets the label for a given object based on {@link LabelAnnotationId}.
134
+ * Lower-level version that requires explicit schema parameter.
119
135
  */
120
- export declare const setLabel: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>, label: string) => void;
136
+ export declare const setLabelWithSchema: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>, label: string) => void;
121
137
  /**
122
138
  * Identifies description property or JSON path expression.
123
139
  * A string representing field accessor.
124
140
  */
125
141
  export declare const DescriptionAnnotationId: unique symbol;
126
- export declare const DescriptionAnnotation: import("./util").AnnotationHelper<string>;
142
+ export declare const DescriptionAnnotation: AnnotationHelper<string>;
127
143
  /**
128
- * Returns the label for a given object based on {@link LabelAnnotationId}.
144
+ * Returns the description for a given object based on {@link DescriptionAnnotationId}.
145
+ * Lower-level version that requires explicit schema parameter.
129
146
  */
130
- export declare const getDescription: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>) => string | undefined;
147
+ export declare const getDescriptionWithSchema: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>) => string | undefined;
131
148
  /**
132
149
  * Sets the description for a given object based on {@link DescriptionAnnotationId}.
150
+ * Lower-level version that requires explicit schema parameter.
133
151
  */
134
- export declare const setDescription: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>, description: string) => void;
152
+ export declare const setDescriptionWithSchema: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>, description: string) => void;
135
153
  /**
136
154
  * Identifies if a property should be included in a form or not.
137
155
  * By default, all properties are included in forms, so this is opt-out.
138
156
  */
139
157
  export declare const FormInputAnnotationId: unique symbol;
140
- export declare const FormInputAnnotation: import("./util").AnnotationHelper<boolean>;
158
+ export declare const FormInputAnnotation: AnnotationHelper<boolean>;
141
159
  /**
142
160
  * Default field to be used on referenced schema to lookup the value.
143
161
  */
@@ -151,24 +169,63 @@ export type GeneratorAnnotationValue = string | {
151
169
  args?: any[];
152
170
  probability?: number;
153
171
  };
154
- export declare const GeneratorAnnotation: import("./util").AnnotationHelper<GeneratorAnnotationValue>;
172
+ export declare const GeneratorAnnotation: AnnotationHelper<GeneratorAnnotationValue>;
173
+ interface MakeAnnoationsProps<T> {
174
+ id: string;
175
+ schema: Schema.Schema<T, any, never>;
176
+ }
177
+ export declare const makeUserAnnotation: <T>(props: MakeAnnoationsProps<T>) => AnnotationHelper<T>;
178
+ declare const IconAnnotationSchema: Schema.Struct<{
179
+ /**
180
+ * Phosphor icon name (e.g., 'ph--user--regular', 'ph--cube--regular', 'ph--link--regular ', etc.)
181
+ */
182
+ icon: Schema.filter<typeof Schema.String>;
183
+ /**
184
+ * Color name.
185
+ *
186
+ * List of colors:
187
+ * - 'red'
188
+ * - 'orange'
189
+ * - 'amber'
190
+ * - 'yellow'
191
+ * - 'lime'
192
+ * - 'green'
193
+ * - 'emerald'
194
+ * - 'teal'
195
+ * - 'cyan'
196
+ * - 'violet'
197
+ * - 'purple'
198
+ * - 'fuchsia'
199
+ * - 'pink'
200
+ * - 'rose'
201
+ */
202
+ hue: Schema.optional<typeof Schema.String>;
203
+ }>;
204
+ export interface IconAnnotation extends Schema.Schema.Type<typeof IconAnnotationSchema> {
205
+ }
155
206
  /**
156
- * @returns DXN of the schema.
157
- *
158
- * For non-stored schema returns `dxn:type:`.
159
- * For stored schema returns `dxn:echo:`.
207
+ * Icon to render in the UI.
160
208
  */
161
- export declare const getSchemaDXN: (schema: Schema.Schema.All) => DXN | undefined;
209
+ export declare const IconAnnotation: AnnotationHelper<IconAnnotation>;
162
210
  /**
163
- * Returns a reference that will be used to point to a schema.
164
- * @deprecated Use {@link getSchemaDXN} instead.
211
+ * Get the label of an entity.
212
+ * Accepts both reactive entities and snapshots.
165
213
  */
166
- export declare const getTypeReference: (schema: Schema.Schema.All | undefined) => Reference | undefined;
214
+ export declare const getLabel: (entity: AnyProperties) => string | undefined;
167
215
  /**
168
- * Returns a reference that will be used to point to a schema.
169
- * @throws If it is not possible to reference this schema.
170
- *
171
- * @deprecated Use {@link getSchemaDXN} instead.
216
+ * Set the label of an entity.
217
+ * Must be called within an Obj.change or Relation.change callback.
218
+ */
219
+ export declare const setLabel: (entity: Mutable<AnyProperties>, label: string) => void;
220
+ /**
221
+ * Get the description of an entity.
222
+ * Accepts both reactive entities and snapshots.
223
+ */
224
+ export declare const getDescription: (entity: AnyProperties) => string | undefined;
225
+ /**
226
+ * Set the description of an entity.
227
+ * Must be called within an Obj.change or Relation.change callback.
172
228
  */
173
- export declare const requireTypeReference: (schema: Schema.Schema.AnyNoContext) => Reference;
229
+ export declare const setDescription: (entity: Mutable<AnyProperties>, description: string) => void;
230
+ export {};
174
231
  //# sourceMappingURL=annotations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Annotation/annotations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Annotation/annotations.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export * from './annotations';
2
+ export * from './sorting';
3
+ export * from './util';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Annotation/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC"}