@dxos/echo 0.8.4-main.d05673bc65 → 0.8.4-main.dfabb4ec29

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 (280) hide show
  1. package/README.md +2 -2
  2. package/dist/lib/neutral/Annotation.mjs +5 -3
  3. package/dist/lib/neutral/Database.mjs +8 -4
  4. package/dist/lib/neutral/Entity.mjs +16 -14
  5. package/dist/lib/neutral/Err.mjs +1 -1
  6. package/dist/lib/neutral/Extension.mjs +18 -0
  7. package/dist/lib/neutral/Extension.mjs.map +7 -0
  8. package/dist/lib/neutral/Feed.mjs +21 -17
  9. package/dist/lib/neutral/Filter.mjs +21 -13
  10. package/dist/lib/neutral/Format.mjs +3 -3
  11. package/dist/lib/neutral/JsonSchema.mjs +8 -8
  12. package/dist/lib/neutral/Key.mjs +1 -1
  13. package/dist/lib/neutral/Migration.mjs +17 -0
  14. package/dist/lib/neutral/Migration.mjs.map +7 -0
  15. package/dist/lib/neutral/Obj.mjs +16 -13
  16. package/dist/lib/neutral/Order.mjs +1 -1
  17. package/dist/lib/neutral/Query.mjs +19 -16
  18. package/dist/lib/neutral/QueryResult.mjs +1 -1
  19. package/dist/lib/neutral/Ref.mjs +7 -7
  20. package/dist/lib/neutral/Relation.mjs +15 -14
  21. package/dist/lib/neutral/SchemaRegistry.mjs +1 -1
  22. package/dist/lib/neutral/Tag.mjs +14 -13
  23. package/dist/lib/neutral/Type.mjs +10 -10
  24. package/dist/lib/neutral/{chunk-FZO7LQO7.mjs → chunk-44HT3MEC.mjs} +2 -2
  25. package/dist/lib/neutral/{chunk-OENWMTE6.mjs → chunk-5SL5LDLD.mjs} +4 -2
  26. package/dist/lib/neutral/chunk-5SL5LDLD.mjs.map +7 -0
  27. package/dist/lib/neutral/{chunk-YWXWXIE5.mjs → chunk-6VIJV543.mjs} +2 -2
  28. package/dist/lib/neutral/{chunk-YWXWXIE5.mjs.map → chunk-6VIJV543.mjs.map} +2 -2
  29. package/dist/lib/neutral/{chunk-ANHVGJI4.mjs → chunk-7RVZT53K.mjs} +1 -1
  30. package/dist/lib/neutral/{chunk-BNCCGLJN.mjs → chunk-BICZKPQG.mjs} +1 -1
  31. package/dist/lib/neutral/{chunk-NEGC54NE.mjs → chunk-FHYIM4RD.mjs} +17 -19
  32. package/dist/lib/neutral/chunk-FHYIM4RD.mjs.map +7 -0
  33. package/dist/lib/neutral/{chunk-RMLF7JOZ.mjs → chunk-FZHVQEHN.mjs} +6 -22
  34. package/dist/lib/neutral/{chunk-RMLF7JOZ.mjs.map → chunk-FZHVQEHN.mjs.map} +3 -3
  35. package/dist/lib/neutral/chunk-GWFFC34K.mjs +50 -0
  36. package/dist/lib/neutral/chunk-GWFFC34K.mjs.map +7 -0
  37. package/dist/lib/neutral/{chunk-724GQYEN.mjs → chunk-HPNQTEEQ.mjs} +4 -4
  38. package/dist/lib/neutral/{chunk-UFDK26FO.mjs → chunk-LVGOVFDV.mjs} +12 -8
  39. package/dist/lib/neutral/chunk-LVGOVFDV.mjs.map +7 -0
  40. package/dist/lib/neutral/{chunk-43Y5DOS6.mjs → chunk-MPAI2MHO.mjs} +16 -66
  41. package/dist/lib/neutral/chunk-MPAI2MHO.mjs.map +7 -0
  42. package/dist/lib/neutral/{chunk-WYOKA6AE.mjs → chunk-N4B7FHQT.mjs} +2 -2
  43. package/dist/lib/neutral/{chunk-WYOKA6AE.mjs.map → chunk-N4B7FHQT.mjs.map} +1 -1
  44. package/dist/lib/neutral/{chunk-BOZZPUXE.mjs → chunk-O5LRY6CO.mjs} +12 -65
  45. package/dist/lib/neutral/chunk-O5LRY6CO.mjs.map +7 -0
  46. package/dist/lib/neutral/{chunk-UTBRYVQC.mjs → chunk-QGMIH2SN.mjs} +2 -2
  47. package/dist/lib/neutral/{chunk-VA2F47ZC.mjs → chunk-QXIANHKU.mjs} +68 -14
  48. package/dist/lib/neutral/chunk-QXIANHKU.mjs.map +7 -0
  49. package/dist/lib/neutral/{chunk-NXMFBIT5.mjs → chunk-RF7ZBZ4A.mjs} +59 -4
  50. package/dist/lib/neutral/chunk-RF7ZBZ4A.mjs.map +7 -0
  51. package/dist/lib/neutral/{chunk-DYDJBZEG.mjs → chunk-S7IMFVTB.mjs} +51 -21
  52. package/dist/lib/neutral/chunk-S7IMFVTB.mjs.map +7 -0
  53. package/dist/lib/neutral/{chunk-TQQZLKB7.mjs → chunk-SJKBWMJY.mjs} +193 -469
  54. package/dist/lib/neutral/chunk-SJKBWMJY.mjs.map +7 -0
  55. package/dist/lib/neutral/chunk-SUZMWP3Y.mjs +36 -0
  56. package/dist/lib/neutral/chunk-SUZMWP3Y.mjs.map +7 -0
  57. package/dist/lib/neutral/{chunk-NQRLRYJM.mjs → chunk-SW5CUSBY.mjs} +119 -12
  58. package/dist/lib/neutral/chunk-SW5CUSBY.mjs.map +7 -0
  59. package/dist/lib/neutral/{chunk-SEMVAGBM.mjs → chunk-TNBK56IN.mjs} +19 -24
  60. package/dist/lib/neutral/chunk-TNBK56IN.mjs.map +7 -0
  61. package/dist/lib/neutral/{chunk-B5OXLWZL.mjs → chunk-TRPZU2HV.mjs} +2 -2
  62. package/dist/lib/neutral/{chunk-UI6MWK5W.mjs → chunk-TTCSATUD.mjs} +1 -1
  63. package/dist/lib/neutral/{chunk-OMUPQMLR.mjs → chunk-V72DY6LU.mjs} +1 -1
  64. package/dist/lib/neutral/{chunk-KTAWP7GI.mjs → chunk-VGKLHHRT.mjs} +42 -7
  65. package/dist/lib/neutral/chunk-VGKLHHRT.mjs.map +7 -0
  66. package/dist/lib/neutral/{chunk-FXEG7EOK.mjs → chunk-VYAGNFSJ.mjs} +3 -3
  67. package/dist/lib/neutral/{chunk-CIRHIEMW.mjs → chunk-WRVRDZDA.mjs} +18 -46
  68. package/dist/lib/neutral/chunk-WRVRDZDA.mjs.map +7 -0
  69. package/dist/lib/neutral/{chunk-UBEZSGXY.mjs → chunk-ZISMEVKD.mjs} +1 -1
  70. package/dist/lib/neutral/{chunk-UBEZSGXY.mjs.map → chunk-ZISMEVKD.mjs.map} +2 -2
  71. package/dist/lib/neutral/index.mjs +38 -28
  72. package/dist/lib/neutral/internal/index.mjs +15 -9
  73. package/dist/lib/neutral/meta.json +1 -1
  74. package/dist/lib/neutral/testing/index.mjs +185 -129
  75. package/dist/lib/neutral/testing/index.mjs.map +3 -3
  76. package/dist/types/src/Annotation.d.ts +1 -1
  77. package/dist/types/src/Annotation.d.ts.map +1 -1
  78. package/dist/types/src/Collection.d.ts.map +1 -1
  79. package/dist/types/src/Database.d.ts +13 -1
  80. package/dist/types/src/Database.d.ts.map +1 -1
  81. package/dist/types/src/Dataset.d.ts +2 -1
  82. package/dist/types/src/Dataset.d.ts.map +1 -1
  83. package/dist/types/src/Entity.d.ts +17 -11
  84. package/dist/types/src/Entity.d.ts.map +1 -1
  85. package/dist/types/src/Err.d.ts +18 -18
  86. package/dist/types/src/Err.d.ts.map +1 -1
  87. package/dist/types/src/Extension.d.ts +80 -0
  88. package/dist/types/src/Extension.d.ts.map +1 -0
  89. package/dist/types/src/Extension.test.d.ts +2 -0
  90. package/dist/types/src/Extension.test.d.ts.map +1 -0
  91. package/dist/types/src/Feed.d.ts +37 -20
  92. package/dist/types/src/Feed.d.ts.map +1 -1
  93. package/dist/types/src/Filter.d.ts +33 -4
  94. package/dist/types/src/Filter.d.ts.map +1 -1
  95. package/dist/types/src/Filter.test.d.ts +2 -0
  96. package/dist/types/src/Filter.test.d.ts.map +1 -0
  97. package/dist/types/src/Json.d.ts +33 -0
  98. package/dist/types/src/Json.d.ts.map +1 -0
  99. package/dist/types/src/Json.test.d.ts +2 -0
  100. package/dist/types/src/Json.test.d.ts.map +1 -0
  101. package/dist/types/src/JsonSchema.d.ts +1 -1
  102. package/dist/types/src/Migration.d.ts +57 -0
  103. package/dist/types/src/Migration.d.ts.map +1 -0
  104. package/dist/types/src/Obj.d.ts +41 -27
  105. package/dist/types/src/Obj.d.ts.map +1 -1
  106. package/dist/types/src/Order.d.ts.map +1 -1
  107. package/dist/types/src/Query.d.ts +13 -2
  108. package/dist/types/src/Query.d.ts.map +1 -1
  109. package/dist/types/src/Ref.d.ts.map +1 -1
  110. package/dist/types/src/Relation.d.ts +17 -18
  111. package/dist/types/src/Relation.d.ts.map +1 -1
  112. package/dist/types/src/Tag.d.ts +2 -2
  113. package/dist/types/src/Tag.d.ts.map +1 -1
  114. package/dist/types/src/Type.d.ts +3 -3
  115. package/dist/types/src/Type.d.ts.map +1 -1
  116. package/dist/types/src/View.d.ts +1 -1
  117. package/dist/types/src/View.d.ts.map +1 -1
  118. package/dist/types/src/exemplars.test.d.ts +2 -0
  119. package/dist/types/src/exemplars.test.d.ts.map +1 -0
  120. package/dist/types/src/index.d.ts +3 -0
  121. package/dist/types/src/index.d.ts.map +1 -1
  122. package/dist/types/src/internal/Annotation/annotations.d.ts +12 -2
  123. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -1
  124. package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -1
  125. package/dist/types/src/internal/Annotation/util.d.ts +1 -1
  126. package/dist/types/src/internal/Annotation/util.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/object.d.ts.map +1 -1
  129. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -1
  130. package/dist/types/src/internal/Entity/version.d.ts.map +1 -1
  131. package/dist/types/src/internal/Format/date.d.ts.map +1 -1
  132. package/dist/types/src/internal/Format/format.d.ts.map +1 -1
  133. package/dist/types/src/internal/Format/number.d.ts.map +1 -1
  134. package/dist/types/src/internal/Format/object.d.ts.map +1 -1
  135. package/dist/types/src/internal/Format/types.d.ts.map +1 -1
  136. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -1
  137. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts +28 -28
  138. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -1
  139. package/dist/types/src/internal/JsonSchema/json-schema.d.ts +1 -1
  140. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -1
  141. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -1
  142. package/dist/types/src/internal/Obj/common.d.ts.map +1 -1
  143. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -1
  144. package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -1
  145. package/dist/types/src/internal/Obj/ids.d.ts.map +1 -1
  146. package/dist/types/src/internal/Obj/json-serializer.d.ts +4 -3
  147. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -1
  148. package/dist/types/src/internal/Obj/set-value.d.ts +1 -1
  149. package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -1
  150. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -1
  151. package/dist/types/src/internal/Query.d.ts +10 -0
  152. package/dist/types/src/internal/Query.d.ts.map +1 -0
  153. package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -1
  154. package/dist/types/src/internal/Ref/ref.d.ts +14 -1
  155. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -1
  156. package/dist/types/src/internal/Type/compose.d.ts.map +1 -1
  157. package/dist/types/src/internal/Type/echo-schema.d.ts +2 -2
  158. package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -1
  159. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -1
  160. package/dist/types/src/internal/common/api/meta.d.ts +3 -3
  161. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -1
  162. package/dist/types/src/internal/common/proxy/change-context.d.ts +1 -1
  163. package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -1
  164. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -1
  165. package/dist/types/src/internal/common/proxy/errors.d.ts +1 -1
  166. package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -1
  167. package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -1
  168. package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -1
  169. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -1
  170. package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -1
  171. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -1
  172. package/dist/types/src/internal/common/proxy/reactive-array.d.ts +1 -1
  173. package/dist/types/src/internal/common/proxy/reactive.d.ts +1 -1
  174. package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -1
  175. package/dist/types/src/internal/common/proxy/reactive.test.d.ts +2 -0
  176. package/dist/types/src/internal/common/proxy/reactive.test.d.ts.map +1 -0
  177. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -1
  178. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -1
  179. package/dist/types/src/internal/common/types/base.d.ts.map +1 -1
  180. package/dist/types/src/internal/common/types/entity.d.ts +4 -4
  181. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -1
  182. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -1
  183. package/dist/types/src/internal/common/types/version.d.ts +1 -1
  184. package/dist/types/src/internal/index.d.ts +1 -0
  185. package/dist/types/src/internal/index.d.ts.map +1 -1
  186. package/dist/types/src/testing/test-data.d.ts +8 -8
  187. package/dist/types/src/testing/test-data.d.ts.map +1 -1
  188. package/dist/types/src/testing/test-schema.d.ts +53 -53
  189. package/dist/types/src/testing/test-schema.d.ts.map +1 -1
  190. package/dist/types/src/testing/util.d.ts.map +1 -1
  191. package/dist/types/tsconfig.tsbuildinfo +1 -1
  192. package/package.json +24 -14
  193. package/src/Annotation.ts +1 -0
  194. package/src/Collection.ts +5 -0
  195. package/src/Database.ts +49 -14
  196. package/src/Entity.ts +18 -12
  197. package/src/Extension.test.ts +235 -0
  198. package/src/Extension.ts +122 -0
  199. package/src/Feed.ts +79 -32
  200. package/src/Filter.test.ts +90 -0
  201. package/src/Filter.ts +66 -3
  202. package/src/Json.test.ts +175 -0
  203. package/src/Json.ts +102 -0
  204. package/src/Migration.ts +94 -0
  205. package/src/Obj.test.ts +105 -13
  206. package/src/Obj.ts +153 -33
  207. package/src/Query.test.ts +198 -8
  208. package/src/Query.ts +46 -1
  209. package/src/Relation.ts +24 -20
  210. package/src/Type.ts +1 -1
  211. package/src/View.ts +5 -0
  212. package/src/exemplars.test.ts +21 -0
  213. package/src/index.ts +4 -0
  214. package/src/internal/Annotation/annotations.test.ts +51 -2
  215. package/src/internal/Annotation/annotations.ts +33 -14
  216. package/src/internal/Annotation/sorting.ts +0 -1
  217. package/src/internal/Entity/api.ts +0 -1
  218. package/src/internal/Entity/object.ts +0 -1
  219. package/src/internal/Entity/version.ts +0 -1
  220. package/src/internal/Format/date.test.ts +0 -1
  221. package/src/internal/Format/format.test.ts +0 -1
  222. package/src/internal/JsonSchema/json-schema-type.ts +1 -1
  223. package/src/internal/JsonSchema/json-schema.test.ts +1 -2
  224. package/src/internal/JsonSchema/json-schema.ts +1 -2
  225. package/src/internal/Obj/clone.ts +1 -1
  226. package/src/internal/Obj/create-object.test.ts +2 -4
  227. package/src/internal/Obj/create-object.ts +2 -3
  228. package/src/internal/Obj/deleted.ts +1 -1
  229. package/src/internal/Obj/json-serializer.test.ts +4 -5
  230. package/src/internal/Obj/json-serializer.ts +22 -15
  231. package/src/internal/Obj/set-value.test.ts +24 -24
  232. package/src/internal/Obj/set-value.ts +1 -1
  233. package/src/internal/Query.ts +137 -0
  234. package/src/internal/Ref/ref-array.ts +0 -1
  235. package/src/internal/Ref/ref.test.ts +0 -1
  236. package/src/internal/Ref/ref.ts +18 -1
  237. package/src/internal/Type/compose.test.ts +0 -1
  238. package/src/internal/Type/echo-schema.ts +3 -4
  239. package/src/internal/Type/persistent-schema.ts +2 -2
  240. package/src/internal/common/README.md +1 -1
  241. package/src/internal/common/api/meta.ts +3 -3
  242. package/src/internal/common/proxy/change-context.ts +1 -1
  243. package/src/internal/common/proxy/change.test.ts +94 -94
  244. package/src/internal/common/proxy/errors.ts +2 -2
  245. package/src/internal/common/proxy/handler.test.ts +0 -2
  246. package/src/internal/common/proxy/make-object.ts +0 -1
  247. package/src/internal/common/proxy/ownership.ts +0 -1
  248. package/src/internal/common/proxy/reactive-array.ts +1 -1
  249. package/src/internal/common/proxy/reactive.test.ts +54 -0
  250. package/src/internal/common/proxy/reactive.ts +11 -3
  251. package/src/internal/common/proxy/typed-handler.test.ts +0 -1
  252. package/src/internal/common/proxy/typed-handler.ts +8 -10
  253. package/src/internal/common/proxy/typed-object.test.ts +2 -3
  254. package/src/internal/common/types/entity.ts +1 -1
  255. package/src/internal/common/types/meta.ts +0 -1
  256. package/src/internal/index.ts +1 -0
  257. package/src/testing/api.test.ts +0 -1
  258. package/src/testing/test-data.ts +157 -98
  259. package/dist/lib/neutral/chunk-43Y5DOS6.mjs.map +0 -7
  260. package/dist/lib/neutral/chunk-BOZZPUXE.mjs.map +0 -7
  261. package/dist/lib/neutral/chunk-CIRHIEMW.mjs.map +0 -7
  262. package/dist/lib/neutral/chunk-DYDJBZEG.mjs.map +0 -7
  263. package/dist/lib/neutral/chunk-KTAWP7GI.mjs.map +0 -7
  264. package/dist/lib/neutral/chunk-NEGC54NE.mjs.map +0 -7
  265. package/dist/lib/neutral/chunk-NQRLRYJM.mjs.map +0 -7
  266. package/dist/lib/neutral/chunk-NXMFBIT5.mjs.map +0 -7
  267. package/dist/lib/neutral/chunk-OENWMTE6.mjs.map +0 -7
  268. package/dist/lib/neutral/chunk-SEMVAGBM.mjs.map +0 -7
  269. package/dist/lib/neutral/chunk-TQQZLKB7.mjs.map +0 -7
  270. package/dist/lib/neutral/chunk-UFDK26FO.mjs.map +0 -7
  271. package/dist/lib/neutral/chunk-VA2F47ZC.mjs.map +0 -7
  272. /package/dist/lib/neutral/{chunk-FZO7LQO7.mjs.map → chunk-44HT3MEC.mjs.map} +0 -0
  273. /package/dist/lib/neutral/{chunk-ANHVGJI4.mjs.map → chunk-7RVZT53K.mjs.map} +0 -0
  274. /package/dist/lib/neutral/{chunk-BNCCGLJN.mjs.map → chunk-BICZKPQG.mjs.map} +0 -0
  275. /package/dist/lib/neutral/{chunk-724GQYEN.mjs.map → chunk-HPNQTEEQ.mjs.map} +0 -0
  276. /package/dist/lib/neutral/{chunk-UTBRYVQC.mjs.map → chunk-QGMIH2SN.mjs.map} +0 -0
  277. /package/dist/lib/neutral/{chunk-B5OXLWZL.mjs.map → chunk-TRPZU2HV.mjs.map} +0 -0
  278. /package/dist/lib/neutral/{chunk-UI6MWK5W.mjs.map → chunk-TTCSATUD.mjs.map} +0 -0
  279. /package/dist/lib/neutral/{chunk-OMUPQMLR.mjs.map → chunk-V72DY6LU.mjs.map} +0 -0
  280. /package/dist/lib/neutral/{chunk-FXEG7EOK.mjs.map → chunk-VYAGNFSJ.mjs.map} +0 -0
@@ -3,12 +3,12 @@ import {
3
3
  JsonSchemaType,
4
4
  toEffectSchema,
5
5
  toJsonSchema
6
- } from "./chunk-BOZZPUXE.mjs";
6
+ } from "./chunk-O5LRY6CO.mjs";
7
7
  import {
8
8
  Ref,
9
9
  refFromEncodedReference,
10
10
  setRefResolver
11
- } from "./chunk-43Y5DOS6.mjs";
11
+ } from "./chunk-MPAI2MHO.mjs";
12
12
  import {
13
13
  ATTR_PARENT,
14
14
  ATTR_TYPE,
@@ -33,14 +33,14 @@ import {
33
33
  getTypename,
34
34
  setSchema,
35
35
  setTypename
36
- } from "./chunk-SEMVAGBM.mjs";
36
+ } from "./chunk-TNBK56IN.mjs";
37
37
  import {
38
38
  EntityKind,
39
39
  KindId,
40
40
  SchemaKindId,
41
41
  SnapshotKindId,
42
42
  makeTypeJsonSchemaAnnotation
43
- } from "./chunk-WYOKA6AE.mjs";
43
+ } from "./chunk-N4B7FHQT.mjs";
44
44
 
45
45
  // src/internal/index.ts
46
46
  import { JsonPath, JsonProp, getValue, splitJsonPath } from "@dxos/effect";
@@ -76,15 +76,7 @@ var ObjectMetaSchema = Schema2.Struct({
76
76
  });
77
77
  var getMeta = (obj) => {
78
78
  const metadata = obj[MetaId];
79
- invariant(metadata, "ObjectMeta not found.", {
80
- F: __dxlog_file,
81
- L: 55,
82
- S: void 0,
83
- A: [
84
- "metadata",
85
- "'ObjectMeta not found.'"
86
- ]
87
- });
79
+ invariant(metadata, "ObjectMeta not found.", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 37, S: void 0, A: ["metadata", "'ObjectMeta not found.'"] });
88
80
  return metadata;
89
81
  };
90
82
  var foreignKey = (source, id) => ({
@@ -141,29 +133,13 @@ var __dxlog_file2 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/common/
141
133
  function getMetaChecked(entity) {
142
134
  assertArgument(entity, "entity", "Should be an entity.");
143
135
  const meta = getMeta(entity);
144
- invariant2(meta != null, "Invalid entity.", {
145
- F: __dxlog_file2,
146
- L: 34,
147
- S: this,
148
- A: [
149
- "meta != null",
150
- "'Invalid entity.'"
151
- ]
152
- });
136
+ invariant2(meta != null, "Invalid entity.", { "~LogMeta": "~LogMeta", F: __dxlog_file2, L: 9, S: this, A: ["meta != null", "'Invalid entity.'"] });
153
137
  return meta;
154
138
  }
155
139
  var getKeys = (entity, source) => {
156
140
  assertArgument(entity, "entity", "Should be an entity.");
157
141
  const meta = getMetaChecked(entity);
158
- invariant2(meta != null, "Invalid entity.", {
159
- F: __dxlog_file2,
160
- L: 45,
161
- S: void 0,
162
- A: [
163
- "meta != null",
164
- "'Invalid entity.'"
165
- ]
166
- });
142
+ invariant2(meta != null, "Invalid entity.", { "~LogMeta": "~LogMeta", F: __dxlog_file2, L: 18, S: void 0, A: ["meta != null", "'Invalid entity.'"] });
167
143
  return meta.keys.filter((key) => key.source === source);
168
144
  };
169
145
  var deleteKeys = (entity, source) => {
@@ -282,7 +258,7 @@ var defineHiddenProperty = (object, key, value2) => {
282
258
  // src/internal/common/proxy/errors.ts
283
259
  var MutationOutsideChangeContextError = class extends Error {
284
260
  constructor(operation, suggestion) {
285
- super(`Cannot ${operation} outside of Obj.change(). Use Obj.change(obj, (mutableObj) => { ${suggestion} }) instead.`);
261
+ super(`Cannot ${operation} outside of Obj.update(). Use Obj.update(obj, (mutableObj) => { ${suggestion} }) instead.`);
286
262
  this.name = "MutationOutsideChangeContextError";
287
263
  }
288
264
  };
@@ -330,28 +306,12 @@ var typedJsonSerializer = function() {
330
306
  }
331
307
  if (this[RelationSourceDXNId]) {
332
308
  const sourceDXN = this[RelationSourceDXNId];
333
- invariant3(sourceDXN instanceof DXN, void 0, {
334
- F: __dxlog_file3,
335
- L: 64,
336
- S: this,
337
- A: [
338
- "sourceDXN instanceof DXN",
339
- ""
340
- ]
341
- });
309
+ invariant3(sourceDXN instanceof DXN, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file3, L: 42, S: this, A: ["sourceDXN instanceof DXN", ""] });
342
310
  result[ATTR_RELATION_SOURCE] = sourceDXN.toString();
343
311
  }
344
312
  if (this[RelationTargetDXNId]) {
345
313
  const targetDXN = this[RelationTargetDXNId];
346
- invariant3(targetDXN instanceof DXN, void 0, {
347
- F: __dxlog_file3,
348
- L: 69,
349
- S: this,
350
- A: [
351
- "targetDXN instanceof DXN",
352
- ""
353
- ]
354
- });
314
+ invariant3(targetDXN instanceof DXN, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file3, L: 47, S: this, A: ["targetDXN instanceof DXN", ""] });
355
315
  result[ATTR_RELATION_TARGET] = targetDXN.toString();
356
316
  }
357
317
  Object.assign(result, serializeData(rest));
@@ -388,15 +348,7 @@ var isValidProxyTarget = (value2) => {
388
348
  };
389
349
  var getProxySlot = (proxy) => {
390
350
  const value2 = proxy[symbolIsProxy];
391
- invariant4(value2 instanceof ProxyHandlerSlot, void 0, {
392
- F: __dxlog_file4,
393
- L: 32,
394
- S: void 0,
395
- A: [
396
- "value instanceof ProxyHandlerSlot",
397
- ""
398
- ]
399
- });
351
+ invariant4(value2 instanceof ProxyHandlerSlot, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file4, L: 22, S: void 0, A: ["value instanceof ProxyHandlerSlot", ""] });
400
352
  return value2;
401
353
  };
402
354
  var getProxyTarget = (proxy) => {
@@ -430,15 +382,7 @@ var ProxyHandlerSlot = class {
430
382
  this._handler = _handler;
431
383
  }
432
384
  get handler() {
433
- invariant4(this._handler, void 0, {
434
- F: __dxlog_file4,
435
- L: 91,
436
- S: this,
437
- A: [
438
- "this._handler",
439
- ""
440
- ]
441
- });
385
+ invariant4(this._handler, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file4, L: 71, S: this, A: ["this._handler", ""] });
442
386
  return this._handler;
443
387
  }
444
388
  // TODO(burdon): Requires comment.
@@ -528,15 +472,7 @@ var setOwnerRecursive = (value2, owner, options = {}) => {
528
472
  }
529
473
  if (!isRootEchoObject) {
530
474
  const ownershipAllowed = existingOwner == null || existingOwner === owner || existingOwner === newAllowedPreviousOwner;
531
- invariant5(ownershipAllowed, "Cannot reassign ownership of a nested record to a different ECHO object. Use deep copy first.", {
532
- F: __dxlog_file5,
533
- L: 102,
534
- S: void 0,
535
- A: [
536
- "ownershipAllowed",
537
- "'Cannot reassign ownership of a nested record to a different ECHO object. Use deep copy first.'"
538
- ]
539
- });
475
+ invariant5(ownershipAllowed, "Cannot reassign ownership of a nested record to a different ECHO object. Use deep copy first.", { "~LogMeta": "~LogMeta", F: __dxlog_file5, L: 76, S: void 0, A: ["ownershipAllowed", "'Cannot reassign ownership of a nested record to a different ECHO object. Use deep copy first.'"] });
540
476
  }
541
477
  defineHiddenProperty(actualValue, EchoOwner, owner);
542
478
  const recursiveOptions = {
@@ -603,15 +539,7 @@ var hasForeignOwner = (value2, target) => traverseObjectGraph(value2, (v) => {
603
539
  });
604
540
  var MAX_OWNER_DEPTH = 100;
605
541
  var getEchoRoot = (target, depth = 0) => {
606
- invariant5(depth < MAX_OWNER_DEPTH, "Owner chain too deep - possible circular ownership", {
607
- F: __dxlog_file5,
608
- L: 221,
609
- S: void 0,
610
- A: [
611
- "depth < MAX_OWNER_DEPTH",
612
- "'Owner chain too deep - possible circular ownership'"
613
- ]
614
- });
542
+ invariant5(depth < MAX_OWNER_DEPTH, "Owner chain too deep - possible circular ownership", { "~LogMeta": "~LogMeta", F: __dxlog_file5, L: 169, S: void 0, A: ["depth < MAX_OWNER_DEPTH", "'Owner chain too deep - possible circular ownership'"] });
615
543
  if (KindId in target) {
616
544
  return target;
617
545
  }
@@ -733,12 +661,7 @@ var SchemaValidator = class {
733
661
  log.warn("unknown property", {
734
662
  path: propertyPath,
735
663
  property: propertyName
736
- }, {
737
- F: __dxlog_file6,
738
- L: 71,
739
- S: this,
740
- C: (f, a) => f(...a)
741
- });
664
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 60, S: this });
742
665
  continue;
743
666
  }
744
667
  schema = Schema3.make(propertyType).annotations(propertyType.annotations);
@@ -748,15 +671,7 @@ var SchemaValidator = class {
748
671
  }
749
672
  static getTargetPropertySchema(target, prop) {
750
673
  const schema = target[SchemaId];
751
- invariant6(schema, "target has no schema", {
752
- F: __dxlog_file6,
753
- L: 84,
754
- S: this,
755
- A: [
756
- "schema",
757
- "'target has no schema'"
758
- ]
759
- });
674
+ invariant6(schema, "target has no schema", { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 73, S: this, A: ["schema", "'target has no schema'"] });
760
675
  const arrayAst = unwrapArray(schema.ast);
761
676
  if (arrayAst != null) {
762
677
  return getArrayElementSchema(arrayAst, prop);
@@ -765,30 +680,14 @@ var SchemaValidator = class {
765
680
  if (propertyType == null) {
766
681
  return Schema3.Any;
767
682
  }
768
- invariant6(propertyType, `invalid property: ${prop.toString()}`, {
769
- F: __dxlog_file6,
770
- L: 95,
771
- S: this,
772
- A: [
773
- "propertyType",
774
- "`invalid property: ${prop.toString()}`"
775
- ]
776
- });
683
+ invariant6(propertyType, `invalid property: ${prop.toString()}`, { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 82, S: this, A: ["propertyType", "`invalid property: ${prop.toString()}`"] });
777
684
  return Schema3.make(propertyType);
778
685
  }
779
686
  };
780
687
  var getArrayElementSchema = (tupleAst, property) => {
781
688
  const elementIndex = typeof property === "string" ? parseInt(property, 10) : Number.NaN;
782
689
  if (Number.isNaN(elementIndex)) {
783
- invariant6(property === "length", `invalid array property: ${String(property)}`, {
784
- F: __dxlog_file6,
785
- L: 111,
786
- S: void 0,
787
- A: [
788
- "property === 'length'",
789
- "`invalid array property: ${String(property)}`"
790
- ]
791
- });
690
+ invariant6(property === "length", `invalid array property: ${String(property)}`, { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 93, S: void 0, A: ["property === 'length'", "`invalid array property: ${String(property)}`"] });
792
691
  return Schema3.Number;
793
692
  }
794
693
  if (elementIndex < tupleAst.elements.length) {
@@ -813,15 +712,7 @@ var getProperties = (typeAst, getTargetPropertyFn) => {
813
712
  const typeDiscriminators = getTypeDiscriminators(typeAstList);
814
713
  const targetPropertyValue = getTargetPropertyFn(String(typeDiscriminators[0].name));
815
714
  const typeIndex = typeDiscriminators.findIndex((p) => targetPropertyValue === p.type.literal);
816
- invariant6(typeIndex !== -1, "discriminator field not set on target", {
817
- F: __dxlog_file6,
818
- L: 142,
819
- S: void 0,
820
- A: [
821
- "typeIndex !== -1",
822
- "'discriminator field not set on target'"
823
- ]
824
- });
715
+ invariant6(typeIndex !== -1, "discriminator field not set on target", { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 118, S: void 0, A: ["typeIndex !== -1", "'discriminator field not set on target'"] });
825
716
  return SchemaAST2.getPropertySignatures(typeAstList[typeIndex]);
826
717
  };
827
718
  var getPropertyType = (ast, propertyName, getTargetPropertyFn) => {
@@ -851,15 +742,7 @@ var getTypeDiscriminators = (typeAstList) => {
851
742
  const isValidDiscriminator = discriminatorPropCandidates.every((p) => p.name === propertyName && !p.isOptional);
852
743
  const everyTypeHasDiscriminator = discriminatorPropCandidates.length === typeAstList.length;
853
744
  const isDiscriminatedUnion = isValidDiscriminator && everyTypeHasDiscriminator;
854
- invariant6(isDiscriminatedUnion, "type ambiguity: every type in a union must have a single unique-literal field", {
855
- F: __dxlog_file6,
856
- L: 193,
857
- S: void 0,
858
- A: [
859
- "isDiscriminatedUnion",
860
- "'type ambiguity: every type in a union must have a single unique-literal field'"
861
- ]
862
- });
745
+ invariant6(isDiscriminatedUnion, "type ambiguity: every type in a union must have a single unique-literal field", { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 148, S: void 0, A: ["isDiscriminatedUnion", "'type ambiguity: every type in a union must have a single unique-literal field'"] });
863
746
  return discriminatorPropCandidates;
864
747
  };
865
748
  var unwrapAst = (rootAst, predicate) => {
@@ -885,15 +768,7 @@ var unwrapAst = (rootAst, predicate) => {
885
768
  };
886
769
  var unwrapArray = (ast) => unwrapAst(ast, SchemaAST2.isTupleType);
887
770
  var checkIdNotPresentOnSchema = (schema) => {
888
- invariant6(SchemaAST2.isTypeLiteral(schema.ast), void 0, {
889
- F: __dxlog_file6,
890
- L: 236,
891
- S: void 0,
892
- A: [
893
- "SchemaAST.isTypeLiteral(schema.ast)",
894
- ""
895
- ]
896
- });
771
+ invariant6(SchemaAST2.isTypeLiteral(schema.ast), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 184, S: void 0, A: ["SchemaAST.isTypeLiteral(schema.ast)", ""] });
897
772
  const idProperty = SchemaAST2.getPropertySignatures(schema.ast).find((prop) => prop.name === "id");
898
773
  if (idProperty != null) {
899
774
  throw new Error('"id" property name is reserved');
@@ -954,24 +829,8 @@ var TypedReactiveHandler = class _TypedReactiveHandler {
954
829
  constructor() {
955
830
  }
956
831
  init(target) {
957
- invariant7(typeof target === "object" && target !== null, void 0, {
958
- F: __dxlog_file7,
959
- L: 147,
960
- S: this,
961
- A: [
962
- "typeof target === 'object' && target !== null",
963
- ""
964
- ]
965
- });
966
- invariant7(SchemaId in target, "Schema is not defined for the target", {
967
- F: __dxlog_file7,
968
- L: 148,
969
- S: this,
970
- A: [
971
- "SchemaId in target",
972
- "'Schema is not defined for the target'"
973
- ]
974
- });
832
+ invariant7(typeof target === "object" && target !== null, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file7, L: 99, S: this, A: ["typeof target === 'object' && target !== null", ""] });
833
+ invariant7(SchemaId in target, "Schema is not defined for the target", { "~LogMeta": "~LogMeta", F: __dxlog_file7, L: 100, S: this, A: ["SchemaId in target", "'Schema is not defined for the target'"] });
975
834
  const hasOwner = !!getOwner(target);
976
835
  if (!(EventId in target) && !hasOwner) {
977
836
  defineHiddenProperty(target, EventId, new Event());
@@ -1028,7 +887,7 @@ var TypedReactiveHandler = class _TypedReactiveHandler {
1028
887
  const isInitialized = ChangeId in echoRoot || EventId in echoRoot;
1029
888
  const isSymbolProp = typeof prop === "symbol";
1030
889
  if (isInitialized && !isSymbolProp && !isInChangeContext(echoRoot)) {
1031
- throw new Error(`Cannot modify object property "${String(prop)}" outside of Obj.change(). Use Obj.change(obj, (mutableObj) => { mutableObj.property = value; }) instead.`);
890
+ throw new Error(`Cannot modify object property "${String(prop)}" outside of Obj.update(). Use Obj.update(obj, (mutableObj) => { mutableObj.property = value; }) instead.`);
1032
891
  }
1033
892
  let result = false;
1034
893
  this._inSet = true;
@@ -1067,7 +926,7 @@ var TypedReactiveHandler = class _TypedReactiveHandler {
1067
926
  const isInitialized = ChangeId in echoRoot || EventId in echoRoot;
1068
927
  const isSymbolProp = typeof property === "symbol";
1069
928
  if (isInitialized && !isSymbolProp && !isInChangeContext(echoRoot)) {
1070
- throw new Error(`Cannot modify object property "${String(property)}" outside of Obj.change(). Use Obj.change(obj, (mutableObj) => { mutableObj.property = value; }) instead.`);
929
+ throw new Error(`Cannot modify object property "${String(property)}" outside of Obj.update(). Use Obj.update(obj, (mutableObj) => { mutableObj.property = value; }) instead.`);
1071
930
  }
1072
931
  const { echoRoot: _, preparedValue } = this._prepareValueForAssignment(target, property, attributes.value);
1073
932
  const result = Reflect.defineProperty(target, property, {
@@ -1240,6 +1099,10 @@ var initMeta = (obj, meta = {
1240
1099
 
1241
1100
  // src/internal/common/proxy/reactive.ts
1242
1101
  var subscribe = (obj, callback) => {
1102
+ if (!isProxy(obj)) {
1103
+ return () => {
1104
+ };
1105
+ }
1243
1106
  const target = getProxyTarget(obj);
1244
1107
  if (target && EventId in target) {
1245
1108
  return target[EventId].on(callback);
@@ -1266,80 +1129,16 @@ import { DXN as DXN2, ObjectId as ObjectId2 } from "@dxos/keys";
1266
1129
  import { assumeType } from "@dxos/util";
1267
1130
  var __dxlog_file8 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Entity/model.ts";
1268
1131
  function assertObjectModel(obj) {
1269
- invariant8(typeof obj === "object" && obj !== null, "Invalid object model: not an object", {
1270
- F: __dxlog_file8,
1271
- L: 94,
1272
- S: this,
1273
- A: [
1274
- "typeof obj === 'object' && obj !== null",
1275
- "'Invalid object model: not an object'"
1276
- ]
1277
- });
1132
+ invariant8(typeof obj === "object" && obj !== null, "Invalid object model: not an object", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 12, S: this, A: ["typeof obj === 'object' && obj !== null", "'Invalid object model: not an object'"] });
1278
1133
  assumeType(obj);
1279
- invariant8(ObjectId2.isValid(obj.id), "Invalid object model: invalid id", {
1280
- F: __dxlog_file8,
1281
- L: 96,
1282
- S: this,
1283
- A: [
1284
- "ObjectId.isValid(obj.id)",
1285
- "'Invalid object model: invalid id'"
1286
- ]
1287
- });
1288
- invariant8(obj[TypeId] === void 0 || obj[TypeId] instanceof DXN2, "Invalid object model: invalid type", {
1289
- F: __dxlog_file8,
1290
- L: 97,
1291
- S: this,
1292
- A: [
1293
- "obj[TypeId] === undefined || obj[TypeId] instanceof DXN",
1294
- "'Invalid object model: invalid type'"
1295
- ]
1296
- });
1297
- invariant8(obj[KindId] === EntityKind.Object || obj[KindId] === EntityKind.Relation, "Invalid object model: invalid entity kind", {
1298
- F: __dxlog_file8,
1299
- L: 98,
1300
- S: this,
1301
- A: [
1302
- "obj[KindId] === EntityKind.Object || obj[KindId] === EntityKind.Relation",
1303
- "'Invalid object model: invalid entity kind'"
1304
- ]
1305
- });
1134
+ invariant8(ObjectId2.isValid(obj.id), "Invalid object model: invalid id", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 14, S: this, A: ["ObjectId.isValid(obj.id)", "'Invalid object model: invalid id'"] });
1135
+ invariant8(obj[TypeId] === void 0 || obj[TypeId] instanceof DXN2, "Invalid object model: invalid type", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 15, S: this, A: ["obj[TypeId] === undefined || obj[TypeId] instanceof DXN", "'Invalid object model: invalid type'"] });
1136
+ invariant8(obj[KindId] === EntityKind.Object || obj[KindId] === EntityKind.Relation, "Invalid object model: invalid entity kind", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 16, S: this, A: ["obj[KindId] === EntityKind.Object || obj[KindId] === EntityKind.Relation", "'Invalid object model: invalid entity kind'"] });
1306
1137
  if (obj[KindId] === EntityKind.Relation) {
1307
- invariant8(obj[RelationSourceDXNId] instanceof DXN2, "Invalid object model: invalid relation source", {
1308
- F: __dxlog_file8,
1309
- L: 104,
1310
- S: this,
1311
- A: [
1312
- "obj[RelationSourceDXNId] instanceof DXN",
1313
- "'Invalid object model: invalid relation source'"
1314
- ]
1315
- });
1316
- invariant8(obj[RelationTargetDXNId] instanceof DXN2, "Invalid object model: invalid relation target", {
1317
- F: __dxlog_file8,
1318
- L: 105,
1319
- S: this,
1320
- A: [
1321
- "obj[RelationTargetDXNId] instanceof DXN",
1322
- "'Invalid object model: invalid relation target'"
1323
- ]
1324
- });
1325
- invariant8(!(obj[RelationSourceId] instanceof DXN2), "Invalid object model: source pointer is a DXN", {
1326
- F: __dxlog_file8,
1327
- L: 106,
1328
- S: this,
1329
- A: [
1330
- "!(obj[RelationSourceId] instanceof DXN)",
1331
- "'Invalid object model: source pointer is a DXN'"
1332
- ]
1333
- });
1334
- invariant8(!(obj[RelationTargetId] instanceof DXN2), "Invalid object model: target pointer is a DXN", {
1335
- F: __dxlog_file8,
1336
- L: 107,
1337
- S: this,
1338
- A: [
1339
- "!(obj[RelationTargetId] instanceof DXN)",
1340
- "'Invalid object model: target pointer is a DXN'"
1341
- ]
1342
- });
1138
+ invariant8(obj[RelationSourceDXNId] instanceof DXN2, "Invalid object model: invalid relation source", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 18, S: this, A: ["obj[RelationSourceDXNId] instanceof DXN", "'Invalid object model: invalid relation source'"] });
1139
+ invariant8(obj[RelationTargetDXNId] instanceof DXN2, "Invalid object model: invalid relation target", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 19, S: this, A: ["obj[RelationTargetDXNId] instanceof DXN", "'Invalid object model: invalid relation target'"] });
1140
+ invariant8(!(obj[RelationSourceId] instanceof DXN2), "Invalid object model: source pointer is a DXN", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 20, S: this, A: ["!(obj[RelationSourceId] instanceof DXN)", "'Invalid object model: source pointer is a DXN'"] });
1141
+ invariant8(!(obj[RelationTargetId] instanceof DXN2), "Invalid object model: target pointer is a DXN", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 21, S: this, A: ["!(obj[RelationTargetId] instanceof DXN)", "'Invalid object model: target pointer is a DXN'"] });
1343
1142
  }
1344
1143
  }
1345
1144
 
@@ -1350,27 +1149,11 @@ import { DXN as DXN3, ObjectId as ObjectId3 } from "@dxos/keys";
1350
1149
  import { assumeType as assumeType2 } from "@dxos/util";
1351
1150
  var __dxlog_file9 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Entity/util.ts";
1352
1151
  var getObjectDXN = (object) => {
1353
- invariant9(!Schema5.isSchema(object), "schema not allowed in this function", {
1354
- F: __dxlog_file9,
1355
- L: 19,
1356
- S: void 0,
1357
- A: [
1358
- "!Schema.isSchema(object)",
1359
- "'schema not allowed in this function'"
1360
- ]
1361
- });
1152
+ invariant9(!Schema5.isSchema(object), "schema not allowed in this function", { "~LogMeta": "~LogMeta", F: __dxlog_file9, L: 14, S: void 0, A: ["!Schema.isSchema(object)", "'schema not allowed in this function'"] });
1362
1153
  assertArgument2(typeof object === "object" && object != null, "object", "expected object");
1363
1154
  assumeType2(object);
1364
1155
  if (object[SelfDXNId]) {
1365
- invariant9(object[SelfDXNId] instanceof DXN3, "Invalid object model: invalid self dxn", {
1366
- F: __dxlog_file9,
1367
- L: 24,
1368
- S: void 0,
1369
- A: [
1370
- "object[SelfDXNId] instanceof DXN",
1371
- "'Invalid object model: invalid self dxn'"
1372
- ]
1373
- });
1156
+ invariant9(object[SelfDXNId] instanceof DXN3, "Invalid object model: invalid self dxn", { "~LogMeta": "~LogMeta", F: __dxlog_file9, L: 18, S: void 0, A: ["object[SelfDXNId] instanceof DXN", "'Invalid object model: invalid self dxn'"] });
1374
1157
  return object[SelfDXNId];
1375
1158
  }
1376
1159
  if (!ObjectId3.isValid(object.id)) {
@@ -1383,15 +1166,7 @@ var getObjectDXN = (object) => {
1383
1166
  var __dxlog_file10 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Entity/api.ts";
1384
1167
  var getDXN = (entity) => {
1385
1168
  const dxn = getObjectDXN(entity);
1386
- invariant10(dxn != null, "Invalid entity.", {
1387
- F: __dxlog_file10,
1388
- L: 20,
1389
- S: void 0,
1390
- A: [
1391
- "dxn != null",
1392
- "'Invalid entity.'"
1393
- ]
1394
- });
1169
+ invariant10(dxn != null, "Invalid entity.", { "~LogMeta": "~LogMeta", F: __dxlog_file10, L: 13, S: void 0, A: ["dxn != null", "'Invalid entity.'"] });
1395
1170
  return dxn;
1396
1171
  };
1397
1172
  var getDatabase = (entity) => {
@@ -1435,24 +1210,8 @@ import { invariant as invariant11 } from "@dxos/invariant";
1435
1210
  var __dxlog_file11 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Entity/object.ts";
1436
1211
  var EchoObjectSchema = ({ typename, version: version2 }) => {
1437
1212
  return (self) => {
1438
- invariant11(typeof TypeAnnotationId === "symbol", "Sanity.", {
1439
- F: __dxlog_file11,
1440
- L: 37,
1441
- S: void 0,
1442
- A: [
1443
- "typeof TypeAnnotationId === 'symbol'",
1444
- "'Sanity.'"
1445
- ]
1446
- });
1447
- invariant11(SchemaAST4.isTypeLiteral(self.ast), "Schema must be a TypeLiteral.", {
1448
- F: __dxlog_file11,
1449
- L: 38,
1450
- S: void 0,
1451
- A: [
1452
- "SchemaAST.isTypeLiteral(self.ast)",
1453
- "'Schema must be a TypeLiteral.'"
1454
- ]
1455
- });
1213
+ invariant11(typeof TypeAnnotationId === "symbol", "Sanity.", { "~LogMeta": "~LogMeta", F: __dxlog_file11, L: 15, S: void 0, A: ["typeof TypeAnnotationId === 'symbol'", "'Sanity.'"] });
1214
+ invariant11(SchemaAST4.isTypeLiteral(self.ast), "Schema must be a TypeLiteral.", { "~LogMeta": "~LogMeta", F: __dxlog_file11, L: 16, S: void 0, A: ["SchemaAST.isTypeLiteral(self.ast)", "'Schema must be a TypeLiteral.'"] });
1456
1215
  const fields = self.fields ?? {};
1457
1216
  const schemaWithId = Schema7.extend(self, Schema7.Struct({
1458
1217
  id: Schema7.String
@@ -1495,15 +1254,7 @@ var EchoRelationSchema = ({ source, target, typename, version: version2 }) => {
1495
1254
  raise(new Error("Target schema must be an echo object schema."));
1496
1255
  }
1497
1256
  return (self) => {
1498
- invariant12(SchemaAST5.isTypeLiteral(self.ast), "Schema must be a TypeLiteral.", {
1499
- F: __dxlog_file12,
1500
- L: 110,
1501
- S: void 0,
1502
- A: [
1503
- "SchemaAST.isTypeLiteral(self.ast)",
1504
- "'Schema must be a TypeLiteral.'"
1505
- ]
1506
- });
1257
+ invariant12(SchemaAST5.isTypeLiteral(self.ast), "Schema must be a TypeLiteral.", { "~LogMeta": "~LogMeta", F: __dxlog_file12, L: 27, S: void 0, A: ["SchemaAST.isTypeLiteral(self.ast)", "'Schema must be a TypeLiteral.'"] });
1507
1258
  const fields = self.fields ?? {};
1508
1259
  const schemaWithId = Schema8.extend(self, Schema8.Struct({
1509
1260
  id: Schema8.String
@@ -1745,33 +1496,17 @@ import { assumeType as assumeType4, deepMapValues as deepMapValues2, visitValues
1745
1496
  var __dxlog_file13 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Obj/json-serializer.ts";
1746
1497
  var objectToJSON = (obj) => {
1747
1498
  const typename = getTypeDXN(obj)?.toString();
1748
- invariant13(typename && typeof typename === "string", void 0, {
1749
- F: __dxlog_file13,
1750
- L: 66,
1751
- S: void 0,
1752
- A: [
1753
- "typename && typeof typename === 'string'",
1754
- ""
1755
- ]
1756
- });
1499
+ invariant13(typename && typeof typename === "string", void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 21, S: void 0, A: ["typename && typeof typename === 'string'", ""] });
1757
1500
  return typedJsonSerializer.call(obj);
1758
1501
  };
1759
- var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
1502
+ var objectFromJSON = async (jsonData, { refResolver, dxn, database, parent } = {}) => {
1760
1503
  assumeType4(jsonData);
1761
1504
  assertArgument5(typeof jsonData === "object" && jsonData !== null, "jsonData", "expect object");
1762
1505
  assertArgument5(typeof jsonData[ATTR_TYPE] === "string", "jsonData[ATTR_TYPE]", "expected object to have a type");
1763
1506
  assertArgument5(typeof jsonData.id === "string", "jsonData.id", "expected object to have an id");
1764
1507
  const type = DXN5.parse(jsonData[ATTR_TYPE]);
1765
1508
  const schema = await refResolver?.resolveSchema(type);
1766
- invariant13(schema === void 0 || Schema10.isSchema(schema), void 0, {
1767
- F: __dxlog_file13,
1768
- L: 92,
1769
- S: void 0,
1770
- A: [
1771
- "schema === undefined || Schema.isSchema(schema)",
1772
- ""
1773
- ]
1774
- });
1509
+ invariant13(schema === void 0 || Schema10.isSchema(schema), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 41, S: void 0, A: ["schema === undefined || Schema.isSchema(schema)", ""] });
1775
1510
  const decodedInput = stripInternalJsonKeys(jsonData);
1776
1511
  let obj;
1777
1512
  if (schema != null) {
@@ -1784,15 +1519,7 @@ var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
1784
1519
  refResolver
1785
1520
  });
1786
1521
  }
1787
- invariant13(ObjectId4.isValid(obj.id), "Invalid object id", {
1788
- F: __dxlog_file13,
1789
- L: 105,
1790
- S: void 0,
1791
- A: [
1792
- "ObjectId.isValid(obj.id)",
1793
- "'Invalid object id'"
1794
- ]
1795
- });
1522
+ invariant13(ObjectId4.isValid(obj.id), "Invalid object id", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 54, S: void 0, A: ["ObjectId.isValid(obj.id)", "'Invalid object id'"] });
1796
1523
  setTypename(obj, type);
1797
1524
  if (schema) {
1798
1525
  setSchema(obj, schema);
@@ -1813,15 +1540,7 @@ var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
1813
1540
  }
1814
1541
  if (typeof jsonData[ATTR_META] === "object") {
1815
1542
  const meta = await ObjectMetaSchema.pipe(Schema10.decodeUnknownPromise)(jsonData[ATTR_META]);
1816
- invariant13(Array.isArray(meta.keys), void 0, {
1817
- F: __dxlog_file13,
1818
- L: 131,
1819
- S: void 0,
1820
- A: [
1821
- "Array.isArray(meta.keys)",
1822
- ""
1823
- ]
1824
- });
1543
+ invariant13(Array.isArray(meta.keys), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 75, S: void 0, A: ["Array.isArray(meta.keys)", ""] });
1825
1544
  defineHiddenProperty(obj, MetaId, meta);
1826
1545
  } else {
1827
1546
  defineHiddenProperty(obj, MetaId, {
@@ -1830,7 +1549,9 @@ var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
1830
1549
  }
1831
1550
  if (jsonData[ATTR_PARENT]) {
1832
1551
  const parentDxn = DXN5.parse(jsonData[ATTR_PARENT]);
1833
- const parent = await refResolver?.resolve(parentDxn);
1552
+ const resolvedParent = await refResolver?.resolve(parentDxn);
1553
+ defineHiddenProperty(obj, ParentId, resolvedParent);
1554
+ } else if (parent) {
1834
1555
  defineHiddenProperty(obj, ParentId, parent);
1835
1556
  }
1836
1557
  if (dxn) {
@@ -1840,60 +1561,12 @@ var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
1840
1561
  defineHiddenProperty(obj, ObjectDatabaseId, database);
1841
1562
  }
1842
1563
  assertObjectModel(obj);
1843
- invariant13(obj[ATTR_TYPE] === void 0, "Invalid object model", {
1844
- F: __dxlog_file13,
1845
- L: 154,
1846
- S: void 0,
1847
- A: [
1848
- "(obj as any)[ATTR_TYPE] === undefined",
1849
- "'Invalid object model'"
1850
- ]
1851
- });
1852
- invariant13(obj[ATTR_META] === void 0, "Invalid object model", {
1853
- F: __dxlog_file13,
1854
- L: 155,
1855
- S: void 0,
1856
- A: [
1857
- "(obj as any)[ATTR_META] === undefined",
1858
- "'Invalid object model'"
1859
- ]
1860
- });
1861
- invariant13(obj[ATTR_DELETED] === void 0, "Invalid object model", {
1862
- F: __dxlog_file13,
1863
- L: 156,
1864
- S: void 0,
1865
- A: [
1866
- "(obj as any)[ATTR_DELETED] === undefined",
1867
- "'Invalid object model'"
1868
- ]
1869
- });
1870
- invariant13(obj[ATTR_SELF_DXN] === void 0, "Invalid object model", {
1871
- F: __dxlog_file13,
1872
- L: 157,
1873
- S: void 0,
1874
- A: [
1875
- "(obj as any)[ATTR_SELF_DXN] === undefined",
1876
- "'Invalid object model'"
1877
- ]
1878
- });
1879
- invariant13(obj[ATTR_RELATION_SOURCE] === void 0, "Invalid object model", {
1880
- F: __dxlog_file13,
1881
- L: 158,
1882
- S: void 0,
1883
- A: [
1884
- "(obj as any)[ATTR_RELATION_SOURCE] === undefined",
1885
- "'Invalid object model'"
1886
- ]
1887
- });
1888
- invariant13(obj[ATTR_RELATION_TARGET] === void 0, "Invalid object model", {
1889
- F: __dxlog_file13,
1890
- L: 159,
1891
- S: void 0,
1892
- A: [
1893
- "(obj as any)[ATTR_RELATION_TARGET] === undefined",
1894
- "'Invalid object model'"
1895
- ]
1896
- });
1564
+ invariant13(obj[ATTR_TYPE] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 96, S: void 0, A: ["obj[ATTR_TYPE] === undefined", "'Invalid object model'"] });
1565
+ invariant13(obj[ATTR_META] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 97, S: void 0, A: ["obj[ATTR_META] === undefined", "'Invalid object model'"] });
1566
+ invariant13(obj[ATTR_DELETED] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 98, S: void 0, A: ["obj[ATTR_DELETED] === undefined", "'Invalid object model'"] });
1567
+ invariant13(obj[ATTR_SELF_DXN] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 99, S: void 0, A: ["obj[ATTR_SELF_DXN] === undefined", "'Invalid object model'"] });
1568
+ invariant13(obj[ATTR_RELATION_SOURCE] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 100, S: void 0, A: ["obj[ATTR_RELATION_SOURCE] === undefined", "'Invalid object model'"] });
1569
+ invariant13(obj[ATTR_RELATION_TARGET] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 101, S: void 0, A: ["obj[ATTR_RELATION_TARGET] === undefined", "'Invalid object model'"] });
1897
1570
  return obj;
1898
1571
  };
1899
1572
  var decodeGeneric = (jsonData, options) => {
@@ -1988,25 +1661,9 @@ import { getArrayElementType, getBaseType, getProperties as getProperties2, isAr
1988
1661
  import { invariant as invariant14 } from "@dxos/invariant";
1989
1662
  var __dxlog_file14 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Obj/set-value.ts";
1990
1663
  var setValue = (obj, path, value2) => {
1991
- invariant14(path.length > 0, "Path must not be empty", {
1992
- F: __dxlog_file14,
1993
- L: 27,
1994
- S: void 0,
1995
- A: [
1996
- "path.length > 0",
1997
- "'Path must not be empty'"
1998
- ]
1999
- });
1664
+ invariant14(path.length > 0, "Path must not be empty", { "~LogMeta": "~LogMeta", F: __dxlog_file14, L: 14, S: void 0, A: ["path.length > 0", "'Path must not be empty'"] });
2000
1665
  const schema = getSchema(obj);
2001
- invariant14(schema != null, "Object must have a schema", {
2002
- F: __dxlog_file14,
2003
- L: 30,
2004
- S: void 0,
2005
- A: [
2006
- "schema != null",
2007
- "'Object must have a schema'"
2008
- ]
2009
- });
1666
+ invariant14(schema != null, "Object must have a schema", { "~LogMeta": "~LogMeta", F: __dxlog_file14, L: 16, S: void 0, A: ["schema != null", "'Object must have a schema'"] });
2010
1667
  let parent = obj;
2011
1668
  let currentAST = schema.ast;
2012
1669
  for (let i = 0; i < path.length - 1; i++) {
@@ -2148,15 +1805,7 @@ var __dxlog_file15 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Obj/cl
2148
1805
  var clone = (obj, opts) => {
2149
1806
  const { id, ...data } = obj;
2150
1807
  const schema = getSchema(obj);
2151
- invariant15(schema != null, "Object should have a schema", {
2152
- F: __dxlog_file15,
2153
- L: 21,
2154
- S: void 0,
2155
- A: [
2156
- "schema != null",
2157
- "'Object should have a schema'"
2158
- ]
2159
- });
1808
+ invariant15(schema != null, "Object should have a schema", { "~LogMeta": "~LogMeta", F: __dxlog_file15, L: 16, S: void 0, A: ["schema != null", "'Object should have a schema'"] });
2160
1809
  const props = deepMapValues4(data, (value2, recurse) => {
2161
1810
  if (Ref.isRef(value2)) {
2162
1811
  if (opts?.deep) {
@@ -2181,6 +1830,127 @@ var clone = (obj, opts) => {
2181
1830
  return makeObject(schema, props, meta);
2182
1831
  };
2183
1832
 
1833
+ // src/internal/Query.ts
1834
+ var prettyFilter = (filter) => {
1835
+ switch (filter.type) {
1836
+ case "object": {
1837
+ const parts = [];
1838
+ if (filter.typename !== null) {
1839
+ parts.push(String(filter.typename));
1840
+ }
1841
+ if (filter.id !== void 0 && filter.id.length > 0) {
1842
+ parts.push(`id: [${filter.id.join(", ")}]`);
1843
+ }
1844
+ const propEntries = Object.entries(filter.props);
1845
+ if (propEntries.length > 0) {
1846
+ const propsStr = propEntries.map(([k, v]) => `${k}: ${prettyFilter(v)}`).join(", ");
1847
+ parts.push(`{ ${propsStr} }`);
1848
+ }
1849
+ if (filter.foreignKeys !== void 0 && filter.foreignKeys.length > 0) {
1850
+ parts.push(`foreignKeys: [${filter.foreignKeys.map((fk) => JSON.stringify(fk)).join(", ")}]`);
1851
+ }
1852
+ return parts.length > 0 ? `Filter.type(${parts.join(", ")})` : "Filter.everything()";
1853
+ }
1854
+ case "compare":
1855
+ return `Filter.${filter.operator}(${JSON.stringify(filter.value)})`;
1856
+ case "in":
1857
+ return `Filter.in([${filter.values.map((v) => JSON.stringify(v)).join(", ")}])`;
1858
+ case "contains":
1859
+ return `Filter.contains(${JSON.stringify(filter.value)})`;
1860
+ case "tag":
1861
+ return `Filter.tag(${JSON.stringify(filter.tag)})`;
1862
+ case "range":
1863
+ return `Filter.range(${JSON.stringify(filter.from)}, ${JSON.stringify(filter.to)})`;
1864
+ case "text-search":
1865
+ return filter.searchKind ? `Filter.textSearch(${JSON.stringify(filter.text)}, ${JSON.stringify(filter.searchKind)})` : `Filter.textSearch(${JSON.stringify(filter.text)})`;
1866
+ case "timestamp":
1867
+ return `Filter.${filter.field}.${filter.operator}(${filter.value})`;
1868
+ case "child-of":
1869
+ return `Filter.childOf([${filter.parents.map((p) => JSON.stringify(p)).join(", ")}], { transitive: ${filter.transitive} })`;
1870
+ case "not":
1871
+ return `Filter.not(${prettyFilter(filter.filter)})`;
1872
+ case "and":
1873
+ return `Filter.and(${filter.filters.map(prettyFilter).join(", ")})`;
1874
+ case "or":
1875
+ return `Filter.or(${filter.filters.map(prettyFilter).join(", ")})`;
1876
+ }
1877
+ };
1878
+ var prettyQuery = (query) => {
1879
+ switch (query.type) {
1880
+ case "select":
1881
+ return `Query.select(${prettyFilter(query.filter)})`;
1882
+ case "filter":
1883
+ return `${prettyQuery(query.selection)}.select(${prettyFilter(query.filter)})`;
1884
+ case "reference-traversal":
1885
+ return `${prettyQuery(query.anchor)}.reference(${JSON.stringify(query.property)})`;
1886
+ case "incoming-references": {
1887
+ const args = [];
1888
+ if (query.typename !== null) {
1889
+ args.push(String(query.typename));
1890
+ }
1891
+ if (query.property !== null) {
1892
+ args.push(JSON.stringify(query.property));
1893
+ }
1894
+ return `${prettyQuery(query.anchor)}.referencedBy(${args.join(", ")})`;
1895
+ }
1896
+ case "relation": {
1897
+ const method = query.direction === "outgoing" ? "sourceOf" : query.direction === "incoming" ? "targetOf" : "relationOf";
1898
+ const filterStr = query.filter !== void 0 ? prettyFilter(query.filter) : "";
1899
+ return `${prettyQuery(query.anchor)}.${method}(${filterStr})`;
1900
+ }
1901
+ case "relation-traversal":
1902
+ return `${prettyQuery(query.anchor)}.${query.direction}()`;
1903
+ case "hierarchy-traversal":
1904
+ return query.direction === "to-parent" ? `${prettyQuery(query.anchor)}.parent()` : `${prettyQuery(query.anchor)}.children()`;
1905
+ case "union":
1906
+ return `Query.all(${query.queries.map(prettyQuery).join(", ")})`;
1907
+ case "set-difference":
1908
+ return `Query.without(${prettyQuery(query.source)}, ${prettyQuery(query.exclude)})`;
1909
+ case "order": {
1910
+ const orders = query.order.map((o) => {
1911
+ if (o.kind === "natural") {
1912
+ return "Order.natural()";
1913
+ } else if (o.kind === "rank") {
1914
+ return `Order.rank(${JSON.stringify(o.direction)})`;
1915
+ } else {
1916
+ return `Order.property(${JSON.stringify(o.property)}, ${JSON.stringify(o.direction)})`;
1917
+ }
1918
+ });
1919
+ return `${prettyQuery(query.query)}.orderBy(${orders.join(", ")})`;
1920
+ }
1921
+ case "options": {
1922
+ const opts = query.options;
1923
+ const parts = [];
1924
+ if (opts.deleted !== void 0) {
1925
+ parts.push(`deleted: ${JSON.stringify(opts.deleted)}`);
1926
+ }
1927
+ if (opts.debugLabel !== void 0) {
1928
+ parts.push(`debugLabel: ${JSON.stringify(opts.debugLabel)}`);
1929
+ }
1930
+ return `${prettyQuery(query.query)}.options({ ${parts.join(", ")} })`;
1931
+ }
1932
+ case "from": {
1933
+ if (query.from._tag === "scope") {
1934
+ const scope = query.from.scope;
1935
+ const parts = [];
1936
+ if (scope.spaceIds !== void 0) {
1937
+ parts.push(`spaceIds: [${scope.spaceIds.map((s) => JSON.stringify(s)).join(", ")}]`);
1938
+ }
1939
+ if (scope.queues !== void 0) {
1940
+ parts.push(`queues: [${scope.queues.map(String).join(", ")}]`);
1941
+ }
1942
+ if (scope.allQueuesFromSpaces !== void 0) {
1943
+ parts.push(`allQueuesFromSpaces: ${scope.allQueuesFromSpaces}`);
1944
+ }
1945
+ return `${prettyQuery(query.query)}.from({ ${parts.join(", ")} })`;
1946
+ }
1947
+ return `${prettyQuery(query.query)}.from(${prettyQuery(query.from.query)})`;
1948
+ }
1949
+ case "limit":
1950
+ return `${prettyQuery(query.query)}.limit(${query.limit})`;
1951
+ }
1952
+ };
1953
+
2184
1954
  // src/internal/Type/echo-schema.ts
2185
1955
  import * as Schema13 from "effect/Schema";
2186
1956
  import * as SchemaAST8 from "effect/SchemaAST";
@@ -2198,15 +1968,7 @@ var addFieldsToSchema = (schema, fields) => {
2198
1968
  };
2199
1969
  var updateFieldsInSchema = (schema, fields) => {
2200
1970
  const ast = schema.ast;
2201
- invariant16(SchemaAST7.isTypeLiteral(ast), void 0, {
2202
- F: __dxlog_file16,
2203
- L: 29,
2204
- S: void 0,
2205
- A: [
2206
- "SchemaAST.isTypeLiteral(ast)",
2207
- ""
2208
- ]
2209
- });
1971
+ invariant16(SchemaAST7.isTypeLiteral(ast), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file16, L: 16, S: void 0, A: ["SchemaAST.isTypeLiteral(ast)", ""] });
2210
1972
  const updatedProperties = [
2211
1973
  ...ast.propertySignatures
2212
1974
  ];
@@ -2226,28 +1988,12 @@ var removeFieldsFromSchema = (schema, fieldNames) => {
2226
1988
  };
2227
1989
  var updateFieldNameInSchema = (schema, { before, after }) => {
2228
1990
  const ast = schema.ast;
2229
- invariant16(SchemaAST7.isTypeLiteral(ast), void 0, {
2230
- F: __dxlog_file16,
2231
- L: 57,
2232
- S: void 0,
2233
- A: [
2234
- "SchemaAST.isTypeLiteral(ast)",
2235
- ""
2236
- ]
2237
- });
1991
+ invariant16(SchemaAST7.isTypeLiteral(ast), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file16, L: 36, S: void 0, A: ["SchemaAST.isTypeLiteral(ast)", ""] });
2238
1992
  return Schema11.make(new SchemaAST7.TypeLiteral(ast.propertySignatures.map((p) => p.name === before ? new SchemaAST7.PropertySignature(after, p.type, p.isOptional, p.isReadonly, p.annotations) : p), ast.indexSignatures, ast.annotations));
2239
1993
  };
2240
1994
  var setTypenameInSchema = (schema, typename) => {
2241
1995
  const existingAnnotation = schema.ast.annotations[TypeAnnotationId];
2242
- invariant16(existingAnnotation, `Missing ${String(TypeAnnotationId)}`, {
2243
- F: __dxlog_file16,
2244
- L: 77,
2245
- S: void 0,
2246
- A: [
2247
- "existingAnnotation",
2248
- "`Missing ${String(TypeAnnotationId)}`"
2249
- ]
2250
- });
1996
+ invariant16(existingAnnotation, `Missing ${String(TypeAnnotationId)}`, { "~LogMeta": "~LogMeta", F: __dxlog_file16, L: 41, S: void 0, A: ["existingAnnotation", "`Missing ${String(TypeAnnotationId)}`"] });
2251
1997
  return schema.annotations({
2252
1998
  ...schema.ast.annotations,
2253
1999
  [TypeAnnotationId]: {
@@ -2276,8 +2022,8 @@ var PersistentSchema = Schema12.Struct({
2276
2022
  }), LabelAnnotation.set([
2277
2023
  "name"
2278
2024
  ]), IconAnnotation.set({
2279
- icon: "ph--brackets-curly--regular",
2280
- hue: "blue"
2025
+ icon: "ph--database--regular",
2026
+ hue: "green"
2281
2027
  }));
2282
2028
 
2283
2029
  // src/internal/Type/echo-schema.ts
@@ -2288,15 +2034,7 @@ var ImmutableSchema = class {
2288
2034
  constructor(_schema) {
2289
2035
  this._schema = _schema;
2290
2036
  this._objectAnnotation = getTypeAnnotation(this._schema);
2291
- invariant17(this._objectAnnotation, void 0, {
2292
- F: __dxlog_file17,
2293
- L: 49,
2294
- S: this,
2295
- A: [
2296
- "this._objectAnnotation",
2297
- ""
2298
- ]
2299
- });
2037
+ invariant17(this._objectAnnotation, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file17, L: 24, S: this, A: ["this._objectAnnotation", ""] });
2300
2038
  }
2301
2039
  //
2302
2040
  // Effect Schema (push to abstract base class).
@@ -2450,15 +2188,7 @@ var EchoSchema = class extends EchoSchemaConstructor() {
2450
2188
  * Returns a mutable schema.
2451
2189
  */
2452
2190
  get mutable() {
2453
- invariant17(!this.readonly, "Schema is not mutable", {
2454
- F: __dxlog_file17,
2455
- L: 279,
2456
- S: this,
2457
- A: [
2458
- "!this.readonly",
2459
- "'Schema is not mutable'"
2460
- ]
2461
- });
2191
+ invariant17(!this.readonly, "Schema is not mutable", { "~LogMeta": "~LogMeta", F: __dxlog_file17, L: 203, S: this, A: ["!this.readonly", "'Schema is not mutable'"] });
2462
2192
  return this;
2463
2193
  }
2464
2194
  //
@@ -2491,15 +2221,7 @@ var EchoSchema = class extends EchoSchemaConstructor() {
2491
2221
  }
2492
2222
  getProperties() {
2493
2223
  const ast = this._getSchema().ast;
2494
- invariant17(SchemaAST8.isTypeLiteral(ast), void 0, {
2495
- F: __dxlog_file17,
2496
- L: 314,
2497
- S: this,
2498
- A: [
2499
- "SchemaAST.isTypeLiteral(ast)",
2500
- ""
2501
- ]
2502
- });
2224
+ invariant17(SchemaAST8.isTypeLiteral(ast), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file17, L: 233, S: this, A: ["SchemaAST.isTypeLiteral(ast)", ""] });
2503
2225
  return [
2504
2226
  ...ast.propertySignatures
2505
2227
  ].filter((p) => p.name !== "id").map(unwrapOptionality);
@@ -2559,7 +2281,7 @@ var EchoSchema = class extends EchoSchemaConstructor() {
2559
2281
  });
2560
2282
  }
2561
2283
  /**
2562
- * Wrapper for Obj.change that handles the change context for the persistent schema.
2284
+ * Wrapper for Obj.update that handles the change context for the persistent schema.
2563
2285
  */
2564
2286
  _change(callback) {
2565
2287
  const changeFn = this._persistentSchema[ChangeId];
@@ -2695,6 +2417,8 @@ export {
2695
2417
  setValue,
2696
2418
  getSnapshot,
2697
2419
  clone,
2420
+ prettyFilter,
2421
+ prettyQuery,
2698
2422
  addFieldsToSchema,
2699
2423
  updateFieldsInSchema,
2700
2424
  removeFieldsFromSchema,
@@ -2709,4 +2433,4 @@ export {
2709
2433
  getValue,
2710
2434
  splitJsonPath
2711
2435
  };
2712
- //# sourceMappingURL=chunk-TQQZLKB7.mjs.map
2436
+ //# sourceMappingURL=chunk-SJKBWMJY.mjs.map