@dxos/echo 0.8.4-main.bc674ce → 0.8.4-main.bd9b33e6c8

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 (536) hide show
  1. package/README.md +2 -2
  2. package/dist/lib/neutral/Annotation.mjs +8 -3
  3. package/dist/lib/neutral/Database.mjs +34 -6
  4. package/dist/lib/neutral/Entity.mjs +18 -10
  5. package/dist/lib/neutral/Err.mjs +3 -1
  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 +45 -0
  9. package/dist/lib/neutral/Feed.mjs.map +7 -0
  10. package/dist/lib/neutral/Filter.mjs +17 -10
  11. package/dist/lib/neutral/Format.mjs +3 -3
  12. package/dist/lib/neutral/JsonSchema.mjs +9 -9
  13. package/dist/lib/neutral/Obj.mjs +35 -15
  14. package/dist/lib/neutral/Order.mjs +1 -1
  15. package/dist/lib/neutral/Query.mjs +19 -9
  16. package/dist/lib/neutral/Ref.mjs +9 -7
  17. package/dist/lib/neutral/Relation.mjs +20 -11
  18. package/dist/lib/neutral/SchemaRegistry.mjs +1 -1
  19. package/dist/lib/neutral/Tag.mjs +13 -10
  20. package/dist/lib/neutral/Type.mjs +13 -23
  21. package/dist/lib/neutral/{chunk-HMOXCO27.mjs → chunk-35O3JYTV.mjs} +8 -3
  22. package/dist/lib/neutral/chunk-35O3JYTV.mjs.map +7 -0
  23. package/dist/lib/neutral/chunk-4BT7QVIT.mjs +34 -0
  24. package/dist/lib/neutral/chunk-4BT7QVIT.mjs.map +7 -0
  25. package/dist/lib/neutral/chunk-4O4AV6CL.mjs +787 -0
  26. package/dist/lib/neutral/chunk-4O4AV6CL.mjs.map +7 -0
  27. package/dist/lib/neutral/{chunk-62DWJ6CE.mjs → chunk-B5OXLWZL.mjs} +14 -14
  28. package/dist/lib/neutral/chunk-B5OXLWZL.mjs.map +7 -0
  29. package/dist/lib/neutral/{chunk-NWUO5FKZ.mjs → chunk-B7HTUIZA.mjs} +8 -2
  30. package/dist/lib/neutral/chunk-B7HTUIZA.mjs.map +7 -0
  31. package/dist/lib/neutral/{chunk-4L6DOFXP.mjs → chunk-BNCCGLJN.mjs} +1 -1
  32. package/dist/lib/neutral/{chunk-4L6DOFXP.mjs.map → chunk-BNCCGLJN.mjs.map} +1 -1
  33. package/dist/lib/neutral/{chunk-3ZEAZF7T.mjs → chunk-EIX4KLES.mjs} +8 -4
  34. package/dist/lib/neutral/chunk-EIX4KLES.mjs.map +7 -0
  35. package/dist/lib/neutral/chunk-FLSFS6UB.mjs +117 -0
  36. package/dist/lib/neutral/chunk-FLSFS6UB.mjs.map +7 -0
  37. package/dist/lib/neutral/{chunk-VR4A4WGG.mjs → chunk-FXQ52LDX.mjs} +72 -23
  38. package/dist/lib/neutral/chunk-FXQ52LDX.mjs.map +7 -0
  39. package/dist/lib/neutral/{chunk-4TT624YA.mjs → chunk-FZO7LQO7.mjs} +2 -2
  40. package/dist/lib/neutral/{chunk-4TT624YA.mjs.map → chunk-FZO7LQO7.mjs.map} +1 -1
  41. package/dist/lib/neutral/chunk-HIMJ3MXL.mjs +283 -0
  42. package/dist/lib/neutral/chunk-HIMJ3MXL.mjs.map +7 -0
  43. package/dist/lib/neutral/{chunk-VB5HVDCA.mjs → chunk-HITCYIP2.mjs} +47 -5
  44. package/dist/lib/neutral/chunk-HITCYIP2.mjs.map +7 -0
  45. package/dist/lib/neutral/{chunk-SU2LVM7J.mjs → chunk-JJTRVYRD.mjs} +1596 -2730
  46. package/dist/lib/neutral/chunk-JJTRVYRD.mjs.map +7 -0
  47. package/dist/lib/neutral/{chunk-6QPSGMEF.mjs → chunk-JX5K6AY3.mjs} +32 -8
  48. package/dist/lib/neutral/chunk-JX5K6AY3.mjs.map +7 -0
  49. package/dist/lib/neutral/{chunk-IP2GHXWA.mjs → chunk-PRQVBGFG.mjs} +5 -5
  50. package/dist/lib/neutral/chunk-PRQVBGFG.mjs.map +7 -0
  51. package/dist/lib/neutral/chunk-RUYH5REG.mjs +130 -0
  52. package/dist/lib/neutral/chunk-RUYH5REG.mjs.map +7 -0
  53. package/dist/lib/neutral/{chunk-2MTHJ5UW.mjs → chunk-T74ABBRN.mjs} +134 -24
  54. package/dist/lib/neutral/chunk-T74ABBRN.mjs.map +7 -0
  55. package/dist/lib/neutral/{chunk-XMIDBDE6.mjs → chunk-TJRQTGXR.mjs} +11 -56
  56. package/dist/lib/neutral/chunk-TJRQTGXR.mjs.map +7 -0
  57. package/dist/lib/neutral/{chunk-RPB6V4BE.mjs → chunk-UBEZSGXY.mjs} +14 -1
  58. package/dist/lib/neutral/chunk-UBEZSGXY.mjs.map +7 -0
  59. package/dist/lib/neutral/{chunk-ROKO4RKJ.mjs → chunk-UI6MWK5W.mjs} +2 -2
  60. package/dist/lib/neutral/chunk-UI6MWK5W.mjs.map +7 -0
  61. package/dist/lib/neutral/chunk-VF2IHN6I.mjs +396 -0
  62. package/dist/lib/neutral/chunk-VF2IHN6I.mjs.map +7 -0
  63. package/dist/lib/neutral/{chunk-YQYMWZAD.mjs → chunk-WYOKA6AE.mjs} +4 -4
  64. package/dist/lib/neutral/chunk-WYOKA6AE.mjs.map +7 -0
  65. package/dist/lib/neutral/{chunk-CUDIBUM4.mjs → chunk-XEBKJROJ.mjs} +104 -25
  66. package/dist/lib/neutral/chunk-XEBKJROJ.mjs.map +7 -0
  67. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs +50 -0
  68. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs.map +7 -0
  69. package/dist/lib/neutral/chunk-ZZEIMPNC.mjs +159 -0
  70. package/dist/lib/neutral/chunk-ZZEIMPNC.mjs.map +7 -0
  71. package/dist/lib/neutral/index.mjs +42 -25
  72. package/dist/lib/neutral/internal/index.mjs +52 -38
  73. package/dist/lib/neutral/meta.json +1 -1
  74. package/dist/lib/neutral/testing/index.mjs +42 -34
  75. package/dist/lib/neutral/testing/index.mjs.map +3 -3
  76. package/dist/types/src/Annotation.d.ts +23 -1
  77. package/dist/types/src/Annotation.d.ts.map +1 -1
  78. package/dist/types/src/Collection.d.ts +16 -0
  79. package/dist/types/src/Collection.d.ts.map +1 -0
  80. package/dist/types/src/Database.d.ts +79 -84
  81. package/dist/types/src/Database.d.ts.map +1 -1
  82. package/dist/types/src/Dataset.d.ts +19 -0
  83. package/dist/types/src/Dataset.d.ts.map +1 -0
  84. package/dist/types/src/Entity.d.ts +41 -15
  85. package/dist/types/src/Entity.d.ts.map +1 -1
  86. package/dist/types/src/Err.d.ts +43 -0
  87. package/dist/types/src/Err.d.ts.map +1 -1
  88. package/dist/types/src/Extension.d.ts +80 -0
  89. package/dist/types/src/Extension.d.ts.map +1 -0
  90. package/dist/types/src/Extension.test.d.ts +2 -0
  91. package/dist/types/src/Extension.test.d.ts.map +1 -0
  92. package/dist/types/src/Feed.d.ts +163 -0
  93. package/dist/types/src/Feed.d.ts.map +1 -0
  94. package/dist/types/src/Filter.d.ts +13 -1
  95. package/dist/types/src/Filter.d.ts.map +1 -1
  96. package/dist/types/src/Filter.test.d.ts +2 -0
  97. package/dist/types/src/Filter.test.d.ts.map +1 -0
  98. package/dist/types/src/Format.d.ts +3 -3
  99. package/dist/types/src/Format.d.ts.map +1 -1
  100. package/dist/types/src/Hypergraph.d.ts +8 -3
  101. package/dist/types/src/Hypergraph.d.ts.map +1 -1
  102. package/dist/types/src/JsonSchema.d.ts +11 -4
  103. package/dist/types/src/JsonSchema.d.ts.map +1 -1
  104. package/dist/types/src/Obj.d.ts +158 -43
  105. package/dist/types/src/Obj.d.ts.map +1 -1
  106. package/dist/types/src/Order.d.ts.map +1 -1
  107. package/dist/types/src/Query.d.ts +101 -14
  108. package/dist/types/src/Query.d.ts.map +1 -1
  109. package/dist/types/src/Ref.d.ts +58 -10
  110. package/dist/types/src/Ref.d.ts.map +1 -1
  111. package/dist/types/src/Relation.d.ts +75 -28
  112. package/dist/types/src/Relation.d.ts.map +1 -1
  113. package/dist/types/src/SchemaRegistry.d.ts +4 -4
  114. package/dist/types/src/SchemaRegistry.d.ts.map +1 -1
  115. package/dist/types/src/Tag.d.ts +4 -3
  116. package/dist/types/src/Tag.d.ts.map +1 -1
  117. package/dist/types/src/Type.d.ts +51 -180
  118. package/dist/types/src/Type.d.ts.map +1 -1
  119. package/dist/types/src/View.d.ts +68 -0
  120. package/dist/types/src/View.d.ts.map +1 -0
  121. package/dist/types/src/hierarchy.test.d.ts +2 -0
  122. package/dist/types/src/hierarchy.test.d.ts.map +1 -0
  123. package/dist/types/src/index.d.ts +5 -0
  124. package/dist/types/src/index.d.ts.map +1 -1
  125. package/dist/types/src/internal/{annotations → Annotation}/annotations.d.ts +69 -8
  126. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -0
  127. package/dist/types/src/internal/Annotation/annotations.test.d.ts.map +1 -0
  128. package/dist/types/src/internal/Annotation/index.d.ts +4 -0
  129. package/dist/types/src/internal/Annotation/index.d.ts.map +1 -0
  130. package/dist/types/src/internal/{api → Annotation}/sorting.d.ts +1 -1
  131. package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -0
  132. package/dist/types/src/internal/{annotations → Annotation}/util.d.ts +13 -1
  133. package/dist/types/src/internal/Annotation/util.d.ts.map +1 -0
  134. package/dist/types/src/internal/{api/entity.d.ts → Entity/api.d.ts} +2 -2
  135. package/dist/types/src/internal/Entity/api.d.ts.map +1 -0
  136. package/dist/types/src/internal/{entities → Entity}/entity.d.ts +3 -3
  137. package/dist/types/src/internal/Entity/entity.d.ts.map +1 -0
  138. package/dist/types/src/internal/{entities → Entity}/index.d.ts +2 -0
  139. package/dist/types/src/internal/Entity/index.d.ts.map +1 -0
  140. package/dist/types/src/internal/{entities → Entity}/model.d.ts +4 -26
  141. package/dist/types/src/internal/Entity/model.d.ts.map +1 -0
  142. package/dist/types/src/internal/{entities → Entity}/object.d.ts +2 -2
  143. package/dist/types/src/internal/Entity/object.d.ts.map +1 -0
  144. package/dist/types/src/internal/{entities → Entity}/relation.d.ts +3 -30
  145. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -0
  146. package/dist/types/src/internal/Entity/util.d.ts.map +1 -0
  147. package/dist/types/src/internal/{api → Entity}/version.d.ts +1 -1
  148. package/dist/types/src/internal/Entity/version.d.ts.map +1 -0
  149. package/dist/types/src/internal/Format/date.d.ts.map +1 -0
  150. package/dist/types/src/internal/Format/date.test.d.ts.map +1 -0
  151. package/dist/types/src/internal/Format/format.d.ts.map +1 -0
  152. package/dist/types/src/internal/Format/format.test.d.ts.map +1 -0
  153. package/dist/types/src/internal/Format/index.d.ts.map +1 -0
  154. package/dist/types/src/internal/Format/number.d.ts.map +1 -0
  155. package/dist/types/src/internal/Format/object.d.ts.map +1 -0
  156. package/dist/types/src/internal/Format/select.d.ts.map +1 -0
  157. package/dist/types/src/internal/Format/string.d.ts.map +1 -0
  158. package/dist/types/src/internal/{formats → Format}/types.d.ts +1 -1
  159. package/dist/types/src/internal/Format/types.d.ts.map +1 -0
  160. package/dist/types/src/internal/{json-schema → JsonSchema}/annotations.d.ts +1 -1
  161. package/dist/types/src/internal/JsonSchema/annotations.d.ts.map +1 -0
  162. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts.map +1 -0
  163. package/dist/types/src/internal/JsonSchema/index.d.ts.map +1 -0
  164. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -0
  165. package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-type.d.ts +19 -19
  166. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -0
  167. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -0
  168. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts.map +1 -0
  169. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -0
  170. package/dist/types/src/internal/Obj/common.d.ts.map +1 -0
  171. package/dist/types/src/internal/{object → Obj}/create-object.d.ts +2 -2
  172. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -0
  173. package/dist/types/src/internal/Obj/create-object.test.d.ts.map +1 -0
  174. package/dist/types/src/internal/{object → Obj}/deleted.d.ts +1 -1
  175. package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -0
  176. package/dist/types/src/internal/Obj/ids.d.ts.map +1 -0
  177. package/dist/types/src/internal/Obj/index.d.ts.map +1 -0
  178. package/dist/types/src/internal/Obj/inspect.d.ts.map +1 -0
  179. package/dist/types/src/internal/{object → Obj}/json-serializer.d.ts +12 -5
  180. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -0
  181. package/dist/types/src/internal/Obj/json-serializer.test.d.ts.map +1 -0
  182. package/dist/types/src/internal/Obj/schema-validator.d.ts +2 -0
  183. package/dist/types/src/internal/Obj/schema-validator.d.ts.map +1 -0
  184. package/dist/types/src/internal/Obj/schema-validator.test.d.ts.map +1 -0
  185. package/dist/types/src/internal/{object → Obj}/set-value.d.ts +1 -1
  186. package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -0
  187. package/dist/types/src/internal/Obj/set-value.test.d.ts.map +1 -0
  188. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -0
  189. package/dist/types/src/internal/{object → Obj}/typed-object.d.ts +4 -4
  190. package/dist/types/src/internal/Obj/typed-object.d.ts.map +1 -0
  191. package/dist/types/src/internal/Obj/typed-object.test.d.ts.map +1 -0
  192. package/dist/types/src/internal/Ref/index.d.ts.map +1 -0
  193. package/dist/types/src/internal/{ref → Ref}/ref-array.d.ts +1 -1
  194. package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -0
  195. package/dist/types/src/internal/{ref → Ref}/ref.d.ts +16 -3
  196. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -0
  197. package/dist/types/src/internal/Ref/ref.test.d.ts.map +1 -0
  198. package/dist/types/src/internal/{schema → Type}/compose.d.ts +1 -1
  199. package/dist/types/src/internal/Type/compose.d.ts.map +1 -0
  200. package/dist/types/src/internal/Type/compose.test.d.ts.map +1 -0
  201. package/dist/types/src/internal/{schema → Type}/echo-schema.d.ts +8 -7
  202. package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -0
  203. package/dist/types/src/internal/Type/index.d.ts.map +1 -0
  204. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -0
  205. package/dist/types/src/internal/{schema → Type}/persistent-schema.d.ts +2 -2
  206. package/dist/types/src/internal/Type/persistent-schema.d.ts.map +1 -0
  207. package/dist/types/src/internal/{api → common/api}/index.d.ts +0 -4
  208. package/dist/types/src/internal/common/api/index.d.ts.map +1 -0
  209. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -0
  210. package/dist/types/src/internal/common/index.d.ts +4 -0
  211. package/dist/types/src/internal/common/index.d.ts.map +1 -0
  212. package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -0
  213. package/dist/types/src/internal/common/proxy/change.test.d.ts.map +1 -0
  214. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -0
  215. package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -0
  216. package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -0
  217. package/dist/types/src/internal/common/proxy/handler.test.d.ts.map +1 -0
  218. package/dist/types/src/internal/common/proxy/index.d.ts.map +1 -0
  219. package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -0
  220. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -0
  221. package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -0
  222. package/dist/types/src/internal/common/proxy/proxy-types.d.ts.map +1 -0
  223. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -0
  224. package/dist/types/src/internal/common/proxy/reactive-array.d.ts.map +1 -0
  225. package/dist/types/src/internal/{proxy → common/proxy}/reactive.d.ts +1 -1
  226. package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -0
  227. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -0
  228. package/dist/types/src/internal/common/proxy/schema.test.d.ts.map +1 -0
  229. package/dist/types/src/internal/common/proxy/symbols.d.ts.map +1 -0
  230. package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.d.ts +2 -1
  231. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -0
  232. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts.map +1 -0
  233. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts.map +1 -0
  234. package/dist/types/src/internal/{types → common/types}/base.d.ts +1 -0
  235. package/dist/types/src/internal/common/types/base.d.ts.map +1 -0
  236. package/dist/types/src/internal/{types → common/types}/entity.d.ts +2 -2
  237. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -0
  238. package/dist/types/src/internal/{types → common/types}/index.d.ts +1 -0
  239. package/dist/types/src/internal/common/types/index.d.ts.map +1 -0
  240. package/dist/types/src/internal/{types → common/types}/meta.d.ts +2 -1
  241. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -0
  242. package/dist/types/src/internal/common/types/model-symbols.d.ts +54 -0
  243. package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -0
  244. package/dist/types/src/internal/{types → common/types}/typename.d.ts +8 -0
  245. package/dist/types/src/internal/common/types/typename.d.ts.map +1 -0
  246. package/dist/types/src/internal/{types → common/types}/version.d.ts +2 -2
  247. package/dist/types/src/internal/common/types/version.d.ts.map +1 -0
  248. package/dist/types/src/internal/index.d.ts +8 -10
  249. package/dist/types/src/internal/index.d.ts.map +1 -1
  250. package/dist/types/src/testing/test-schema.d.ts +19 -18
  251. package/dist/types/src/testing/test-schema.d.ts.map +1 -1
  252. package/dist/types/tsconfig.tsbuildinfo +1 -1
  253. package/package.json +24 -14
  254. package/src/Annotation.ts +31 -1
  255. package/src/Collection.ts +37 -0
  256. package/src/Database.ts +154 -173
  257. package/src/Dataset.ts +26 -0
  258. package/src/Entity.ts +73 -54
  259. package/src/Err.ts +22 -0
  260. package/src/Extension.test.ts +235 -0
  261. package/src/Extension.ts +122 -0
  262. package/src/Feed.ts +267 -0
  263. package/src/Filter.test.ts +90 -0
  264. package/src/Filter.ts +47 -4
  265. package/src/Format.ts +3 -3
  266. package/src/Hypergraph.ts +9 -4
  267. package/src/JsonSchema.ts +14 -4
  268. package/src/Obj.test.ts +69 -8
  269. package/src/Obj.ts +285 -140
  270. package/src/Order.ts +3 -1
  271. package/src/Query.test.ts +190 -15
  272. package/src/Query.ts +249 -23
  273. package/src/Ref.ts +64 -11
  274. package/src/Relation.test.ts +8 -2
  275. package/src/Relation.ts +165 -131
  276. package/src/SchemaRegistry.ts +5 -4
  277. package/src/Tag.ts +6 -5
  278. package/src/Type.test.ts +10 -10
  279. package/src/Type.ts +70 -303
  280. package/src/View.ts +107 -0
  281. package/src/hierarchy.test.ts +33 -0
  282. package/src/index.ts +5 -0
  283. package/src/internal/{annotations → Annotation}/annotations.test.ts +56 -6
  284. package/src/internal/{annotations → Annotation}/annotations.ts +128 -10
  285. package/src/internal/{annotations → Annotation}/index.ts +1 -0
  286. package/src/internal/{api → Annotation}/sorting.ts +2 -3
  287. package/src/internal/{annotations → Annotation}/util.ts +14 -1
  288. package/src/internal/{api/entity.ts → Entity/api.ts} +4 -2
  289. package/src/internal/{entities → Entity}/entity.ts +6 -4
  290. package/src/internal/{entities → Entity}/index.ts +2 -0
  291. package/src/internal/{entities → Entity}/model.ts +17 -42
  292. package/src/internal/{entities → Entity}/object.ts +2 -2
  293. package/src/internal/{entities → Entity}/relation.ts +19 -36
  294. package/src/internal/{api → Entity}/version.ts +3 -2
  295. package/src/internal/{formats → Format}/date.test.ts +1 -1
  296. package/src/internal/{formats → Format}/format.test.ts +1 -1
  297. package/src/internal/{formats → Format}/types.ts +3 -3
  298. package/src/internal/{json-schema → JsonSchema}/annotations.ts +3 -3
  299. package/src/internal/{json-schema → JsonSchema}/json-schema-type.ts +4 -4
  300. package/src/internal/{json-schema → JsonSchema}/json-schema.test.ts +48 -48
  301. package/src/internal/{json-schema → JsonSchema}/json-schema.ts +6 -4
  302. package/src/internal/{object → Obj}/clone.ts +3 -3
  303. package/src/internal/{object → Obj}/common.ts +2 -2
  304. package/src/internal/{object → Obj}/create-object.test.ts +4 -4
  305. package/src/internal/{object → Obj}/create-object.ts +5 -5
  306. package/src/internal/{object → Obj}/deleted.ts +2 -2
  307. package/src/internal/{object → Obj}/inspect.ts +2 -2
  308. package/src/internal/{object → Obj}/json-serializer.test.ts +31 -8
  309. package/src/internal/{object → Obj}/json-serializer.ts +42 -15
  310. package/src/internal/{object → Obj}/schema-validator.ts +1 -1
  311. package/src/internal/{object → Obj}/set-value.test.ts +24 -24
  312. package/src/internal/{object → Obj}/set-value.ts +2 -2
  313. package/src/internal/Obj/snapshot.ts +105 -0
  314. package/src/internal/{object → Obj}/typed-object.test.ts +3 -3
  315. package/src/internal/{object → Obj}/typed-object.ts +4 -4
  316. package/src/internal/{ref → Ref}/ref-array.ts +1 -1
  317. package/src/internal/{ref → Ref}/ref.test.ts +4 -4
  318. package/src/internal/{ref → Ref}/ref.ts +27 -4
  319. package/src/internal/{schema → Type}/compose.test.ts +5 -5
  320. package/src/internal/{schema → Type}/compose.ts +1 -1
  321. package/src/internal/{schema → Type}/echo-schema.ts +11 -10
  322. package/src/internal/{schema → Type}/manipulation.ts +1 -1
  323. package/src/internal/{schema → Type}/persistent-schema.ts +10 -4
  324. package/src/internal/{README.md → common/README.md} +1 -1
  325. package/src/internal/{api → common/api}/index.ts +0 -4
  326. package/src/internal/common/index.ts +7 -0
  327. package/src/internal/{proxy → common/proxy}/change.test.ts +58 -58
  328. package/src/internal/{proxy → common/proxy}/handler.test.ts +2 -2
  329. package/src/internal/{proxy → common/proxy}/json-serializer.ts +6 -3
  330. package/src/internal/{proxy → common/proxy}/make-object.ts +13 -3
  331. package/src/internal/{proxy → common/proxy}/reactive.ts +1 -1
  332. package/src/internal/{proxy → common/proxy}/schema.test.ts +10 -10
  333. package/src/internal/{proxy → common/proxy}/typed-handler.test.ts +6 -6
  334. package/src/internal/{proxy → common/proxy}/typed-handler.ts +10 -3
  335. package/src/internal/{proxy → common/proxy}/typed-object.test.ts +4 -4
  336. package/src/internal/{types → common/types}/base.ts +1 -1
  337. package/src/internal/{types → common/types}/entity.ts +2 -2
  338. package/src/internal/{types → common/types}/index.ts +1 -0
  339. package/src/internal/{types → common/types}/meta.ts +4 -1
  340. package/src/internal/common/types/model-symbols.ts +69 -0
  341. package/src/internal/{types → common/types}/typename.ts +10 -0
  342. package/src/internal/{types → common/types}/version.ts +2 -3
  343. package/src/internal/index.ts +8 -31
  344. package/src/testing/api.test.ts +4 -4
  345. package/src/testing/test-schema.ts +20 -18
  346. package/dist/lib/neutral/chunk-2MTHJ5UW.mjs.map +0 -7
  347. package/dist/lib/neutral/chunk-3ZEAZF7T.mjs.map +0 -7
  348. package/dist/lib/neutral/chunk-62DWJ6CE.mjs.map +0 -7
  349. package/dist/lib/neutral/chunk-6QPSGMEF.mjs.map +0 -7
  350. package/dist/lib/neutral/chunk-CUDIBUM4.mjs.map +0 -7
  351. package/dist/lib/neutral/chunk-HMOXCO27.mjs.map +0 -7
  352. package/dist/lib/neutral/chunk-IP2GHXWA.mjs.map +0 -7
  353. package/dist/lib/neutral/chunk-KRHDMXSU.mjs +0 -132
  354. package/dist/lib/neutral/chunk-KRHDMXSU.mjs.map +0 -7
  355. package/dist/lib/neutral/chunk-NWUO5FKZ.mjs.map +0 -7
  356. package/dist/lib/neutral/chunk-ROKO4RKJ.mjs.map +0 -7
  357. package/dist/lib/neutral/chunk-RPB6V4BE.mjs.map +0 -7
  358. package/dist/lib/neutral/chunk-SU2LVM7J.mjs.map +0 -7
  359. package/dist/lib/neutral/chunk-VB5HVDCA.mjs.map +0 -7
  360. package/dist/lib/neutral/chunk-VR4A4WGG.mjs.map +0 -7
  361. package/dist/lib/neutral/chunk-X2MPMYYN.mjs +0 -13
  362. package/dist/lib/neutral/chunk-X2MPMYYN.mjs.map +0 -7
  363. package/dist/lib/neutral/chunk-XK5OUUBY.mjs +0 -157
  364. package/dist/lib/neutral/chunk-XK5OUUBY.mjs.map +0 -7
  365. package/dist/lib/neutral/chunk-XMIDBDE6.mjs.map +0 -7
  366. package/dist/lib/neutral/chunk-YQYMWZAD.mjs.map +0 -7
  367. package/dist/types/src/internal/annotations/annotations.d.ts.map +0 -1
  368. package/dist/types/src/internal/annotations/annotations.test.d.ts.map +0 -1
  369. package/dist/types/src/internal/annotations/index.d.ts +0 -3
  370. package/dist/types/src/internal/annotations/index.d.ts.map +0 -1
  371. package/dist/types/src/internal/annotations/util.d.ts.map +0 -1
  372. package/dist/types/src/internal/api/annotations.d.ts +0 -23
  373. package/dist/types/src/internal/api/annotations.d.ts.map +0 -1
  374. package/dist/types/src/internal/api/entity.d.ts.map +0 -1
  375. package/dist/types/src/internal/api/index.d.ts.map +0 -1
  376. package/dist/types/src/internal/api/meta.d.ts.map +0 -1
  377. package/dist/types/src/internal/api/sorting.d.ts.map +0 -1
  378. package/dist/types/src/internal/api/version.d.ts.map +0 -1
  379. package/dist/types/src/internal/entities/entity.d.ts.map +0 -1
  380. package/dist/types/src/internal/entities/index.d.ts.map +0 -1
  381. package/dist/types/src/internal/entities/model.d.ts.map +0 -1
  382. package/dist/types/src/internal/entities/object.d.ts.map +0 -1
  383. package/dist/types/src/internal/entities/relation.d.ts.map +0 -1
  384. package/dist/types/src/internal/entities/util.d.ts.map +0 -1
  385. package/dist/types/src/internal/formats/date.d.ts.map +0 -1
  386. package/dist/types/src/internal/formats/date.test.d.ts.map +0 -1
  387. package/dist/types/src/internal/formats/format.d.ts.map +0 -1
  388. package/dist/types/src/internal/formats/format.test.d.ts.map +0 -1
  389. package/dist/types/src/internal/formats/index.d.ts.map +0 -1
  390. package/dist/types/src/internal/formats/number.d.ts.map +0 -1
  391. package/dist/types/src/internal/formats/object.d.ts.map +0 -1
  392. package/dist/types/src/internal/formats/select.d.ts.map +0 -1
  393. package/dist/types/src/internal/formats/string.d.ts.map +0 -1
  394. package/dist/types/src/internal/formats/types.d.ts.map +0 -1
  395. package/dist/types/src/internal/json-schema/annotations.d.ts.map +0 -1
  396. package/dist/types/src/internal/json-schema/effect-schema.test.d.ts.map +0 -1
  397. package/dist/types/src/internal/json-schema/index.d.ts.map +0 -1
  398. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +0 -1
  399. package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +0 -1
  400. package/dist/types/src/internal/json-schema/json-schema.d.ts.map +0 -1
  401. package/dist/types/src/internal/json-schema/json-schema.test.d.ts.map +0 -1
  402. package/dist/types/src/internal/object/clone.d.ts.map +0 -1
  403. package/dist/types/src/internal/object/common.d.ts.map +0 -1
  404. package/dist/types/src/internal/object/create-object.d.ts.map +0 -1
  405. package/dist/types/src/internal/object/create-object.test.d.ts.map +0 -1
  406. package/dist/types/src/internal/object/deleted.d.ts.map +0 -1
  407. package/dist/types/src/internal/object/ids.d.ts.map +0 -1
  408. package/dist/types/src/internal/object/index.d.ts.map +0 -1
  409. package/dist/types/src/internal/object/inspect.d.ts.map +0 -1
  410. package/dist/types/src/internal/object/json-serializer.d.ts.map +0 -1
  411. package/dist/types/src/internal/object/json-serializer.test.d.ts.map +0 -1
  412. package/dist/types/src/internal/object/schema-validator.d.ts +0 -2
  413. package/dist/types/src/internal/object/schema-validator.d.ts.map +0 -1
  414. package/dist/types/src/internal/object/schema-validator.test.d.ts.map +0 -1
  415. package/dist/types/src/internal/object/set-value.d.ts.map +0 -1
  416. package/dist/types/src/internal/object/set-value.test.d.ts.map +0 -1
  417. package/dist/types/src/internal/object/snapshot.d.ts.map +0 -1
  418. package/dist/types/src/internal/object/typed-object.d.ts.map +0 -1
  419. package/dist/types/src/internal/object/typed-object.test.d.ts.map +0 -1
  420. package/dist/types/src/internal/proxy/change-context.d.ts.map +0 -1
  421. package/dist/types/src/internal/proxy/change.test.d.ts.map +0 -1
  422. package/dist/types/src/internal/proxy/define-hidden-property.d.ts.map +0 -1
  423. package/dist/types/src/internal/proxy/errors.d.ts.map +0 -1
  424. package/dist/types/src/internal/proxy/event-batch.d.ts.map +0 -1
  425. package/dist/types/src/internal/proxy/handler.test.d.ts.map +0 -1
  426. package/dist/types/src/internal/proxy/index.d.ts.map +0 -1
  427. package/dist/types/src/internal/proxy/json-serializer.d.ts.map +0 -1
  428. package/dist/types/src/internal/proxy/make-object.d.ts.map +0 -1
  429. package/dist/types/src/internal/proxy/ownership.d.ts.map +0 -1
  430. package/dist/types/src/internal/proxy/proxy-types.d.ts.map +0 -1
  431. package/dist/types/src/internal/proxy/proxy-utils.d.ts.map +0 -1
  432. package/dist/types/src/internal/proxy/reactive-array.d.ts.map +0 -1
  433. package/dist/types/src/internal/proxy/reactive.d.ts.map +0 -1
  434. package/dist/types/src/internal/proxy/schema-validator.d.ts.map +0 -1
  435. package/dist/types/src/internal/proxy/schema.test.d.ts.map +0 -1
  436. package/dist/types/src/internal/proxy/symbols.d.ts.map +0 -1
  437. package/dist/types/src/internal/proxy/typed-handler.d.ts.map +0 -1
  438. package/dist/types/src/internal/proxy/typed-handler.test.d.ts.map +0 -1
  439. package/dist/types/src/internal/proxy/typed-object.test.d.ts.map +0 -1
  440. package/dist/types/src/internal/ref/index.d.ts.map +0 -1
  441. package/dist/types/src/internal/ref/ref-array.d.ts.map +0 -1
  442. package/dist/types/src/internal/ref/ref.d.ts.map +0 -1
  443. package/dist/types/src/internal/ref/ref.test.d.ts.map +0 -1
  444. package/dist/types/src/internal/schema/compose.d.ts.map +0 -1
  445. package/dist/types/src/internal/schema/compose.test.d.ts.map +0 -1
  446. package/dist/types/src/internal/schema/echo-schema.d.ts.map +0 -1
  447. package/dist/types/src/internal/schema/index.d.ts.map +0 -1
  448. package/dist/types/src/internal/schema/manipulation.d.ts.map +0 -1
  449. package/dist/types/src/internal/schema/persistent-schema.d.ts.map +0 -1
  450. package/dist/types/src/internal/types/base.d.ts.map +0 -1
  451. package/dist/types/src/internal/types/entity.d.ts.map +0 -1
  452. package/dist/types/src/internal/types/index.d.ts.map +0 -1
  453. package/dist/types/src/internal/types/meta.d.ts.map +0 -1
  454. package/dist/types/src/internal/types/typename.d.ts.map +0 -1
  455. package/dist/types/src/internal/types/version.d.ts.map +0 -1
  456. package/src/internal/api/annotations.ts +0 -60
  457. package/src/internal/object/snapshot.ts +0 -70
  458. /package/dist/types/src/internal/{annotations → Annotation}/annotations.test.d.ts +0 -0
  459. /package/dist/types/src/internal/{entities → Entity}/util.d.ts +0 -0
  460. /package/dist/types/src/internal/{formats → Format}/date.d.ts +0 -0
  461. /package/dist/types/src/internal/{formats → Format}/date.test.d.ts +0 -0
  462. /package/dist/types/src/internal/{formats → Format}/format.d.ts +0 -0
  463. /package/dist/types/src/internal/{formats → Format}/format.test.d.ts +0 -0
  464. /package/dist/types/src/internal/{formats → Format}/index.d.ts +0 -0
  465. /package/dist/types/src/internal/{formats → Format}/number.d.ts +0 -0
  466. /package/dist/types/src/internal/{formats → Format}/object.d.ts +0 -0
  467. /package/dist/types/src/internal/{formats → Format}/select.d.ts +0 -0
  468. /package/dist/types/src/internal/{formats → Format}/string.d.ts +0 -0
  469. /package/dist/types/src/internal/{json-schema → JsonSchema}/effect-schema.test.d.ts +0 -0
  470. /package/dist/types/src/internal/{json-schema → JsonSchema}/index.d.ts +0 -0
  471. /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-normalize.d.ts +0 -0
  472. /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema.d.ts +0 -0
  473. /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema.test.d.ts +0 -0
  474. /package/dist/types/src/internal/{object → Obj}/clone.d.ts +0 -0
  475. /package/dist/types/src/internal/{object → Obj}/common.d.ts +0 -0
  476. /package/dist/types/src/internal/{object → Obj}/create-object.test.d.ts +0 -0
  477. /package/dist/types/src/internal/{object → Obj}/ids.d.ts +0 -0
  478. /package/dist/types/src/internal/{object → Obj}/index.d.ts +0 -0
  479. /package/dist/types/src/internal/{object → Obj}/inspect.d.ts +0 -0
  480. /package/dist/types/src/internal/{object → Obj}/json-serializer.test.d.ts +0 -0
  481. /package/dist/types/src/internal/{object → Obj}/schema-validator.test.d.ts +0 -0
  482. /package/dist/types/src/internal/{object → Obj}/set-value.test.d.ts +0 -0
  483. /package/dist/types/src/internal/{object → Obj}/snapshot.d.ts +0 -0
  484. /package/dist/types/src/internal/{object → Obj}/typed-object.test.d.ts +0 -0
  485. /package/dist/types/src/internal/{ref → Ref}/index.d.ts +0 -0
  486. /package/dist/types/src/internal/{ref → Ref}/ref.test.d.ts +0 -0
  487. /package/dist/types/src/internal/{schema → Type}/compose.test.d.ts +0 -0
  488. /package/dist/types/src/internal/{schema → Type}/index.d.ts +0 -0
  489. /package/dist/types/src/internal/{schema → Type}/manipulation.d.ts +0 -0
  490. /package/dist/types/src/internal/{api → common/api}/meta.d.ts +0 -0
  491. /package/dist/types/src/internal/{proxy → common/proxy}/change-context.d.ts +0 -0
  492. /package/dist/types/src/internal/{proxy → common/proxy}/change.test.d.ts +0 -0
  493. /package/dist/types/src/internal/{proxy → common/proxy}/define-hidden-property.d.ts +0 -0
  494. /package/dist/types/src/internal/{proxy → common/proxy}/errors.d.ts +0 -0
  495. /package/dist/types/src/internal/{proxy → common/proxy}/event-batch.d.ts +0 -0
  496. /package/dist/types/src/internal/{proxy → common/proxy}/handler.test.d.ts +0 -0
  497. /package/dist/types/src/internal/{proxy → common/proxy}/index.d.ts +0 -0
  498. /package/dist/types/src/internal/{proxy → common/proxy}/json-serializer.d.ts +0 -0
  499. /package/dist/types/src/internal/{proxy → common/proxy}/make-object.d.ts +0 -0
  500. /package/dist/types/src/internal/{proxy → common/proxy}/ownership.d.ts +0 -0
  501. /package/dist/types/src/internal/{proxy → common/proxy}/proxy-types.d.ts +0 -0
  502. /package/dist/types/src/internal/{proxy → common/proxy}/proxy-utils.d.ts +0 -0
  503. /package/dist/types/src/internal/{proxy → common/proxy}/reactive-array.d.ts +0 -0
  504. /package/dist/types/src/internal/{proxy → common/proxy}/schema-validator.d.ts +0 -0
  505. /package/dist/types/src/internal/{proxy → common/proxy}/schema.test.d.ts +0 -0
  506. /package/dist/types/src/internal/{proxy → common/proxy}/symbols.d.ts +0 -0
  507. /package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.test.d.ts +0 -0
  508. /package/dist/types/src/internal/{proxy → common/proxy}/typed-object.test.d.ts +0 -0
  509. /package/src/internal/{entities → Entity}/util.ts +0 -0
  510. /package/src/internal/{formats → Format}/date.ts +0 -0
  511. /package/src/internal/{formats → Format}/format.ts +0 -0
  512. /package/src/internal/{formats → Format}/index.ts +0 -0
  513. /package/src/internal/{formats → Format}/number.ts +0 -0
  514. /package/src/internal/{formats → Format}/object.ts +0 -0
  515. /package/src/internal/{formats → Format}/select.ts +0 -0
  516. /package/src/internal/{formats → Format}/string.ts +0 -0
  517. /package/src/internal/{json-schema → JsonSchema}/effect-schema.test.ts +0 -0
  518. /package/src/internal/{json-schema → JsonSchema}/index.ts +0 -0
  519. /package/src/internal/{json-schema → JsonSchema}/json-schema-normalize.ts +0 -0
  520. /package/src/internal/{object → Obj}/ids.ts +0 -0
  521. /package/src/internal/{object → Obj}/index.ts +0 -0
  522. /package/src/internal/{object → Obj}/schema-validator.test.ts +0 -0
  523. /package/src/internal/{ref → Ref}/index.ts +0 -0
  524. /package/src/internal/{schema → Type}/index.ts +0 -0
  525. /package/src/internal/{api → common/api}/meta.ts +0 -0
  526. /package/src/internal/{proxy → common/proxy}/change-context.ts +0 -0
  527. /package/src/internal/{proxy → common/proxy}/define-hidden-property.ts +0 -0
  528. /package/src/internal/{proxy → common/proxy}/errors.ts +0 -0
  529. /package/src/internal/{proxy → common/proxy}/event-batch.ts +0 -0
  530. /package/src/internal/{proxy → common/proxy}/index.ts +0 -0
  531. /package/src/internal/{proxy → common/proxy}/ownership.ts +0 -0
  532. /package/src/internal/{proxy → common/proxy}/proxy-types.ts +0 -0
  533. /package/src/internal/{proxy → common/proxy}/proxy-utils.ts +0 -0
  534. /package/src/internal/{proxy → common/proxy}/reactive-array.ts +0 -0
  535. /package/src/internal/{proxy → common/proxy}/schema-validator.ts +0 -0
  536. /package/src/internal/{proxy → common/proxy}/symbols.ts +0 -0
@@ -1,61 +1,27 @@
1
- import * as Schema from 'effect/Schema';
1
+ import type * as Schema from 'effect/Schema';
2
2
  import { type EncodedReference } from '@dxos/echo-protocol';
3
- import { type DXN, type ObjectId } from '@dxos/keys';
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 AnyEntity, type AnyProperties, type EchoRelationSchemaOptions, EchoSchema, EntityKind, PersistentSchema, Ref as Ref$, type RefFn, type RefSchema, SchemaKindId, 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 typeInternal from './internal/Type';
7
+ import * as internal from './internal';
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 const RuntimeType: typeof typeInternal.EchoSchema;
14
+ /**
15
+ * Dynamic type that can be constructed, mutated, and persisted in the ECHO database.
16
+ */
17
+ export type RuntimeType = typeInternal.EchoSchema;
13
18
  /**
14
19
  * Type that marks a schema as an ECHO schema.
15
20
  * The value indicates the entity kind (Object or Relation).
16
21
  */
17
- type EchoSchemaKind<K extends EntityKind = EntityKind> = {
18
- readonly [SchemaKindId]: K;
22
+ type EchoSchemaKind<K extends internal.EntityKind = internal.EntityKind> = {
23
+ readonly [internal.SchemaKindId]: K;
19
24
  };
20
- /**
21
- * JSON-encoded properties for objects.
22
- */
23
- interface ObjJsonProps {
24
- id: string;
25
- }
26
- /**
27
- * JSON-encoded properties for relations.
28
- */
29
- interface RelationJsonProps {
30
- id: string;
31
- [ATTR_RELATION_SOURCE]: string;
32
- [ATTR_RELATION_TARGET]: string;
33
- }
34
- type ObjSchemaType = Schema.Schema<any & AnyEntity & Entity$.OfKind<typeof Entity$.Kind.Object> & AnyProperties, {
35
- id: string;
36
- } & AnyProperties> & EchoSchemaKind<EntityKind.Object> & TypeMeta;
37
- /**
38
- * Runtime Effect schema for any ECHO object.
39
- * Use for validation, parsing, or as a reference target for collections.
40
- *
41
- * NOTE: `Schema.is(Type.Obj)` does STRUCTURAL validation only (checks for `id` field).
42
- * Use `Obj.isObject()` for proper ECHO instance type guards that check the KindId brand.
43
- *
44
- * @example
45
- * ```ts
46
- * // Structural type guard (accepts any object with id field)
47
- * if (Schema.is(Type.Obj)(unknownValue)) { ... }
48
- *
49
- * // ECHO instance type guard (checks KindId brand)
50
- * if (Obj.isObject(unknownValue)) { ... }
51
- *
52
- * // Reference to any object type
53
- * const Collection = Schema.Struct({
54
- * objects: Schema.Array(Type.Ref(Type.Obj)),
55
- * }).pipe(Type.object({ typename: 'Collection', version: '0.1.0' }));
56
- * ```
57
- */
58
- export declare const Obj: ObjSchemaType;
59
25
  /**
60
26
  * TypeScript type for an ECHO object schema.
61
27
  * `T` is the instance type produced by the schema.
@@ -71,7 +37,7 @@ export declare const Obj: ObjSchemaType;
71
37
  * Object.keys(PersonSchema.fields); // ['name']
72
38
  * ```
73
39
  */
74
- export interface Obj<T = any, Fields extends Schema.Struct.Fields = Schema.Struct.Fields> extends TypeMeta, EchoSchemaKind<EntityKind.Object>, Schema.AnnotableClass<Obj<T, Fields>, Entity$.OfKind<typeof Entity$.Kind.Object> & T, Schema.Simplify<ObjJsonProps & ToMutable<T>>, never> {
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> {
75
41
  /**
76
42
  * The fields defined in the original struct schema.
77
43
  * Allows accessing field definitions for introspection.
@@ -88,13 +54,11 @@ type ObjectSchemaBase = Schema.Schema.AnyNoContext & {
88
54
  readonly typename: string;
89
55
  readonly version: string;
90
56
  };
91
- export declare namespace Obj {
92
- /**
93
- * Type that represents any ECHO object schema.
94
- * Accepts both static schemas (Type.object()) and mutable schemas (EchoSchema).
95
- */
96
- type Any = ObjectSchemaBase;
97
- }
57
+ /**
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;
98
62
  /**
99
63
  * Factory function to create an ECHO object schema.
100
64
  * Adds object metadata annotations to an Effect schema.
@@ -103,46 +67,22 @@ export declare namespace Obj {
103
67
  * ```ts
104
68
  * const Person = Schema.Struct({
105
69
  * name: Schema.String,
106
- * }).pipe(Type.object({ typename: 'example.com/type/Person', version: '0.1.0' }));
70
+ * }).pipe(Type.object({ typename: 'com.example.type.person', version: '0.1.0' }));
107
71
  * ```
108
72
  */
109
73
  export declare const object: {
110
- (opts: TypeMeta): <Self extends Schema.Schema.Any>(self: Self) => Obj<Schema.Schema.Type<Self>>;
74
+ (opts: internal.TypeMeta): <Self extends Schema.Schema.Any>(self: Self) => Obj<Schema.Schema.Type<Self>>;
111
75
  };
112
- export declare const PersistentType: Obj<PersistentSchema>;
76
+ export declare const PersistentType: Obj<typeInternal.PersistentSchema>;
113
77
  export interface PersistentType extends Schema.Schema.Type<typeof PersistentType> {
114
78
  }
115
- export { EchoSchema as RuntimeType };
116
- type RelationSchemaType = Schema.Schema<{
117
- id: ObjectId;
118
- } & Record<string, unknown>, {
119
- id: string;
120
- } & Record<string, unknown>> & EchoSchemaKind<EntityKind.Relation> & TypeMeta;
121
- /**
122
- * Runtime Effect schema for any ECHO relation.
123
- * Use for validation, parsing, or as a reference target for collections.
124
- * A relation has `id`, source, and target fields plus any additional properties.
125
- *
126
- * NOTE: `Schema.is(Type.Relation)` does STRUCTURAL validation only (checks for `id` field).
127
- * Use `Relation.isRelation()` for proper ECHO instance type guards that check the KindId brand.
128
- *
129
- * @example
130
- * ```ts
131
- * // Structural type guard (accepts any object with id field)
132
- * if (Schema.is(Type.Relation)(unknownValue)) { ... }
133
- *
134
- * // ECHO instance type guard (checks KindId brand)
135
- * if (Relation.isRelation(unknownValue)) { ... }
136
- * ```
137
- */
138
- export declare const Relation: RelationSchemaType;
139
79
  /**
140
80
  * TypeScript type for an ECHO relation schema.
141
81
  * `T` is the instance type produced by the schema (excluding source/target).
142
82
  * `Source` and `Target` are the endpoint types.
143
83
  * `Fields` is the optional struct fields type for introspection.
144
84
  */
145
- export interface Relation<T = any, Source = any, Target = any, Fields extends Schema.Struct.Fields = Schema.Struct.Fields> extends TypeMeta, EchoSchemaKind<EntityKind.Relation>, Schema.AnnotableClass<Relation<T, Source, Target, Fields>, Entity$.OfKind<typeof Entity$.Kind.Relation> & Relation.Endpoints<Source, Target> & T, Schema.Simplify<RelationJsonProps & ToMutable<T>>, never> {
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> {
146
86
  /**
147
87
  * The fields defined in the original struct schema.
148
88
  * Allows accessing field definitions for introspection.
@@ -159,25 +99,11 @@ type RelationSchemaBase = Schema.Schema.AnyNoContext & {
159
99
  readonly typename: string;
160
100
  readonly version: string;
161
101
  };
162
- export declare namespace Relation {
163
- /**
164
- * Type that represents any ECHO relation schema.
165
- * Accepts static schemas (Type.relation()).
166
- */
167
- type Any = RelationSchemaBase;
168
- /**
169
- * Get relation source type.
170
- */
171
- type Source<A> = A extends Relation.Endpoints<infer S, infer _T> ? S : never;
172
- /**
173
- * Get relation target type.
174
- */
175
- type Target<A> = A extends Relation.Endpoints<infer _S, infer T> ? T : never;
176
- type Endpoints<Source, Target> = {
177
- [Relation$.Source]: Source;
178
- [Relation$.Target]: Target;
179
- };
180
- }
102
+ /**
103
+ * Type that represents any ECHO relation schema.
104
+ * Accepts static schemas (Type.relation()).
105
+ */
106
+ export type AnyRelation = RelationSchemaBase;
181
107
  /**
182
108
  * Factory function to create an ECHO relation schema.
183
109
  * Adds relation metadata annotations to an Effect schema.
@@ -187,7 +113,7 @@ export declare namespace Relation {
187
113
  * const WorksFor = Schema.Struct({
188
114
  * role: Schema.String,
189
115
  * }).pipe(Type.relation({
190
- * typename: 'example.com/type/WorksFor',
116
+ * typename: 'com.example.type.works-for',
191
117
  * version: '0.1.0',
192
118
  * source: Person,
193
119
  * target: Company,
@@ -195,111 +121,56 @@ export declare namespace Relation {
195
121
  * ```
196
122
  */
197
123
  export declare const relation: {
198
- <SourceSchema extends Schema.Schema.AnyNoContext, TargetSchema extends Schema.Schema.AnyNoContext>(opts: EchoRelationSchemaOptions<SourceSchema, TargetSchema>): <Self extends Schema.Schema.Any>(self: Self) => Relation<Schema.Schema.Type<Self>, Schema.Schema.Type<SourceSchema>, Schema.Schema.Type<TargetSchema>>;
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>>;
199
125
  };
200
- export declare namespace Entity {
201
- /**
202
- * Runtime Effect schema for any ECHO entity (object or relation).
203
- * Use for validation, parsing, or type guards on unknown values.
204
- *
205
- * @example
206
- * ```ts
207
- * if (Schema.is(Type.Entity.Any)(unknownValue)) {
208
- * // unknownValue is an ECHO entity
209
- * }
210
- * ```
211
- */
212
- const Any: Schema.Schema<{
213
- id: ObjectId;
214
- } & Record<string, unknown>, {
215
- id: string;
216
- } & Record<string, unknown>>;
217
- /**
218
- * Type alias for any ECHO entity schema (object or relation).
219
- * Use this in type annotations for schema parameters.
220
- */
221
- type Any = Obj.Any | Relation.Any;
222
- }
126
+ /**
127
+ * Type alias for any ECHO entity schema (object or relation).
128
+ * Use this in type annotations for schema parameters.
129
+ */
130
+ export type AnyEntity = AnyObj | AnyRelation;
223
131
  /**
224
132
  * Type guard to check if a schema is an object schema.
225
133
  * NOTE: This checks SCHEMAS, not instances. Use Obj.isObject for instances.
226
134
  */
227
- export declare const isObjectSchema: (schema: Entity.Any) => schema is Obj.Any;
135
+ export declare const isObjectSchema: (schema: AnyEntity) => schema is AnyObj;
228
136
  /**
229
137
  * Type guard to check if a schema is a relation schema.
230
138
  * NOTE: This checks SCHEMAS, not instances. Use Relation.isRelation for instances.
231
139
  */
232
- export declare const isRelationSchema: (schema: Entity.Any) => schema is Relation.Any;
233
- /**
234
- * Return type of the `Ref` schema constructor.
235
- *
236
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
237
- * See Effect's note on interface types.
238
- */
239
- export interface ref<TargetSchema extends Schema.Schema.Any> extends RefSchema<Schema.Schema.Type<TargetSchema>> {
240
- }
241
- /**
242
- * Factory function to create a Ref schema for the given target schema.
243
- * Use this in schema definitions to declare reference fields.
244
- *
245
- * @example
246
- * ```ts
247
- * const Task = Schema.Struct({
248
- * assignee: Type.Ref(Person), // Creates a Ref schema
249
- * }).pipe(Type.object({ typename: 'Task', version: '0.1.0' }));
250
- * ```
251
- */
252
- export declare const Ref: RefFn;
140
+ export declare const isRelationSchema: (schema: AnyEntity) => schema is AnyRelation;
253
141
  /**
254
- * TypeScript type for a Ref schema.
255
- * This is the type of the SCHEMA itself, not the runtime ref instance.
256
- * For the instance type, use `Ref.Ref<T>` from the Ref module.
257
- *
258
- * @example
259
- * ```ts
260
- * // Schema type annotation (rarely needed, usually inferred):
261
- * const refSchema: Type.Ref<Task> = Type.Ref(Task);
262
- *
263
- * // Instance type annotation (use Ref.Ref instead):
264
- * const refInstance: Ref.Ref<Task> = Ref.make(task);
265
- * ```
142
+ * Type that represents any Ref schema (with unknown target type).
143
+ * This is a schema type, not an instance type.
266
144
  */
267
- export interface Ref<T> extends Schema.SchemaClass<Ref$<T>, EncodedReference> {
268
- }
269
- export declare namespace Ref {
270
- /**
271
- * Type that represents any Ref schema (with unknown target type).
272
- * This is a schema type, not an instance type.
273
- */
274
- type Any = Schema.Schema<Ref$<any>, EncodedReference>;
275
- }
145
+ export type AnyRef = Schema.Schema<internal.Ref<any>, EncodedReference>;
276
146
  /**
277
147
  * Gets the full DXN of the schema.
278
148
  * Will include the version if it's a `type` DXN.
279
- * @example "dxn:example.com/type/Person:0.1.0"
149
+ * @example "dxn:com.example.type.person:0.1.0"
280
150
  * @example "dxn:echo:SSSSSSSSSS:XXXXXXXXXXXXX"
281
151
  */
282
- export declare const getDXN: (schema: Entity.Any) => DXN | undefined;
152
+ export declare const getDXN: (schema: AnyEntity) => DXN | undefined;
283
153
  /**
284
154
  * @param schema - Schema to get the typename from.
285
- * @returns The typename of the schema. Example: `example.com/type/Person`.
155
+ * @returns The typename of the schema. Example: `com.example.type.person`.
286
156
  */
287
- export declare const getTypename: (schema: Entity.Any) => string;
157
+ export declare const getTypename: (schema: AnyEntity) => string;
288
158
  /**
289
159
  * Gets the version of the schema.
290
160
  * @example 0.1.0
291
161
  */
292
- export declare const getVersion: (schema: Entity.Any) => string;
162
+ export declare const getVersion: (schema: AnyEntity) => string;
293
163
  /**
294
164
  * @returns True if the schema is mutable.
295
165
  */
296
- export declare const isMutable: (schema: Schema.Schema.AnyNoContext) => schema is EchoSchema;
166
+ export declare const isMutable: (schema: Schema.Schema.AnyNoContext) => schema is typeInternal.EchoSchema;
297
167
  /**
298
168
  * ECHO type metadata.
299
169
  */
300
- export type Meta = TypeAnnotation;
170
+ export type Meta = internal.TypeAnnotation;
301
171
  /**
302
172
  * Gets the meta data of the schema.
303
173
  */
304
- export declare const getMeta: (schema: Entity.Any) => Meta | undefined;
174
+ export declare const getMeta: (schema: AnyEntity) => Meta | undefined;
175
+ export {};
305
176
  //# sourceMappingURL=Type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/Type.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,KAAK,KAAK,OAAO,MAAM,UAAU,CAAC;AACzC,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,SAAS,EACd,KAAK,aAAa,EAGlB,KAAK,yBAAyB,EAC9B,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,GAAG,IAAI,IAAI,EACX,KAAK,KAAK,EACV,KAAK,SAAS,EACd,YAAY,EACZ,KAAK,cAAc,EACnB,KAAK,QAAQ,EAMb,cAAc,EACd,YAAY,EACb,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,KAAK,SAAS,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC;AAExC;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;AAMvG;;;GAGG;AACH,KAAK,cAAc,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI;IACvD,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;CAC5B,CAAC;AAEF;;GAEG;AACH,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC/B,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAChC;AAcD,KAAK,aAAa,GAAG,MAAM,CAAC,MAAM,CAChC,GAAG,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,aAAa,EAC5E;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,aAAa,CAC/B,GACC,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,GACjC,QAAQ,CAAC;AAYX;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,eAAO,MAAM,GAAG,EAAE,aAEY,CAAC;AAE/B;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CACtF,SAAQ,QAAQ,EACd,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,EACjC,MAAM,CAAC,cAAc,CACnB,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,EACd,OAAO,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAC9C,MAAM,CAAC,QAAQ,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,EAC5C,KAAK,CACN;IACH;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;GAKG;AACH,KAAK,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG;IACnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,yBAAiB,GAAG,CAAC;IACnB;;;OAGG;IACH,KAAY,GAAG,GAAG,gBAAgB,CAAC;CACpC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;CACvE,CAAC;AAM5B,eAAO,MAAM,cAAc,EAAE,GAAG,CAAC,gBAAgB,CAA2B,CAAC;AAE7E,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,cAAc,CAAC;CAAG;AAEpF,OAAO,EAAE,UAAU,IAAI,WAAW,EAAE,CAAC;AAOrC,KAAK,kBAAkB,GAAG,MAAM,CAAC,MAAM,CACrC;IAAE,EAAE,EAAE,QAAQ,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1C;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACzC,GACC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,GACnC,QAAQ,CAAC;AAiBX;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,QAAQ,EAAE,kBAEY,CAAC;AAEpC;;;;;GAKG;AACH,MAAM,WAAW,QAAQ,CACvB,CAAC,GAAG,GAAG,EACP,MAAM,GAAG,GAAG,EACZ,MAAM,GAAG,GAAG,EACZ,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAC1D,SAAQ,QAAQ,EACd,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,EACnC,MAAM,CAAC,cAAc,CACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACnC,OAAO,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,EACrF,MAAM,CAAC,QAAQ,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,EACjD,KAAK,CACN;IACH;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;GAKG;AACH,KAAK,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG;IACrD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,yBAAiB,QAAQ,CAAC;IACxB;;;OAGG;IACH,KAAY,GAAG,GAAG,kBAAkB,CAAC;IAErC;;OAEG;IACH,KAAY,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAEpF;;OAEG;IACH,KAAY,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAEpF,KAAY,SAAS,CAAC,MAAM,EAAE,MAAM,IAAI;QACtC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAC3B,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,QAAQ,EAAE;IACrB,CAAC,YAAY,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,YAAY,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAC/F,IAAI,EAAE,yBAAyB,CAAC,YAAY,EAAE,YAAY,CAAC,GAC1D,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAChC,IAAI,EAAE,IAAI,KACP,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;CACjF,CAAC;AAM9B,yBAAiB,MAAM,CAAC;IACtB;;;;;;;;;;OAUG;IACI,MAAM,GAAG,EAAE,MAAM,CAAC,MAAM,CAC7B;QAAE,EAAE,EAAE,QAAQ,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1C;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACX,CAAC;IAEhC;;;OAGG;IACH,KAAY,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;CAC1C;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,CAAC,GAAG,KAAG,MAAM,IAAI,GAAG,CAAC,GAEjE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,CAAC,GAAG,KAAG,MAAM,IAAI,QAAQ,CAAC,GAExE,CAAC;AAcF;;;;;GAKG;AACH,MAAM,WAAW,GAAG,CAAC,YAAY,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,CAAE,SAAQ,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;CAAG;AAEnH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,GAAG,EAAE,KAAY,CAAC;AAE/B;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,GAAG,CAAC,CAAC,CAAE,SAAQ,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC;CAAG;AAEhF,yBAAiB,GAAG,CAAC;IACnB;;;OAGG;IACH,KAAY,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC,CAAC;CAC9D;AAMD;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,QAAQ,MAAM,CAAC,GAAG,KAAG,GAAG,GAAG,SAEjD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,CAAC,GAAG,KAAG,MAIhD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,QAAQ,MAAM,CAAC,GAAG,KAAG,MAI/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,8DAAa,CAAC;AAEpC;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,cAAc,CAAC;AAElC;;GAEG;AACH,eAAO,MAAM,OAAO,GAAI,QAAQ,MAAM,CAAC,GAAG,KAAG,IAAI,GAAG,SAEnD,CAAC"}
1
+ {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/Type.ts"],"names":[],"mappings":"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"}
@@ -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;AAIxC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAE7B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAG/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":""}
@@ -4,6 +4,7 @@ export * as Annotation from './Annotation';
4
4
  export * as Database from './Database';
5
5
  export * as Entity from './Entity';
6
6
  export * as Err from './Err';
7
+ export * as Feed from './Feed';
7
8
  export * as Filter from './Filter';
8
9
  export * as Format from './Format';
9
10
  export * as Hypergraph from './Hypergraph';
@@ -18,4 +19,8 @@ export * as Relation from './Relation';
18
19
  export * as SchemaRegistry from './SchemaRegistry';
19
20
  export * as Tag from './Tag';
20
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';
21
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,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,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"}
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"}
@@ -2,7 +2,9 @@ import * as Schema from 'effect/Schema';
2
2
  import * as SchemaAST from 'effect/SchemaAST';
3
3
  import { DXN } from '@dxos/keys';
4
4
  import { type Primitive } from '@dxos/util';
5
- 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';
6
8
  /**
7
9
  * Sets the path for the field.
8
10
  * @param path Data source path in the json path format. This is the field path in the source object.
@@ -28,7 +30,7 @@ export declare const getSchemaDXN: (schema: Schema.Schema.All) => DXN | undefine
28
30
  export declare const getTypeDXNFromSpecifier: (input: Schema.Schema.All | string) => DXN;
29
31
  /**
30
32
  * Fully qualified globally unique typename.
31
- * Example: `dxos.org/type/Message`
33
+ * Example: `org.dxos.type.message`
32
34
  */
33
35
  export declare const TypenameSchema: Schema.refine<string, typeof Schema.String>;
34
36
  /**
@@ -102,7 +104,7 @@ export declare const getPropertyMetaAnnotation: <T>(prop: SchemaAST.PropertySign
102
104
  */
103
105
  export declare const ReferenceAnnotationId: unique symbol;
104
106
  export type ReferenceAnnotationValue = TypeAnnotation;
105
- export declare const ReferenceAnnotation: import("./util").AnnotationHelper<TypeAnnotation>;
107
+ export declare const ReferenceAnnotation: AnnotationHelper<TypeAnnotation>;
106
108
  /**
107
109
  * SchemaMeta.
108
110
  */
@@ -114,16 +116,17 @@ export type SchemaMeta = TypeMeta & {
114
116
  * Identifies a schema as a schema for a hidden system type.
115
117
  */
116
118
  export declare const SystemTypeAnnotationId: unique symbol;
117
- export declare const SystemTypeAnnotation: import("./util").AnnotationHelper<boolean>;
119
+ export declare const SystemTypeAnnotation: AnnotationHelper<boolean>;
118
120
  /**
119
121
  * Identifies label property or JSON path expression.
120
122
  * Either a string or an array of strings representing field accessors each matched in priority order.
121
123
  */
122
124
  export declare const LabelAnnotationId: unique symbol;
123
- export declare const LabelAnnotation: import("./util").AnnotationHelper<string[]>;
125
+ export declare const LabelAnnotation: AnnotationHelper<string[]>;
124
126
  /**
125
127
  * Returns the label for a given object based on {@link LabelAnnotationId}.
126
128
  * Lower-level version that requires explicit schema parameter.
129
+ * Skips empty strings and whitespace-only strings, continuing to the next field.
127
130
  */
128
131
  export declare const getLabelWithSchema: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>) => string | undefined;
129
132
  /**
@@ -136,7 +139,7 @@ export declare const setLabelWithSchema: <S extends Schema.Schema.Any>(schema: S
136
139
  * A string representing field accessor.
137
140
  */
138
141
  export declare const DescriptionAnnotationId: unique symbol;
139
- export declare const DescriptionAnnotation: import("./util").AnnotationHelper<string>;
142
+ export declare const DescriptionAnnotation: AnnotationHelper<string>;
140
143
  /**
141
144
  * Returns the description for a given object based on {@link DescriptionAnnotationId}.
142
145
  * Lower-level version that requires explicit schema parameter.
@@ -152,7 +155,7 @@ export declare const setDescriptionWithSchema: <S extends Schema.Schema.Any>(sch
152
155
  * By default, all properties are included in forms, so this is opt-out.
153
156
  */
154
157
  export declare const FormInputAnnotationId: unique symbol;
155
- export declare const FormInputAnnotation: import("./util").AnnotationHelper<boolean>;
158
+ export declare const FormInputAnnotation: AnnotationHelper<boolean>;
156
159
  /**
157
160
  * Default field to be used on referenced schema to lookup the value.
158
161
  */
@@ -166,5 +169,63 @@ export type GeneratorAnnotationValue = string | {
166
169
  args?: any[];
167
170
  probability?: number;
168
171
  };
169
- 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
+ }
206
+ /**
207
+ * Icon to render in the UI.
208
+ */
209
+ export declare const IconAnnotation: AnnotationHelper<IconAnnotation>;
210
+ /**
211
+ * Get the label of an entity.
212
+ * Accepts both reactive entities and snapshots.
213
+ */
214
+ export declare const getLabel: (entity: AnyProperties) => string | undefined;
215
+ /**
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.
228
+ */
229
+ export declare const setDescription: (entity: Mutable<AnyProperties>, description: string) => void;
230
+ export {};
170
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"}
@@ -1,4 +1,4 @@
1
- import type { AnyEntity } from '../types';
1
+ import type { AnyEntity } from '../common/types';
2
2
  /**
3
3
  * String comparison helper for sorting.
4
4
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sorting.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Annotation/sorting.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIjD;;GAEG;AACH,eAAO,MAAM,OAAO,GAAI,IAAI,MAAM,EAAE,IAAI,MAAM,KAAG,MAQhD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC;AAEjF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,UAA8E,CAAC;AAEzG;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,UAAoF,CAAC;AAElH;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,SAAS,EAAE,GAAG,aAAa,UAAU,CAAC,CAAC,CAAC,EAAE,KAAG,UAAU,CAAC,CAAC,CAUvF,CAAC"}