@dxos/echo 0.8.4-main.d05539e30a → 0.8.4-main.d9fc60f731

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 (378) hide show
  1. package/README.md +4 -4
  2. package/dist/lib/neutral/Annotation.mjs +27 -6
  3. package/dist/lib/neutral/Database.mjs +6 -11
  4. package/dist/lib/neutral/Entity.mjs +25 -16
  5. package/dist/lib/neutral/Err.mjs +3 -3
  6. package/dist/lib/neutral/Feed.mjs +19 -17
  7. package/dist/lib/neutral/Filter.mjs +13 -13
  8. package/dist/lib/neutral/Format.mjs +23 -3
  9. package/dist/lib/neutral/JsonSchema.mjs +7 -8
  10. package/dist/lib/neutral/Key.mjs +9 -5
  11. package/dist/lib/neutral/Migration.mjs +11 -10
  12. package/dist/lib/neutral/Obj.mjs +21 -18
  13. package/dist/lib/neutral/Query.mjs +17 -17
  14. package/dist/lib/neutral/QueryResult.mjs +1 -1
  15. package/dist/lib/neutral/Ref.mjs +10 -11
  16. package/dist/lib/neutral/Registry.mjs +14 -0
  17. package/dist/lib/neutral/Relation.mjs +24 -23
  18. package/dist/lib/neutral/Scope.mjs +12 -0
  19. package/dist/lib/neutral/Tag.mjs +17 -14
  20. package/dist/lib/neutral/Type.mjs +52 -26
  21. package/dist/lib/neutral/chunk-3DKP2EIN.mjs +31 -0
  22. package/dist/lib/neutral/chunk-3DKP2EIN.mjs.map +7 -0
  23. package/dist/lib/neutral/chunk-4BB4MFCN.mjs +154 -0
  24. package/dist/lib/neutral/chunk-4BB4MFCN.mjs.map +7 -0
  25. package/dist/lib/neutral/{chunk-PT37DG2F.mjs → chunk-4SFPZJVA.mjs} +82 -74
  26. package/dist/lib/neutral/chunk-4SFPZJVA.mjs.map +7 -0
  27. package/dist/lib/neutral/{chunk-APHSOTIX.mjs → chunk-4Z6GET2X.mjs} +3 -3
  28. package/dist/lib/neutral/{chunk-APHSOTIX.mjs.map → chunk-4Z6GET2X.mjs.map} +2 -2
  29. package/dist/lib/neutral/{chunk-7RVZT53K.mjs → chunk-7LOUAPYZ.mjs} +9 -5
  30. package/dist/lib/neutral/chunk-7LOUAPYZ.mjs.map +7 -0
  31. package/dist/lib/neutral/{chunk-BMB7IHGB.mjs → chunk-7OAFN3OX.mjs} +70 -57
  32. package/dist/lib/neutral/chunk-7OAFN3OX.mjs.map +7 -0
  33. package/dist/lib/neutral/{chunk-MLS7U7AT.mjs → chunk-7PRCIDHH.mjs} +41 -28
  34. package/dist/lib/neutral/chunk-7PRCIDHH.mjs.map +7 -0
  35. package/dist/lib/neutral/{chunk-ZISMEVKD.mjs → chunk-BBFJWWAV.mjs} +6 -6
  36. package/dist/lib/neutral/chunk-BBFJWWAV.mjs.map +7 -0
  37. package/dist/lib/neutral/{chunk-ZFACXBY6.mjs → chunk-BDQGMDIX.mjs} +30 -34
  38. package/dist/lib/neutral/chunk-BDQGMDIX.mjs.map +7 -0
  39. package/dist/lib/neutral/chunk-CGTI5MXO.mjs +36 -0
  40. package/dist/lib/neutral/chunk-CGTI5MXO.mjs.map +7 -0
  41. package/dist/lib/neutral/{chunk-V72DY6LU.mjs → chunk-DKLUHO4T.mjs} +1 -1
  42. package/dist/lib/neutral/chunk-DKLUHO4T.mjs.map +7 -0
  43. package/dist/lib/neutral/chunk-DMN2CKPX.mjs +93 -0
  44. package/dist/lib/neutral/chunk-DMN2CKPX.mjs.map +7 -0
  45. package/dist/lib/neutral/{chunk-QRZ2I3ZM.mjs → chunk-G6CFWUYH.mjs} +2 -2
  46. package/dist/lib/neutral/chunk-H26LSXVJ.mjs +653 -0
  47. package/dist/lib/neutral/chunk-H26LSXVJ.mjs.map +7 -0
  48. package/dist/lib/neutral/{chunk-N7VOEPSV.mjs → chunk-J3MNM65T.mjs} +9 -9
  49. package/dist/lib/neutral/chunk-J3MNM65T.mjs.map +7 -0
  50. package/dist/lib/neutral/chunk-JE7AOSWF.mjs +247 -0
  51. package/dist/lib/neutral/chunk-JE7AOSWF.mjs.map +7 -0
  52. package/dist/lib/neutral/chunk-LAF3LSWI.mjs +379 -0
  53. package/dist/lib/neutral/chunk-LAF3LSWI.mjs.map +7 -0
  54. package/dist/lib/neutral/chunk-LMNRFOVB.mjs +108 -0
  55. package/dist/lib/neutral/chunk-LMNRFOVB.mjs.map +7 -0
  56. package/dist/lib/neutral/{chunk-N4B7FHQT.mjs → chunk-O6BH7EPN.mjs} +30 -3
  57. package/dist/lib/neutral/chunk-O6BH7EPN.mjs.map +7 -0
  58. package/dist/lib/neutral/{chunk-Q7ZL2P5H.mjs → chunk-OIYW7R2G.mjs} +62 -46
  59. package/dist/lib/neutral/chunk-OIYW7R2G.mjs.map +7 -0
  60. package/dist/lib/neutral/{chunk-G54OX4IX.mjs → chunk-OYUG4FHF.mjs} +527 -847
  61. package/dist/lib/neutral/chunk-OYUG4FHF.mjs.map +7 -0
  62. package/dist/lib/neutral/{chunk-J54QMAKF.mjs → chunk-Q5FKCVBC.mjs} +64 -59
  63. package/dist/lib/neutral/chunk-Q5FKCVBC.mjs.map +7 -0
  64. package/dist/lib/neutral/{chunk-FIWO2FZK.mjs → chunk-Q62IHV2N.mjs} +12 -7
  65. package/dist/lib/neutral/chunk-Q62IHV2N.mjs.map +7 -0
  66. package/dist/lib/neutral/{chunk-SCPFDS2E.mjs → chunk-QVJDDG44.mjs} +65 -34
  67. package/dist/lib/neutral/chunk-QVJDDG44.mjs.map +7 -0
  68. package/dist/lib/neutral/{chunk-TRPZU2HV.mjs → chunk-TFEWTY5A.mjs} +155 -129
  69. package/dist/lib/neutral/chunk-TFEWTY5A.mjs.map +7 -0
  70. package/dist/lib/neutral/{chunk-44HT3MEC.mjs → chunk-VKWOFXT2.mjs} +22 -2
  71. package/dist/lib/neutral/{chunk-44HT3MEC.mjs.map → chunk-VKWOFXT2.mjs.map} +1 -1
  72. package/dist/lib/neutral/{chunk-APJKDGFL.mjs → chunk-ZACMEAYV.mjs} +24 -24
  73. package/dist/lib/neutral/chunk-ZACMEAYV.mjs.map +7 -0
  74. package/dist/lib/neutral/index.mjs +50 -40
  75. package/dist/lib/neutral/internal/index.mjs +125 -64
  76. package/dist/lib/neutral/meta.json +1 -1
  77. package/dist/lib/neutral/testing/index.mjs +88 -99
  78. package/dist/lib/neutral/testing/index.mjs.map +3 -3
  79. package/dist/types/src/Annotation.d.ts +108 -4
  80. package/dist/types/src/Annotation.d.ts.map +1 -1
  81. package/dist/types/src/Annotation.test.d.ts +2 -0
  82. package/dist/types/src/Annotation.test.d.ts.map +1 -0
  83. package/dist/types/src/Collection.d.ts +2 -3
  84. package/dist/types/src/Collection.d.ts.map +1 -1
  85. package/dist/types/src/Database.d.ts +50 -30
  86. package/dist/types/src/Database.d.ts.map +1 -1
  87. package/dist/types/src/Dataset.d.ts +16 -6
  88. package/dist/types/src/Dataset.d.ts.map +1 -1
  89. package/dist/types/src/Entity.d.ts +89 -19
  90. package/dist/types/src/Entity.d.ts.map +1 -1
  91. package/dist/types/src/Err.d.ts +9 -9
  92. package/dist/types/src/Err.d.ts.map +1 -1
  93. package/dist/types/src/Feed.d.ts +35 -12
  94. package/dist/types/src/Feed.d.ts.map +1 -1
  95. package/dist/types/src/Filter.d.ts +21 -8
  96. package/dist/types/src/Filter.d.ts.map +1 -1
  97. package/dist/types/src/Hypergraph.d.ts +13 -8
  98. package/dist/types/src/Hypergraph.d.ts.map +1 -1
  99. package/dist/types/src/Json.d.ts.map +1 -1
  100. package/dist/types/src/JsonSchema.d.ts +1 -1
  101. package/dist/types/src/JsonSchema.d.ts.map +1 -1
  102. package/dist/types/src/Key.d.ts +1 -1
  103. package/dist/types/src/Key.d.ts.map +1 -1
  104. package/dist/types/src/Migration.d.ts +15 -12
  105. package/dist/types/src/Migration.d.ts.map +1 -1
  106. package/dist/types/src/Obj.d.ts +69 -40
  107. package/dist/types/src/Obj.d.ts.map +1 -1
  108. package/dist/types/src/Query.d.ts +24 -10
  109. package/dist/types/src/Query.d.ts.map +1 -1
  110. package/dist/types/src/QueryResult.d.ts +9 -0
  111. package/dist/types/src/QueryResult.d.ts.map +1 -1
  112. package/dist/types/src/Ref.d.ts +15 -8
  113. package/dist/types/src/Ref.d.ts.map +1 -1
  114. package/dist/types/src/Registry.d.ts +131 -0
  115. package/dist/types/src/Registry.d.ts.map +1 -0
  116. package/dist/types/src/Relation.d.ts +55 -26
  117. package/dist/types/src/Relation.d.ts.map +1 -1
  118. package/dist/types/src/Scope.d.ts +34 -0
  119. package/dist/types/src/Scope.d.ts.map +1 -0
  120. package/dist/types/src/StateMap.d.ts +32 -0
  121. package/dist/types/src/StateMap.d.ts.map +1 -0
  122. package/dist/types/src/StateMap.test.d.ts +2 -0
  123. package/dist/types/src/StateMap.test.d.ts.map +1 -0
  124. package/dist/types/src/Tag.d.ts +19 -3
  125. package/dist/types/src/Tag.d.ts.map +1 -1
  126. package/dist/types/src/TagIndex.d.ts +36 -0
  127. package/dist/types/src/TagIndex.d.ts.map +1 -0
  128. package/dist/types/src/TagIndex.test.d.ts +2 -0
  129. package/dist/types/src/TagIndex.test.d.ts.map +1 -0
  130. package/dist/types/src/Tagging.d.ts +31 -0
  131. package/dist/types/src/Tagging.d.ts.map +1 -0
  132. package/dist/types/src/Type.d.ts +356 -95
  133. package/dist/types/src/Type.d.ts.map +1 -1
  134. package/dist/types/src/View.d.ts +1 -4
  135. package/dist/types/src/View.d.ts.map +1 -1
  136. package/dist/types/src/index.d.ts +6 -3
  137. package/dist/types/src/index.d.ts.map +1 -1
  138. package/dist/types/src/internal/Annotation/annotations.d.ts +68 -36
  139. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -1
  140. package/dist/types/src/internal/Annotation/dictionary.d.ts +24 -0
  141. package/dist/types/src/internal/Annotation/dictionary.d.ts.map +1 -0
  142. package/dist/types/src/internal/Annotation/entity-dictionary.d.ts +14 -0
  143. package/dist/types/src/internal/Annotation/entity-dictionary.d.ts.map +1 -0
  144. package/dist/types/src/internal/Annotation/index.d.ts +4 -2
  145. package/dist/types/src/internal/Annotation/index.d.ts.map +1 -1
  146. package/dist/types/src/internal/Annotation/util.d.ts +13 -4
  147. package/dist/types/src/internal/Annotation/util.d.ts.map +1 -1
  148. package/dist/types/src/internal/Entity/api.d.ts +3 -3
  149. package/dist/types/src/internal/Entity/api.d.ts.map +1 -1
  150. package/dist/types/src/internal/Entity/entity.d.ts +72 -8
  151. package/dist/types/src/internal/Entity/entity.d.ts.map +1 -1
  152. package/dist/types/src/internal/Entity/guard.d.ts +10 -0
  153. package/dist/types/src/internal/Entity/guard.d.ts.map +1 -0
  154. package/dist/types/src/internal/Entity/index.d.ts +2 -0
  155. package/dist/types/src/internal/Entity/index.d.ts.map +1 -1
  156. package/dist/types/src/internal/Entity/model.d.ts +18 -17
  157. package/dist/types/src/internal/Entity/model.d.ts.map +1 -1
  158. package/dist/types/src/internal/Entity/object.d.ts +3 -3
  159. package/dist/types/src/internal/Entity/object.d.ts.map +1 -1
  160. package/dist/types/src/internal/Entity/relation.d.ts +30 -7
  161. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -1
  162. package/dist/types/src/internal/Entity/type-kind.d.ts +24 -0
  163. package/dist/types/src/internal/Entity/type-kind.d.ts.map +1 -0
  164. package/dist/types/src/internal/Entity/type-uri.d.ts +25 -0
  165. package/dist/types/src/internal/Entity/type-uri.d.ts.map +1 -0
  166. package/dist/types/src/internal/Format/date.d.ts.map +1 -1
  167. package/dist/types/src/internal/Format/format.d.ts +3 -2
  168. package/dist/types/src/internal/Format/format.d.ts.map +1 -1
  169. package/dist/types/src/internal/Format/index.d.ts +2 -2
  170. package/dist/types/src/internal/Format/index.d.ts.map +1 -1
  171. package/dist/types/src/internal/Format/object.d.ts +3 -1
  172. package/dist/types/src/internal/Format/object.d.ts.map +1 -1
  173. package/dist/types/src/internal/JsonSchema/json-schema.d.ts +2 -1
  174. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -1
  175. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -1
  176. package/dist/types/src/internal/Obj/create-object.d.ts +11 -12
  177. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -1
  178. package/dist/types/src/internal/Obj/index.d.ts +0 -1
  179. package/dist/types/src/internal/Obj/index.d.ts.map +1 -1
  180. package/dist/types/src/internal/Obj/json-serializer.d.ts +8 -8
  181. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -1
  182. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -1
  183. package/dist/types/src/internal/Obj/typed-object.d.ts +1 -1
  184. package/dist/types/src/internal/Query.d.ts.map +1 -1
  185. package/dist/types/src/internal/Ref/ref-array.d.ts +2 -2
  186. package/dist/types/src/internal/Ref/ref.d.ts +29 -19
  187. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -1
  188. package/dist/types/src/internal/Type/index.d.ts +1 -2
  189. package/dist/types/src/internal/Type/index.d.ts.map +1 -1
  190. package/dist/types/src/internal/Type/manipulation.d.ts +0 -1
  191. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -1
  192. package/dist/types/src/internal/Type/type-schema.d.ts +52 -0
  193. package/dist/types/src/internal/Type/type-schema.d.ts.map +1 -0
  194. package/dist/types/src/internal/common/api/meta.d.ts +11 -8
  195. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -1
  196. package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -1
  197. package/dist/types/src/internal/common/proxy/make-object.d.ts +11 -5
  198. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -1
  199. package/dist/types/src/internal/common/proxy/typed-handler.d.ts +18 -2
  200. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -1
  201. package/dist/types/src/internal/common/types/base.d.ts +4 -4
  202. package/dist/types/src/internal/common/types/entity.d.ts +59 -2
  203. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -1
  204. package/dist/types/src/internal/common/types/index.d.ts +1 -1
  205. package/dist/types/src/internal/common/types/index.d.ts.map +1 -1
  206. package/dist/types/src/internal/common/types/meta.d.ts +13 -7
  207. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -1
  208. package/dist/types/src/internal/common/types/model-symbols.d.ts +8 -4
  209. package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -1
  210. package/dist/types/src/internal/common/types/typename.d.ts +7 -0
  211. package/dist/types/src/internal/common/types/typename.d.ts.map +1 -1
  212. package/dist/types/src/internal/common/types/well-known-types.d.ts +11 -0
  213. package/dist/types/src/internal/common/types/well-known-types.d.ts.map +1 -0
  214. package/dist/types/src/internal/index.d.ts +1 -0
  215. package/dist/types/src/internal/index.d.ts.map +1 -1
  216. package/dist/types/src/testing/test-schema.d.ts +32 -38
  217. package/dist/types/src/testing/test-schema.d.ts.map +1 -1
  218. package/dist/types/src/testing/util.d.ts +5 -3
  219. package/dist/types/src/testing/util.d.ts.map +1 -1
  220. package/dist/types/tsconfig.tsbuildinfo +1 -1
  221. package/package.json +21 -23
  222. package/src/Annotation.test.ts +439 -0
  223. package/src/Annotation.ts +151 -4
  224. package/src/Collection.ts +5 -9
  225. package/src/Database.ts +86 -61
  226. package/src/Dataset.ts +10 -2
  227. package/src/Entity.test.ts +116 -6
  228. package/src/Entity.ts +116 -23
  229. package/src/Err.ts +4 -4
  230. package/src/Feed.ts +57 -40
  231. package/src/Filter.ts +49 -27
  232. package/src/Hypergraph.ts +13 -8
  233. package/src/Json.test.ts +4 -4
  234. package/src/Json.ts +7 -6
  235. package/src/Key.ts +1 -1
  236. package/src/Migration.ts +27 -19
  237. package/src/Obj.test.ts +19 -8
  238. package/src/Obj.ts +131 -70
  239. package/src/Query.test.ts +147 -151
  240. package/src/Query.ts +133 -75
  241. package/src/QueryResult.ts +11 -0
  242. package/src/Ref.ts +21 -5
  243. package/src/Registry.ts +155 -0
  244. package/src/Relation.test.ts +10 -10
  245. package/src/Relation.ts +89 -52
  246. package/src/Scope.ts +50 -0
  247. package/src/StateMap.test.ts +56 -0
  248. package/src/StateMap.ts +99 -0
  249. package/src/Tag.md +88 -0
  250. package/src/Tag.ts +49 -6
  251. package/src/TagIndex.test.ts +57 -0
  252. package/src/TagIndex.ts +110 -0
  253. package/src/Tagging.ts +83 -0
  254. package/src/Type.test.ts +223 -18
  255. package/src/Type.ts +601 -131
  256. package/src/View.ts +10 -19
  257. package/src/index.ts +6 -4
  258. package/src/internal/Annotation/annotations.test.ts +31 -11
  259. package/src/internal/Annotation/annotations.ts +122 -103
  260. package/src/internal/Annotation/dictionary.ts +47 -0
  261. package/src/internal/Annotation/entity-dictionary.ts +40 -0
  262. package/src/internal/Annotation/index.ts +4 -2
  263. package/src/internal/Annotation/util.ts +17 -8
  264. package/src/internal/Entity/api.ts +7 -7
  265. package/src/internal/Entity/entity.ts +196 -47
  266. package/src/internal/Entity/guard.ts +26 -0
  267. package/src/internal/Entity/index.ts +2 -0
  268. package/src/internal/Entity/model.ts +35 -28
  269. package/src/internal/Entity/object.ts +21 -5
  270. package/src/internal/Entity/relation.ts +68 -34
  271. package/src/internal/Entity/type-kind.ts +75 -0
  272. package/src/internal/Entity/type-uri.ts +87 -0
  273. package/src/internal/Entity/util.ts +10 -9
  274. package/src/internal/Format/date.ts +0 -4
  275. package/src/internal/Format/format.test.ts +21 -0
  276. package/src/internal/Format/index.ts +2 -3
  277. package/src/internal/Format/object.ts +21 -4
  278. package/src/internal/Format/types.ts +1 -1
  279. package/src/internal/JsonSchema/annotations.ts +1 -1
  280. package/src/internal/JsonSchema/json-schema.test.ts +54 -140
  281. package/src/internal/JsonSchema/json-schema.ts +44 -30
  282. package/src/internal/Obj/clone.ts +9 -4
  283. package/src/internal/Obj/create-object.test.ts +12 -10
  284. package/src/internal/Obj/create-object.ts +67 -22
  285. package/src/internal/Obj/index.ts +0 -1
  286. package/src/internal/Obj/inspect.ts +4 -3
  287. package/src/internal/Obj/json-serializer.test.ts +100 -21
  288. package/src/internal/Obj/json-serializer.ts +93 -38
  289. package/src/internal/Obj/set-value.test.ts +7 -30
  290. package/src/internal/Obj/snapshot.ts +11 -4
  291. package/src/internal/Obj/typed-object.test.ts +9 -11
  292. package/src/internal/Obj/typed-object.ts +1 -1
  293. package/src/internal/Query.ts +14 -11
  294. package/src/internal/Ref/ref-array.ts +3 -3
  295. package/src/internal/Ref/ref.test.ts +17 -26
  296. package/src/internal/Ref/ref.ts +107 -59
  297. package/src/internal/Type/compose.test.ts +3 -1
  298. package/src/internal/Type/index.ts +1 -2
  299. package/src/internal/Type/manipulation.ts +0 -25
  300. package/src/internal/Type/type-schema.ts +60 -0
  301. package/src/internal/common/README.md +1 -1
  302. package/src/internal/common/api/meta.ts +16 -14
  303. package/src/internal/common/proxy/change.test.ts +35 -27
  304. package/src/internal/common/proxy/handler.test.ts +1 -1
  305. package/src/internal/common/proxy/json-serializer.ts +26 -16
  306. package/src/internal/common/proxy/make-object.ts +43 -20
  307. package/src/internal/common/proxy/ownership.ts +2 -2
  308. package/src/internal/common/proxy/schema.test.ts +48 -86
  309. package/src/internal/common/proxy/typed-handler.test.ts +12 -11
  310. package/src/internal/common/proxy/typed-handler.ts +71 -9
  311. package/src/internal/common/proxy/typed-object.test.ts +15 -27
  312. package/src/internal/common/types/base.ts +4 -4
  313. package/src/internal/common/types/entity.ts +80 -1
  314. package/src/internal/common/types/index.ts +6 -1
  315. package/src/internal/common/types/meta.ts +37 -14
  316. package/src/internal/common/types/model-symbols.ts +16 -4
  317. package/src/internal/common/types/typename.ts +39 -3
  318. package/src/internal/common/types/well-known-types.ts +15 -0
  319. package/src/internal/index.ts +5 -0
  320. package/src/testing/api.test.ts +15 -9
  321. package/src/testing/test-data.ts +24 -24
  322. package/src/testing/test-schema.ts +22 -58
  323. package/src/testing/util.ts +14 -11
  324. package/dist/lib/neutral/Extension.mjs +0 -18
  325. package/dist/lib/neutral/SchemaRegistry.mjs +0 -2
  326. package/dist/lib/neutral/chunk-5SL5LDLD.mjs +0 -47
  327. package/dist/lib/neutral/chunk-5SL5LDLD.mjs.map +0 -7
  328. package/dist/lib/neutral/chunk-7RVZT53K.mjs.map +0 -7
  329. package/dist/lib/neutral/chunk-APJKDGFL.mjs.map +0 -7
  330. package/dist/lib/neutral/chunk-BICZKPQG.mjs +0 -7
  331. package/dist/lib/neutral/chunk-BICZKPQG.mjs.map +0 -7
  332. package/dist/lib/neutral/chunk-BMB7IHGB.mjs.map +0 -7
  333. package/dist/lib/neutral/chunk-FIWO2FZK.mjs.map +0 -7
  334. package/dist/lib/neutral/chunk-G54OX4IX.mjs.map +0 -7
  335. package/dist/lib/neutral/chunk-GWFFC34K.mjs +0 -50
  336. package/dist/lib/neutral/chunk-GWFFC34K.mjs.map +0 -7
  337. package/dist/lib/neutral/chunk-I2DARWPX.mjs +0 -128
  338. package/dist/lib/neutral/chunk-I2DARWPX.mjs.map +0 -7
  339. package/dist/lib/neutral/chunk-J54QMAKF.mjs.map +0 -7
  340. package/dist/lib/neutral/chunk-MGSQGHOD.mjs +0 -206
  341. package/dist/lib/neutral/chunk-MGSQGHOD.mjs.map +0 -7
  342. package/dist/lib/neutral/chunk-MLS7U7AT.mjs.map +0 -7
  343. package/dist/lib/neutral/chunk-N4B7FHQT.mjs.map +0 -7
  344. package/dist/lib/neutral/chunk-N7VOEPSV.mjs.map +0 -7
  345. package/dist/lib/neutral/chunk-PSZBLH53.mjs +0 -81
  346. package/dist/lib/neutral/chunk-PSZBLH53.mjs.map +0 -7
  347. package/dist/lib/neutral/chunk-PT37DG2F.mjs.map +0 -7
  348. package/dist/lib/neutral/chunk-Q2KKKJSV.mjs +0 -56
  349. package/dist/lib/neutral/chunk-Q2KKKJSV.mjs.map +0 -7
  350. package/dist/lib/neutral/chunk-Q7ZL2P5H.mjs.map +0 -7
  351. package/dist/lib/neutral/chunk-SCPFDS2E.mjs.map +0 -7
  352. package/dist/lib/neutral/chunk-TNBK56IN.mjs +0 -350
  353. package/dist/lib/neutral/chunk-TNBK56IN.mjs.map +0 -7
  354. package/dist/lib/neutral/chunk-TRPZU2HV.mjs.map +0 -7
  355. package/dist/lib/neutral/chunk-V72DY6LU.mjs.map +0 -7
  356. package/dist/lib/neutral/chunk-ZFACXBY6.mjs.map +0 -7
  357. package/dist/lib/neutral/chunk-ZISMEVKD.mjs.map +0 -7
  358. package/dist/types/src/Extension.d.ts +0 -80
  359. package/dist/types/src/Extension.d.ts.map +0 -1
  360. package/dist/types/src/Extension.test.d.ts +0 -2
  361. package/dist/types/src/Extension.test.d.ts.map +0 -1
  362. package/dist/types/src/SchemaRegistry.d.ts +0 -84
  363. package/dist/types/src/SchemaRegistry.d.ts.map +0 -1
  364. package/dist/types/src/internal/Obj/ids.d.ts +0 -6
  365. package/dist/types/src/internal/Obj/ids.d.ts.map +0 -1
  366. package/dist/types/src/internal/Type/echo-schema.d.ts +0 -181
  367. package/dist/types/src/internal/Type/echo-schema.d.ts.map +0 -1
  368. package/dist/types/src/internal/Type/persistent-schema.d.ts +0 -20
  369. package/dist/types/src/internal/Type/persistent-schema.d.ts.map +0 -1
  370. package/src/Extension.test.ts +0 -235
  371. package/src/Extension.ts +0 -122
  372. package/src/SchemaRegistry.ts +0 -106
  373. package/src/internal/Obj/ids.ts +0 -12
  374. package/src/internal/Type/echo-schema.ts +0 -423
  375. package/src/internal/Type/persistent-schema.ts +0 -33
  376. /package/dist/lib/neutral/{Extension.mjs.map → Registry.mjs.map} +0 -0
  377. /package/dist/lib/neutral/{SchemaRegistry.mjs.map → Scope.mjs.map} +0 -0
  378. /package/dist/lib/neutral/{chunk-QRZ2I3ZM.mjs.map → chunk-G6CFWUYH.mjs.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-schema.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Type/type-schema.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAqB,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C;;;;;;;;;;GAUG;AACH,QAAA,MAAM,gBAAgB;;;EAGpB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;GAOtB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,GAAG;IACrE,wFAAwF;IACxF,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,yFAAyF;IACzF,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC;IACnC,wGAAwG;IACxG,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC;IACzC,6GAA6G;IAC7G,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;CAC7D,CAAC"}
@@ -1,15 +1,18 @@
1
1
  import type { ForeignKey } from '@dxos/echo-protocol';
2
2
  import type { DeepReadonly } from '@dxos/util';
3
+ import type * as Tag from '../../../Tag';
4
+ import type { Ref } from '../../Ref/ref';
3
5
  import { type Mutable } from '../proxy';
4
- import { type AnyProperties, type ObjectMeta } from '../types';
6
+ import { type AnyProperties } from '../types';
7
+ import { type EntityMeta } from '../types/meta';
5
8
  /**
6
- * Deeply read-only version of ObjectMeta.
9
+ * Deeply read-only version of EntityMeta.
7
10
  */
8
- export type ReadonlyMeta = DeepReadonly<ObjectMeta>;
11
+ export type ReadonlyMeta = DeepReadonly<EntityMeta>;
9
12
  /**
10
13
  * Mutable meta type received in meta mutation callbacks.
11
14
  */
12
- export type Meta = Mutable<ObjectMeta>;
15
+ export type Meta = Mutable<EntityMeta>;
13
16
  /**
14
17
  * Get the metadata for an entity with validation.
15
18
  * Returns mutable meta when passed a mutable entity (inside change callback).
@@ -30,13 +33,13 @@ export declare const getKeys: (entity: AnyProperties, source: string) => Foreign
30
33
  */
31
34
  export declare const deleteKeys: (entity: Mutable<AnyProperties>, source: string) => void;
32
35
  /**
33
- * Add a tag to the entity.
36
+ * Add a tag (a reference to a {@link Tag} object) to the entity. Idempotent.
34
37
  * Must be called within an Obj.update or Relation.update callback.
35
38
  */
36
- export declare const addTag: (entity: Mutable<AnyProperties>, tag: string) => void;
39
+ export declare const addTag: (entity: Mutable<AnyProperties>, tag: Ref<Tag.Tag>) => void;
37
40
  /**
38
- * Remove a tag from the entity.
41
+ * Remove a tag (a reference to a {@link Tag} object) from the entity. No-op when not present.
39
42
  * Must be called within an Obj.update or Relation.update callback.
40
43
  */
41
- export declare const removeTag: (entity: Mutable<AnyProperties>, tag: string) => void;
44
+ export declare const removeTag: (entity: Mutable<AnyProperties>, tag: Ref<Tag.Tag>) => void;
42
45
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/api/meta.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAuB,MAAM,UAAU,CAAC;AAEpF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEvC;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;AACrE,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,CAAC;AAQpE;;;GAGG;AACH,eAAO,MAAM,OAAO,WAAY,aAAa,UAAU,MAAM,KAAG,UAAU,EAKzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,WAAY,OAAO,CAAC,aAAa,CAAC,UAAU,MAAM,SAQxE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,WAAY,OAAO,CAAC,aAAa,CAAC,OAAO,MAAM,SAIjE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,WAAY,OAAO,CAAC,aAAa,CAAC,OAAO,MAAM,SAWpE,CAAC"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/api/meta.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,KAAK,KAAK,GAAG,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,KAAK,UAAU,EAAuB,MAAM,eAAe,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEvC;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;AACrE,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,CAAC;AAQpE;;;GAGG;AACH,eAAO,MAAM,OAAO,WAAY,aAAa,UAAU,MAAM,KAAG,UAAU,EAKzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,WAAY,OAAO,CAAC,aAAa,CAAC,UAAU,MAAM,SAQxE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,WAAY,OAAO,CAAC,aAAa,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,SAMvE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,WAAY,OAAO,CAAC,aAAa,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,SAQ1E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"json-serializer.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/json-serializer.ts"],"names":[],"mappings":"AAuBA;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAS,GAAG,SAajD,CAAC;AAIF,eAAO,MAAM,mBAAmB,SAAmB,GAAG,QA+BrD,CAAC"}
1
+ {"version":3,"file":"json-serializer.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/json-serializer.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAS,GAAG,SAajD,CAAC;AAIF,eAAO,MAAM,mBAAmB,SAAmB,GAAG,QA+BrD,CAAC"}
@@ -1,14 +1,20 @@
1
1
  import type * as Schema from 'effect/Schema';
2
- import { type AnyProperties, KindId, type ObjectMeta } from '../types';
2
+ import { type AnyProperties, KindId, SchemaKindId, StaticTypeSchemaSlot } from '../types';
3
+ import { type EntityMeta } from '../types/meta';
4
+ import { TypeSource } from './typed-handler';
3
5
  /**
4
6
  *
5
7
  */
6
- export type MakeObjectProps<T extends AnyProperties> = Omit<T, 'id' | KindId>;
8
+ export type MakeObjectProps<T extends AnyProperties> = Omit<T, 'id' | KindId | SchemaKindId | StaticTypeSchemaSlot>;
7
9
  /**
8
10
  * Creates a reactive object from a plain Javascript object.
9
11
  * Requires a TS-effect schema.
12
+ *
13
+ * Callers that have a `Type.Type` entity (not a raw schema) must unwrap it
14
+ * themselves — `Obj.make` / `Relation.make` do this via `Type.getSchema(...)`
15
+ * and pass the entity through as `typeSource` so the instance carries a
16
+ * back-reference for `Obj.getType` and resolves the live source schema
17
+ * uniformly via the entity's `[StaticTypeSchemaSlot]`.
10
18
  */
11
- export declare const makeObject: {
12
- <T extends AnyProperties>(schema: Schema.Schema<T, any, never>, obj: NoInfer<MakeObjectProps<T>>, meta?: ObjectMeta): T;
13
- };
19
+ export declare const makeObject: <T extends AnyProperties>(schema: Schema.Schema<T, any, never>, obj: NoInfer<MakeObjectProps<T>>, meta?: Partial<EntityMeta>, typeSource?: TypeSource) => T;
14
20
  //# sourceMappingURL=make-object.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"make-object.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/make-object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAK7C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,EAAU,KAAK,UAAU,EAA8B,MAAM,UAAU,CAAC;AAM3G;;GAEG;AAEH,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,aAAa,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC,CAAC;AAE9E;;;GAGG;AAKH,eAAO,MAAM,UAAU,EAAE;IACvB,CAAC,CAAC,SAAS,aAAa,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EACpC,GAAG,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAChC,IAAI,CAAC,EAAE,UAAU,GAChB,CAAC,CAAC;CAIN,CAAC"}
1
+ {"version":3,"file":"make-object.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/make-object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAK7C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,EAAY,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACpG,OAAO,EAAU,KAAK,UAAU,EAAoB,MAAM,eAAe,CAAC;AAI1E,OAAO,EAAE,UAAU,EAA0D,MAAM,iBAAiB,CAAC;AAErG;;GAEG;AAMH,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,aAAa,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,YAAY,GAAG,oBAAoB,CAAC,CAAC;AAEpH;;;;;;;;;GASG;AAKH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,aAAa,UACxC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,OAC/B,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SACzB,OAAO,CAAC,UAAU,CAAC,eACb,UAAU,KACtB,CAGF,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import { Event } from '@dxos/async';
3
- import { ParentId, SchemaId, TypeId } from '../types';
3
+ import { ParentId, SchemaId, StaticTypeSchemaSlot, TypeId } from '../types';
4
4
  import { type ReactiveHandler } from './proxy-types';
5
5
  import { EventId } from './symbols';
6
6
  export { getEchoRoot, setMetaOwner } from './ownership';
@@ -44,5 +44,21 @@ export declare class TypedReactiveHandler implements ReactiveHandler<ProxyTarget
44
44
  private _validateValue;
45
45
  private _inspect;
46
46
  }
47
- export declare const prepareTypedTarget: <T>(target: T, schema: Schema.Schema<T>) => void;
47
+ /**
48
+ * Pointer to a `Type.Type` entity, stamped as the back-reference (`TypeEntityId`)
49
+ * on instances and read by the `SchemaId` getter installed below.
50
+ *
51
+ * Structural shape (not `Type.AnyEntity`) because `internal/common/proxy/`
52
+ * can't import the top-level `Type` module without a cycle. Every kind of
53
+ * `Type.Type` entity satisfies this shape:
54
+ * - Static (`Type.makeObject(dxn)` pipe) — slot set directly on the object.
55
+ * - Persisted (echo-handler-wrapped) — slot exposed via that handler's
56
+ * `get` trap (rebuilds from `data.jsonSchema`).
57
+ * - In-memory pre-persist (`Type.makeObjectFromJsonSchema`) — slot exposed
58
+ * via the `case StaticTypeSchemaSlot:` arm in this file's `get` trap.
59
+ */
60
+ export type TypeSource = {
61
+ readonly [StaticTypeSchemaSlot]?: Schema.Schema.AnyNoContext;
62
+ };
63
+ export declare const prepareTypedTarget: <T>(target: T, schema: Schema.Schema<T, any>, typeSource?: TypeSource) => void;
48
64
  //# sourceMappingURL=typed-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typed-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/typed-handler.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAKpC,OAAO,EAAmB,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAcvE,OAAO,EAAE,KAAK,eAAe,EAAc,MAAM,eAAe,CAAC;AAIjE,OAAO,EAAY,OAAO,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAExD,KAAK,WAAW,GAAG;IACjB;;OAEG;IACH,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACvC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IAEjB;;OAEG;IACH,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACxB,GAAG,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,CAAA;CAAE,GAAG,GAAG,EAAE,CAAC,CAAC;AA+ExC;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,eAAe,CAAC,WAAW,CAAC;IACvE,gBAAuB,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,CAA8B;IAEnF,QAAQ,CAAC,SAAS,uBAA8B;IAChD,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,eAAiB;IAExB,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAkD9B;IAED,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG,CA4BlE;IAED,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAiClF;IAED,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,CAEvD;IAED,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAgBtE;IAED,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAyBtG;IAED;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAqDlC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,QAAQ;CAajB;AA8BD,eAAO,MAAM,kBAAkB,GAAI,CAAC,UAAU,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAUxE,CAAC"}
1
+ {"version":3,"file":"typed-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/typed-handler.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMpC,OAAO,EAAmB,QAAQ,EAAE,QAAQ,EAAE,oBAAoB,EAAgB,MAAM,EAAE,MAAM,UAAU,CAAC;AAc3G,OAAO,EAAE,KAAK,eAAe,EAAc,MAAM,eAAe,CAAC;AAIjE,OAAO,EAAY,OAAO,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAExD,KAAK,WAAW,GAAG;IACjB;;OAEG;IACH,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACvC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IAEjB;;OAEG;IACH,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACxB,GAAG,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,CAAA;CAAE,GAAG,GAAG,EAAE,CAAC,CAAC;AA+ExC;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,eAAe,CAAC,WAAW,CAAC;IACvE,gBAAuB,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,CAA8B;IAEnF,QAAQ,CAAC,SAAS,uBAA8B;IAChD,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,eAAiB;IAExB,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAkD9B;IAED,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG,CAiDlE;IAED,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAsClF;IAED,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,CAEvD;IAED,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAgBtE;IAED,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAyBtG;IAED;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAqDlC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,QAAQ;CAajB;AAUD;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAA;CAAE,CAAC;AA0C1F,eAAO,MAAM,kBAAkB,GAAI,CAAC,UAAU,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,eAAe,UAAU,SAUtG,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import * as Schema from 'effect/Schema';
2
- import { type ObjectId } from '@dxos/keys';
3
- import { type ATTR_META, type ObjectMeta } from './meta';
2
+ import { type EntityId } from '@dxos/keys';
3
+ import { type ATTR_META, type EntityMeta } from './meta';
4
4
  /**
5
5
  * Base type for all data objects (reactive, ECHO, and other raw objects).
6
6
  * NOTE: This describes the base type for all database objects.
@@ -12,12 +12,12 @@ export type AnyProperties = Record<string, any>;
12
12
  * @depreacted Remove, use Entity.Unknown instead.
13
13
  */
14
14
  export interface AnyEntity {
15
- readonly id: ObjectId;
15
+ readonly id: EntityId;
16
16
  }
17
17
  export type ExcludeId<T extends AnyProperties> = Omit<T, 'id'>;
18
18
  export type PropertyKey<T extends AnyProperties> = Extract<keyof ExcludeId<T>, string>;
19
19
  type WithMeta = {
20
- [ATTR_META]?: ObjectMeta;
20
+ [ATTR_META]?: EntityMeta;
21
21
  };
22
22
  /**
23
23
  * The raw object should not include the ECHO id, but may include metadata.
@@ -18,11 +18,68 @@ export type SchemaKindId = typeof SchemaKindId;
18
18
  export declare const SnapshotKindId: '~@dxos/echo/SnapshotKind';
19
19
  export type SnapshotKindId = typeof SnapshotKindId;
20
20
  /**
21
- * Kinds of entities stored in ECHO: objects and relations.
21
+ * Hidden slot on a static `Type.Type` entity that holds the source Effect
22
+ * Schema. `Type.getSchema(...)` reads this for static types; persisted types
23
+ * rebuild from `jsonSchema` instead. Stored as a string key for declaration
24
+ * portability (see KindId comment above).
25
+ */
26
+ export declare const StaticTypeSchemaSlot: '~@dxos/echo/Type.StaticSchema';
27
+ export type StaticTypeSchemaSlot = typeof StaticTypeSchemaSlot;
28
+ /**
29
+ * Read the hidden `StaticTypeSchemaSlot` off any value that may carry one.
30
+ * Returns `undefined` for raw schemas (no slot) and non-object inputs.
31
+ * Single point-of-cast for the slot lookup.
32
+ */
33
+ export declare const getStaticTypeSchema: (value: unknown) => Schema.Schema.AnyNoContext | undefined;
34
+ /**
35
+ * Read the `[SchemaKindId]` brand off a value. Returns `undefined` for raw
36
+ * schemas (which don't carry the brand on their static type) and non-object
37
+ * inputs. Single point-of-cast for the brand lookup.
38
+ */
39
+ export declare const getSchemaKind: (value: unknown) => EntityKind | undefined;
40
+ /**
41
+ * Read the `[KindId]` brand off a value. Returns `undefined` for raw schemas
42
+ * and non-object inputs. Companion to {@link getSchemaKind}.
43
+ */
44
+ export declare const getEntityKindBrand: (value: unknown) => EntityKind | undefined;
45
+ /**
46
+ * Phantom string key on `Type<A>` entities that carries the instance type `A`.
47
+ * Lets internal helpers (`makeObject`, `createObject`, etc.) pattern-match the
48
+ * instance type from an entity input without importing from the top-level
49
+ * `Type` module. Mirrors `Type.InstancePhantomId` (declared in `Type.ts`).
50
+ *
51
+ * Stored as a string key so declarations remain portable across packages
52
+ * (see KindId comment above).
53
+ */
54
+ export declare const InstancePhantomId: '~@dxos/echo/Type.Instance';
55
+ export type InstancePhantomId = typeof InstancePhantomId;
56
+ /**
57
+ * Nominal brand carried by the well-known "any object" / "any relation"
58
+ * schemas (`Obj.Unknown`, `Relation.Unknown`). The brand lets `Ref.Ref`,
59
+ * `Filter.type`, and `Query.type` accept these schemas in addition to
60
+ * `Type.Type` entities, without opening the door to arbitrary raw schemas.
61
+ *
62
+ * Stored as a string key so declarations remain portable across packages
63
+ * (see KindId comment above).
64
+ */
65
+ export declare const UnknownTypeSchemaBrandId: '~@dxos/echo/UnknownTypeSchemaBrand';
66
+ export type UnknownTypeSchemaBrandId = typeof UnknownTypeSchemaBrandId;
67
+ /**
68
+ * Schema-side companion to `Type.Type` entities for the "any object" /
69
+ * "any relation" cases. Branded so `Ref.Ref` / `Filter.type` / `Query.type`
70
+ * can pattern-match on it; arbitrary `Schema.Schema` values do not satisfy
71
+ * this shape.
72
+ */
73
+ export interface UnknownTypeSchema<A, K extends EntityKind> extends Schema.Schema<A, any, never> {
74
+ readonly [UnknownTypeSchemaBrandId]: K;
75
+ }
76
+ /**
77
+ * Kinds of entities stored in ECHO: objects, relations, and types.
22
78
  */
23
79
  export declare enum EntityKind {
24
80
  Object = "object",
25
- Relation = "relation"
81
+ Relation = "relation",
82
+ Type = "type"
26
83
  }
27
84
  export declare const EntityKindSchema: Schema.Enums<typeof EntityKind>;
28
85
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/entity.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AASxC;;GAEG;AACH,eAAO,MAAM,MAAM,EAAG,kBAA2B,CAAC;AAClD,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAG,wBAAiC,CAAC;AAC9D,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAG,0BAAmC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC;AAEnD;;GAEG;AACH,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,gBAAgB,iCAA2B,CAAC;AAEzD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,kBAAkB,UAAU,CAAC"}
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/entity.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AASxC;;GAEG;AACH,eAAO,MAAM,MAAM,EAAG,kBAA2B,CAAC;AAClD,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAG,wBAAiC,CAAC;AAC9D,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAG,0BAAmC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,EAAG,+BAAwC,CAAC;AAC7E,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,UAAW,OAAO,KAAG,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG,SAKjF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,UAAU,GAAG,SAK3D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,UAAW,OAAO,KAAG,UAAU,GAAG,SAKhE,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,EAAG,2BAAoC,CAAC;AACtE,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAEzD;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,EAAG,oCAA6C,CAAC;AACtF,MAAM,MAAM,wBAAwB,GAAG,OAAO,wBAAwB,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,EAAE,CAAC,SAAS,UAAU,CAAE,SAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC;IAC9F,QAAQ,CAAC,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;CACxC;AAED;;GAEG;AACH,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AAED,eAAO,MAAM,gBAAgB,iCAA2B,CAAC;AAEzD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,kBAAkB,UAAU,CAAC"}
@@ -1,7 +1,7 @@
1
1
  export * from './base';
2
2
  export * from './entity';
3
- export * from './meta';
4
3
  export * from './model-symbols';
5
4
  export * from './typename';
6
5
  export * from './version';
6
+ export * from './well-known-types';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AAMzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import * as Schema from 'effect/Schema';
2
- import { ForeignKey } from '@dxos/echo-protocol';
2
+ import { type EncodedReference, ForeignKey } from '@dxos/echo-protocol';
3
3
  import { type Comparator } from '@dxos/util';
4
4
  import type * as Entity from '../../../Entity';
5
+ import { type Ref } from '../../Ref/ref';
5
6
  import { type AnyProperties } from './base';
6
7
  /**
7
8
  * Property name for meta when object is serialized to JSON.
@@ -11,7 +12,7 @@ export declare const ATTR_META = "@meta";
11
12
  * Metadata section.
12
13
  */
13
14
  export declare const MetaId: Entity.Meta;
14
- export declare const ObjectMetaSchema: Schema.Struct<{
15
+ export declare const EntityMetaSchema: Schema.Struct<{
15
16
  keys: Schema.Array$<Schema.Schema<{
16
17
  readonly source: string;
17
18
  readonly id: string;
@@ -20,11 +21,12 @@ export declare const ObjectMetaSchema: Schema.Struct<{
20
21
  readonly id: string;
21
22
  }, never>>;
22
23
  /**
23
- * A set of tags.
24
- * Tags are arbitrary application-defined strings.
25
- * ECHO makes no assumptions about the tag structure.
24
+ * Tags applied to this entity, as references to {@link Tag} objects.
26
25
  */
27
- tags: Schema.optional<Schema.Array$<typeof Schema.String>>;
26
+ tags: Schema.Array$<Schema.suspend<Ref<{
27
+ readonly label: string;
28
+ readonly hue?: string | undefined;
29
+ } & Entity.OfKind<import("./entity").EntityKind.Object>>, EncodedReference, never>>;
28
30
  /**
29
31
  * Fully-qualified registry key for the object (FQN format, e.g. `org.example.type.foo`).
30
32
  * Identifies the canonical registry entry the object instance was created from.
@@ -35,8 +37,12 @@ export declare const ObjectMetaSchema: Schema.Struct<{
35
37
  * Must be a valid semver string (e.g. `1.2.3`).
36
38
  */
37
39
  version: Schema.optional<typeof Schema.String>;
40
+ /**
41
+ * Dictionary of annotations to this entity.
42
+ */
43
+ annotations: Schema.Record$<Schema.brand<typeof Schema.String, "~@dxos/echo/AnnotationKey">, typeof Schema.Unknown>;
38
44
  }>;
39
- export type ObjectMeta = Schema.Schema.Type<typeof ObjectMetaSchema>;
45
+ export type EntityMeta = Schema.Schema.Type<typeof EntityMetaSchema>;
40
46
  export declare const foreignKey: (source: string, id: string) => ForeignKey;
41
47
  export declare const foreignKeyEquals: (a: ForeignKey, b: ForeignKey) => boolean;
42
48
  export declare const compareForeignKeys: Comparator<AnyProperties>;
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/meta.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,KAAK,UAAU,EAAgB,MAAM,YAAY,CAAC;AAE3D,OAAO,KAAK,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,SAAS,UAAU,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,IAA2C,CAAC;AAOxE,eAAO,MAAM,gBAAgB;;;;;;;;IAG3B;;;;OAIG;;IAMH;;;OAGG;;IAGH;;;OAGG;;EAEH,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAmBrE,eAAO,MAAM,UAAU,WAAY,MAAM,MAAM,MAAM,KAAG,UAA8B,CAAC;AACvF,eAAO,MAAM,gBAAgB,MAAO,UAAU,KAAK,UAAU,YAA2C,CAAC;AAGzG,eAAO,MAAM,kBAAkB,EAAE,UAAU,CAAC,aAAa,CACoB,CAAC"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/meta.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,KAAK,gBAAgB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGxE,OAAO,EAAE,KAAK,UAAU,EAAgB,MAAM,YAAY,CAAC;AAE3D,OAAO,KAAK,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAK/C,OAAO,EAAE,KAAK,GAAG,EAA6B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAG5C;;GAEG;AACH,eAAO,MAAM,SAAS,UAAU,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,IAA2C,CAAC;AAuBxE,eAAO,MAAM,gBAAgB;;;;;;;;IAG3B;;OAEG;;;;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;OAEG;;EAEH,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAmBrE,eAAO,MAAM,UAAU,WAAY,MAAM,MAAM,MAAM,KAAG,UAA8B,CAAC;AACvF,eAAO,MAAM,gBAAgB,MAAO,UAAU,KAAK,UAAU,YAA2C,CAAC;AAGzG,eAAO,MAAM,kBAAkB,EAAE,UAAU,CAAC,aAAa,CACoB,CAAC"}
@@ -4,13 +4,17 @@
4
4
  * Entity/ re-exports these for external consumers.
5
5
  */
6
6
  /**
7
- * Property name for self DXN when object is serialized to JSON.
7
+ * Property name for the object's own URI when serialized to JSON.
8
8
  */
9
- export declare const ATTR_SELF_DXN = "@dxn";
9
+ export declare const ATTR_SELF_URI = "@uri";
10
10
  /**
11
- * DXN to the object itself.
11
+ * @deprecated Legacy JSON property name accepted on read for backward compat.
12
12
  */
13
- export declare const SelfDXNId: unique symbol;
13
+ export declare const ATTR_SELF_URI_LEGACY = "@dxn";
14
+ /**
15
+ * Symbol carrying the object's own URI on live entities.
16
+ */
17
+ export declare const SelfURIId: unique symbol;
14
18
  /**
15
19
  * Property name for deleted when object is serialized to JSON.
16
20
  */
@@ -1 +1 @@
1
- {"version":3,"file":"model-symbols.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/model-symbols.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa,SAAS,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,SAAS,eAA+B,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,eAAe,eAAmC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAAO,MAAyC,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,gBAAgB,eAAoC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC;AAE7F;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC"}
1
+ {"version":3,"file":"model-symbols.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/model-symbols.ts"],"names":[],"mappings":"AAWA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa,SAAS,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,oBAAoB,SAAS,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,SAAS,eAA+B,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,eAAe,eAAmC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAAO,MAAyC,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,gBAAgB,eAAoC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC;AAE7F;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC"}
@@ -18,4 +18,11 @@ export declare const ATTR_PARENT = "@parent";
18
18
  * Reference to the object parent.
19
19
  */
20
20
  export declare const ParentId: unique symbol;
21
+ /**
22
+ * Reference to the object's type entity (`Type.Obj`, `Type.Relation`, or
23
+ * `Type.Type`). Set at instance creation by `createObject` / `makeObject`
24
+ * when the entity is known. Public read-back via `Obj.getType` / `Relation.getType`
25
+ * / `Entity.getType`.
26
+ */
27
+ export declare const TypeEntityId: unique symbol;
21
28
  //# sourceMappingURL=typename.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typename.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/typename.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,eAAO,MAAM,SAAS,UAAU,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,MAAM,eAAgC,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,QAAQ,eAAkC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,QAAQ,eAAkC,CAAC"}
1
+ {"version":3,"file":"typename.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/typename.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,eAAO,MAAM,SAAS,UAAU,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,MAAM,eAAgC,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,QAAQ,eAAkC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,QAAQ,eAAkC,CAAC;AAExD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,eAAsC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { DXN } from '@dxos/keys';
2
+ /**
3
+ * DXN identity of the system {@link Tag} type.
4
+ *
5
+ * Defined in this low-level leaf so it can be shared by the public `Tag` type (which brands the
6
+ * schema with this DXN) and by `EntityMetaSchema.tags` (which builds a `Ref<Tag>` schema from it)
7
+ * without either importing the other — `Tag` is top-level and `meta` is deep-internal, so a direct
8
+ * dependency between them would form an eval-order cycle.
9
+ */
10
+ export declare const TagTypeDXN: DXN.DXN;
11
+ //# sourceMappingURL=well-known-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"well-known-types.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/types/well-known-types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,SAAyC,CAAC"}
@@ -8,4 +8,5 @@ export * from './Obj';
8
8
  export * from './Query';
9
9
  export * from './Ref';
10
10
  export * from './Type';
11
+ export * from './common/types/meta';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3E,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAE7B,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3E,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAE7B,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AAKvB,cAAc,qBAAqB,CAAC"}
@@ -9,8 +9,7 @@ export declare namespace TestSchema {
9
9
  const Expando: Type.Obj<{
10
10
  readonly [x: string]: any;
11
11
  }, Schema.Struct.Fields>;
12
- interface Expando extends Schema.Schema.Type<typeof Expando> {
13
- }
12
+ type Expando = Type.InstanceType<typeof Expando>;
14
13
  class TestClass {
15
14
  field: string;
16
15
  toJSON(): {
@@ -88,7 +87,7 @@ export declare namespace TestSchema {
88
87
  readonly other?: any;
89
88
  }, Schema.Struct.Fields>;
90
89
  /** @deprecated Use another test schema or create a specific local test schema. */
91
- interface Example extends Schema.Schema.Type<typeof Example> {
90
+ interface Example extends Type.InstanceType<typeof Example> {
92
91
  }
93
92
  const MessageStruct: Schema.Struct<{
94
93
  timestamp: Schema.PropertySignature<":", string, never, ":", string, true, never>;
@@ -96,28 +95,26 @@ export declare namespace TestSchema {
96
95
  const Message: Type.Obj<{
97
96
  readonly timestamp: string;
98
97
  }, Schema.Struct.Fields>;
99
- interface Message extends Schema.Schema.Type<typeof Message> {
100
- }
98
+ type Message = Type.InstanceType<typeof Message>;
101
99
  const Organization: Type.Obj<{
102
100
  readonly name: string;
103
101
  readonly properties?: {
104
102
  readonly [x: string]: string;
105
103
  } | undefined;
106
104
  }, Schema.Struct.Fields>;
107
- interface Organization extends Schema.Schema.Type<typeof Organization> {
108
- }
105
+ type Organization = Type.InstanceType<typeof Organization>;
109
106
  const Person: Type.Obj<{
110
107
  readonly name?: string | undefined;
111
108
  readonly username?: string | undefined;
112
109
  readonly email?: string | undefined;
113
110
  readonly age?: number | undefined;
114
111
  readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
115
- readonly employer?: import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
112
+ readonly employer?: import("../internal").Ref<{
116
113
  readonly name: string;
117
114
  readonly properties?: {
118
115
  readonly [x: string]: string;
119
116
  } | undefined;
120
- }> | undefined;
117
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
121
118
  readonly address?: {
122
119
  readonly city?: string | undefined;
123
120
  readonly state?: string | undefined;
@@ -132,24 +129,24 @@ export declare namespace TestSchema {
132
129
  readonly value: string;
133
130
  }[] | undefined;
134
131
  }, Schema.Struct.Fields>;
135
- interface Person extends Schema.Schema.Type<typeof Person> {
132
+ interface Person extends Type.InstanceType<typeof Person> {
136
133
  }
137
134
  const Task: Type.Obj<{
138
135
  readonly title?: string | undefined;
139
136
  readonly deadline?: string | undefined;
140
137
  readonly completed?: boolean | undefined;
141
- readonly assignee?: import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
138
+ readonly assignee?: import("../internal").Ref<{
142
139
  readonly name?: string | undefined;
143
140
  readonly username?: string | undefined;
144
141
  readonly email?: string | undefined;
145
142
  readonly age?: number | undefined;
146
143
  readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
147
- readonly employer?: import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
144
+ readonly employer?: import("../internal").Ref<{
148
145
  readonly name: string;
149
146
  readonly properties?: {
150
147
  readonly [x: string]: string;
151
148
  } | undefined;
152
- }> | undefined;
149
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
153
150
  readonly address?: {
154
151
  readonly city?: string | undefined;
155
152
  readonly state?: string | undefined;
@@ -163,25 +160,25 @@ export declare namespace TestSchema {
163
160
  readonly label: string;
164
161
  readonly value: string;
165
162
  }[] | undefined;
166
- }> | undefined;
163
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
167
164
  readonly previous?: import("../internal").Ref<Task> | undefined;
168
165
  readonly subTasks?: readonly import("../internal").Ref<Task>[] | undefined;
169
166
  readonly description?: string | undefined;
170
167
  }, Schema.Struct.Fields>;
171
- interface Task extends Schema.Schema.Type<typeof Task> {
168
+ interface Task extends Type.InstanceType<typeof Task> {
172
169
  }
173
- const HasManager: Type.Relation<{}, import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
170
+ const HasManager: Type.Relation<{}, {
174
171
  readonly name?: string | undefined;
175
172
  readonly username?: string | undefined;
176
173
  readonly email?: string | undefined;
177
174
  readonly age?: number | undefined;
178
175
  readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
179
- readonly employer?: import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
176
+ readonly employer?: import("../internal").Ref<{
180
177
  readonly name: string;
181
178
  readonly properties?: {
182
179
  readonly [x: string]: string;
183
180
  } | undefined;
184
- }> | undefined;
181
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
185
182
  readonly address?: {
186
183
  readonly city?: string | undefined;
187
184
  readonly state?: string | undefined;
@@ -195,18 +192,18 @@ export declare namespace TestSchema {
195
192
  readonly label: string;
196
193
  readonly value: string;
197
194
  }[] | undefined;
198
- }, import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
195
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object>, {
199
196
  readonly name?: string | undefined;
200
197
  readonly username?: string | undefined;
201
198
  readonly email?: string | undefined;
202
199
  readonly age?: number | undefined;
203
200
  readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
204
- readonly employer?: import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
201
+ readonly employer?: import("../internal").Ref<{
205
202
  readonly name: string;
206
203
  readonly properties?: {
207
204
  readonly [x: string]: string;
208
205
  } | undefined;
209
- }> | undefined;
206
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
210
207
  readonly address?: {
211
208
  readonly city?: string | undefined;
212
209
  readonly state?: string | undefined;
@@ -220,24 +217,23 @@ export declare namespace TestSchema {
220
217
  readonly label: string;
221
218
  readonly value: string;
222
219
  }[] | undefined;
223
- }, Schema.Struct.Fields>;
224
- interface HasManager extends Schema.Schema.Type<typeof HasManager> {
225
- }
220
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object>, Schema.Struct.Fields>;
221
+ type HasManager = Type.InstanceType<typeof HasManager>;
226
222
  const EmployedBy: Type.Relation<{
227
223
  readonly role: string;
228
224
  readonly since?: string | undefined;
229
- }, import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
225
+ }, {
230
226
  readonly name?: string | undefined;
231
227
  readonly username?: string | undefined;
232
228
  readonly email?: string | undefined;
233
229
  readonly age?: number | undefined;
234
230
  readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
235
- readonly employer?: import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
231
+ readonly employer?: import("../internal").Ref<{
236
232
  readonly name: string;
237
233
  readonly properties?: {
238
234
  readonly [x: string]: string;
239
235
  } | undefined;
240
- }> | undefined;
236
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
241
237
  readonly address?: {
242
238
  readonly city?: string | undefined;
243
239
  readonly state?: string | undefined;
@@ -251,36 +247,35 @@ export declare namespace TestSchema {
251
247
  readonly label: string;
252
248
  readonly value: string;
253
249
  }[] | undefined;
254
- }, import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
250
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object>, {
255
251
  readonly name: string;
256
252
  readonly properties?: {
257
253
  readonly [x: string]: string;
258
254
  } | undefined;
259
- }, Schema.Struct.Fields>;
260
- interface EmployedBy extends Schema.Schema.Type<typeof EmployedBy> {
261
- }
255
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object>, Schema.Struct.Fields>;
256
+ type EmployedBy = Type.InstanceType<typeof EmployedBy>;
262
257
  enum RecordType {
263
258
  UNDEFINED = 0,
264
259
  PERSONAL = 1,
265
260
  WORK = 2
266
261
  }
267
262
  const Container: Type.Obj<{
268
- readonly objects?: readonly import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown>[] | undefined;
263
+ readonly objects?: readonly import("../internal").Ref<Obj.Unknown>[] | undefined;
269
264
  readonly records?: readonly {
270
265
  readonly title?: string | undefined;
271
266
  readonly description?: string | undefined;
272
- readonly contacts?: readonly import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
267
+ readonly contacts?: readonly import("../internal").Ref<{
273
268
  readonly name?: string | undefined;
274
269
  readonly username?: string | undefined;
275
270
  readonly email?: string | undefined;
276
271
  readonly age?: number | undefined;
277
272
  readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
278
- readonly employer?: import("../internal").Ref<import("../Entity").OfKind<import("../internal").EntityKind.Object> & {
273
+ readonly employer?: import("../internal").Ref<{
279
274
  readonly name: string;
280
275
  readonly properties?: {
281
276
  readonly [x: string]: string;
282
277
  } | undefined;
283
- }> | undefined;
278
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
284
279
  readonly address?: {
285
280
  readonly city?: string | undefined;
286
281
  readonly state?: string | undefined;
@@ -294,11 +289,10 @@ export declare namespace TestSchema {
294
289
  readonly label: string;
295
290
  readonly value: string;
296
291
  }[] | undefined;
297
- }>[] | undefined;
292
+ } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown>[] | undefined;
298
293
  readonly type?: RecordType | undefined;
299
294
  }[] | undefined;
300
295
  }, Schema.Struct.Fields>;
301
- interface Container extends Schema.Schema.Type<typeof Container> {
302
- }
296
+ type Container = Type.InstanceType<typeof Container>;
303
297
  }
304
298
  //# sourceMappingURL=test-schema.d.ts.map