@dxos/echo 0.9.0 → 0.9.1-staging.ee54ba693a

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 (289) hide show
  1. package/dist/lib/neutral/Annotation.mjs +30 -8
  2. package/dist/lib/neutral/Database.mjs +7 -3
  3. package/dist/lib/neutral/Entity.mjs +15 -11
  4. package/dist/lib/neutral/Err.mjs +7 -3
  5. package/dist/lib/neutral/Feed.mjs +15 -19
  6. package/dist/lib/neutral/Filter.mjs +13 -11
  7. package/dist/lib/neutral/Format.mjs +3 -7
  8. package/dist/lib/neutral/JsonSchema.mjs +7 -7
  9. package/dist/lib/neutral/Migration.mjs +11 -11
  10. package/dist/lib/neutral/Obj.mjs +19 -13
  11. package/dist/lib/neutral/Order.mjs +1 -1
  12. package/dist/lib/neutral/Query.mjs +17 -17
  13. package/dist/lib/neutral/QueryResult.mjs +1 -1
  14. package/dist/lib/neutral/Ref.mjs +6 -6
  15. package/dist/lib/neutral/Registry.mjs +1 -1
  16. package/dist/lib/neutral/Relation.mjs +12 -12
  17. package/dist/lib/neutral/Tag.mjs +15 -15
  18. package/dist/lib/neutral/Text.mjs +25 -0
  19. package/dist/lib/neutral/Text.mjs.map +7 -0
  20. package/dist/lib/neutral/Type.mjs +10 -10
  21. package/dist/lib/neutral/chunk-2HKGAQM4.mjs +1394 -0
  22. package/dist/lib/neutral/chunk-2HKGAQM4.mjs.map +7 -0
  23. package/dist/lib/neutral/{chunk-O6BH7EPN.mjs → chunk-2ZHECXUR.mjs} +5 -4
  24. package/dist/lib/neutral/chunk-2ZHECXUR.mjs.map +7 -0
  25. package/dist/lib/neutral/{chunk-QQIYS74I.mjs → chunk-3KTE2Y7Q.mjs} +20 -20
  26. package/dist/lib/neutral/chunk-3KTE2Y7Q.mjs.map +7 -0
  27. package/dist/lib/neutral/{chunk-R5W6DXR4.mjs → chunk-3TN2VMI4.mjs} +72 -36
  28. package/dist/lib/neutral/chunk-3TN2VMI4.mjs.map +7 -0
  29. package/dist/lib/neutral/{chunk-5SMDBFVB.mjs → chunk-42L4HJ3Z.mjs} +11 -15
  30. package/dist/lib/neutral/chunk-42L4HJ3Z.mjs.map +7 -0
  31. package/dist/lib/neutral/{chunk-7PI7C4EF.mjs → chunk-4A2NWKRJ.mjs} +5 -5
  32. package/dist/lib/neutral/chunk-ACFAOTKJ.mjs +1531 -0
  33. package/dist/lib/neutral/chunk-ACFAOTKJ.mjs.map +7 -0
  34. package/dist/lib/neutral/{chunk-SBVFRTST.mjs → chunk-BEFR7LEA.mjs} +20 -10
  35. package/dist/lib/neutral/chunk-BEFR7LEA.mjs.map +7 -0
  36. package/dist/lib/neutral/{chunk-6M2Z6WBH.mjs → chunk-BXIKXT7Q.mjs} +2 -6
  37. package/dist/lib/neutral/{chunk-6M2Z6WBH.mjs.map → chunk-BXIKXT7Q.mjs.map} +1 -1
  38. package/dist/lib/neutral/{chunk-UUP46KUQ.mjs → chunk-C57XMMBY.mjs} +21 -20
  39. package/dist/lib/neutral/chunk-C57XMMBY.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-C62JYFAD.mjs +183 -0
  41. package/dist/lib/neutral/chunk-C62JYFAD.mjs.map +7 -0
  42. package/dist/lib/neutral/{chunk-MZ7K3MLL.mjs → chunk-FSGX2R62.mjs} +3 -3
  43. package/dist/lib/neutral/chunk-FSGX2R62.mjs.map +7 -0
  44. package/dist/lib/neutral/{chunk-TYGKCRMK.mjs → chunk-HBXT3GSB.mjs} +37 -15
  45. package/dist/lib/neutral/chunk-HBXT3GSB.mjs.map +7 -0
  46. package/dist/lib/neutral/{chunk-WU3GIANS.mjs → chunk-IQR45HAD.mjs} +1 -1
  47. package/dist/lib/neutral/chunk-IQR45HAD.mjs.map +7 -0
  48. package/dist/lib/neutral/{chunk-TFEWTY5A.mjs → chunk-KCBW4BR6.mjs} +4 -8
  49. package/dist/lib/neutral/chunk-KCBW4BR6.mjs.map +7 -0
  50. package/dist/lib/neutral/{chunk-WTQJHC75.mjs → chunk-L3E5IXAE.mjs} +225 -45
  51. package/dist/lib/neutral/chunk-L3E5IXAE.mjs.map +7 -0
  52. package/dist/lib/neutral/{chunk-EVK6XBXO.mjs → chunk-PRC4FEKJ.mjs} +2 -2
  53. package/dist/lib/neutral/chunk-PRC4FEKJ.mjs.map +7 -0
  54. package/dist/lib/neutral/{chunk-6YDI3J37.mjs → chunk-SCT6FFCR.mjs} +9 -4
  55. package/dist/lib/neutral/chunk-SCT6FFCR.mjs.map +7 -0
  56. package/dist/lib/neutral/{chunk-BBFJWWAV.mjs → chunk-TOCVVFK2.mjs} +26 -2
  57. package/dist/lib/neutral/chunk-TOCVVFK2.mjs.map +7 -0
  58. package/dist/lib/neutral/{chunk-RIVWNMSF.mjs → chunk-U53LSQQA.mjs} +3 -3
  59. package/dist/lib/neutral/{chunk-RIVWNMSF.mjs.map → chunk-U53LSQQA.mjs.map} +1 -1
  60. package/dist/lib/neutral/{chunk-IGK6FN65.mjs → chunk-UGFFV2FR.mjs} +2 -2
  61. package/dist/lib/neutral/{chunk-35INCYOE.mjs → chunk-UWLP4RFM.mjs} +1 -1
  62. package/dist/lib/neutral/chunk-UWLP4RFM.mjs.map +7 -0
  63. package/dist/lib/neutral/{chunk-LWXVKPPW.mjs → chunk-UZHCQ6NI.mjs} +13 -11
  64. package/dist/lib/neutral/{chunk-LWXVKPPW.mjs.map → chunk-UZHCQ6NI.mjs.map} +3 -3
  65. package/dist/lib/neutral/{chunk-5SUJPHAE.mjs → chunk-WKIT2YY5.mjs} +2 -2
  66. package/dist/lib/neutral/{chunk-T6E37YIP.mjs → chunk-XB6ISRAO.mjs} +38 -18
  67. package/dist/lib/neutral/chunk-XB6ISRAO.mjs.map +7 -0
  68. package/dist/lib/neutral/chunk-XXL42WCB.mjs +84 -0
  69. package/dist/lib/neutral/chunk-XXL42WCB.mjs.map +7 -0
  70. package/dist/lib/neutral/{chunk-ZGNNFYHS.mjs → chunk-XXWK4J53.mjs} +27 -42
  71. package/dist/lib/neutral/chunk-XXWK4J53.mjs.map +7 -0
  72. package/dist/lib/neutral/index.mjs +30 -26
  73. package/dist/lib/neutral/internal/index.mjs +111 -69
  74. package/dist/lib/neutral/meta.json +1 -1
  75. package/dist/lib/neutral/testing/index.mjs +79 -60
  76. package/dist/lib/neutral/testing/index.mjs.map +3 -3
  77. package/dist/types/src/Annotation.d.ts +35 -1
  78. package/dist/types/src/Annotation.d.ts.map +1 -1
  79. package/dist/types/src/Collection.d.ts +9 -8
  80. package/dist/types/src/Collection.d.ts.map +1 -1
  81. package/dist/types/src/Database.d.ts +38 -0
  82. package/dist/types/src/Database.d.ts.map +1 -1
  83. package/dist/types/src/Dataset.d.ts +1 -16
  84. package/dist/types/src/Dataset.d.ts.map +1 -1
  85. package/dist/types/src/Entity.d.ts +2 -0
  86. package/dist/types/src/Entity.d.ts.map +1 -1
  87. package/dist/types/src/Err.d.ts +67 -0
  88. package/dist/types/src/Err.d.ts.map +1 -1
  89. package/dist/types/src/Feed.d.ts +59 -80
  90. package/dist/types/src/Feed.d.ts.map +1 -1
  91. package/dist/types/src/Filter.d.ts +9 -1
  92. package/dist/types/src/Filter.d.ts.map +1 -1
  93. package/dist/types/src/Hypergraph.d.ts +2 -9
  94. package/dist/types/src/Hypergraph.d.ts.map +1 -1
  95. package/dist/types/src/Migration.d.ts +1 -1
  96. package/dist/types/src/Migration.d.ts.map +1 -1
  97. package/dist/types/src/Obj.d.ts +33 -6
  98. package/dist/types/src/Obj.d.ts.map +1 -1
  99. package/dist/types/src/Order.d.ts +1 -1
  100. package/dist/types/src/Order.d.ts.map +1 -1
  101. package/dist/types/src/Query.d.ts +1 -1
  102. package/dist/types/src/Query.d.ts.map +1 -1
  103. package/dist/types/src/QueryResult.d.ts +2 -2
  104. package/dist/types/src/QueryResult.d.ts.map +1 -1
  105. package/dist/types/src/Ref.d.ts +10 -6
  106. package/dist/types/src/Ref.d.ts.map +1 -1
  107. package/dist/types/src/Registry.d.ts +1 -1
  108. package/dist/types/src/Relation.d.ts.map +1 -1
  109. package/dist/types/src/Tag.d.ts +11 -13
  110. package/dist/types/src/Tag.d.ts.map +1 -1
  111. package/dist/types/src/Text.d.ts +41 -0
  112. package/dist/types/src/Text.d.ts.map +1 -0
  113. package/dist/types/src/Text.test.d.ts +2 -0
  114. package/dist/types/src/Text.test.d.ts.map +1 -0
  115. package/dist/types/src/Type.d.ts +38 -21
  116. package/dist/types/src/Type.d.ts.map +1 -1
  117. package/dist/types/src/View.d.ts +8 -9
  118. package/dist/types/src/View.d.ts.map +1 -1
  119. package/dist/types/src/index.d.ts +1 -0
  120. package/dist/types/src/index.d.ts.map +1 -1
  121. package/dist/types/src/internal/Annotation/annotations.d.ts +50 -0
  122. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -1
  123. package/dist/types/src/internal/Annotation/atoms.d.ts +14 -0
  124. package/dist/types/src/internal/Annotation/atoms.d.ts.map +1 -0
  125. package/dist/types/src/internal/Annotation/entity-dictionary.d.ts +13 -0
  126. package/dist/types/src/internal/Annotation/entity-dictionary.d.ts.map +1 -1
  127. package/dist/types/src/internal/Entity/api.d.ts.map +1 -1
  128. package/dist/types/src/internal/Entity/guard.d.ts.map +1 -1
  129. package/dist/types/src/internal/Entity/model.d.ts +1 -1
  130. package/dist/types/src/internal/Entity/model.d.ts.map +1 -1
  131. package/dist/types/src/internal/Entity/object.d.ts +5 -1
  132. package/dist/types/src/internal/Entity/object.d.ts.map +1 -1
  133. package/dist/types/src/internal/Entity/relation.d.ts +7 -0
  134. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -1
  135. package/dist/types/src/internal/Entity/type-uri.d.ts.map +1 -1
  136. package/dist/types/src/internal/Filter/index.d.ts +2 -0
  137. package/dist/types/src/internal/Filter/index.d.ts.map +1 -0
  138. package/dist/types/src/internal/Filter/match.d.ts +22 -0
  139. package/dist/types/src/internal/Filter/match.d.ts.map +1 -0
  140. package/dist/types/src/internal/Format/format.d.ts +0 -2
  141. package/dist/types/src/internal/Format/format.d.ts.map +1 -1
  142. package/dist/types/src/internal/Format/index.d.ts +2 -2
  143. package/dist/types/src/internal/Format/index.d.ts.map +1 -1
  144. package/dist/types/src/internal/Format/string.d.ts +0 -8
  145. package/dist/types/src/internal/Format/string.d.ts.map +1 -1
  146. package/dist/types/src/internal/Format/types.d.ts +2 -1
  147. package/dist/types/src/internal/Format/types.d.ts.map +1 -1
  148. package/dist/types/src/internal/Obj/atoms.d.ts +12 -3
  149. package/dist/types/src/internal/Obj/atoms.d.ts.map +1 -1
  150. package/dist/types/src/internal/Obj/clone.d.ts +2 -1
  151. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -1
  152. package/dist/types/src/internal/Obj/create-object.d.ts +3 -4
  153. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -1
  154. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -1
  155. package/dist/types/src/internal/Query/index.d.ts +1 -0
  156. package/dist/types/src/internal/Query/index.d.ts.map +1 -1
  157. package/dist/types/src/internal/Query/query-result-effect.d.ts +9 -0
  158. package/dist/types/src/internal/Query/query-result-effect.d.ts.map +1 -0
  159. package/dist/types/src/internal/Ref/atoms.d.ts +1 -2
  160. package/dist/types/src/internal/Ref/atoms.d.ts.map +1 -1
  161. package/dist/types/src/internal/Ref/index.d.ts +1 -0
  162. package/dist/types/src/internal/Ref/index.d.ts.map +1 -1
  163. package/dist/types/src/internal/Ref/ref.d.ts +79 -8
  164. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -1
  165. package/dist/types/src/internal/Ref/strong-deps.d.ts +35 -0
  166. package/dist/types/src/internal/Ref/strong-deps.d.ts.map +1 -0
  167. package/dist/types/src/internal/common/atom-snapshot.d.ts +8 -0
  168. package/dist/types/src/internal/common/atom-snapshot.d.ts.map +1 -0
  169. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -1
  170. package/dist/types/src/internal/common/proxy/proxy-types.d.ts +12 -0
  171. package/dist/types/src/internal/common/proxy/proxy-types.d.ts.map +1 -1
  172. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts +25 -0
  173. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -1
  174. package/dist/types/src/internal/common/proxy/schema-validator.d.ts +5 -0
  175. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -1
  176. package/dist/types/src/internal/common/proxy/typed-handler.d.ts +17 -0
  177. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -1
  178. package/dist/types/src/internal/common/types/entity.d.ts +4 -4
  179. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -1
  180. package/dist/types/src/internal/common/types/meta.d.ts +2 -4
  181. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -1
  182. package/dist/types/src/internal/index.d.ts +1 -0
  183. package/dist/types/src/internal/index.d.ts.map +1 -1
  184. package/dist/types/src/testing/test-schema.d.ts +42 -171
  185. package/dist/types/src/testing/test-schema.d.ts.map +1 -1
  186. package/dist/types/tsconfig.tsbuildinfo +1 -1
  187. package/package.json +20 -13
  188. package/src/Annotation.test.ts +257 -10
  189. package/src/Annotation.ts +58 -4
  190. package/src/Collection.ts +10 -12
  191. package/src/Database.ts +55 -21
  192. package/src/Entity.ts +3 -1
  193. package/src/Err.ts +22 -0
  194. package/src/Feed.ts +117 -141
  195. package/src/Filter.test.ts +38 -0
  196. package/src/Filter.ts +17 -3
  197. package/src/Hypergraph.ts +2 -11
  198. package/src/Migration.ts +1 -1
  199. package/src/Obj.test.ts +92 -12
  200. package/src/Obj.ts +38 -5
  201. package/src/Order.ts +3 -3
  202. package/src/Query.test.ts +2 -2
  203. package/src/Query.ts +16 -16
  204. package/src/QueryResult.ts +2 -2
  205. package/src/Ref.ts +14 -6
  206. package/src/Registry.ts +1 -1
  207. package/src/Relation.ts +1 -1
  208. package/src/Tag.ts +13 -16
  209. package/src/Text.test.ts +186 -0
  210. package/src/Text.ts +116 -0
  211. package/src/Type.test.ts +52 -24
  212. package/src/Type.ts +85 -33
  213. package/src/View.ts +22 -30
  214. package/src/index.ts +1 -1
  215. package/src/internal/Annotation/annotations.ts +71 -2
  216. package/src/internal/Annotation/atoms.ts +107 -0
  217. package/src/internal/Annotation/entity-dictionary.ts +40 -37
  218. package/src/internal/Entity/api.ts +1 -1
  219. package/src/internal/Entity/guard.ts +2 -1
  220. package/src/internal/Entity/model.ts +2 -2
  221. package/src/internal/Entity/object.ts +14 -1
  222. package/src/internal/Entity/relation.ts +19 -0
  223. package/src/internal/Entity/type-uri.ts +3 -1
  224. package/src/internal/Filter/index.ts +5 -0
  225. package/src/internal/Filter/match.ts +284 -0
  226. package/src/internal/Format/format.ts +0 -2
  227. package/src/internal/Format/index.ts +2 -2
  228. package/src/internal/Format/string.ts +0 -12
  229. package/src/internal/Format/types.ts +4 -2
  230. package/src/internal/JsonSchema/json-schema.test.ts +82 -54
  231. package/src/internal/Obj/atoms.ts +62 -18
  232. package/src/internal/Obj/clone.ts +61 -20
  233. package/src/internal/Obj/create-object.test.ts +3 -3
  234. package/src/internal/Obj/create-object.ts +3 -4
  235. package/src/internal/Obj/inspect.ts +1 -1
  236. package/src/internal/Obj/json-serializer.test.ts +7 -5
  237. package/src/internal/Obj/json-serializer.ts +4 -4
  238. package/src/internal/Obj/schema-validator.test.ts +53 -0
  239. package/src/internal/Obj/set-value.test.ts +29 -19
  240. package/src/internal/Query/index.ts +1 -0
  241. package/src/internal/Query/query-result-effect.ts +35 -0
  242. package/src/internal/Ref/atoms.ts +23 -3
  243. package/src/internal/Ref/index.ts +1 -0
  244. package/src/internal/Ref/ref.test.ts +8 -8
  245. package/src/internal/Ref/ref.ts +122 -39
  246. package/src/internal/Ref/strong-deps.ts +107 -0
  247. package/src/internal/common/atom-snapshot.ts +19 -0
  248. package/src/internal/common/proxy/make-object.ts +1 -1
  249. package/src/internal/common/proxy/proxy-types.ts +20 -0
  250. package/src/internal/common/proxy/proxy-utils.ts +37 -1
  251. package/src/internal/common/proxy/reactive-array.ts +3 -3
  252. package/src/internal/common/proxy/reactive.test.ts +1 -1
  253. package/src/internal/common/proxy/schema-validator.ts +181 -8
  254. package/src/internal/common/proxy/typed-handler.ts +254 -76
  255. package/src/internal/common/types/entity.ts +15 -7
  256. package/src/internal/index.ts +1 -0
  257. package/src/testing/test-schema.ts +75 -90
  258. package/dist/lib/neutral/chunk-35INCYOE.mjs.map +0 -7
  259. package/dist/lib/neutral/chunk-3PBP4V4O.mjs +0 -101
  260. package/dist/lib/neutral/chunk-3PBP4V4O.mjs.map +0 -7
  261. package/dist/lib/neutral/chunk-4ZUHOTCG.mjs +0 -184
  262. package/dist/lib/neutral/chunk-4ZUHOTCG.mjs.map +0 -7
  263. package/dist/lib/neutral/chunk-5SMDBFVB.mjs.map +0 -7
  264. package/dist/lib/neutral/chunk-6YDI3J37.mjs.map +0 -7
  265. package/dist/lib/neutral/chunk-7FPIAJIV.mjs +0 -2279
  266. package/dist/lib/neutral/chunk-7FPIAJIV.mjs.map +0 -7
  267. package/dist/lib/neutral/chunk-BBFJWWAV.mjs.map +0 -7
  268. package/dist/lib/neutral/chunk-EVK6XBXO.mjs.map +0 -7
  269. package/dist/lib/neutral/chunk-MZ7K3MLL.mjs.map +0 -7
  270. package/dist/lib/neutral/chunk-O6BH7EPN.mjs.map +0 -7
  271. package/dist/lib/neutral/chunk-QQIYS74I.mjs.map +0 -7
  272. package/dist/lib/neutral/chunk-R5W6DXR4.mjs.map +0 -7
  273. package/dist/lib/neutral/chunk-SBVFRTST.mjs.map +0 -7
  274. package/dist/lib/neutral/chunk-T6E37YIP.mjs.map +0 -7
  275. package/dist/lib/neutral/chunk-TFEWTY5A.mjs.map +0 -7
  276. package/dist/lib/neutral/chunk-TYGKCRMK.mjs.map +0 -7
  277. package/dist/lib/neutral/chunk-UUP46KUQ.mjs.map +0 -7
  278. package/dist/lib/neutral/chunk-WTQJHC75.mjs.map +0 -7
  279. package/dist/lib/neutral/chunk-WU3GIANS.mjs.map +0 -7
  280. package/dist/lib/neutral/chunk-ZGNNFYHS.mjs.map +0 -7
  281. package/dist/types/src/exemplars.test.d.ts +0 -2
  282. package/dist/types/src/exemplars.test.d.ts.map +0 -1
  283. package/dist/types/src/hierarchy.test.d.ts +0 -2
  284. package/dist/types/src/hierarchy.test.d.ts.map +0 -1
  285. package/src/exemplars.test.ts +0 -21
  286. package/src/hierarchy.test.ts +0 -33
  287. /package/dist/lib/neutral/{chunk-7PI7C4EF.mjs.map → chunk-4A2NWKRJ.mjs.map} +0 -0
  288. /package/dist/lib/neutral/{chunk-IGK6FN65.mjs.map → chunk-UGFFV2FR.mjs.map} +0 -0
  289. /package/dist/lib/neutral/{chunk-5SUJPHAE.mjs.map → chunk-WKIT2YY5.mjs.map} +0 -0
@@ -0,0 +1,35 @@
1
+ import { type SpaceId, type URI } from '@dxos/keys';
2
+ import { EntityKind } from '../common/types/entity';
3
+ /**
4
+ * Normalized view of the references that make up an entity's strong-dependency set, store-agnostic
5
+ * so it can be filled from an {@link ObjectCore} (db) or a decoded entity (queue item / snapshot).
6
+ */
7
+ export interface StrongDepRefs {
8
+ /** Entity kind — relations additionally depend on their source/target. */
9
+ kind: EntityKind;
10
+ /** Type reference URI (`echo:` for a persisted stored schema, `dxn:` for a static/registry type). */
11
+ type?: URI.URI;
12
+ /** Relation source reference URI. */
13
+ source?: URI.URI;
14
+ /** Relation target reference URI. */
15
+ target?: URI.URI;
16
+ /** Parent reference URI. */
17
+ parent?: URI.URI;
18
+ }
19
+ /**
20
+ * Direct strong-dependency URIs of an entity: the schema (only when stored as an object), the
21
+ * relation source/target, and the parent. Returns URIs (cross-space `echo:` EIDs and queue-item
22
+ * EIDs included); a persisted schema is an `echo:` URI, a static/registry type is a `dxn:` URI.
23
+ *
24
+ * A static/registry type (`dxn:`) is intentionally NOT a strong dep: it is always synchronously
25
+ * available through the registry, so gating on it would needlessly delay surfacing. Only a
26
+ * persisted (db-backed) schema, addressed by an `echo:` URI, must load before its instances.
27
+ */
28
+ export declare const getStrongDependencyUris: (refs: StrongDepRefs, owningSpaceId?: SpaceId) => URI.URI[];
29
+ /**
30
+ * Direct strong-dependency URIs of a live (decoded) entity — a queue item, cross-space proxy, or
31
+ * snapshot. Reads the reference URIs off the entity's hidden model symbols. ECHO db cores compute
32
+ * the same set from their raw encoded references via {@link getStrongDependencyUris}.
33
+ */
34
+ export declare const getStrongDependencies: (entity: unknown) => URI.URI[];
35
+ //# sourceMappingURL=strong-deps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strong-deps.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Ref/strong-deps.ts"],"names":[],"mappings":"AAIA,OAAO,EAAO,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAKpD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,IAAI,EAAE,UAAU,CAAC;IACjB,qGAAqG;IACrG,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;IACf,qCAAqC;IACrC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;IACjB,qCAAqC;IACrC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;IACjB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,SAAU,aAAa,kBAAkB,OAAO,KAAG,GAAG,CAAC,GAAG,EAqB7F,CAAC;AAmBF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,WAAY,OAAO,KAAG,GAAG,CAAC,GAAG,EAwB9D,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Snapshot a value to create a new reference for atom change-detection and React dependency tracking.
3
+ * Objects and arrays are shallow-copied (a fresh reference each read, so an in-place mutation is
4
+ * observed); primitives are returned as-is (so they dedupe via `!==`). Shared by the object-property
5
+ * and annotation atom families.
6
+ */
7
+ export declare const snapshotForComparison: <V>(value: V) => V;
8
+ //# sourceMappingURL=atom-snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atom-snapshot.d.ts","sourceRoot":"","sources":["../../../../../src/internal/common/atom-snapshot.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAI,CAAC,SAAS,CAAC,KAAG,CAQnD,CAAC"}
@@ -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,EAAY,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACpG,OAAO,EAAE,KAAK,UAAU,EAAoB,MAAM,eAAe,CAAC;AAKlE,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
+ {"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,EAAE,KAAK,UAAU,EAAoB,MAAM,eAAe,CAAC;AAKlE,OAAO,EAAwB,UAAU,EAAoC,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"}
@@ -10,6 +10,18 @@ export interface ReactiveHandler<T extends object> extends ProxyHandler<T> {
10
10
  * Called when a proxy is created for this target.
11
11
  */
12
12
  init(target: T): void;
13
+ /**
14
+ * Replace the string CRDT value at `path` with `newText`, applying a minimal diff so cursors and
15
+ * concurrent edits are preserved. Implemented by handlers that back string fields; `Text.update`
16
+ * dispatches here. Must run inside a change context (`Obj.update`).
17
+ */
18
+ textUpdate?(target: T, path: readonly (string | number)[], newText: string): void;
19
+ /**
20
+ * Splice the string CRDT value at `path` (character indices, mirroring `Array.splice`): remove
21
+ * `deleteCount` characters at `start` and insert `insert`. Returns the removed substring. `Text.splice`
22
+ * dispatches here. Must run inside a change context (`Obj.update`).
23
+ */
24
+ textSplice?(target: T, path: readonly (string | number)[], start: number, deleteCount: number, insert: string): string;
13
25
  }
14
26
  /**
15
27
  * For debug-dumping the data of the object.
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-types.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/proxy-types.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACxE;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEzC;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,eAA6C,CAAC"}
1
+ {"version":3,"file":"proxy-types.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/proxy-types.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACxE;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEzC;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;IAEtB;;;;OAIG;IACH,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAElF;;;;OAIG;IACH,UAAU,CAAC,CACT,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAClC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,MAAM,CAAC;CACX;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,eAA6C,CAAC"}
@@ -1,9 +1,23 @@
1
1
  import { type ReactiveHandler } from './proxy-types';
2
2
  export declare const symbolIsProxy: unique symbol;
3
+ /**
4
+ * Marker placed on a reactive-object behaviour prototype (e.g. the typed handler's
5
+ * `TypedObject` prototype). A record target whose prototype chain carries this marker
6
+ * is a reactive data record — equivalent, for the purposes of the "plain object" gates
7
+ * below, to one rooted directly at `Object.prototype`. This lets a handler move its
8
+ * per-object metadata onto an intermediate prototype without those gates mistaking the
9
+ * record for a foreign class instance.
10
+ */
11
+ export declare const symbolReactivePrototype: unique symbol;
3
12
  /**
4
13
  * Internal api.
5
14
  */
6
15
  export declare const isProxy: (value: unknown) => boolean;
16
+ /**
17
+ * True if `value` is a plain data record — either rooted at `Object.prototype` or carrying
18
+ * a reactive behaviour prototype (see {@link symbolReactivePrototype}).
19
+ */
20
+ export declare const isReactiveRecord: (value: any) => boolean;
7
21
  export declare const isValidProxyTarget: (value: any) => value is object;
8
22
  /**
9
23
  * @deprecated
@@ -11,6 +25,17 @@ export declare const isValidProxyTarget: (value: any) => value is object;
11
25
  export declare const getProxySlot: <T extends object>(proxy: any) => ProxyHandlerSlot<T>;
12
26
  export declare const getProxyTarget: <T extends object>(proxy: any) => T;
13
27
  export declare const getProxyHandler: <T extends object>(proxy: any) => ReactiveHandler<T>;
28
+ /**
29
+ * Clamp a splice range to `Array.prototype.splice` semantics for a string of the given `length`:
30
+ * a negative `start` counts from the end, a `start` past the end appends, and `deleteCount` is bounded
31
+ * to the remaining characters. Shared by both reactive handlers so the string CRDT API behaves
32
+ * identically across the in-memory and Automerge backends (Automerge's `splice` otherwise throws on
33
+ * out-of-range indices).
34
+ */
35
+ export declare const normalizeSpliceRange: (length: number, start: number, deleteCount: number) => {
36
+ start: number;
37
+ deleteCount: number;
38
+ };
14
39
  /**
15
40
  * Unsafe method to override id for debugging/testing and migration purposes.
16
41
  * @deprecated
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-utils.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/proxy-utils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,eAAO,MAAM,aAAa,eAAmC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,OAAO,UAAW,OAAO,YAAsC,CAAC;AAE7E,eAAO,MAAM,kBAAkB,UAAW,GAAG,KAAG,KAAK,IAAI,MASxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,MAAM,SAAS,GAAG,KAAG,gBAAgB,CAAC,CAAC,CAI7E,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,MAAM,SAAS,GAAG,KAAG,CAE7D,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,SAAS,GAAG,KAAG,eAAe,CAAC,CAAC,CAE/E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,CAAC,OAAO,CAAC,MAAM,MAAM,SAE1D,CAAC;AAEF;;;;;;GAMG;AAGH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,UAAU,CAAC,WAAW,eAAe,CAAC,CAAC,CAAC,KAAG,CAatF,CAAC;AAEF;;;GAGG;AACH,cAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAE,YAAW,YAAY,CAAC,CAAC,CAAC;IAM/D,QAAQ,CAAC,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,QAAQ;IANlB;;;OAGG;IACH,YACW,MAAM,EAAE,CAAC,EACV,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,EAClC;IAEJ,IAAI,OAAO,uBAGV;IAGD,UAAU,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAE5C;IAED;;OAEG;IACH,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG,CAUxD;CAqCF"}
1
+ {"version":3,"file":"proxy-utils.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/proxy-utils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,eAAO,MAAM,aAAa,eAAmC,CAAC;AAE9D;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,eAA6C,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,OAAO,UAAW,OAAO,YAAsC,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,gBAAgB,UAAW,GAAG,KAAG,OAG7C,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAAW,GAAG,KAAG,KAAK,IAAI,MASxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,MAAM,SAAS,GAAG,KAAG,gBAAgB,CAAC,CAAC,CAI7E,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,MAAM,SAAS,GAAG,KAAG,CAE7D,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,SAAS,GAAG,KAAG,eAAe,CAAC,CAAC,CAE/E,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,WACvB,MAAM,SACP,MAAM,eACA,MAAM,KAClB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAItC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,CAAC,OAAO,CAAC,MAAM,MAAM,SAE1D,CAAC;AAEF;;;;;;GAMG;AAGH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,UAAU,CAAC,WAAW,eAAe,CAAC,CAAC,CAAC,KAAG,CAatF,CAAC;AAEF;;;GAGG;AACH,cAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAE,YAAW,YAAY,CAAC,CAAC,CAAC;IAM/D,QAAQ,CAAC,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,QAAQ;IANlB;;;OAGG;IACH,YACW,MAAM,EAAE,CAAC,EACV,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,EAClC;IAEJ,IAAI,OAAO,uBAGV;IAGD,UAAU,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAE5C;IAED;;OAEG;IACH,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG,CAUxD;CAqCF"}
@@ -7,6 +7,11 @@ export declare class SchemaValidator {
7
7
  static validateSchema(schema: Schema.Schema.AnyNoContext): void;
8
8
  static hasTypeAnnotation(rootObjectSchema: Schema.Schema.AnyNoContext, property: string, annotation: symbol): boolean;
9
9
  static getPropertySchema(rootObjectSchema: Schema.Schema.AnyNoContext, propertyPath: KeyPath, getProperty?: (path: KeyPath) => any): Schema.Schema.AnyNoContext;
10
+ /**
11
+ * Rejects properties not declared on the schema. Types with index signatures allow extra keys.
12
+ */
13
+ static assertExactProperties(schema: Schema.Schema.AnyNoContext, value: unknown, getProperty?: (path: KeyPath) => unknown, path?: KeyPath): void;
14
+ static getIndexedElementSchema(schema: Schema.Schema.AnyNoContext, index: number | string): Schema.Schema.AnyNoContext | null;
10
15
  static getTargetPropertySchema(target: any, prop: string | symbol): Schema.Schema.AnyNoContext;
11
16
  }
12
17
  export declare const checkIdNotPresentOnSchema: (schema: Schema.Schema<any, any, any>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"schema-validator.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/schema-validator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAUxC,qBAAa,eAAe;IAC1B;;;OAGG;IACH,OAAc,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAgBrE;IAED,OAAc,iBAAiB,CAC7B,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAC5C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAWT;IAED,OAAc,iBAAiB,CAC7B,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAC5C,YAAY,EAAE,OAAO,EACrB,WAAW,GAAE,CAAC,IAAI,EAAE,OAAO,KAAK,GAAgB,GAC/C,MAAM,CAAC,MAAM,CAAC,YAAY,CAqB5B;IAED,OAAc,uBAAuB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAepG;CACF;AAyID,eAAO,MAAM,yBAAyB,WAAY,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,SAM7E,CAAC;AAGF,KAAK,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"schema-validator.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/schema-validator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AASxC,qBAAa,eAAe;IAC1B;;;OAGG;IACH,OAAc,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAgBrE;IAED,OAAc,iBAAiB,CAC7B,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAC5C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAWT;IAED,OAAc,iBAAiB,CAC7B,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAC5C,YAAY,EAAE,OAAO,EACrB,WAAW,GAAE,CAAC,IAAI,EAAE,OAAO,KAAK,GAAgB,GAC/C,MAAM,CAAC,MAAM,CAAC,YAAY,CA0B5B;IAED;;OAEG;IACH,OAAc,qBAAqB,CACjC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAClC,KAAK,EAAE,OAAO,EACd,WAAW,GAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAyB,EACzD,IAAI,GAAE,OAAY,GACjB,IAAI,CA+BN;IAED,OAAc,uBAAuB,CACnC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAClC,KAAK,EAAE,MAAM,GAAG,MAAM,GACrB,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAoBnC;IAED,OAAc,uBAAuB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CA6CpG;CACF;AAkND,eAAO,MAAM,yBAAyB,WAAY,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,SAM7E,CAAC;AAGF,KAAK,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC"}
@@ -31,11 +31,28 @@ export declare class TypedReactiveHandler implements ReactiveHandler<ProxyTarget
31
31
  private _inSet;
32
32
  private constructor();
33
33
  init(target: ProxyTarget): void;
34
+ /**
35
+ * Hide the internal instance-state prototype so consumers see a plain object; arrays keep their
36
+ * real (ReactiveArray) prototype.
37
+ */
38
+ getPrototypeOf(target: ProxyTarget): object | null;
34
39
  get(target: ProxyTarget, prop: string | symbol, receiver: any): any;
35
40
  set(target: ProxyTarget, prop: string | symbol, value: any, receiver: any): boolean;
36
41
  ownKeys(target: ProxyTarget): ArrayLike<string | symbol>;
37
42
  deleteProperty(target: ProxyTarget, property: string | symbol): boolean;
38
43
  defineProperty(target: ProxyTarget, property: string | symbol, attributes: PropertyDescriptor): boolean;
44
+ textUpdate(target: ProxyTarget, path: readonly (string | number)[], newText: string): void;
45
+ textSplice(target: ProxyTarget, path: readonly (string | number)[], start: number, deleteCount: number, insert: string): string;
46
+ /**
47
+ * Shared read-modify-write for the in-memory string CRDT path. Mirrors the `set` trap: enforce the
48
+ * change context, then mutate and notify through the same batched notification path so reactivity fires.
49
+ *
50
+ * Writes via `setDeep` on the raw target, intentionally bypassing `_prepareValueForAssignment` /
51
+ * `_validateValue`: a string CRDT delta produces a string, and per-delta schema checks (pattern,
52
+ * maxLength) would reject valid intermediate states during incremental edits. Such constraints are
53
+ * enforced at the initial assignment or as application-level invariants, mirroring the Automerge path.
54
+ */
55
+ private _applyTextMutation;
39
56
  /**
40
57
  * Prepare a value for assignment to a typed object property.
41
58
  * Handles cycle detection, copy-on-assign, array conversion, validation, and ownership.
@@ -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;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
+ {"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;AAOpC,OAAO,EAAmB,QAAQ,EAAE,QAAQ,EAAE,oBAAoB,EAAgB,MAAM,EAAE,MAAM,UAAU,CAAC;AAc3G,OAAO,EAAE,KAAK,eAAe,EAAc,MAAM,eAAe,CAAC;AAYjE,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;AAoNxC;;;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,CAgD9B;IAED;;;OAGG;IACH,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAEjD;IAED,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG,CA0BlE;IAED,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CA0BlF;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,CActG;IAED,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAEzF;IAED,UAAU,CACR,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAClC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,MAAM,CAQR;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAqDlC,OAAO,CAAC,cAAc;IActB,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;AAyD1F,eAAO,MAAM,kBAAkB,GAAI,CAAC,UAAU,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,eAAe,UAAU,SAWtG,CAAC"}
@@ -27,19 +27,19 @@ export declare const StaticTypeSchemaSlot: '~@dxos/echo/Type.StaticSchema';
27
27
  export type StaticTypeSchemaSlot = typeof StaticTypeSchemaSlot;
28
28
  /**
29
29
  * Read the hidden `StaticTypeSchemaSlot` off any value that may carry one.
30
- * Returns `undefined` for raw schemas (no slot) and non-object inputs.
30
+ * Returns `undefined` for raw schemas (no slot) and inputs that cannot carry a brand.
31
31
  * Single point-of-cast for the slot lookup.
32
32
  */
33
33
  export declare const getStaticTypeSchema: (value: unknown) => Schema.Schema.AnyNoContext | undefined;
34
34
  /**
35
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.
36
+ * schemas (which don't carry the brand on their static type) and inputs that
37
+ * cannot carry a brand. Single point-of-cast for the brand lookup.
38
38
  */
39
39
  export declare const getSchemaKind: (value: unknown) => EntityKind | undefined;
40
40
  /**
41
41
  * Read the `[KindId]` brand off a value. Returns `undefined` for raw schemas
42
- * and non-object inputs. Companion to {@link getSchemaKind}.
42
+ * and inputs that cannot carry a brand. Companion to {@link getSchemaKind}.
43
43
  */
44
44
  export declare const getEntityKindBrand: (value: unknown) => EntityKind | undefined;
45
45
  /**
@@ -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;;;;;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
+ {"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;AAU/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,6 +1,7 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import { type EncodedReference, ForeignKey } from '@dxos/echo-protocol';
3
3
  import { type Comparator } from '@dxos/util';
4
+ import type * as Tag from '../../../Tag';
4
5
  import { type Ref } from '../../Ref/ref';
5
6
  import { type AnyProperties } from './base';
6
7
  /**
@@ -18,10 +19,7 @@ export declare const EntityMetaSchema: Schema.Struct<{
18
19
  /**
19
20
  * Tags applied to this entity, as references to {@link Tag} objects.
20
21
  */
21
- tags: Schema.Array$<Schema.suspend<Ref<{
22
- readonly label: string;
23
- readonly hue?: string | undefined;
24
- } & import("../../../Entity").OfKind<import("./entity").EntityKind.Object>>, EncodedReference, never>>;
22
+ tags: Schema.Array$<Schema.suspend<Ref<Tag.Tag>, EncodedReference, never>>;
25
23
  /**
26
24
  * Fully-qualified registry key for the object (FQN format, e.g. `org.example.type.foo`).
27
25
  * Identifies the canonical registry entry the object instance was created from.
@@ -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,KAAK,gBAAgB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGxE,OAAO,EAAE,KAAK,UAAU,EAAgB,MAAM,YAAY,CAAC;AAM3D,OAAO,EAAE,KAAK,GAAG,EAA6B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAI5C;;GAEG;AACH,eAAO,MAAM,SAAS,UAAU,CAAC;AAuBjC,eAAO,MAAM,gBAAgB;;;;;;;;IAG3B;;OAEG;;;;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;OAEG;;IAGH;;;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,GAAG,MAAM,cAAc,CAAC;AAIzC,OAAO,EAAE,KAAK,GAAG,EAA6B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAI5C;;GAEG;AACH,eAAO,MAAM,SAAS,UAAU,CAAC;AAuBjC,eAAO,MAAM,gBAAgB;;;;;;;;IAG3B;;OAEG;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;OAEG;;IAGH;;;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,6 +1,7 @@
1
1
  export * from './Annotation';
2
2
  export * from './common';
3
3
  export * from './Entity';
4
+ export * from './Filter';
4
5
  export * from './Format';
5
6
  export * from './JsonSchema';
6
7
  export * from './Obj';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAIA,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAE7B,cAAc,OAAO,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AAKvB,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAIA,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAE7B,cAAc,OAAO,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AAKvB,cAAc,qBAAqB,CAAC"}
@@ -2,22 +2,23 @@ import * as Schema from 'effect/Schema';
2
2
  import * as Obj from '../Obj';
3
3
  import * as Type from '../Type';
4
4
  export declare namespace TestSchema {
5
+ const Expando_base: Type.ObjClass<Expando, {
6
+ readonly [x: string]: any;
7
+ }, {}>;
5
8
  /**
6
9
  * Expando object is an object with an arbitrary set of properties.
7
10
  * This is the test variant with example.com namespace.
8
11
  */
9
- const Expando: Type.Obj<{
10
- readonly [x: string]: any;
11
- }, Schema.Struct.Fields>;
12
- type Expando = Type.InstanceType<typeof Expando>;
13
- class TestClass {
12
+ export class Expando extends Expando_base {
13
+ }
14
+ export class TestClass {
14
15
  field: string;
15
16
  toJSON(): {
16
17
  field: string;
17
18
  };
18
19
  }
19
20
  /** @deprecated Use another test schema or create a specific local test schema. */
20
- const ExampleSchema: Schema.SchemaClass<{
21
+ export const ExampleSchema: Schema.SchemaClass<{
21
22
  readonly string?: string | undefined;
22
23
  readonly number?: number | undefined;
23
24
  readonly boolean?: boolean | undefined;
@@ -61,10 +62,9 @@ export declare namespace TestSchema {
61
62
  readonly undefined?: undefined;
62
63
  }, never>;
63
64
  /** @deprecated Use another test schema or create a specific local test schema. */
64
- interface ExampleSchema extends Schema.Schema.Type<typeof ExampleSchema> {
65
+ export interface ExampleSchema extends Schema.Schema.Type<typeof ExampleSchema> {
65
66
  }
66
- /** @deprecated Use another test schema or create a specific local test schema. */
67
- const Example: Type.Obj<{
67
+ const Example_base: Type.ObjClass<Example, {
68
68
  readonly string?: string | undefined;
69
69
  readonly number?: number | undefined;
70
70
  readonly boolean?: boolean | undefined;
@@ -85,36 +85,33 @@ export declare namespace TestSchema {
85
85
  readonly referenceArray?: readonly import("../internal").Ref<Example>[] | undefined;
86
86
  readonly classInstance?: TestClass | undefined;
87
87
  readonly other?: any;
88
- }, Schema.Struct.Fields>;
88
+ }, {}>;
89
89
  /** @deprecated Use another test schema or create a specific local test schema. */
90
- interface Example extends Type.InstanceType<typeof Example> {
90
+ export class Example extends Example_base {
91
91
  }
92
- const MessageStruct: Schema.Struct<{
92
+ export const MessageStruct: Schema.Struct<{
93
93
  timestamp: Schema.PropertySignature<":", string, never, ":", string, true, never>;
94
94
  }>;
95
- const Message: Type.Obj<{
95
+ const Message_base: Type.ObjClass<Message, {
96
96
  readonly timestamp: string;
97
- }, Schema.Struct.Fields>;
98
- type Message = Type.InstanceType<typeof Message>;
99
- const Organization: Type.Obj<{
97
+ }, {}>;
98
+ export class Message extends Message_base {
99
+ }
100
+ const Organization_base: Type.ObjClass<Organization, {
100
101
  readonly name: string;
101
102
  readonly properties?: {
102
103
  readonly [x: string]: string;
103
104
  } | undefined;
104
- }, Schema.Struct.Fields>;
105
- type Organization = Type.InstanceType<typeof Organization>;
106
- const Person: Type.Obj<{
105
+ }, {}>;
106
+ export class Organization extends Organization_base {
107
+ }
108
+ const Person_base: Type.ObjClass<Person, {
107
109
  readonly name?: string | undefined;
108
110
  readonly username?: string | undefined;
109
111
  readonly email?: string | undefined;
110
112
  readonly age?: number | undefined;
111
113
  readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
112
- readonly employer?: import("../internal").Ref<{
113
- readonly name: string;
114
- readonly properties?: {
115
- readonly [x: string]: string;
116
- } | undefined;
117
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
114
+ readonly employer?: import("../internal").Ref<Organization & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
118
115
  readonly address?: {
119
116
  readonly city?: string | undefined;
120
117
  readonly state?: string | undefined;
@@ -128,171 +125,45 @@ export declare namespace TestSchema {
128
125
  readonly label: string;
129
126
  readonly value: string;
130
127
  }[] | undefined;
131
- }, Schema.Struct.Fields>;
132
- interface Person extends Type.InstanceType<typeof Person> {
128
+ }, {}>;
129
+ export class Person extends Person_base {
133
130
  }
134
- const Task: Type.Obj<{
131
+ const Task_base: Type.ObjClass<Task, {
135
132
  readonly title?: string | undefined;
136
133
  readonly deadline?: string | undefined;
137
134
  readonly completed?: boolean | undefined;
138
- readonly assignee?: import("../internal").Ref<{
139
- readonly name?: string | undefined;
140
- readonly username?: string | undefined;
141
- readonly email?: string | undefined;
142
- readonly age?: number | undefined;
143
- readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
144
- readonly employer?: import("../internal").Ref<{
145
- readonly name: string;
146
- readonly properties?: {
147
- readonly [x: string]: string;
148
- } | undefined;
149
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
150
- readonly address?: {
151
- readonly city?: string | undefined;
152
- readonly state?: string | undefined;
153
- readonly zip?: string | undefined;
154
- readonly coordinates: {
155
- readonly lat?: number | undefined;
156
- readonly lng?: number | undefined;
157
- };
158
- } | undefined;
159
- readonly fields?: readonly {
160
- readonly label: string;
161
- readonly value: string;
162
- }[] | undefined;
163
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
135
+ readonly assignee?: import("../internal").Ref<Person & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
164
136
  readonly previous?: import("../internal").Ref<Task> | undefined;
165
137
  readonly subTasks?: readonly import("../internal").Ref<Task>[] | undefined;
166
138
  readonly description?: string | undefined;
167
- }, Schema.Struct.Fields>;
168
- interface Task extends Type.InstanceType<typeof Task> {
139
+ }, {}>;
140
+ export class Task extends Task_base {
169
141
  }
170
- const HasManager: Type.Relation<{}, {
171
- readonly name?: string | undefined;
172
- readonly username?: string | undefined;
173
- readonly email?: string | undefined;
174
- readonly age?: number | undefined;
175
- readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
176
- readonly employer?: import("../internal").Ref<{
177
- readonly name: string;
178
- readonly properties?: {
179
- readonly [x: string]: string;
180
- } | undefined;
181
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
182
- readonly address?: {
183
- readonly city?: string | undefined;
184
- readonly state?: string | undefined;
185
- readonly zip?: string | undefined;
186
- readonly coordinates: {
187
- readonly lat?: number | undefined;
188
- readonly lng?: number | undefined;
189
- };
190
- } | undefined;
191
- readonly fields?: readonly {
192
- readonly label: string;
193
- readonly value: string;
194
- }[] | undefined;
195
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object>, {
196
- readonly name?: string | undefined;
197
- readonly username?: string | undefined;
198
- readonly email?: string | undefined;
199
- readonly age?: number | undefined;
200
- readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
201
- readonly employer?: import("../internal").Ref<{
202
- readonly name: string;
203
- readonly properties?: {
204
- readonly [x: string]: string;
205
- } | undefined;
206
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
207
- readonly address?: {
208
- readonly city?: string | undefined;
209
- readonly state?: string | undefined;
210
- readonly zip?: string | undefined;
211
- readonly coordinates: {
212
- readonly lat?: number | undefined;
213
- readonly lng?: number | undefined;
214
- };
215
- } | undefined;
216
- readonly fields?: readonly {
217
- readonly label: string;
218
- readonly value: string;
219
- }[] | undefined;
220
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object>, Schema.Struct.Fields>;
221
- type HasManager = Type.InstanceType<typeof HasManager>;
222
- const EmployedBy: Type.Relation<{
142
+ const HasManager_base: Type.RelationClass<HasManager, {}, Person & import("../Entity").OfKind<import("../internal").EntityKind.Object>, Person & import("../Entity").OfKind<import("../internal").EntityKind.Object>, {}>;
143
+ export class HasManager extends HasManager_base {
144
+ }
145
+ const EmployedBy_base: Type.RelationClass<EmployedBy, {
223
146
  readonly role: string;
224
147
  readonly since?: string | undefined;
225
- }, {
226
- readonly name?: string | undefined;
227
- readonly username?: string | undefined;
228
- readonly email?: string | undefined;
229
- readonly age?: number | undefined;
230
- readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
231
- readonly employer?: import("../internal").Ref<{
232
- readonly name: string;
233
- readonly properties?: {
234
- readonly [x: string]: string;
235
- } | undefined;
236
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
237
- readonly address?: {
238
- readonly city?: string | undefined;
239
- readonly state?: string | undefined;
240
- readonly zip?: string | undefined;
241
- readonly coordinates: {
242
- readonly lat?: number | undefined;
243
- readonly lng?: number | undefined;
244
- };
245
- } | undefined;
246
- readonly fields?: readonly {
247
- readonly label: string;
248
- readonly value: string;
249
- }[] | undefined;
250
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object>, {
251
- readonly name: string;
252
- readonly properties?: {
253
- readonly [x: string]: string;
254
- } | undefined;
255
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object>, Schema.Struct.Fields>;
256
- type EmployedBy = Type.InstanceType<typeof EmployedBy>;
257
- enum RecordType {
148
+ }, Person & import("../Entity").OfKind<import("../internal").EntityKind.Object>, Organization & import("../Entity").OfKind<import("../internal").EntityKind.Object>, {}>;
149
+ export class EmployedBy extends EmployedBy_base {
150
+ }
151
+ export enum RecordType {
258
152
  UNDEFINED = 0,
259
153
  PERSONAL = 1,
260
154
  WORK = 2
261
155
  }
262
- const Container: Type.Obj<{
156
+ const Container_base: Type.ObjClass<Container, {
263
157
  readonly objects?: readonly import("../internal").Ref<Obj.Unknown>[] | undefined;
264
158
  readonly records?: readonly {
265
159
  readonly title?: string | undefined;
266
160
  readonly description?: string | undefined;
267
- readonly contacts?: readonly import("../internal").Ref<{
268
- readonly name?: string | undefined;
269
- readonly username?: string | undefined;
270
- readonly email?: string | undefined;
271
- readonly age?: number | undefined;
272
- readonly tasks?: readonly import("../internal").Ref<Task>[] | undefined;
273
- readonly employer?: import("../internal").Ref<{
274
- readonly name: string;
275
- readonly properties?: {
276
- readonly [x: string]: string;
277
- } | undefined;
278
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown> | undefined;
279
- readonly address?: {
280
- readonly city?: string | undefined;
281
- readonly state?: string | undefined;
282
- readonly zip?: string | undefined;
283
- readonly coordinates: {
284
- readonly lat?: number | undefined;
285
- readonly lng?: number | undefined;
286
- };
287
- } | undefined;
288
- readonly fields?: readonly {
289
- readonly label: string;
290
- readonly value: string;
291
- }[] | undefined;
292
- } & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown>[] | undefined;
161
+ readonly contacts?: readonly import("../internal").Ref<Person & import("../Entity").OfKind<import("../internal").EntityKind.Object> & Obj.Unknown>[] | undefined;
293
162
  readonly type?: RecordType | undefined;
294
163
  }[] | undefined;
295
- }, Schema.Struct.Fields>;
296
- type Container = Type.InstanceType<typeof Container>;
164
+ }, {}>;
165
+ export class Container extends Container_base {
166
+ }
167
+ export {};
297
168
  }
298
169
  //# sourceMappingURL=test-schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-schema.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-schema.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAC;AAE9B,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAEhC,yBAAiB,UAAU,CAAC,CAAC;IAK3B;;;OAGG;IACI,MAAM,OAAO;;4BAEnB,CAAC;IAEF,KAAY,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,OAAO,CAAC,CAAC;IAUxD,MAAa,SAAS;QACpB,KAAK,SAAW;QAChB,MAAM;YACK,KAAK;UACf;KACF;IAED,kFAAkF;IAC3E,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAeH,CAAC;IAExB,kFAAkF;IAClF,UAAiB,aAAc,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,aAAa,CAAC;KAAG;IAElF,kFAAkF;IAC3E,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;4BAAqF,CAAC;IAE1G,kFAAkF;IAClF,UAAiB,OAAQ,SAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,OAAO,CAAC;KAAG;IAO9D,MAAM,aAAa;;MAOxB,CAAC;IAEI,MAAM,OAAO;;4BAAqF,CAAC;IAE1G,KAAY,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,OAAO,CAAC,CAAC;IAMjD,MAAM,YAAY;;;;;4BAQmD,CAAC;IAE7E,KAAY,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,YAAY,CAAC,CAAC;IAM3D,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;4BAoBmE,CAAC;IAEvF,UAAiB,MAAO,SAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,MAAM,CAAC;KAAG;IAM5D,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAQmE,CAAC;IAErF,UAAiB,IAAK,SAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC;KAAG;IAMxD,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kGAMtB,CAAC;IAEF,KAAY,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,UAAU,CAAC,CAAC;IAMvD,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kGAStB,CAAC;IAEF,KAAY,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,UAAU,CAAC,CAAC;IAM9D,KAAY,UAAU;QACpB,SAAS,IAAI;QACb,QAAQ,IAAI;QACZ,IAAI,IAAI;KACT;IAEM,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAYmE,CAAC;IAE1F,KAAY,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,SAAS,CAAC,CAAC;CAC7D"}
1
+ {"version":3,"file":"test-schema.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-schema.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAC;AAE9B,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAEhC,yBAAiB,UAAU,CAAC,CAAC;;;;IAK3B;;;OAGG;IACH,MAAM,OAAO,OAAQ,SAAQ,YAE5B;KAAG;IAUJ,MAAM,OAAO,SAAS;QACpB,KAAK,SAAW;QAChB,MAAM;YACK,KAAK;UACf;KACF;IAED,kFAAkF;IAClF,MAAM,CAAC,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAeH,CAAC;IAExB,kFAAkF;IAClF,MAAM,WAAW,aAAc,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,aAAa,CAAC;KAAG;;;;;;;;;;;;;;;;;;;;;;;IAElF,kFAAkF;IAClF,MAAM,OAAO,OAAQ,SAAQ,YAAsF;KAAG;IAOtH,MAAM,CAAC,MAAM,aAAa;;MAOxB,CAAC;;;;IAEH,MAAM,OAAO,OAAQ,SAAQ,YAAsF;KAAG;;;;;;;IAMtH,MAAM,OAAO,YAAa,SAAQ,iBAUjC;KAAG;;;;;;;;;;;;;;;;;;;;;;IAMJ,MAAM,OAAO,MAAO,SAAQ,WAsB3B;KAAG;;;;;;;;;;IAMJ,MAAM,OAAO,IAAK,SAAQ,SAUzB;KAAG;;IAMJ,MAAM,OAAO,UAAW,SAAQ,eAGX;KAAG;;;;;IAMxB,MAAM,OAAO,UAAW,SAAQ,eAQ/B;KAAG;IAMJ,MAAM,MAAM,UAAU;QACpB,SAAS,IAAI;QACb,QAAQ,IAAI;QACZ,IAAI,IAAI;KACT;;;;;;;;;;IAED,MAAM,OAAO,SAAU,SAAQ,cAc9B;KAAG;;CACL"}