@dxos/echo 0.8.4-main.21d9917 → 0.8.4-main.2244d791bb

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 (278) hide show
  1. package/dist/lib/{browser → neutral}/Annotation.mjs +7 -5
  2. package/dist/lib/neutral/Database.mjs +45 -0
  3. package/dist/lib/{browser → neutral}/Entity.mjs +8 -9
  4. package/dist/lib/{browser → neutral}/Err.mjs +4 -3
  5. package/dist/lib/{browser → neutral}/Filter.mjs +9 -10
  6. package/dist/lib/{browser → neutral}/Format.mjs +4 -5
  7. package/dist/lib/neutral/JsonSchema.mjs +19 -0
  8. package/dist/lib/{browser → neutral}/Key.mjs +2 -3
  9. package/dist/lib/{node-esm → neutral}/Obj.mjs +23 -10
  10. package/dist/lib/{browser → neutral}/Order.mjs +2 -3
  11. package/dist/lib/neutral/Query.mjs +26 -0
  12. package/dist/lib/neutral/QueryResult.mjs +2 -0
  13. package/dist/lib/neutral/Ref.mjs +22 -0
  14. package/dist/lib/{browser → neutral}/Relation.mjs +9 -10
  15. package/dist/lib/neutral/SchemaRegistry.mjs +2 -0
  16. package/dist/lib/neutral/Tag.mjs +25 -0
  17. package/dist/lib/{browser → neutral}/Type.mjs +8 -9
  18. package/dist/lib/{browser/chunk-W5D2GWAW.mjs → neutral/chunk-36GDMODZ.mjs} +5 -6
  19. package/dist/lib/{browser/chunk-W5D2GWAW.mjs.map → neutral/chunk-36GDMODZ.mjs.map} +1 -1
  20. package/dist/lib/{browser/chunk-ZHXZGIXD.mjs → neutral/chunk-4L6DOFXP.mjs} +1 -3
  21. package/dist/lib/{browser/chunk-ZHXZGIXD.mjs.map → neutral/chunk-4L6DOFXP.mjs.map} +1 -1
  22. package/dist/lib/{browser/chunk-NOPVNWPT.mjs → neutral/chunk-5MGEVDUW.mjs} +73 -8
  23. package/dist/lib/neutral/chunk-5MGEVDUW.mjs.map +7 -0
  24. package/dist/lib/{browser/chunk-FRDT7RA4.mjs → neutral/chunk-7WE7SBA2.mjs} +4 -5
  25. package/dist/lib/neutral/chunk-7WE7SBA2.mjs.map +7 -0
  26. package/dist/lib/{browser/chunk-INHXFXY5.mjs → neutral/chunk-ANHVGJI4.mjs} +2 -3
  27. package/dist/lib/{node-esm/chunk-AJEMYSIR.mjs.map → neutral/chunk-ANHVGJI4.mjs.map} +1 -1
  28. package/dist/lib/neutral/chunk-B4FLOYG7.mjs +130 -0
  29. package/dist/lib/neutral/chunk-B4FLOYG7.mjs.map +7 -0
  30. package/dist/lib/{browser/chunk-U2J7TA7K.mjs → neutral/chunk-BHR4XVJK.mjs} +5 -6
  31. package/dist/lib/{node-esm/chunk-DMR7OAFK.mjs.map → neutral/chunk-BHR4XVJK.mjs.map} +1 -1
  32. package/dist/lib/{browser/chunk-ZAGAOZVY.mjs → neutral/chunk-CH3HX4Z5.mjs} +4 -5
  33. package/dist/lib/{node-esm/chunk-QYR67VBV.mjs.map → neutral/chunk-CH3HX4Z5.mjs.map} +1 -1
  34. package/dist/lib/{browser/chunk-CGS2ULMK.mjs → neutral/chunk-J5LGTIGS.mjs} +1 -2
  35. package/dist/lib/{browser/chunk-YKTSSMDS.mjs → neutral/chunk-KB7RIVLK.mjs} +1 -3
  36. package/dist/lib/neutral/chunk-KB7RIVLK.mjs.map +7 -0
  37. package/dist/lib/{browser/chunk-2SBB7OWV.mjs → neutral/chunk-KSFI2POM.mjs} +11 -10
  38. package/dist/lib/neutral/chunk-KSFI2POM.mjs.map +7 -0
  39. package/dist/lib/{browser/chunk-6L5HHUVU.mjs → neutral/chunk-LKQBTRJX.mjs} +18 -5
  40. package/dist/lib/neutral/chunk-LKQBTRJX.mjs.map +7 -0
  41. package/dist/lib/{browser/chunk-CJ5YELTO.mjs → neutral/chunk-MXQJZCPY.mjs} +15 -3
  42. package/dist/lib/neutral/chunk-MXQJZCPY.mjs.map +7 -0
  43. package/dist/lib/{browser/chunk-PQZW3S6L.mjs → neutral/chunk-N2QNHMT5.mjs} +3 -4
  44. package/dist/lib/{node-esm/chunk-Y75VU7LB.mjs.map → neutral/chunk-N2QNHMT5.mjs.map} +1 -1
  45. package/dist/lib/{browser/chunk-IXVWLTG7.mjs → neutral/chunk-OMUPQMLR.mjs} +1 -3
  46. package/dist/lib/{browser/chunk-IXVWLTG7.mjs.map → neutral/chunk-OMUPQMLR.mjs.map} +1 -1
  47. package/dist/lib/{node-esm/chunk-YOLH5KS4.mjs → neutral/chunk-RIMHNJ3E.mjs} +17 -4
  48. package/dist/lib/neutral/chunk-RIMHNJ3E.mjs.map +7 -0
  49. package/dist/lib/{browser/chunk-JMKVF2YQ.mjs → neutral/chunk-ROKO4RKJ.mjs} +2 -3
  50. package/dist/lib/{node-esm/chunk-K37NA7PO.mjs.map → neutral/chunk-ROKO4RKJ.mjs.map} +1 -1
  51. package/dist/lib/{browser/chunk-KQQGVHFN.mjs → neutral/chunk-SHLKRGRB.mjs} +5 -6
  52. package/dist/lib/{node-esm/chunk-NRN3ZW2T.mjs.map → neutral/chunk-SHLKRGRB.mjs.map} +1 -1
  53. package/dist/lib/{browser/chunk-22JMFST2.mjs → neutral/chunk-UW4T7PAL.mjs} +3 -4
  54. package/dist/lib/{browser/chunk-22JMFST2.mjs.map → neutral/chunk-UW4T7PAL.mjs.map} +1 -1
  55. package/dist/lib/{browser/chunk-XDIUHAAX.mjs → neutral/chunk-WSPASOLU.mjs} +3 -4
  56. package/dist/lib/{node-esm/chunk-QLI2EIJ2.mjs.map → neutral/chunk-WSPASOLU.mjs.map} +1 -1
  57. package/dist/lib/{browser/chunk-MYCCGG2T.mjs → neutral/chunk-X2MPMYYN.mjs} +1 -3
  58. package/dist/lib/{node-esm/chunk-MOWUEW5P.mjs.map → neutral/chunk-X2MPMYYN.mjs.map} +1 -1
  59. package/dist/lib/{browser/chunk-FPOISFQK.mjs → neutral/chunk-XAJMXQ4H.mjs} +7 -4
  60. package/dist/lib/neutral/chunk-XAJMXQ4H.mjs.map +7 -0
  61. package/dist/lib/{browser/chunk-BJPE6CIC.mjs → neutral/chunk-ZUG3PNXU.mjs} +146 -83
  62. package/dist/lib/neutral/chunk-ZUG3PNXU.mjs.map +7 -0
  63. package/dist/lib/{browser → neutral}/index.mjs +23 -24
  64. package/dist/lib/{browser → neutral}/internal/index.mjs +13 -8
  65. package/dist/lib/neutral/meta.json +1 -0
  66. package/dist/lib/{browser → neutral}/testing/index.mjs +23 -24
  67. package/dist/lib/{node-esm → neutral}/testing/index.mjs.map +1 -1
  68. package/dist/types/src/Annotation.d.ts +22 -0
  69. package/dist/types/src/Annotation.d.ts.map +1 -1
  70. package/dist/types/src/Database.d.ts +72 -50
  71. package/dist/types/src/Database.d.ts.map +1 -1
  72. package/dist/types/src/Err.d.ts +43 -0
  73. package/dist/types/src/Err.d.ts.map +1 -1
  74. package/dist/types/src/Obj.d.ts +84 -4
  75. package/dist/types/src/Obj.d.ts.map +1 -1
  76. package/dist/types/src/Query.d.ts +10 -0
  77. package/dist/types/src/Query.d.ts.map +1 -1
  78. package/dist/types/src/Relation.d.ts +2 -2
  79. package/dist/types/src/Relation.d.ts.map +1 -1
  80. package/dist/types/src/hierarchy.test.d.ts +2 -0
  81. package/dist/types/src/hierarchy.test.d.ts.map +1 -0
  82. package/dist/types/src/internal/annotations/annotations.d.ts +13 -6
  83. package/dist/types/src/internal/annotations/annotations.d.ts.map +1 -1
  84. package/dist/types/src/internal/annotations/util.d.ts +12 -0
  85. package/dist/types/src/internal/annotations/util.d.ts.map +1 -1
  86. package/dist/types/src/internal/api/meta.d.ts +2 -2
  87. package/dist/types/src/internal/api/meta.d.ts.map +1 -1
  88. package/dist/types/src/internal/entities/model.d.ts +3 -1
  89. package/dist/types/src/internal/entities/model.d.ts.map +1 -1
  90. package/dist/types/src/internal/entities/object.d.ts.map +1 -1
  91. package/dist/types/src/internal/entities/relation.d.ts.map +1 -1
  92. package/dist/types/src/internal/formats/select.d.ts +2 -2
  93. package/dist/types/src/internal/formats/select.d.ts.map +1 -1
  94. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +1 -1
  95. package/dist/types/src/internal/json-schema/json-schema-type.d.ts +130 -29
  96. package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +1 -1
  97. package/dist/types/src/internal/json-schema/json-schema.d.ts +2 -1
  98. package/dist/types/src/internal/json-schema/json-schema.d.ts.map +1 -1
  99. package/dist/types/src/internal/object/json-serializer.d.ts.map +1 -1
  100. package/dist/types/src/internal/object/snapshot.d.ts.map +1 -1
  101. package/dist/types/src/internal/proxy/make-object.d.ts.map +1 -1
  102. package/dist/types/src/internal/proxy/typed-handler.d.ts +2 -1
  103. package/dist/types/src/internal/proxy/typed-handler.d.ts.map +1 -1
  104. package/dist/types/src/internal/ref/ref.d.ts +16 -2
  105. package/dist/types/src/internal/ref/ref.d.ts.map +1 -1
  106. package/dist/types/src/internal/schema/compose.d.ts +2 -1
  107. package/dist/types/src/internal/schema/compose.d.ts.map +1 -1
  108. package/dist/types/src/internal/schema/echo-schema.d.ts +2 -1
  109. package/dist/types/src/internal/schema/echo-schema.d.ts.map +1 -1
  110. package/dist/types/src/internal/schema/persistent-schema.d.ts.map +1 -1
  111. package/dist/types/src/internal/types/meta.d.ts +5 -5
  112. package/dist/types/src/internal/types/meta.d.ts.map +1 -1
  113. package/dist/types/src/internal/types/typename.d.ts +8 -0
  114. package/dist/types/src/internal/types/typename.d.ts.map +1 -1
  115. package/dist/types/tsconfig.tsbuildinfo +1 -1
  116. package/package.json +34 -113
  117. package/src/Annotation.ts +27 -0
  118. package/src/Database.ts +141 -124
  119. package/src/Err.ts +20 -0
  120. package/src/Obj.test.ts +56 -0
  121. package/src/Obj.ts +140 -11
  122. package/src/Query.ts +28 -0
  123. package/src/Relation.ts +5 -3
  124. package/src/hierarchy.test.ts +33 -0
  125. package/src/internal/annotations/annotations.ts +28 -1
  126. package/src/internal/annotations/util.ts +13 -0
  127. package/src/internal/api/meta.ts +3 -3
  128. package/src/internal/entities/model.ts +4 -0
  129. package/src/internal/entities/object.ts +1 -3
  130. package/src/internal/entities/relation.ts +1 -3
  131. package/src/internal/formats/format.test.ts +1 -1
  132. package/src/internal/formats/select.ts +1 -1
  133. package/src/internal/formats/types.ts +1 -1
  134. package/src/internal/json-schema/json-schema-normalize.ts +4 -2
  135. package/src/internal/json-schema/json-schema-type.ts +30 -31
  136. package/src/internal/json-schema/json-schema.ts +10 -6
  137. package/src/internal/object/json-serializer.test.ts +26 -2
  138. package/src/internal/object/json-serializer.ts +25 -9
  139. package/src/internal/object/schema-validator.test.ts +3 -7
  140. package/src/internal/object/set-value.test.ts +9 -9
  141. package/src/internal/object/snapshot.ts +29 -6
  142. package/src/internal/proxy/make-object.ts +12 -2
  143. package/src/internal/proxy/typed-handler.test.ts +8 -12
  144. package/src/internal/proxy/typed-handler.ts +9 -1
  145. package/src/internal/proxy/typed-object.test.ts +11 -11
  146. package/src/internal/ref/ref.test.ts +1 -1
  147. package/src/internal/ref/ref.ts +26 -2
  148. package/src/internal/schema/compose.ts +13 -8
  149. package/src/internal/schema/echo-schema.ts +3 -2
  150. package/src/internal/schema/persistent-schema.ts +2 -1
  151. package/src/internal/types/meta.ts +12 -13
  152. package/src/internal/types/typename.ts +10 -0
  153. package/dist/lib/browser/Database.mjs +0 -18
  154. package/dist/lib/browser/JsonSchema.mjs +0 -20
  155. package/dist/lib/browser/Obj.mjs +0 -91
  156. package/dist/lib/browser/Query.mjs +0 -27
  157. package/dist/lib/browser/QueryResult.mjs +0 -3
  158. package/dist/lib/browser/Ref.mjs +0 -23
  159. package/dist/lib/browser/SchemaRegistry.mjs +0 -3
  160. package/dist/lib/browser/Tag.mjs +0 -26
  161. package/dist/lib/browser/chunk-2SBB7OWV.mjs.map +0 -7
  162. package/dist/lib/browser/chunk-6L5HHUVU.mjs.map +0 -7
  163. package/dist/lib/browser/chunk-7STIBCP7.mjs +0 -133
  164. package/dist/lib/browser/chunk-7STIBCP7.mjs.map +0 -7
  165. package/dist/lib/browser/chunk-BJPE6CIC.mjs.map +0 -7
  166. package/dist/lib/browser/chunk-CJ5YELTO.mjs.map +0 -7
  167. package/dist/lib/browser/chunk-FPOISFQK.mjs.map +0 -7
  168. package/dist/lib/browser/chunk-FRDT7RA4.mjs.map +0 -7
  169. package/dist/lib/browser/chunk-INHXFXY5.mjs.map +0 -7
  170. package/dist/lib/browser/chunk-JMKVF2YQ.mjs.map +0 -7
  171. package/dist/lib/browser/chunk-KQQGVHFN.mjs.map +0 -7
  172. package/dist/lib/browser/chunk-MYCCGG2T.mjs.map +0 -7
  173. package/dist/lib/browser/chunk-NOPVNWPT.mjs.map +0 -7
  174. package/dist/lib/browser/chunk-PQZW3S6L.mjs.map +0 -7
  175. package/dist/lib/browser/chunk-RK4Z4JUZ.mjs +0 -283
  176. package/dist/lib/browser/chunk-RK4Z4JUZ.mjs.map +0 -7
  177. package/dist/lib/browser/chunk-U2J7TA7K.mjs.map +0 -7
  178. package/dist/lib/browser/chunk-XDIUHAAX.mjs.map +0 -7
  179. package/dist/lib/browser/chunk-YKTSSMDS.mjs.map +0 -7
  180. package/dist/lib/browser/chunk-ZAGAOZVY.mjs.map +0 -7
  181. package/dist/lib/browser/meta.json +0 -1
  182. package/dist/lib/browser/testing/index.mjs.map +0 -7
  183. package/dist/lib/node-esm/Annotation.mjs +0 -33
  184. package/dist/lib/node-esm/Annotation.mjs.map +0 -7
  185. package/dist/lib/node-esm/Database.mjs +0 -18
  186. package/dist/lib/node-esm/Database.mjs.map +0 -7
  187. package/dist/lib/node-esm/Entity.mjs +0 -52
  188. package/dist/lib/node-esm/Entity.mjs.map +0 -7
  189. package/dist/lib/node-esm/Err.mjs +0 -11
  190. package/dist/lib/node-esm/Err.mjs.map +0 -7
  191. package/dist/lib/node-esm/Filter.mjs +0 -62
  192. package/dist/lib/node-esm/Filter.mjs.map +0 -7
  193. package/dist/lib/node-esm/Format.mjs +0 -67
  194. package/dist/lib/node-esm/Format.mjs.map +0 -7
  195. package/dist/lib/node-esm/JsonSchema.mjs +0 -20
  196. package/dist/lib/node-esm/JsonSchema.mjs.map +0 -7
  197. package/dist/lib/node-esm/Key.mjs +0 -13
  198. package/dist/lib/node-esm/Key.mjs.map +0 -7
  199. package/dist/lib/node-esm/Obj.mjs.map +0 -7
  200. package/dist/lib/node-esm/Order.mjs +0 -13
  201. package/dist/lib/node-esm/Order.mjs.map +0 -7
  202. package/dist/lib/node-esm/Query.mjs +0 -27
  203. package/dist/lib/node-esm/Query.mjs.map +0 -7
  204. package/dist/lib/node-esm/QueryResult.mjs +0 -3
  205. package/dist/lib/node-esm/QueryResult.mjs.map +0 -7
  206. package/dist/lib/node-esm/Ref.mjs +0 -23
  207. package/dist/lib/node-esm/Ref.mjs.map +0 -7
  208. package/dist/lib/node-esm/Relation.mjs +0 -85
  209. package/dist/lib/node-esm/Relation.mjs.map +0 -7
  210. package/dist/lib/node-esm/SchemaRegistry.mjs +0 -3
  211. package/dist/lib/node-esm/SchemaRegistry.mjs.map +0 -7
  212. package/dist/lib/node-esm/Tag.mjs +0 -26
  213. package/dist/lib/node-esm/Tag.mjs.map +0 -7
  214. package/dist/lib/node-esm/Type.mjs +0 -48
  215. package/dist/lib/node-esm/Type.mjs.map +0 -7
  216. package/dist/lib/node-esm/chunk-4PNXQA64.mjs +0 -250
  217. package/dist/lib/node-esm/chunk-4PNXQA64.mjs.map +0 -7
  218. package/dist/lib/node-esm/chunk-5OBN7GZW.mjs +0 -158
  219. package/dist/lib/node-esm/chunk-5OBN7GZW.mjs.map +0 -7
  220. package/dist/lib/node-esm/chunk-AJEMYSIR.mjs +0 -22
  221. package/dist/lib/node-esm/chunk-ANLVLWME.mjs +0 -98
  222. package/dist/lib/node-esm/chunk-ANLVLWME.mjs.map +0 -7
  223. package/dist/lib/node-esm/chunk-DMR7OAFK.mjs +0 -57
  224. package/dist/lib/node-esm/chunk-FWTSPIFF.mjs +0 -133
  225. package/dist/lib/node-esm/chunk-FWTSPIFF.mjs.map +0 -7
  226. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  227. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +0 -7
  228. package/dist/lib/node-esm/chunk-ILMLLM4R.mjs +0 -204
  229. package/dist/lib/node-esm/chunk-ILMLLM4R.mjs.map +0 -7
  230. package/dist/lib/node-esm/chunk-K37NA7PO.mjs +0 -43
  231. package/dist/lib/node-esm/chunk-LT3H4JOX.mjs +0 -3847
  232. package/dist/lib/node-esm/chunk-LT3H4JOX.mjs.map +0 -7
  233. package/dist/lib/node-esm/chunk-MOLNWFNL.mjs +0 -9
  234. package/dist/lib/node-esm/chunk-MOLNWFNL.mjs.map +0 -7
  235. package/dist/lib/node-esm/chunk-MOWUEW5P.mjs +0 -15
  236. package/dist/lib/node-esm/chunk-NBWL7UCZ.mjs +0 -40
  237. package/dist/lib/node-esm/chunk-NBWL7UCZ.mjs.map +0 -7
  238. package/dist/lib/node-esm/chunk-NRN3ZW2T.mjs +0 -143
  239. package/dist/lib/node-esm/chunk-QLI2EIJ2.mjs +0 -41
  240. package/dist/lib/node-esm/chunk-QYR67VBV.mjs +0 -288
  241. package/dist/lib/node-esm/chunk-UKGVOINP.mjs +0 -9
  242. package/dist/lib/node-esm/chunk-UKGVOINP.mjs.map +0 -7
  243. package/dist/lib/node-esm/chunk-W6QIEBTQ.mjs +0 -403
  244. package/dist/lib/node-esm/chunk-W6QIEBTQ.mjs.map +0 -7
  245. package/dist/lib/node-esm/chunk-XHJRMQZD.mjs +0 -69
  246. package/dist/lib/node-esm/chunk-XHJRMQZD.mjs.map +0 -7
  247. package/dist/lib/node-esm/chunk-Y75VU7LB.mjs +0 -74
  248. package/dist/lib/node-esm/chunk-YOLH5KS4.mjs.map +0 -7
  249. package/dist/lib/node-esm/chunk-YQ2NWGL5.mjs +0 -39
  250. package/dist/lib/node-esm/chunk-YQ2NWGL5.mjs.map +0 -7
  251. package/dist/lib/node-esm/chunk-ZBB67AKD.mjs +0 -24
  252. package/dist/lib/node-esm/chunk-ZBB67AKD.mjs.map +0 -7
  253. package/dist/lib/node-esm/index.mjs +0 -85
  254. package/dist/lib/node-esm/index.mjs.map +0 -7
  255. package/dist/lib/node-esm/internal/index.mjs +0 -457
  256. package/dist/lib/node-esm/internal/index.mjs.map +0 -7
  257. package/dist/lib/node-esm/meta.json +0 -1
  258. package/dist/lib/node-esm/testing/index.mjs +0 -367
  259. /package/dist/lib/{browser → neutral}/Annotation.mjs.map +0 -0
  260. /package/dist/lib/{browser → neutral}/Database.mjs.map +0 -0
  261. /package/dist/lib/{browser → neutral}/Entity.mjs.map +0 -0
  262. /package/dist/lib/{browser → neutral}/Err.mjs.map +0 -0
  263. /package/dist/lib/{browser → neutral}/Filter.mjs.map +0 -0
  264. /package/dist/lib/{browser → neutral}/Format.mjs.map +0 -0
  265. /package/dist/lib/{browser → neutral}/JsonSchema.mjs.map +0 -0
  266. /package/dist/lib/{browser → neutral}/Key.mjs.map +0 -0
  267. /package/dist/lib/{browser → neutral}/Obj.mjs.map +0 -0
  268. /package/dist/lib/{browser → neutral}/Order.mjs.map +0 -0
  269. /package/dist/lib/{browser → neutral}/Query.mjs.map +0 -0
  270. /package/dist/lib/{browser → neutral}/QueryResult.mjs.map +0 -0
  271. /package/dist/lib/{browser → neutral}/Ref.mjs.map +0 -0
  272. /package/dist/lib/{browser → neutral}/Relation.mjs.map +0 -0
  273. /package/dist/lib/{browser → neutral}/SchemaRegistry.mjs.map +0 -0
  274. /package/dist/lib/{browser → neutral}/Tag.mjs.map +0 -0
  275. /package/dist/lib/{browser → neutral}/Type.mjs.map +0 -0
  276. /package/dist/lib/{browser/chunk-CGS2ULMK.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  277. /package/dist/lib/{browser → neutral}/index.mjs.map +0 -0
  278. /package/dist/lib/{browser → neutral}/internal/index.mjs.map +0 -0
@@ -3,6 +3,7 @@ import * as SchemaAST from 'effect/SchemaAST';
3
3
  import { DXN } from '@dxos/keys';
4
4
  import { type Primitive } from '@dxos/util';
5
5
  import { EntityKind } from '../types';
6
+ import { type AnnotationHelper } from './util';
6
7
  /**
7
8
  * Sets the path for the field.
8
9
  * @param path Data source path in the json path format. This is the field path in the source object.
@@ -102,7 +103,7 @@ export declare const getPropertyMetaAnnotation: <T>(prop: SchemaAST.PropertySign
102
103
  */
103
104
  export declare const ReferenceAnnotationId: unique symbol;
104
105
  export type ReferenceAnnotationValue = TypeAnnotation;
105
- export declare const ReferenceAnnotation: import("./util").AnnotationHelper<TypeAnnotation>;
106
+ export declare const ReferenceAnnotation: AnnotationHelper<TypeAnnotation>;
106
107
  /**
107
108
  * SchemaMeta.
108
109
  */
@@ -114,13 +115,13 @@ export type SchemaMeta = TypeMeta & {
114
115
  * Identifies a schema as a schema for a hidden system type.
115
116
  */
116
117
  export declare const SystemTypeAnnotationId: unique symbol;
117
- export declare const SystemTypeAnnotation: import("./util").AnnotationHelper<boolean>;
118
+ export declare const SystemTypeAnnotation: AnnotationHelper<boolean>;
118
119
  /**
119
120
  * Identifies label property or JSON path expression.
120
121
  * Either a string or an array of strings representing field accessors each matched in priority order.
121
122
  */
122
123
  export declare const LabelAnnotationId: unique symbol;
123
- export declare const LabelAnnotation: import("./util").AnnotationHelper<string[]>;
124
+ export declare const LabelAnnotation: AnnotationHelper<string[]>;
124
125
  /**
125
126
  * Returns the label for a given object based on {@link LabelAnnotationId}.
126
127
  * Lower-level version that requires explicit schema parameter.
@@ -136,7 +137,7 @@ export declare const setLabelWithSchema: <S extends Schema.Schema.Any>(schema: S
136
137
  * A string representing field accessor.
137
138
  */
138
139
  export declare const DescriptionAnnotationId: unique symbol;
139
- export declare const DescriptionAnnotation: import("./util").AnnotationHelper<string>;
140
+ export declare const DescriptionAnnotation: AnnotationHelper<string>;
140
141
  /**
141
142
  * Returns the description for a given object based on {@link DescriptionAnnotationId}.
142
143
  * Lower-level version that requires explicit schema parameter.
@@ -152,7 +153,7 @@ export declare const setDescriptionWithSchema: <S extends Schema.Schema.Any>(sch
152
153
  * By default, all properties are included in forms, so this is opt-out.
153
154
  */
154
155
  export declare const FormInputAnnotationId: unique symbol;
155
- export declare const FormInputAnnotation: import("./util").AnnotationHelper<boolean>;
156
+ export declare const FormInputAnnotation: AnnotationHelper<boolean>;
156
157
  /**
157
158
  * Default field to be used on referenced schema to lookup the value.
158
159
  */
@@ -166,5 +167,11 @@ export type GeneratorAnnotationValue = string | {
166
167
  args?: any[];
167
168
  probability?: number;
168
169
  };
169
- export declare const GeneratorAnnotation: import("./util").AnnotationHelper<GeneratorAnnotationValue>;
170
+ export declare const GeneratorAnnotation: AnnotationHelper<GeneratorAnnotationValue>;
171
+ interface MakeAnnoationsProps<T> {
172
+ id: string;
173
+ schema: Schema.Schema<T, any, never>;
174
+ }
175
+ export declare const makeUserAnnotation: <T>(props: MakeAnnoationsProps<T>) => AnnotationHelper<T>;
176
+ export {};
170
177
  //# sourceMappingURL=annotations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../../../../src/internal/annotations/annotations.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAK9C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAsB,UAAU,EAAqB,MAAM,UAAU,CAAC;AAS7E;;;GAGG;AAEH,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,MAmQ5B,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,AAnQY,CAAC;AAMrF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,eAAuD,CAAC;AAE/F,eAAO,MAAM,2BAA2B,GAAI,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,uBAItD,CAAC;AAEhB;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,KAAG,GAAG,GAAG,SAc9D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAAI,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,KAAG,GAQ3E,CAAC;AAMF;;;GAGG;AAGH,eAAO,MAAM,cAAc,6CAK1B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,6CAGxB,CAAC;AAEH,eAAO,MAAM,QAAQ;;;EAGnB,CAAC;AAEH,MAAM,WAAW,QAAS,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC;CAAG;AAExE;;GAEG;AACH,eAAO,MAAM,gBAAgB,eAA6C,CAAC;AAE3E;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;IAKvB;;;OAGG;;IAGH;;;OAGG;;GAGN,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,cAAc,CAAC;CAAG;AAEpF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,KAAG,cAAc,GAAG,SAM9E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,KAAG,UAAU,GAAG,SAA4C,CAAC;AAoEpH;;;;;;;;GAQG;AAEH,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACpE,QAAQ,MAAM,EACd,QAAQ,GAAG,KACV,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CA0BrC,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,eAAqD,CAAC;AAE3F,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,SAAS,EAAE,CAAC;AAEpF,MAAM,MAAM,sBAAsB,GAAG;IACnC,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAAC;CACnC,CAAC;AAIF,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,OAAO,iBAAiB,MACzD,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAStE,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,CAAC,EAAE,MAAM,SAAS,CAAC,iBAAiB,EAAE,MAAM,MAAM,kBAKzF,CAAC;AAMJ;;GAEG;AACH,eAAO,MAAM,qBAAqB,eAAkD,CAAC;AACrF,MAAM,MAAM,wBAAwB,GAAG,cAAc,CAAC;AACtD,eAAO,MAAM,mBAAmB,mDAA0E,CAAC;AAE3G;;GAEG;AACH,eAAO,MAAM,gBAAgB,eAAwC,CAAC;AACtE,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,sBAAsB,eAAmD,CAAC;AACvF,eAAO,MAAM,oBAAoB,4CAA0D,CAAC;AAE5F;;;GAGG;AACH,eAAO,MAAM,iBAAiB,eAA8C,CAAC;AAC7E,eAAO,MAAM,eAAe,6CAAsD,CAAC;AAEnF;;;GAGG;AAEH,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAC5D,QAAQ,CAAC,EACT,QAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAC5B,MAAM,GAAG,SAwBX,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAC5D,QAAQ,CAAC,EACT,QAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAC7B,OAAO,MAAM,SAOd,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,eAAoD,CAAC;AACzF,eAAO,MAAM,qBAAqB,2CAA0D,CAAC;AAE7F;;;GAGG;AAEH,eAAO,MAAM,wBAAwB,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAClE,QAAQ,CAAC,EACT,QAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAC5B,MAAM,GAAG,SAiBX,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAClE,QAAQ,CAAC,EACT,QAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAC7B,aAAa,MAAM,SAIpB,CAAC;AAEF;;;GAGG;AAEH,eAAO,MAAM,qBAAqB,eAAkD,CAAC;AACrF,eAAO,MAAM,mBAAmB,4CAAyD,CAAC;AAE1F;;GAEG;AACH,eAAO,MAAM,uBAAuB,eAAoD,CAAC;AAEzF;;GAEG;AACH,eAAO,MAAM,qBAAqB,eAAkD,CAAC;AAErF,MAAM,MAAM,wBAAwB,GAChC,MAAM,GACN;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEN,eAAO,MAAM,mBAAmB,6DAA0E,CAAC"}
1
+ {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../../../../src/internal/annotations/annotations.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,22 @@ import type * as Schema from 'effect/Schema';
3
3
  import * as SchemaAST from 'effect/SchemaAST';
4
4
  import { EntityKind } from '../types';
5
5
  export interface AnnotationHelper<T> {
6
+ /**
7
+ * Get the annotation value from the schema.
8
+ */
6
9
  get: (schema: Schema.Schema.Any) => Option.Option<T>;
10
+ /**
11
+ * Get the annotation value from the AST.
12
+ */
7
13
  getFromAst: (ast: SchemaAST.AST) => Option.Option<T>;
14
+ /**
15
+ * Set the annotation value on the schema.
16
+ */
8
17
  set: (value: T) => <S extends Schema.Schema.Any>(schema: S) => S;
9
18
  }
19
+ /**
20
+ * Note: only for system annotations.
21
+ */
10
22
  export declare const createAnnotationHelper: <T>(id: symbol) => AnnotationHelper<T>;
11
23
  /**
12
24
  * If property is optional returns the nested property, otherwise returns the property.
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../../src/internal/annotations/util.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAK9C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrD,UAAU,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrD,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;CAClE;AAED,eAAO,MAAM,sBAAsB,GAAI,CAAC,EAAE,IAAI,MAAM,KAAG,gBAAgB,CAAC,CAAC,CASxE,CAAC;AAEF;;GAEG;AAEH,eAAO,MAAM,cAAc,GAAI,UAAU,SAAS,CAAC,iBAAiB,gDAMnE,CAAC;AAEF;;;GAGG;AAEH,eAAO,MAAM,4BAA4B,GAAI,SAAS;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,QAiBA,CAAC"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../../src/internal/annotations/util.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAK9C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC;;OAEG;IACH,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrD;;OAEG;IACH,UAAU,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrD;;OAEG;IACH,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;CAClE;AAED;;GAEG;AAEH,eAAO,MAAM,sBAAsB,GAAI,CAAC,EAAE,IAAI,MAAM,KAAG,gBAAgB,CAAC,CAAC,CASxE,CAAC;AAEF;;GAEG;AAEH,eAAO,MAAM,cAAc,GAAI,UAAU,SAAS,CAAC,iBAAiB,gDAMnE,CAAC;AAEF;;;GAGG;AAEH,eAAO,MAAM,4BAA4B,GAAI,SAAS;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,QAiBA,CAAC"}
@@ -9,7 +9,7 @@ export type ReadonlyMeta = DeepReadonly<ObjectMeta>;
9
9
  /**
10
10
  * Mutable meta type received in meta mutation callbacks.
11
11
  */
12
- export type Meta = ObjectMeta;
12
+ export type Meta = Mutable<ObjectMeta>;
13
13
  /**
14
14
  * Get the metadata for an entity with validation.
15
15
  * Returns mutable meta when passed a mutable entity (inside change callback).
@@ -17,7 +17,7 @@ export type Meta = ObjectMeta;
17
17
  *
18
18
  * TODO(burdon): When passed a Snapshot, should return a snapshot of meta, not the live meta proxy.
19
19
  */
20
- export declare function getMetaChecked(entity: Mutable<AnyProperties>): ObjectMeta;
20
+ export declare function getMetaChecked(entity: Mutable<AnyProperties>): Meta;
21
21
  export declare function getMetaChecked(entity: AnyProperties): ReadonlyMeta;
22
22
  /**
23
23
  * @returns Foreign keys for the entity from the specified source.
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../../../src/internal/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,UAAU,CAAC;AAE9B;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC;AAC3E,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,CAAC;AAQpE;;;GAGG;AACH,eAAO,MAAM,OAAO,GAAI,QAAQ,aAAa,EAAE,QAAQ,MAAM,KAAG,UAAU,EAKzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,QAAQ,MAAM,SAQxE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,MAAM,SAIjE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,MAAM,SAWpE,CAAC"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../../../src/internal/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,GAAI,QAAQ,aAAa,EAAE,QAAQ,MAAM,KAAG,UAAU,EAKzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,QAAQ,MAAM,SAQxE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,MAAM,SAIjE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,MAAM,SAWpE,CAAC"}
@@ -2,7 +2,7 @@ import type * as Schema from 'effect/Schema';
2
2
  import { type ForeignKey } from '@dxos/echo-protocol';
3
3
  import { DXN, ObjectId } from '@dxos/keys';
4
4
  import type * as Database from '../../Database';
5
- import { type ATTR_META, type ATTR_TYPE, EntityKind, KindId, type MetaId, type ObjectMeta, type SchemaId, TypeId, type Version } from '../types';
5
+ import { type ATTR_META, type ATTR_PARENT, type ATTR_TYPE, EntityKind, KindId, type MetaId, type ObjectMeta, type ParentId, type SchemaId, TypeId, type Version } from '../types';
6
6
  import { type ATTR_RELATION_SOURCE, type ATTR_RELATION_TARGET, RelationSourceDXNId, RelationSourceId, RelationTargetDXNId, RelationTargetId } from './relation';
7
7
  /**
8
8
  * Property name for self DXN when object is serialized to JSON.
@@ -39,6 +39,7 @@ export interface InternalObjectProps {
39
39
  readonly [SchemaId]: Schema.Schema.AnyNoContext;
40
40
  readonly [TypeId]: DXN;
41
41
  readonly [MetaId]?: ObjectMeta;
42
+ [ParentId]?: InternalObjectProps;
42
43
  readonly [ObjectDatabaseId]?: Database.Database;
43
44
  readonly [ObjectDeletedId]?: boolean;
44
45
  readonly [ObjectVersionId]?: Version;
@@ -61,6 +62,7 @@ export interface ObjectJSON {
61
62
  id: string;
62
63
  [ATTR_TYPE]: DXN.String;
63
64
  [ATTR_SELF_DXN]?: DXN.String;
65
+ [ATTR_PARENT]?: string;
64
66
  [ATTR_DELETED]?: boolean;
65
67
  [ATTR_META]?: ObjectMetaJSON;
66
68
  [ATTR_RELATION_SOURCE]?: DXN.String;
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/model.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAyC,KAAK,QAAQ,EAAgC,MAAM,gBAAgB,CAAC;AACpH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,UAAU,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAC1B,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAC9B,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IACxD,cAAc,CAAC,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE;IAC7B,CACE,IAAI,EAAE,QAAQ,GACb,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAC5F,IAAI,EAAE,IAAI,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,KAC7B,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;CA4BrC,CAAC"}
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAyC,KAAK,QAAQ,EAAgC,MAAM,gBAAgB,CAAC;AACpH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,UAAU,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAC1B,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAC9B,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IACxD,cAAc,CAAC,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE;IAC7B,CACE,IAAI,EAAE,QAAQ,GACb,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAC5F,IAAI,EAAE,IAAI,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,KAC7B,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;CA0BrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/relation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,OAAO,EAGL,KAAK,QAAQ,EAKd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,UAAU,CAAC;AAEnE;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC;AAE7F;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC;AAE7F;;GAEG;AAEH,MAAM,MAAM,wBAAwB,CAAC,MAAM,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI;IACjE;;OAEG;IACH,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,wBAAwB,CAAC,MAAM,MAAM,EAAE,MAAM,OAAO,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AACjH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,wBAAwB,CAAC,MAAM,OAAO,EAAE,MAAM,MAAM,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AAEjH,MAAM,MAAM,yBAAyB,CACnC,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IACxC,QAAQ,GAAG;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAC5B,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAC9B,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IACxD,cAAc,CAChB,IAAI,EACJ,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAChF,UAAU,CAAC,QAAQ,EACnB,MAAM,CACP,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,wCAKC,yBAAyB,CAAC,MAAM,EAAE,MAAM,CAAC,MAYlC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAChG,MAAM,IAAI,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC/B,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAgCnD,CAAC"}
1
+ {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/relation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,OAAO,EAGL,KAAK,QAAQ,EAKd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,UAAU,CAAC;AAEnE;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC;AAE7F;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC;AAE7F;;GAEG;AAEH,MAAM,MAAM,wBAAwB,CAAC,MAAM,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI;IACjE;;OAEG;IACH,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,wBAAwB,CAAC,MAAM,MAAM,EAAE,MAAM,OAAO,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AACjH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,wBAAwB,CAAC,MAAM,OAAO,EAAE,MAAM,MAAM,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AAEjH,MAAM,MAAM,yBAAyB,CACnC,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IACxC,QAAQ,GAAG;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAC5B,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAC9B,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IACxD,cAAc,CAChB,IAAI,EACJ,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAChF,UAAU,CAAC,QAAQ,EACnB,MAAM,CACP,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,wCAKC,yBAAyB,CAAC,MAAM,EAAE,MAAM,CAAC,MAYlC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAChG,MAAM,IAAI,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC/B,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CA8BnD,CAAC"}
@@ -2,12 +2,12 @@ import * as Schema from 'effect/Schema';
2
2
  /**
3
3
  * Schema for a single select option. Used to define choices in a {single|multi}-select field.
4
4
  */
5
- export declare const SelectOption: Schema.mutable<Schema.Struct<{
5
+ export declare const SelectOption: Schema.Struct<{
6
6
  /** Stable identifier for the option. */
7
7
  id: typeof Schema.NonEmptyString;
8
8
  title: typeof Schema.String;
9
9
  /** Color palette used for visual styling. */
10
10
  color: typeof Schema.String;
11
- }>>;
11
+ }>;
12
12
  export type SelectOption = Schema.Schema.Type<typeof SelectOption>;
13
13
  //# sourceMappingURL=select.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../../src/internal/formats/select.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB,wCAAwC;;;IAGxC,6CAA6C;;GAExB,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../../src/internal/formats/select.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB,wCAAwC;;;IAGxC,6CAA6C;;EAE7C,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"json-schema-normalize.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema-normalize.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE3E;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,cAAc,KAAG,cAIxD,CAAC"}
1
+ {"version":3,"file":"json-schema-normalize.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema-normalize.ts"],"names":[],"mappings":"AAMA,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE3E;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,cAAc,KAAG,cAIxD,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import { JsonPath, type JsonProp } from '@dxos/effect';
3
+ import { type Mutable } from '../proxy';
3
4
  /**
4
5
  * Go under the `annotations` property.
5
6
  */
6
- export declare const JsonSchemaEchoAnnotations: Schema.mutable<Schema.Struct<{
7
+ export declare const JsonSchemaEchoAnnotations: Schema.Struct<{
7
8
  /**
8
9
  * Label for this schema.
9
10
  * Mapped from {@link LabelAnnotationId}.
@@ -17,20 +18,20 @@ export declare const JsonSchemaEchoAnnotations: Schema.mutable<Schema.Struct<{
17
18
  /**
18
19
  * {@link PropertyMeta} annotations get serialized here.
19
20
  */
20
- meta: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, typeof Schema.Any>>>;
21
+ meta: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.Any>>;
21
22
  /**
22
23
  * @deprecated
23
24
  */
24
- type: Schema.optional<Schema.mutable<Schema.Struct<{
25
+ type: Schema.optional<Schema.Struct<{
25
26
  typename: typeof Schema.String;
26
27
  version: typeof Schema.String;
27
28
  schemaId: Schema.optional<typeof Schema.String>;
28
- }>>>;
29
+ }>>;
29
30
  /**
30
31
  * @deprecated Superseded by `meta`.
31
32
  */
32
- annotations: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, typeof Schema.Any>>>;
33
- }>>;
33
+ annotations: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.Any>>;
34
+ }>;
34
35
  export type JsonSchemaEchoAnnotations = Schema.Schema.Type<typeof JsonSchemaEchoAnnotations>;
35
36
  /**
36
37
  * Describes a schema for the JSON-schema objects stored in ECHO.
@@ -143,7 +144,7 @@ declare const _JsonSchemaType: Schema.Struct<{
143
144
  contains: Schema.optional<Schema.suspend<JsonSchemaType, JsonSchemaType, never>>;
144
145
  maxProperties: Schema.optional<Schema.filter<typeof Schema.Number>>;
145
146
  minProperties: Schema.optional<Schema.filter<typeof Schema.Number>>;
146
- required: Schema.optional<Schema.mutable<Schema.Array$<typeof Schema.String>>>;
147
+ required: Schema.optional<Schema.Array$<typeof Schema.String>>;
147
148
  /**
148
149
  * Non-standard JSON Schema extension.
149
150
  * Defines the order of properties in the object.
@@ -151,13 +152,13 @@ declare const _JsonSchemaType: Schema.Struct<{
151
152
  *
152
153
  * Related: https://github.com/json-schema/json-schema/issues/119
153
154
  */
154
- propertyOrder: Schema.optional<Schema.mutable<Schema.Array$<typeof Schema.String>>>;
155
+ propertyOrder: Schema.optional<Schema.Array$<typeof Schema.String>>;
155
156
  additionalProperties: Schema.optional<Schema.Union<[Schema.suspend<JsonSchemaType, JsonSchemaType, never>, typeof Schema.Boolean]>>;
156
- properties: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>>;
157
- patternProperties: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>>;
157
+ properties: Schema.optional<Schema.Record$<typeof Schema.String, Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>;
158
+ patternProperties: Schema.optional<Schema.Record$<typeof Schema.String, Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>;
158
159
  propertyNames: Schema.optional<Schema.suspend<JsonSchemaType, JsonSchemaType, never>>;
159
- definitions: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>>;
160
- dependencies: Schema.optional<Schema.Record$<typeof Schema.String, Schema.suspend<string | string[] | JsonSchemaType, string | string[] | JsonSchemaType, never>>>;
160
+ definitions: Schema.optional<Schema.Record$<typeof Schema.String, Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>;
161
+ dependencies: Schema.optional<Schema.Record$<typeof Schema.String, Schema.suspend<string | readonly string[] | JsonSchemaType, string | readonly string[] | JsonSchemaType, never>>>;
161
162
  contentMediaType: Schema.optional<typeof Schema.String>;
162
163
  contentEncoding: Schema.optional<typeof Schema.String>;
163
164
  if: Schema.optional<Schema.suspend<JsonSchemaType, JsonSchemaType, never>>;
@@ -167,17 +168,17 @@ declare const _JsonSchemaType: Schema.Struct<{
167
168
  anyOf: Schema.optional<Schema.Array$<Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>;
168
169
  oneOf: Schema.optional<Schema.Array$<Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>;
169
170
  not: Schema.optional<Schema.suspend<JsonSchemaType, JsonSchemaType, never>>;
170
- $defs: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>>;
171
+ $defs: Schema.optional<Schema.Record$<typeof Schema.String, Schema.suspend<JsonSchemaType, JsonSchemaType, never>>>;
171
172
  currency: Schema.optional<typeof Schema.String>;
172
- reference: Schema.optional<Schema.mutable<Schema.Struct<{
173
+ reference: Schema.optional<Schema.Struct<{
173
174
  schema: Schema.suspend<JsonSchemaType, JsonSchemaType, never>;
174
175
  schemaVersion: Schema.optional<typeof Schema.String>;
175
176
  schemaObject: Schema.optional<typeof Schema.String>;
176
- }>>>;
177
+ }>>;
177
178
  /**
178
179
  * ECHO-specific annotations.
179
180
  */
180
- annotations: Schema.optional<Schema.mutable<Schema.mutable<Schema.Struct<{
181
+ annotations: Schema.optional<Schema.Struct<{
181
182
  /**
182
183
  * Label for this schema.
183
184
  * Mapped from {@link LabelAnnotationId}.
@@ -191,24 +192,24 @@ declare const _JsonSchemaType: Schema.Struct<{
191
192
  /**
192
193
  * {@link PropertyMeta} annotations get serialized here.
193
194
  */
194
- meta: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, typeof Schema.Any>>>;
195
+ meta: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.Any>>;
195
196
  /**
196
197
  * @deprecated
197
198
  */
198
- type: Schema.optional<Schema.mutable<Schema.Struct<{
199
+ type: Schema.optional<Schema.Struct<{
199
200
  typename: typeof Schema.String;
200
201
  version: typeof Schema.String;
201
202
  schemaId: Schema.optional<typeof Schema.String>;
202
- }>>>;
203
+ }>>;
203
204
  /**
204
205
  * @deprecated Superseded by `meta`.
205
206
  */
206
- annotations: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, typeof Schema.Any>>>;
207
- }>>>>;
207
+ annotations: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.Any>>;
208
+ }>>;
208
209
  /**
209
210
  * @deprecated Use `annotations` instead.
210
211
  */
211
- echo: Schema.optional<Schema.mutable<Schema.mutable<Schema.Struct<{
212
+ echo: Schema.optional<Schema.Struct<{
212
213
  /**
213
214
  * Label for this schema.
214
215
  * Mapped from {@link LabelAnnotationId}.
@@ -222,29 +223,129 @@ declare const _JsonSchemaType: Schema.Struct<{
222
223
  /**
223
224
  * {@link PropertyMeta} annotations get serialized here.
224
225
  */
225
- meta: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, typeof Schema.Any>>>;
226
+ meta: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.Any>>;
226
227
  /**
227
228
  * @deprecated
228
229
  */
229
- type: Schema.optional<Schema.mutable<Schema.Struct<{
230
+ type: Schema.optional<Schema.Struct<{
230
231
  typename: typeof Schema.String;
231
232
  version: typeof Schema.String;
232
233
  schemaId: Schema.optional<typeof Schema.String>;
233
- }>>>;
234
+ }>>;
234
235
  /**
235
236
  * @deprecated Superseded by `meta`.
236
237
  */
237
- annotations: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, typeof Schema.Any>>>;
238
- }>>>>;
238
+ annotations: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.Any>>;
239
+ }>>;
239
240
  }>;
240
241
  export declare const JsonSchemaFields: string[];
241
242
  /**
242
243
  * https://json-schema.org/draft-07/schema
243
244
  */
244
- export interface JsonSchemaType extends Schema.Schema.Type<Schema.mutable<typeof _JsonSchemaType>> {
245
+ export interface JsonSchemaType extends Schema.Schema.Type<typeof _JsonSchemaType> {
245
246
  }
246
247
  export declare const JsonSchemaType: Schema.Schema<JsonSchemaType>;
247
248
  export declare const getSchemaProperty: (schema: JsonSchemaType, property: JsonProp) => JsonSchemaType | undefined;
248
- export declare const setSchemaProperty: (schema: JsonSchemaType, property: JsonProp, value: JsonSchemaType) => JsonSchemaType;
249
+ export declare const setSchemaProperty: (schema: Mutable<JsonSchemaType>, property: JsonProp, value: Mutable<JsonSchemaType>) => {
250
+ relationSource?: /*elided*/ any | undefined;
251
+ relationTarget?: /*elided*/ any | undefined;
252
+ description?: string | undefined;
253
+ typename?: string | undefined;
254
+ version?: string | undefined;
255
+ then?: /*elided*/ any | undefined;
256
+ annotations?: {
257
+ annotations?: {
258
+ [x: string]: any;
259
+ } | undefined;
260
+ type?: {
261
+ typename: string;
262
+ version: string;
263
+ schemaId?: string | undefined;
264
+ } | undefined;
265
+ labelProp?: JsonPath | JsonPath[] | undefined;
266
+ generator?: string | (string | number)[] | undefined;
267
+ meta?: {
268
+ [x: string]: any;
269
+ } | undefined;
270
+ } | undefined;
271
+ currency?: string | undefined;
272
+ $id?: string | undefined;
273
+ $schema?: string | undefined;
274
+ $ref?: string | undefined;
275
+ $comment?: string | undefined;
276
+ entityKind?: import("..").EntityKind | undefined;
277
+ title?: string | undefined;
278
+ readOnly?: boolean | undefined;
279
+ writeOnly?: boolean | undefined;
280
+ examples?: any[] | undefined;
281
+ default?: any;
282
+ const?: any;
283
+ enum?: any[] | undefined;
284
+ type?: "string" | "number" | "boolean" | "object" | "array" | "integer" | "null" | ("string" | "number" | "boolean" | "object" | "array" | "integer" | "null")[] | undefined;
285
+ multipleOf?: number | undefined;
286
+ maximum?: number | undefined;
287
+ exclusiveMaximum?: number | undefined;
288
+ minimum?: number | undefined;
289
+ exclusiveMinimum?: number | undefined;
290
+ maxLength?: number | undefined;
291
+ pattern?: string | undefined;
292
+ format?: string | undefined;
293
+ minLength?: number | undefined;
294
+ items?: /*elided*/ any | /*elided*/ any[] | undefined;
295
+ additionalItems?: boolean | /*elided*/ any | undefined;
296
+ maxItems?: number | undefined;
297
+ minItems?: number | undefined;
298
+ uniqueItems?: boolean | undefined;
299
+ contains?: /*elided*/ any | undefined;
300
+ maxProperties?: number | undefined;
301
+ minProperties?: number | undefined;
302
+ required?: string[] | undefined;
303
+ propertyOrder?: string[] | undefined;
304
+ additionalProperties?: boolean | /*elided*/ any | undefined;
305
+ properties?: {
306
+ [x: string]: /*elided*/ any;
307
+ } | undefined;
308
+ patternProperties?: {
309
+ [x: string]: /*elided*/ any;
310
+ } | undefined;
311
+ propertyNames?: /*elided*/ any | undefined;
312
+ definitions?: {
313
+ [x: string]: /*elided*/ any;
314
+ } | undefined;
315
+ dependencies?: {
316
+ [x: string]: string | /*elided*/ any | string[];
317
+ } | undefined;
318
+ contentMediaType?: string | undefined;
319
+ contentEncoding?: string | undefined;
320
+ if?: /*elided*/ any | undefined;
321
+ else?: /*elided*/ any | undefined;
322
+ allOf?: /*elided*/ any[] | undefined;
323
+ anyOf?: /*elided*/ any[] | undefined;
324
+ oneOf?: /*elided*/ any[] | undefined;
325
+ not?: /*elided*/ any | undefined;
326
+ $defs?: {
327
+ [x: string]: /*elided*/ any;
328
+ } | undefined;
329
+ reference?: {
330
+ schema: /*elided*/ any;
331
+ schemaVersion?: string | undefined;
332
+ schemaObject?: string | undefined;
333
+ } | undefined;
334
+ echo?: {
335
+ annotations?: {
336
+ [x: string]: any;
337
+ } | undefined;
338
+ type?: {
339
+ typename: string;
340
+ version: string;
341
+ schemaId?: string | undefined;
342
+ } | undefined;
343
+ labelProp?: JsonPath | JsonPath[] | undefined;
344
+ generator?: string | (string | number)[] | undefined;
345
+ meta?: {
346
+ [x: string]: any;
347
+ } | undefined;
348
+ } | undefined;
349
+ };
249
350
  export {};
250
351
  //# sourceMappingURL=json-schema-type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"json-schema-type.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema-type.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAqBvD;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC;;;OAGG;;IAGH;;;OAGG;;IAGH;;OAEG;;IAQH;;OAEG;;;;;;IAYH;;OAEG;;GAOkB,CAAC;AACxB,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE7F;;;;GAIG;AAGH,QAAA,MAAM,eAAe;IACnB;;;OAGG;;IAKH;;;OAGG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;OAKG;;IAGH;;;OAGG;;IAGH;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;;;;;;;IAmBH;;OAEG;;IAGH;;OAEG;;;;;;;;;;;;IAiCH;;;;;;OAMG;;;;;;;;;;;;;;;;;;;;;;;;IAuEH;;OAEG;;QArSH;;;WAGG;;QAGH;;;WAGG;;QAGH;;WAEG;;QAQH;;WAEG;;;;;;QAYH;;WAEG;;;IAmQH;;OAEG;;QA3SH;;;WAGG;;QAGH;;;WAGG;;QAGH;;WAEG;;QAQH;;WAEG;;;;;;QAYH;;WAEG;;;EAuQmE,CAAC;AAEzE,eAAO,MAAM,gBAAgB,UAAsC,CAAC;AAEpE;;GAEG;AAEH,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,eAAe,CAAC,CAAC;CAAG;AAErG,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAwC,CAAC;AAIlG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,cAAc,EAAE,UAAU,QAAQ,KAAG,cAAc,GAAG,SAE/F,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,cAAc,EAAE,UAAU,QAAQ,EAAE,OAAO,cAAc,mBAIlG,CAAC"}
1
+ {"version":3,"file":"json-schema-type.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema-type.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGvD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AAmBxC;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC;;;OAGG;;IAGH;;;OAGG;;IAGH;;OAEG;;IAQH;;OAEG;;;;;;IAYH;;OAEG;;EAOH,CAAC;AACH,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE7F;;;;GAIG;AAGH,QAAA,MAAM,eAAe;IACnB;;;OAGG;;IAKH;;;OAGG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;OAKG;;IAGH;;;OAGG;;IAGH;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;;;;;;;IAmBH;;OAEG;;IAGH;;OAEG;;;;;;;;;;;;IAiCH;;;;;;OAMG;;;;;;;;;;;;;;;;;;;;;;;;IAiEH;;OAEG;;QA/RH;;;WAGG;;QAGH;;;WAGG;;QAGH;;WAEG;;QAQH;;WAEG;;;;;;QAYH;;WAEG;;;IA6PH;;OAEG;;QArSH;;;WAGG;;QAGH;;;WAGG;;QAGH;;WAEG;;QAQH;;WAEG;;;;;;QAYH;;WAEG;;;EAiQmE,CAAC;AAEzE,eAAO,MAAM,gBAAgB,UAAsC,CAAC;AAEpE;;GAEG;AAEH,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC;CAAG;AAErF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAmB,CAAC;AAI7E,eAAO,MAAM,iBAAiB,GAAI,QAAQ,cAAc,EAAE,UAAU,QAAQ,KAAG,cAAc,GAAG,SAE/F,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,OAAO,CAAC,cAAc,CAAC,EAC/B,UAAU,QAAQ,EAClB,OAAO,OAAO,CAAC,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK/B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import * as Schema from 'effect/Schema';
2
+ import type * as Types from 'effect/Types';
2
3
  import { type JsonSchemaType } from './json-schema-type';
3
4
  export declare enum PropType {
4
5
  NONE = 0,
@@ -19,7 +20,7 @@ export type JsonSchemaOptions = {
19
20
  * NOTE: This handles custom annotations.
20
21
  * @param schema
21
22
  */
22
- export declare const toJsonSchema: (schema: Schema.Schema.All, options?: JsonSchemaOptions) => JsonSchemaType;
23
+ export declare const toJsonSchema: (schema: Schema.Schema.All, options?: JsonSchemaOptions) => Types.DeepMutable<JsonSchemaType>;
23
24
  /**
24
25
  * Convert JSON schema to effect schema.
25
26
  * @param root
@@ -1 +1 @@
1
- {"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAqBxC,OAAO,EAIL,KAAK,cAAc,EAEpB,MAAM,oBAAoB,CAAC;AAG5B,oBAAY,QAAQ;IAClB,IAAI,IAAI;IACR,MAAM,IAAI,CAAE,yBAAyB;IACrC,MAAM,IAAI;IACV,OAAO,IAAI;IACX,IAAI,IAAI;IACR,GAAG,IAAI;IACP,MAAM,IAAI;IACV,IAAI,IAAI;CACT;AAGD,eAAO,MAAM,UAAU,GAAI,OAAO,QAAQ,KAAG,MAiB5C,CAAC;AAIF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AAGH,eAAO,MAAM,YAAY,GAAI,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,UAAS,iBAAsB,KAAG,cAqBzF,CAAC;AAkEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,cAAc,EAAE,QAAQ,cAAc,CAAC,OAAO,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,YA0GpG,CAAC"}
1
+ {"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAmB3C,OAAO,EAIL,KAAK,cAAc,EAEpB,MAAM,oBAAoB,CAAC;AAG5B,oBAAY,QAAQ;IAClB,IAAI,IAAI;IACR,MAAM,IAAI,CAAE,yBAAyB;IACrC,MAAM,IAAI;IACV,OAAO,IAAI;IACX,IAAI,IAAI;IACR,GAAG,IAAI;IACP,MAAM,IAAI;IACV,IAAI,IAAI;CACT;AAGD,eAAO,MAAM,UAAU,GAAI,OAAO,QAAQ,KAAG,MAiB5C,CAAC;AAIF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AAIH,eAAO,MAAM,YAAY,GACvB,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,EACzB,UAAS,iBAAsB,KAC9B,KAAK,CAAC,WAAW,CAAC,cAAc,CAqBlC,CAAC;AAkEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,cAAc,EAAE,QAAQ,cAAc,CAAC,OAAO,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,YA0GpG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"json-serializer.d.ts","sourceRoot":"","sources":["../../../../../src/internal/object/json-serializer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,gBAAgB,EAAE,eAAe,EAAsB,MAAM,qBAAqB,CAAC;AAEjG,OAAO,EAAE,GAAG,EAAY,MAAM,YAAY,CAAC;AAG3C,OAAO,KAAK,KAAK,GAAG,MAAM,WAAW,CAAC;AAEtC,OAAO,EAKL,KAAK,UAAU,EAOhB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,yBAAyB,EAA6C,MAAM,UAAU,CAAC;AAChG,OAAO,EAAE,GAAG,EAAE,KAAK,WAAW,EAA2C,MAAM,QAAQ,CAAC;AACxF,OAAO,EAGL,KAAK,SAAS,EAMf,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,yBAAyB,EAAE,CAAC;AAErC,KAAK,cAAc,CAAC,CAAC,IACnB,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,GACd,gBAAgB,GAChB,CAAC,SAAS,MAAM,GACd;KACG,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrC,GACD,CAAC,CAAC;AAEV,KAAK,gBAAgB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,IAAI;KAC/C,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrC,GAAG,UAAU,CAAC;AAEf;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,SAAS,EAAE,KAAK,CAAC,KAAG,gBAAgB,CAAC,CAAC,CAI5E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,UAAU,OAAO,EACjB,uBAAsB;IAAE,WAAW,CAAC,EAAE,WAAW,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAO,KAClE,OAAO,CAAC,SAAS,CAkEnB,CAAC;AAsBF,eAAO,MAAM,oBAAoB,GAAI,KAAK,SAAS,EAAE,aAAa,WAAW,SAU5E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,MAAM,EAAE,WAAW,eAAe,KAAG,GAAG,CAAC,IASxF,CAAC"}
1
+ {"version":3,"file":"json-serializer.d.ts","sourceRoot":"","sources":["../../../../../src/internal/object/json-serializer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,gBAAgB,EAAE,eAAe,EAAsB,MAAM,qBAAqB,CAAC;AAEjG,OAAO,EAAE,GAAG,EAAY,MAAM,YAAY,CAAC;AAG3C,OAAO,KAAK,KAAK,GAAG,MAAM,WAAW,CAAC;AAEtC,OAAO,EAKL,KAAK,UAAU,EAOhB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,yBAAyB,EAA6C,MAAM,UAAU,CAAC;AAChG,OAAO,EAAE,GAAG,EAAE,KAAK,WAAW,EAA2C,MAAM,QAAQ,CAAC;AACxF,OAAO,EAIL,KAAK,SAAS,EAOf,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,yBAAyB,EAAE,CAAC;AAErC,KAAK,cAAc,CAAC,CAAC,IACnB,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,GACd,gBAAgB,GAChB,CAAC,SAAS,MAAM,GACd;KACG,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrC,GACD,CAAC,CAAC;AAEV,KAAK,gBAAgB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,IAAI;KAC/C,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrC,GAAG,UAAU,CAAC;AAEf;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,SAAS,EAAE,KAAK,CAAC,KAAG,gBAAgB,CAAC,CAAC,CAI5E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,UAAU,OAAO,EACjB,uBAAsB;IAAE,WAAW,CAAC,EAAE,WAAW,CAAC;IAAC,GAAG,CAAC,EAAE,GAAG,CAAA;CAAO,KAClE,OAAO,CAAC,SAAS,CAyEnB,CAAC;AA4BF,eAAO,MAAM,oBAAoB,GAAI,KAAK,SAAS,EAAE,aAAa,WAAW,SAU5E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,MAAM,EAAE,WAAW,eAAe,KAAG,GAAG,CAAC,IAUxF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../../src/internal/object/snapshot.ts"],"names":[],"mappings":"AAyBA;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,KAAG,CAwCtD,CAAC"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../../src/internal/object/snapshot.ts"],"names":[],"mappings":"AA0CA;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,KAAG,CA8CtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"make-object.d.ts","sourceRoot":"","sources":["../../../../../src/internal/proxy/make-object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAK7C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,EAAU,KAAK,UAAU,EAAoB,MAAM,UAAU,CAAC;AAOjG;;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;CAGN,CAAC"}
1
+ {"version":3,"file":"make-object.d.ts","sourceRoot":"","sources":["../../../../../src/internal/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;AAO3G;;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,6 +1,6 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import { Event } from '@dxos/async';
3
- import { SchemaId, TypeId } from '../types';
3
+ import { ParentId, SchemaId, TypeId } from '../types';
4
4
  import { type ReactiveHandler } from './proxy-types';
5
5
  import { EventId } from './symbols';
6
6
  export { getEchoRoot, setMetaOwner } from './ownership';
@@ -13,6 +13,7 @@ type ProxyTarget = {
13
13
  * Schema for the root.
14
14
  */
15
15
  [SchemaId]: Schema.Schema.AnyNoContext;
16
+ [ParentId]?: any;
16
17
  /**
17
18
  * For modifications.
18
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"typed-handler.d.ts","sourceRoot":"","sources":["../../../../../src/internal/proxy/typed-handler.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMpC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAe5C,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;IAEvC;;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;IAEP,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAoD/B,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG;IA8BnE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO;IAmCnF,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;IAIxD,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO;IAkBvE,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,OAAO;IA2BvG;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAiDlC,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,QAAQ;CAajB;AA8BD,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAUxE,CAAC"}
1
+ {"version":3,"file":"typed-handler.d.ts","sourceRoot":"","sources":["../../../../../src/internal/proxy/typed-handler.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMpC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAetD,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;IAEP,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAoD/B,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG;IA8BnE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO;IAmCnF,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;IAIxD,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO;IAkBvE,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,OAAO;IA2BvG;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAqDlC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,QAAQ;CAajB;AA8BD,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAUxE,CAAC"}
@@ -1,5 +1,9 @@
1
+ import * as Equal from 'effect/Equal';
2
+ import * as Hash from 'effect/Hash';
3
+ import * as Pipeable from 'effect/Pipeable';
1
4
  import * as Schema from 'effect/Schema';
2
5
  import * as SchemaAST from 'effect/SchemaAST';
6
+ import type * as Types from 'effect/Types';
3
7
  import { type CustomInspectFunction, inspectCustom } from '@dxos/debug';
4
8
  import { EncodedReference } from '@dxos/echo-protocol';
5
9
  import { DXN, ObjectId } from '@dxos/keys';
@@ -12,7 +16,7 @@ export declare const JSON_SCHEMA_ECHO_REF_ID = "/schemas/echo/ref";
12
16
  export declare const getSchemaReference: (property: JsonSchemaType) => {
13
17
  typename: string;
14
18
  } | undefined;
15
- export declare const createSchemaReference: (typename: string) => JsonSchemaType;
19
+ export declare const createSchemaReference: (typename: string) => Types.DeepMutable<JsonSchemaType>;
16
20
  /**
17
21
  * Runtime type-info for a reference extracted from effect AST.
18
22
  */
@@ -71,7 +75,7 @@ export declare const Ref: RefFn;
71
75
  * Represents materialized reference to a target.
72
76
  * This is the data type for the fields marked as ref.
73
77
  */
74
- export interface Ref<T> {
78
+ export interface Ref<T> extends Pipeable.Pipeable {
75
79
  /**
76
80
  * Target object DXN.
77
81
  */
@@ -195,6 +199,16 @@ export declare class RefImpl<T> implements Ref<T> {
195
199
  [RefTypeId]: {
196
200
  _T: any;
197
201
  };
202
+ /**
203
+ * Effect Hash trait. Required for MutableHashMap-based caches (e.g., Atom.family)
204
+ * to deduplicate Ref instances that point to the same object.
205
+ * ECHO proxies return new RefImpl instances on every property access,
206
+ * so without this, each access would create a separate cache entry.
207
+ */
208
+ [Hash.symbol](): number;
209
+ /** Effect Equal trait. See {@link Hash.symbol} for rationale. */
210
+ [Equal.symbol](that: Equal.Equal): boolean;
211
+ pipe(): unknown;
198
212
  }
199
213
  /**
200
214
  * Internal API for setting the reference resolver.