@dxos/echo 0.8.4-main.a4bbb77 → 0.8.4-main.abd8ff62ef

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 (539) hide show
  1. package/README.md +3 -4
  2. package/dist/lib/neutral/Annotation.mjs +37 -0
  3. package/dist/lib/neutral/Database.mjs +49 -0
  4. package/dist/lib/neutral/Entity.mjs +61 -0
  5. package/dist/lib/neutral/Entity.mjs.map +7 -0
  6. package/dist/lib/neutral/Err.mjs +12 -0
  7. package/dist/lib/neutral/Err.mjs.map +7 -0
  8. package/dist/lib/neutral/Extension.mjs +18 -0
  9. package/dist/lib/neutral/Extension.mjs.map +7 -0
  10. package/dist/lib/neutral/Feed.mjs +50 -0
  11. package/dist/lib/neutral/Feed.mjs.map +7 -0
  12. package/dist/lib/neutral/Filter.mjs +72 -0
  13. package/dist/lib/neutral/Filter.mjs.map +7 -0
  14. package/dist/lib/neutral/Format.mjs +66 -0
  15. package/dist/lib/neutral/Format.mjs.map +7 -0
  16. package/dist/lib/neutral/JsonSchema.mjs +19 -0
  17. package/dist/lib/neutral/JsonSchema.mjs.map +7 -0
  18. package/dist/lib/neutral/Key.mjs +12 -0
  19. package/dist/lib/neutral/Key.mjs.map +7 -0
  20. package/dist/lib/neutral/Migration.mjs +17 -0
  21. package/dist/lib/neutral/Migration.mjs.map +7 -0
  22. package/dist/lib/neutral/Obj.mjs +113 -0
  23. package/dist/lib/neutral/Obj.mjs.map +7 -0
  24. package/dist/lib/neutral/Order.mjs +12 -0
  25. package/dist/lib/neutral/Order.mjs.map +7 -0
  26. package/dist/lib/neutral/Query.mjs +38 -0
  27. package/dist/lib/neutral/Query.mjs.map +7 -0
  28. package/dist/lib/neutral/QueryResult.mjs +2 -0
  29. package/dist/lib/neutral/QueryResult.mjs.map +7 -0
  30. package/dist/lib/neutral/Ref.mjs +24 -0
  31. package/dist/lib/neutral/Ref.mjs.map +7 -0
  32. package/dist/lib/neutral/Relation.mjs +94 -0
  33. package/dist/lib/neutral/Relation.mjs.map +7 -0
  34. package/dist/lib/neutral/SchemaRegistry.mjs +2 -0
  35. package/dist/lib/neutral/SchemaRegistry.mjs.map +7 -0
  36. package/dist/lib/neutral/Tag.mjs +29 -0
  37. package/dist/lib/neutral/Tag.mjs.map +7 -0
  38. package/dist/lib/neutral/Type.mjs +37 -0
  39. package/dist/lib/neutral/Type.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-2T22UGGN.mjs +206 -0
  41. package/dist/lib/neutral/chunk-2T22UGGN.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-44HT3MEC.mjs +73 -0
  43. package/dist/lib/neutral/chunk-44HT3MEC.mjs.map +7 -0
  44. package/dist/lib/neutral/chunk-6VC3FI5E.mjs +125 -0
  45. package/dist/lib/neutral/chunk-6VC3FI5E.mjs.map +7 -0
  46. package/dist/lib/neutral/chunk-7JFW72MX.mjs +132 -0
  47. package/dist/lib/neutral/chunk-7JFW72MX.mjs.map +7 -0
  48. package/dist/lib/neutral/chunk-7RVZT53K.mjs +21 -0
  49. package/dist/lib/neutral/chunk-7RVZT53K.mjs.map +7 -0
  50. package/dist/lib/neutral/chunk-BICZKPQG.mjs +7 -0
  51. package/dist/lib/neutral/chunk-BICZKPQG.mjs.map +7 -0
  52. package/dist/lib/neutral/chunk-CIWZ5MHQ.mjs +36 -0
  53. package/dist/lib/neutral/chunk-CIWZ5MHQ.mjs.map +7 -0
  54. package/dist/lib/neutral/chunk-DUNXPKAC.mjs +56 -0
  55. package/dist/lib/neutral/chunk-DUNXPKAC.mjs.map +7 -0
  56. package/dist/lib/neutral/chunk-FAW7PJRO.mjs +34 -0
  57. package/dist/lib/neutral/chunk-FAW7PJRO.mjs.map +7 -0
  58. package/dist/lib/neutral/chunk-FAYW32CW.mjs +27 -0
  59. package/dist/lib/neutral/chunk-FAYW32CW.mjs.map +7 -0
  60. package/dist/lib/neutral/chunk-GWFFC34K.mjs +50 -0
  61. package/dist/lib/neutral/chunk-GWFFC34K.mjs.map +7 -0
  62. package/dist/lib/neutral/chunk-I2MFJ76N.mjs +354 -0
  63. package/dist/lib/neutral/chunk-I2MFJ76N.mjs.map +7 -0
  64. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  65. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  66. package/dist/lib/neutral/chunk-JALF2CVV.mjs +345 -0
  67. package/dist/lib/neutral/chunk-JALF2CVV.mjs.map +7 -0
  68. package/dist/lib/neutral/chunk-KQUQZ3CB.mjs +128 -0
  69. package/dist/lib/neutral/chunk-KQUQZ3CB.mjs.map +7 -0
  70. package/dist/lib/neutral/chunk-LOTZLYHB.mjs +420 -0
  71. package/dist/lib/neutral/chunk-LOTZLYHB.mjs.map +7 -0
  72. package/dist/lib/neutral/chunk-N4B7FHQT.mjs +67 -0
  73. package/dist/lib/neutral/chunk-N4B7FHQT.mjs.map +7 -0
  74. package/dist/lib/neutral/chunk-NKXEKBP5.mjs +81 -0
  75. package/dist/lib/neutral/chunk-NKXEKBP5.mjs.map +7 -0
  76. package/dist/lib/neutral/chunk-NSMLBSFS.mjs +270 -0
  77. package/dist/lib/neutral/chunk-NSMLBSFS.mjs.map +7 -0
  78. package/dist/lib/neutral/chunk-QBIGOSRF.mjs +45 -0
  79. package/dist/lib/neutral/chunk-QBIGOSRF.mjs.map +7 -0
  80. package/dist/lib/neutral/chunk-QBLYZ4IV.mjs +734 -0
  81. package/dist/lib/neutral/chunk-QBLYZ4IV.mjs.map +7 -0
  82. package/dist/lib/neutral/chunk-QEVM3JUP.mjs +318 -0
  83. package/dist/lib/neutral/chunk-QEVM3JUP.mjs.map +7 -0
  84. package/dist/lib/neutral/chunk-REP7WWAQ.mjs +346 -0
  85. package/dist/lib/neutral/chunk-REP7WWAQ.mjs.map +7 -0
  86. package/dist/lib/neutral/chunk-TRPZU2HV.mjs +402 -0
  87. package/dist/lib/neutral/chunk-TRPZU2HV.mjs.map +7 -0
  88. package/dist/lib/neutral/chunk-TTCSATUD.mjs +42 -0
  89. package/dist/lib/neutral/chunk-TTCSATUD.mjs.map +7 -0
  90. package/dist/lib/neutral/chunk-TW76K7H5.mjs +45 -0
  91. package/dist/lib/neutral/chunk-TW76K7H5.mjs.map +7 -0
  92. package/dist/lib/neutral/chunk-UYJYDSD7.mjs +2436 -0
  93. package/dist/lib/neutral/chunk-UYJYDSD7.mjs.map +7 -0
  94. package/dist/lib/neutral/chunk-V72DY6LU.mjs +7 -0
  95. package/dist/lib/neutral/chunk-V72DY6LU.mjs.map +7 -0
  96. package/dist/lib/neutral/chunk-ZISMEVKD.mjs +51 -0
  97. package/dist/lib/neutral/chunk-ZISMEVKD.mjs.map +7 -0
  98. package/dist/lib/neutral/index.mjs +107 -0
  99. package/dist/lib/neutral/index.mjs.map +7 -0
  100. package/dist/lib/neutral/internal/index.mjs +474 -0
  101. package/dist/lib/neutral/internal/index.mjs.map +7 -0
  102. package/dist/lib/neutral/meta.json +1 -0
  103. package/dist/lib/neutral/testing/index.mjs +375 -0
  104. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  105. package/dist/types/src/Annotation.d.ts +24 -0
  106. package/dist/types/src/Annotation.d.ts.map +1 -0
  107. package/dist/types/src/Collection.d.ts +16 -0
  108. package/dist/types/src/Collection.d.ts.map +1 -0
  109. package/dist/types/src/Database.d.ts +201 -0
  110. package/dist/types/src/Database.d.ts.map +1 -0
  111. package/dist/types/src/Dataset.d.ts +19 -0
  112. package/dist/types/src/Dataset.d.ts.map +1 -0
  113. package/dist/types/src/Entity.d.ts +174 -0
  114. package/dist/types/src/Entity.d.ts.map +1 -0
  115. package/dist/types/src/Entity.test.d.ts +2 -0
  116. package/dist/types/src/Entity.test.d.ts.map +1 -0
  117. package/dist/types/src/Err.d.ts +107 -0
  118. package/dist/types/src/Err.d.ts.map +1 -0
  119. package/dist/types/src/Extension.d.ts +80 -0
  120. package/dist/types/src/Extension.d.ts.map +1 -0
  121. package/dist/types/src/Extension.test.d.ts +2 -0
  122. package/dist/types/src/Extension.test.d.ts.map +1 -0
  123. package/dist/types/src/Feed.d.ts +182 -0
  124. package/dist/types/src/Feed.d.ts.map +1 -0
  125. package/dist/types/src/Filter.d.ts +149 -0
  126. package/dist/types/src/Filter.d.ts.map +1 -0
  127. package/dist/types/src/Filter.test.d.ts +2 -0
  128. package/dist/types/src/Filter.test.d.ts.map +1 -0
  129. package/dist/types/src/Format.d.ts +4 -0
  130. package/dist/types/src/Format.d.ts.map +1 -0
  131. package/dist/types/src/Hypergraph.d.ts +65 -0
  132. package/dist/types/src/Hypergraph.d.ts.map +1 -0
  133. package/dist/types/src/Json.d.ts +33 -0
  134. package/dist/types/src/Json.d.ts.map +1 -0
  135. package/dist/types/src/Json.test.d.ts +2 -0
  136. package/dist/types/src/Json.test.d.ts.map +1 -0
  137. package/dist/types/src/JsonSchema.d.ts +16 -0
  138. package/dist/types/src/JsonSchema.d.ts.map +1 -0
  139. package/dist/types/src/Key.d.ts +1 -0
  140. package/dist/types/src/Key.d.ts.map +1 -1
  141. package/dist/types/src/Migration.d.ts +57 -0
  142. package/dist/types/src/Migration.d.ts.map +1 -0
  143. package/dist/types/src/Obj.d.ts +442 -98
  144. package/dist/types/src/Obj.d.ts.map +1 -1
  145. package/dist/types/src/Obj.test.d.ts +2 -0
  146. package/dist/types/src/Obj.test.d.ts.map +1 -0
  147. package/dist/types/src/Order.d.ts +16 -0
  148. package/dist/types/src/Order.d.ts.map +1 -0
  149. package/dist/types/src/Query.d.ts +213 -0
  150. package/dist/types/src/Query.d.ts.map +1 -0
  151. package/dist/types/src/Query.test.d.ts +2 -0
  152. package/dist/types/src/Query.test.d.ts.map +1 -0
  153. package/dist/types/src/QueryResult.d.ts +80 -0
  154. package/dist/types/src/QueryResult.d.ts.map +1 -0
  155. package/dist/types/src/Ref.d.ts +61 -11
  156. package/dist/types/src/Ref.d.ts.map +1 -1
  157. package/dist/types/src/Relation.d.ts +288 -22
  158. package/dist/types/src/Relation.d.ts.map +1 -1
  159. package/dist/types/src/Relation.test.d.ts +2 -0
  160. package/dist/types/src/Relation.test.d.ts.map +1 -0
  161. package/dist/types/src/SchemaRegistry.d.ts +84 -0
  162. package/dist/types/src/SchemaRegistry.d.ts.map +1 -0
  163. package/dist/types/src/Tag.d.ts +18 -0
  164. package/dist/types/src/Tag.d.ts.map +1 -0
  165. package/dist/types/src/Type.d.ts +123 -100
  166. package/dist/types/src/Type.d.ts.map +1 -1
  167. package/dist/types/src/Type.test.d.ts +2 -0
  168. package/dist/types/src/Type.test.d.ts.map +1 -0
  169. package/dist/types/src/View.d.ts +68 -0
  170. package/dist/types/src/View.d.ts.map +1 -0
  171. package/dist/types/src/hierarchy.test.d.ts +2 -0
  172. package/dist/types/src/hierarchy.test.d.ts.map +1 -0
  173. package/dist/types/src/index.d.ts +22 -5
  174. package/dist/types/src/index.d.ts.map +1 -1
  175. package/dist/types/src/internal/Annotation/annotations.d.ts +231 -0
  176. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -0
  177. package/dist/types/src/internal/Annotation/annotations.test.d.ts +2 -0
  178. package/dist/types/src/internal/Annotation/annotations.test.d.ts.map +1 -0
  179. package/dist/types/src/internal/Annotation/index.d.ts +4 -0
  180. package/dist/types/src/internal/Annotation/index.d.ts.map +1 -0
  181. package/dist/types/src/internal/Annotation/sorting.d.ts +24 -0
  182. package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -0
  183. package/dist/types/src/internal/Annotation/util.d.ts +39 -0
  184. package/dist/types/src/internal/Annotation/util.d.ts.map +1 -0
  185. package/dist/types/src/internal/Entity/api.d.ts +13 -0
  186. package/dist/types/src/internal/Entity/api.d.ts.map +1 -0
  187. package/dist/types/src/internal/Entity/entity.d.ts +20 -0
  188. package/dist/types/src/internal/Entity/entity.d.ts.map +1 -0
  189. package/dist/types/src/internal/Entity/index.d.ts +8 -0
  190. package/dist/types/src/internal/Entity/index.d.ts.map +1 -0
  191. package/dist/types/src/internal/Entity/model.d.ts +55 -0
  192. package/dist/types/src/internal/Entity/model.d.ts.map +1 -0
  193. package/dist/types/src/internal/Entity/object.d.ts +18 -0
  194. package/dist/types/src/internal/Entity/object.d.ts.map +1 -0
  195. package/dist/types/src/internal/Entity/relation.d.ts +35 -0
  196. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -0
  197. package/dist/types/src/internal/Entity/util.d.ts +2 -0
  198. package/dist/types/src/internal/Entity/util.d.ts.map +1 -0
  199. package/dist/types/src/internal/Entity/version.d.ts +42 -0
  200. package/dist/types/src/internal/Entity/version.d.ts.map +1 -0
  201. package/dist/types/src/internal/Format/date.d.ts +63 -0
  202. package/dist/types/src/internal/Format/date.d.ts.map +1 -0
  203. package/dist/types/src/internal/Format/date.test.d.ts +2 -0
  204. package/dist/types/src/internal/Format/date.test.d.ts.map +1 -0
  205. package/dist/types/src/internal/Format/format.d.ts +32 -0
  206. package/dist/types/src/internal/Format/format.d.ts.map +1 -0
  207. package/dist/types/src/internal/Format/format.test.d.ts +2 -0
  208. package/dist/types/src/internal/Format/format.test.d.ts.map +1 -0
  209. package/dist/types/src/internal/Format/index.d.ts +8 -0
  210. package/dist/types/src/internal/Format/index.d.ts.map +1 -0
  211. package/dist/types/src/internal/Format/number.d.ts +31 -0
  212. package/dist/types/src/internal/Format/number.d.ts.map +1 -0
  213. package/dist/types/src/internal/Format/object.d.ts +35 -0
  214. package/dist/types/src/internal/Format/object.d.ts.map +1 -0
  215. package/dist/types/src/internal/Format/select.d.ts +13 -0
  216. package/dist/types/src/internal/Format/select.d.ts.map +1 -0
  217. package/dist/types/src/internal/Format/string.d.ts +42 -0
  218. package/dist/types/src/internal/Format/string.d.ts.map +1 -0
  219. package/dist/types/src/internal/Format/types.d.ts +72 -0
  220. package/dist/types/src/internal/Format/types.d.ts.map +1 -0
  221. package/dist/types/src/internal/JsonSchema/annotations.d.ts +19 -0
  222. package/dist/types/src/internal/JsonSchema/annotations.d.ts.map +1 -0
  223. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts +2 -0
  224. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts.map +1 -0
  225. package/dist/types/src/internal/JsonSchema/index.d.ts +5 -0
  226. package/dist/types/src/internal/JsonSchema/index.d.ts.map +1 -0
  227. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts +7 -0
  228. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -0
  229. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts +351 -0
  230. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -0
  231. package/dist/types/src/internal/JsonSchema/json-schema.d.ts +30 -0
  232. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -0
  233. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts +2 -0
  234. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts.map +1 -0
  235. package/dist/types/src/internal/Obj/clone.d.ts +8 -0
  236. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -0
  237. package/dist/types/src/internal/Obj/common.d.ts +18 -0
  238. package/dist/types/src/internal/Obj/common.d.ts.map +1 -0
  239. package/dist/types/src/internal/Obj/create-object.d.ts +39 -0
  240. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -0
  241. package/dist/types/src/internal/Obj/create-object.test.d.ts +2 -0
  242. package/dist/types/src/internal/Obj/create-object.test.d.ts.map +1 -0
  243. package/dist/types/src/internal/Obj/deleted.d.ts +6 -0
  244. package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -0
  245. package/dist/types/src/internal/Obj/ids.d.ts +6 -0
  246. package/dist/types/src/internal/Obj/ids.d.ts.map +1 -0
  247. package/dist/types/src/internal/Obj/index.d.ts +11 -0
  248. package/dist/types/src/internal/Obj/index.d.ts.map +1 -0
  249. package/dist/types/src/internal/Obj/inspect.d.ts +2 -0
  250. package/dist/types/src/internal/Obj/inspect.d.ts.map +1 -0
  251. package/dist/types/src/internal/Obj/json-serializer.d.ts +45 -0
  252. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -0
  253. package/dist/types/src/internal/Obj/json-serializer.test.d.ts +2 -0
  254. package/dist/types/src/internal/Obj/json-serializer.test.d.ts.map +1 -0
  255. package/dist/types/src/internal/Obj/schema-validator.d.ts +2 -0
  256. package/dist/types/src/internal/Obj/schema-validator.d.ts.map +1 -0
  257. package/dist/types/src/internal/Obj/schema-validator.test.d.ts +2 -0
  258. package/dist/types/src/internal/Obj/schema-validator.test.d.ts.map +1 -0
  259. package/dist/types/src/internal/Obj/set-value.d.ts +7 -0
  260. package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -0
  261. package/dist/types/src/internal/Obj/set-value.test.d.ts +2 -0
  262. package/dist/types/src/internal/Obj/set-value.test.d.ts.map +1 -0
  263. package/dist/types/src/internal/Obj/snapshot.d.ts +6 -0
  264. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -0
  265. package/dist/types/src/internal/Obj/typed-object.d.ts +25 -0
  266. package/dist/types/src/internal/Obj/typed-object.d.ts.map +1 -0
  267. package/dist/types/src/internal/Obj/typed-object.test.d.ts +2 -0
  268. package/dist/types/src/internal/Obj/typed-object.test.d.ts.map +1 -0
  269. package/dist/types/src/internal/Query.d.ts +10 -0
  270. package/dist/types/src/internal/Query.d.ts.map +1 -0
  271. package/dist/types/src/internal/Ref/index.d.ts +3 -0
  272. package/dist/types/src/internal/Ref/index.d.ts.map +1 -0
  273. package/dist/types/src/internal/Ref/ref-array.d.ts +21 -0
  274. package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -0
  275. package/dist/types/src/internal/Ref/ref.d.ts +244 -0
  276. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -0
  277. package/dist/types/src/internal/Ref/ref.test.d.ts +2 -0
  278. package/dist/types/src/internal/Ref/ref.test.d.ts.map +1 -0
  279. package/dist/types/src/internal/Type/compose.d.ts +7 -0
  280. package/dist/types/src/internal/Type/compose.d.ts.map +1 -0
  281. package/dist/types/src/internal/Type/compose.test.d.ts +2 -0
  282. package/dist/types/src/internal/Type/compose.test.d.ts.map +1 -0
  283. package/dist/types/src/internal/Type/echo-schema.d.ts +181 -0
  284. package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -0
  285. package/dist/types/src/internal/Type/index.d.ts +4 -0
  286. package/dist/types/src/internal/Type/index.d.ts.map +1 -0
  287. package/dist/types/src/internal/Type/manipulation.d.ts +10 -0
  288. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -0
  289. package/dist/types/src/internal/Type/persistent-schema.d.ts +20 -0
  290. package/dist/types/src/internal/Type/persistent-schema.d.ts.map +1 -0
  291. package/dist/types/src/internal/common/api/index.d.ts +11 -0
  292. package/dist/types/src/internal/common/api/index.d.ts.map +1 -0
  293. package/dist/types/src/internal/common/api/meta.d.ts +42 -0
  294. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -0
  295. package/dist/types/src/internal/common/index.d.ts +4 -0
  296. package/dist/types/src/internal/common/index.d.ts.map +1 -0
  297. package/dist/types/src/internal/common/proxy/change-context.d.ts +55 -0
  298. package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -0
  299. package/dist/types/src/internal/common/proxy/change.test.d.ts +2 -0
  300. package/dist/types/src/internal/common/proxy/change.test.d.ts.map +1 -0
  301. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts +5 -0
  302. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -0
  303. package/dist/types/src/internal/common/proxy/errors.d.ts +19 -0
  304. package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -0
  305. package/dist/types/src/internal/common/proxy/event-batch.d.ts +10 -0
  306. package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -0
  307. package/dist/types/src/internal/common/proxy/handler.test.d.ts +2 -0
  308. package/dist/types/src/internal/common/proxy/handler.test.d.ts.map +1 -0
  309. package/dist/types/src/internal/common/proxy/index.d.ts +14 -0
  310. package/dist/types/src/internal/common/proxy/index.d.ts.map +1 -0
  311. package/dist/types/src/internal/common/proxy/json-serializer.d.ts +6 -0
  312. package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -0
  313. package/dist/types/src/internal/common/proxy/make-object.d.ts +14 -0
  314. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -0
  315. package/dist/types/src/internal/common/proxy/ownership.d.ts +57 -0
  316. package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -0
  317. package/dist/types/src/internal/common/proxy/proxy-types.d.ts +18 -0
  318. package/dist/types/src/internal/common/proxy/proxy-types.d.ts.map +1 -0
  319. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts +47 -0
  320. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -0
  321. package/dist/types/src/internal/common/proxy/reactive-array.d.ts +8 -0
  322. package/dist/types/src/internal/common/proxy/reactive-array.d.ts.map +1 -0
  323. package/dist/types/src/internal/common/proxy/reactive.d.ts +39 -0
  324. package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -0
  325. package/dist/types/src/internal/common/proxy/reactive.test.d.ts +2 -0
  326. package/dist/types/src/internal/common/proxy/reactive.test.d.ts.map +1 -0
  327. package/dist/types/src/internal/common/proxy/schema-validator.d.ts +15 -0
  328. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -0
  329. package/dist/types/src/internal/common/proxy/schema.test.d.ts +2 -0
  330. package/dist/types/src/internal/common/proxy/schema.test.d.ts.map +1 -0
  331. package/dist/types/src/internal/common/proxy/symbols.d.ts +3 -0
  332. package/dist/types/src/internal/common/proxy/symbols.d.ts.map +1 -0
  333. package/dist/types/src/internal/common/proxy/typed-handler.d.ts +48 -0
  334. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -0
  335. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts +2 -0
  336. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts.map +1 -0
  337. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts +2 -0
  338. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts.map +1 -0
  339. package/dist/types/src/internal/common/types/base.d.ts +27 -0
  340. package/dist/types/src/internal/common/types/base.d.ts.map +1 -0
  341. package/dist/types/src/internal/common/types/entity.d.ts +37 -0
  342. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -0
  343. package/dist/types/src/internal/common/types/index.d.ts +7 -0
  344. package/dist/types/src/internal/common/types/index.d.ts.map +1 -0
  345. package/dist/types/src/internal/common/types/meta.d.ts +33 -0
  346. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -0
  347. package/dist/types/src/internal/common/types/model-symbols.d.ts +54 -0
  348. package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -0
  349. package/dist/types/src/internal/common/types/typename.d.ts +21 -0
  350. package/dist/types/src/internal/common/types/typename.d.ts.map +1 -0
  351. package/dist/types/src/internal/common/types/version.d.ts +15 -0
  352. package/dist/types/src/internal/common/types/version.d.ts.map +1 -0
  353. package/dist/types/src/internal/index.d.ts +11 -0
  354. package/dist/types/src/internal/index.d.ts.map +1 -0
  355. package/dist/types/src/{test → testing}/api.test.d.ts.map +1 -1
  356. package/dist/types/src/testing/index.d.ts +3 -1
  357. package/dist/types/src/testing/index.d.ts.map +1 -1
  358. package/dist/types/src/testing/test-data.d.ts +18 -0
  359. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  360. package/dist/types/src/testing/test-schema.d.ts +304 -0
  361. package/dist/types/src/testing/test-schema.d.ts.map +1 -0
  362. package/dist/types/src/testing/util.d.ts +21 -0
  363. package/dist/types/src/testing/util.d.ts.map +1 -0
  364. package/dist/types/tsconfig.tsbuildinfo +1 -1
  365. package/package.json +119 -57
  366. package/src/Annotation.ts +48 -0
  367. package/src/Collection.ts +37 -0
  368. package/src/Database.ts +352 -0
  369. package/src/Dataset.ts +26 -0
  370. package/src/Entity.test.ts +22 -0
  371. package/src/Entity.ts +243 -0
  372. package/src/Err.ts +40 -0
  373. package/src/Extension.test.ts +235 -0
  374. package/src/Extension.ts +122 -0
  375. package/src/Feed.ts +304 -0
  376. package/src/Filter.test.ts +90 -0
  377. package/src/Filter.ts +454 -0
  378. package/src/Format.ts +9 -0
  379. package/src/Hypergraph.ts +79 -0
  380. package/src/Json.test.ts +175 -0
  381. package/src/Json.ts +102 -0
  382. package/src/JsonSchema.ts +26 -0
  383. package/src/Key.ts +3 -0
  384. package/src/Migration.ts +94 -0
  385. package/src/Obj.test.ts +539 -0
  386. package/src/Obj.ts +713 -244
  387. package/src/Order.ts +46 -0
  388. package/src/Query.test.ts +822 -0
  389. package/src/Query.ts +567 -0
  390. package/src/QueryResult.ts +106 -0
  391. package/src/Ref.ts +78 -9
  392. package/src/Relation.test.ts +88 -0
  393. package/src/Relation.ts +450 -60
  394. package/src/SchemaRegistry.ts +106 -0
  395. package/src/Tag.ts +41 -0
  396. package/src/Type.test.ts +52 -0
  397. package/src/Type.ts +168 -155
  398. package/src/View.ts +107 -0
  399. package/src/hierarchy.test.ts +33 -0
  400. package/src/index.ts +24 -6
  401. package/src/internal/Annotation/annotations.test.ts +145 -0
  402. package/src/internal/Annotation/annotations.ts +577 -0
  403. package/src/internal/Annotation/index.ts +7 -0
  404. package/src/internal/Annotation/sorting.ts +51 -0
  405. package/src/internal/Annotation/util.ts +85 -0
  406. package/src/internal/Entity/api.ts +30 -0
  407. package/src/internal/Entity/entity.ts +128 -0
  408. package/src/internal/Entity/index.ts +11 -0
  409. package/src/internal/Entity/model.ts +109 -0
  410. package/src/internal/Entity/object.ts +57 -0
  411. package/src/internal/Entity/relation.ts +154 -0
  412. package/src/internal/Entity/util.ts +33 -0
  413. package/src/internal/Entity/version.ts +96 -0
  414. package/src/internal/Format/date.test.ts +55 -0
  415. package/src/internal/Format/date.ts +217 -0
  416. package/src/internal/Format/format.test.ts +76 -0
  417. package/src/internal/Format/format.ts +54 -0
  418. package/src/internal/Format/index.ts +12 -0
  419. package/src/internal/Format/number.ts +89 -0
  420. package/src/internal/Format/object.ts +80 -0
  421. package/src/internal/Format/select.ts +18 -0
  422. package/src/internal/Format/string.ts +81 -0
  423. package/src/internal/Format/types.ts +186 -0
  424. package/src/internal/JsonSchema/annotations.ts +50 -0
  425. package/src/internal/JsonSchema/effect-schema.test.ts +143 -0
  426. package/src/internal/JsonSchema/index.ts +8 -0
  427. package/src/internal/JsonSchema/json-schema-normalize.ts +111 -0
  428. package/src/internal/JsonSchema/json-schema-type.ts +403 -0
  429. package/src/internal/JsonSchema/json-schema.test.ts +860 -0
  430. package/src/internal/JsonSchema/json-schema.ts +533 -0
  431. package/src/internal/Obj/clone.ts +48 -0
  432. package/src/internal/Obj/common.ts +75 -0
  433. package/src/internal/Obj/create-object.test.ts +114 -0
  434. package/src/internal/Obj/create-object.ts +94 -0
  435. package/src/internal/Obj/deleted.ts +19 -0
  436. package/src/internal/Obj/ids.ts +12 -0
  437. package/src/internal/Obj/index.ts +14 -0
  438. package/src/internal/Obj/inspect.ts +46 -0
  439. package/src/internal/Obj/json-serializer.test.ts +120 -0
  440. package/src/internal/Obj/json-serializer.ts +222 -0
  441. package/src/internal/Obj/schema-validator.test.ts +182 -0
  442. package/src/internal/Obj/schema-validator.ts +6 -0
  443. package/src/internal/Obj/set-value.test.ts +281 -0
  444. package/src/internal/Obj/set-value.ts +165 -0
  445. package/src/internal/Obj/snapshot.ts +105 -0
  446. package/src/internal/Obj/typed-object.test.ts +34 -0
  447. package/src/internal/Obj/typed-object.ts +30 -0
  448. package/src/internal/Query.ts +137 -0
  449. package/src/internal/Ref/index.ts +6 -0
  450. package/src/internal/Ref/ref-array.ts +38 -0
  451. package/src/internal/Ref/ref.test.ts +100 -0
  452. package/src/internal/Ref/ref.ts +589 -0
  453. package/src/internal/Type/compose.test.ts +41 -0
  454. package/src/internal/Type/compose.ts +41 -0
  455. package/src/internal/Type/echo-schema.ts +423 -0
  456. package/src/internal/Type/index.ts +7 -0
  457. package/src/internal/Type/manipulation.ts +92 -0
  458. package/src/internal/Type/persistent-schema.ts +33 -0
  459. package/src/internal/common/README.md +102 -0
  460. package/src/internal/common/api/index.ts +15 -0
  461. package/src/internal/common/api/meta.ts +88 -0
  462. package/src/internal/common/index.ts +7 -0
  463. package/src/internal/common/proxy/change-context.ts +138 -0
  464. package/src/internal/common/proxy/change.test.ts +519 -0
  465. package/src/internal/common/proxy/define-hidden-property.ts +14 -0
  466. package/src/internal/common/proxy/errors.ts +42 -0
  467. package/src/internal/common/proxy/event-batch.ts +44 -0
  468. package/src/internal/common/proxy/handler.test.ts +121 -0
  469. package/src/internal/common/proxy/index.ts +17 -0
  470. package/src/internal/common/proxy/json-serializer.ts +90 -0
  471. package/src/internal/common/proxy/make-object.ts +105 -0
  472. package/src/internal/common/proxy/ownership.ts +252 -0
  473. package/src/internal/common/proxy/proxy-types.ts +23 -0
  474. package/src/internal/common/proxy/proxy-utils.ts +150 -0
  475. package/src/internal/common/proxy/reactive-array.ts +71 -0
  476. package/src/internal/common/proxy/reactive.test.ts +54 -0
  477. package/src/internal/common/proxy/reactive.ts +77 -0
  478. package/src/internal/common/proxy/schema-validator.ts +244 -0
  479. package/src/internal/common/proxy/schema.test.ts +145 -0
  480. package/src/internal/common/proxy/symbols.ts +7 -0
  481. package/src/internal/common/proxy/typed-handler.test.ts +313 -0
  482. package/src/internal/common/proxy/typed-handler.ts +447 -0
  483. package/src/internal/common/proxy/typed-object.test.ts +115 -0
  484. package/src/internal/common/types/base.ts +43 -0
  485. package/src/internal/common/types/entity.ts +54 -0
  486. package/src/internal/common/types/index.ts +10 -0
  487. package/src/internal/common/types/meta.ts +67 -0
  488. package/src/internal/common/types/model-symbols.ts +69 -0
  489. package/src/internal/common/types/typename.ts +55 -0
  490. package/src/internal/common/types/version.ts +19 -0
  491. package/src/internal/index.ts +17 -0
  492. package/src/testing/api.test.ts +125 -0
  493. package/src/testing/index.ts +3 -1
  494. package/src/testing/test-data.ts +129 -0
  495. package/src/testing/test-schema.ts +240 -0
  496. package/src/testing/util.ts +85 -0
  497. package/dist/lib/browser/chunk-I4YEWYJA.mjs +0 -882
  498. package/dist/lib/browser/chunk-I4YEWYJA.mjs.map +0 -7
  499. package/dist/lib/browser/index.mjs +0 -30
  500. package/dist/lib/browser/meta.json +0 -1
  501. package/dist/lib/browser/testing/index.mjs +0 -70
  502. package/dist/lib/browser/testing/index.mjs.map +0 -7
  503. package/dist/lib/node-esm/chunk-AWWFAF75.mjs +0 -882
  504. package/dist/lib/node-esm/chunk-AWWFAF75.mjs.map +0 -7
  505. package/dist/lib/node-esm/index.mjs +0 -30
  506. package/dist/lib/node-esm/meta.json +0 -1
  507. package/dist/lib/node-esm/testing/index.mjs +0 -70
  508. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  509. package/dist/types/src/errors.d.ts +0 -72
  510. package/dist/types/src/errors.d.ts.map +0 -1
  511. package/dist/types/src/experimental/database.d.ts +0 -8
  512. package/dist/types/src/experimental/database.d.ts.map +0 -1
  513. package/dist/types/src/experimental/index.d.ts +0 -1
  514. package/dist/types/src/experimental/index.d.ts.map +0 -1
  515. package/dist/types/src/experimental/queue.d.ts +0 -8
  516. package/dist/types/src/experimental/queue.d.ts.map +0 -1
  517. package/dist/types/src/experimental/space.d.ts +0 -8
  518. package/dist/types/src/experimental/space.d.ts.map +0 -1
  519. package/dist/types/src/query/dsl.d.ts +0 -245
  520. package/dist/types/src/query/dsl.d.ts.map +0 -1
  521. package/dist/types/src/query/dsl.test.d.ts +0 -2
  522. package/dist/types/src/query/dsl.test.d.ts.map +0 -1
  523. package/dist/types/src/query/index.d.ts +0 -2
  524. package/dist/types/src/query/index.d.ts.map +0 -1
  525. package/dist/types/src/testing/types.d.ts +0 -113
  526. package/dist/types/src/testing/types.d.ts.map +0 -1
  527. package/src/errors.ts +0 -18
  528. package/src/experimental/database.ts +0 -11
  529. package/src/experimental/index.ts +0 -7
  530. package/src/experimental/queue.ts +0 -11
  531. package/src/experimental/space.ts +0 -11
  532. package/src/query/dsl.test.ts +0 -362
  533. package/src/query/dsl.ts +0 -759
  534. package/src/query/index.ts +0 -5
  535. package/src/test/api.test.ts +0 -180
  536. package/src/testing/types.ts +0 -91
  537. /package/dist/lib/{browser/index.mjs.map → neutral/Annotation.mjs.map} +0 -0
  538. /package/dist/lib/{node-esm/index.mjs.map → neutral/Database.mjs.map} +0 -0
  539. /package/dist/types/src/{test → testing}/api.test.d.ts +0 -0
@@ -1,882 +0,0 @@
1
- import "@dxos/node-std/globals";
2
- var __defProp = Object.defineProperty;
3
- var __export = (target, all) => {
4
- for (var name in all)
5
- __defProp(target, name, { get: all[name], enumerable: true });
6
- };
7
-
8
- // src/errors.ts
9
- import { BaseError } from "@dxos/errors";
10
- var SchemaNotFoundError = class extends BaseError.extend("SCHEMA_NOT_FOUND", "Schema not found") {
11
- constructor(schema, options) {
12
- super({
13
- context: {
14
- schema
15
- },
16
- ...options
17
- });
18
- }
19
- };
20
- var ObjectNotFoundError = class extends BaseError.extend("OBJECT_NOT_FOUND", "Object not found") {
21
- constructor(dxn, options) {
22
- super({
23
- context: {
24
- dxn
25
- },
26
- ...options
27
- });
28
- }
29
- };
30
-
31
- // src/Key.ts
32
- var Key_exports = {};
33
- __export(Key_exports, {
34
- ObjectId: () => ObjectId,
35
- SpaceId: () => SpaceId
36
- });
37
- import { SpaceId, ObjectId } from "@dxos/keys";
38
-
39
- // src/Obj.ts
40
- var Obj_exports = {};
41
- __export(Obj_exports, {
42
- Any: () => Any,
43
- Meta: () => Meta,
44
- VersionTypeId: () => VersionTypeId2,
45
- clone: () => clone,
46
- compareVersions: () => compareVersions,
47
- decodeVersion: () => decodeVersion,
48
- deleteKeys: () => deleteKeys,
49
- encodeVersion: () => encodeVersion,
50
- fromJSON: () => fromJSON,
51
- getDXN: () => getDXN2,
52
- getKeys: () => getKeys,
53
- getLabel: () => getLabel2,
54
- getMeta: () => getMeta3,
55
- getSchema: () => getSchema2,
56
- getSnapshot: () => getSnapshot2,
57
- getTypeDXN: () => getTypeDXN,
58
- getTypename: () => getTypename2,
59
- instanceOf: () => instanceOf,
60
- isDeleted: () => isDeleted2,
61
- isObject: () => isObject,
62
- isVersion: () => isVersion,
63
- make: () => make,
64
- setLabel: () => setLabel2,
65
- sort: () => sort,
66
- sortByLabel: () => sortByLabel,
67
- sortByTypename: () => sortByTypename,
68
- toJSON: () => toJSON,
69
- version: () => version,
70
- versionValid: () => versionValid
71
- });
72
- import { Schema } from "effect";
73
- import { dual } from "effect/Function";
74
- import * as EchoSchema2 from "@dxos/echo-schema";
75
- import { assertArgument, invariant as invariant2 } from "@dxos/invariant";
76
- import * as LiveObject from "@dxos/live-object";
77
- import { live } from "@dxos/live-object";
78
- import { assumeType, deepMapValues } from "@dxos/util";
79
-
80
- // src/Type.ts
81
- var Type_exports = {};
82
- __export(Type_exports, {
83
- DXN: () => DXN,
84
- Expando: () => Expando2,
85
- Format: () => Format,
86
- JsonSchema: () => JsonSchemaType,
87
- Kind: () => Kind,
88
- KindId: () => KindId,
89
- Obj: () => Obj,
90
- ObjectId: () => ObjectId2,
91
- Ref: () => Ref2,
92
- Relation: () => Relation,
93
- SpaceId: () => SpaceId2,
94
- getDXN: () => getDXN,
95
- getMeta: () => getMeta,
96
- getTypename: () => getTypename,
97
- getVersion: () => getVersion,
98
- isMutable: () => isMutable2,
99
- toEffectSchema: () => toEffectSchema,
100
- toJsonSchema: () => toJsonSchema
101
- });
102
- import * as EchoSchema from "@dxos/echo-schema";
103
- import { invariant } from "@dxos/invariant";
104
- import { SpaceId as SpaceId2, ObjectId as ObjectId2, DXN } from "@dxos/keys";
105
- import { Format, JsonSchemaType, toEffectSchema, toJsonSchema } from "@dxos/echo-schema";
106
- var __dxlog_file = "/__w/dxos/dxos/packages/core/echo/echo/src/Type.ts";
107
- var KindId = EchoSchema.EntityKindId;
108
- var Kind = EchoSchema.EntityKind;
109
- var Obj = EchoSchema.EchoObject;
110
- var Expando2 = EchoSchema.Expando;
111
- var Relation = EchoSchema.EchoRelation;
112
- var Ref2 = EchoSchema.Ref;
113
- var getDXN = (schema) => {
114
- return EchoSchema.getSchemaDXN(schema);
115
- };
116
- var getTypename = (schema) => {
117
- const typename = EchoSchema.getSchemaTypename(schema);
118
- invariant(typeof typename === "string" && !typename.startsWith("dxn:"), "Invalid typename", {
119
- F: __dxlog_file,
120
- L: 212,
121
- S: void 0,
122
- A: [
123
- "typeof typename === 'string' && !typename.startsWith('dxn:')",
124
- "'Invalid typename'"
125
- ]
126
- });
127
- return typename;
128
- };
129
- var getVersion = (schema) => {
130
- const version2 = EchoSchema.getSchemaVersion(schema);
131
- invariant(typeof version2 === "string" && version2.match(/^\d+\.\d+\.\d+$/), "Invalid version", {
132
- F: __dxlog_file,
133
- L: 222,
134
- S: void 0,
135
- A: [
136
- "typeof version === 'string' && version.match(/^\\d+\\.\\d+\\.\\d+$/)",
137
- "'Invalid version'"
138
- ]
139
- });
140
- return version2;
141
- };
142
- var isMutable2 = EchoSchema.isMutable;
143
- var getMeta = (schema) => {
144
- return EchoSchema.getTypeAnnotation(schema);
145
- };
146
-
147
- // src/Obj.ts
148
- var __dxlog_file2 = "/__w/dxos/dxos/packages/core/echo/echo/src/Obj.ts";
149
- var Any = Schema.Struct({}).pipe(Obj({
150
- typename: "dxos.org/types/Any",
151
- version: "0.1.0"
152
- }));
153
- var Meta = EchoSchema2.MetaId;
154
- var make = (schema, props, meta) => {
155
- assertArgument(EchoSchema2.getTypeAnnotation(schema)?.kind === EchoSchema2.EntityKind.Object, "schema", "Expected an object schema");
156
- if (props[EchoSchema2.MetaId] != null) {
157
- meta = props[EchoSchema2.MetaId];
158
- delete props[EchoSchema2.MetaId];
159
- }
160
- return live(schema, props, meta);
161
- };
162
- var isObject = (obj) => {
163
- assumeType(obj);
164
- return typeof obj === "object" && obj !== null && obj[EchoSchema2.EntityKindId] === EchoSchema2.EntityKind.Object;
165
- };
166
- var instanceOf = (...args) => {
167
- if (args.length === 1) {
168
- return (obj) => EchoSchema2.isInstanceOf(args[0], obj);
169
- }
170
- return EchoSchema2.isInstanceOf(args[0], args[1]);
171
- };
172
- var getSchema2 = EchoSchema2.getSchema;
173
- var getDXN2 = (obj) => {
174
- assertArgument(!Schema.isSchema(obj), "obj", "Object should not be a schema.");
175
- const dxn = EchoSchema2.getObjectDXN(obj);
176
- invariant2(dxn != null, "Invalid object.", {
177
- F: __dxlog_file2,
178
- L: 120,
179
- S: void 0,
180
- A: [
181
- "dxn != null",
182
- "'Invalid object.'"
183
- ]
184
- });
185
- return dxn;
186
- };
187
- var getTypeDXN = EchoSchema2.getType;
188
- var getTypename2 = (obj) => {
189
- const schema = getSchema2(obj);
190
- if (schema == null) {
191
- return EchoSchema2.getType(obj)?.asTypeDXN()?.type;
192
- }
193
- return EchoSchema2.getSchemaTypename(schema);
194
- };
195
- var getMeta3 = (obj) => {
196
- const meta = EchoSchema2.getMeta(obj);
197
- invariant2(meta != null, "Invalid object.", {
198
- F: __dxlog_file2,
199
- L: 148,
200
- S: void 0,
201
- A: [
202
- "meta != null",
203
- "'Invalid object.'"
204
- ]
205
- });
206
- return meta;
207
- };
208
- var getKeys = dual(2, (obj, source) => {
209
- const meta = EchoSchema2.getMeta(obj);
210
- invariant2(meta != null, "Invalid object.", {
211
- F: __dxlog_file2,
212
- L: 160,
213
- S: void 0,
214
- A: [
215
- "meta != null",
216
- "'Invalid object.'"
217
- ]
218
- });
219
- return meta.keys.filter((key) => key.source === source);
220
- });
221
- var deleteKeys = (obj, source) => {
222
- const meta = EchoSchema2.getMeta(obj);
223
- for (let i = 0; i < meta.keys.length; i++) {
224
- if (meta.keys[i].source === source) {
225
- meta.keys.splice(i, 1);
226
- i--;
227
- }
228
- }
229
- };
230
- var isDeleted2 = (obj) => {
231
- const deleted = EchoSchema2.isDeleted(obj);
232
- invariant2(typeof deleted === "boolean", "Invalid object.", {
233
- F: __dxlog_file2,
234
- L: 182,
235
- S: void 0,
236
- A: [
237
- "typeof deleted === 'boolean'",
238
- "'Invalid object.'"
239
- ]
240
- });
241
- return deleted;
242
- };
243
- var getLabel2 = (obj) => {
244
- const schema = getSchema2(obj);
245
- if (schema != null) {
246
- return EchoSchema2.getLabel(schema, obj);
247
- }
248
- };
249
- var setLabel2 = (obj, label) => {
250
- const schema = getSchema2(obj);
251
- if (schema != null) {
252
- EchoSchema2.setLabel(schema, obj, label);
253
- }
254
- };
255
- var compare = (a, b) => {
256
- if (a == null) {
257
- return b == null ? 0 : 1;
258
- }
259
- if (b == null) {
260
- return -1;
261
- }
262
- return a.localeCompare(b);
263
- };
264
- var sortByLabel = (a, b) => compare(getLabel2(a), getLabel2(b));
265
- var sortByTypename = (a, b) => compare(getTypename2(a), getTypename2(b));
266
- var sort = (...comparators) => {
267
- return (a, b) => {
268
- for (const comparator of comparators) {
269
- const result = comparator(a, b);
270
- if (result !== 0) {
271
- return result;
272
- }
273
- }
274
- return 0;
275
- };
276
- };
277
- var toJSON = (obj) => EchoSchema2.objectToJSON(obj);
278
- var fromJSON = EchoSchema2.objectFromJSON;
279
- var getSnapshot2 = LiveObject.getSnapshot;
280
- var clone = (obj, opts) => {
281
- const { id, ...data } = obj;
282
- const schema = getSchema2(obj);
283
- invariant2(schema != null, "Object should have a schema", {
284
- F: __dxlog_file2,
285
- L: 275,
286
- S: void 0,
287
- A: [
288
- "schema != null",
289
- "'Object should have a schema'"
290
- ]
291
- });
292
- const props = deepMapValues(data, (value, recurse) => {
293
- if (EchoSchema2.Ref.isRef(value)) {
294
- return value;
295
- }
296
- return recurse(value);
297
- });
298
- if (opts?.retainId) {
299
- props.id = id;
300
- }
301
- const meta = getMeta3(obj);
302
- props[EchoSchema2.MetaId] = deepMapValues(meta, (value, recurse) => {
303
- if (EchoSchema2.Ref.isRef(value)) {
304
- return value;
305
- }
306
- return recurse(value);
307
- });
308
- return make(schema, props);
309
- };
310
- var VersionTypeId2 = EchoSchema2.VersionTypeId;
311
- var unversioned = {
312
- [VersionTypeId2]: {},
313
- versioned: false
314
- };
315
- var isVersion = (obj) => {
316
- return obj != null && typeof obj === "object" && VersionTypeId2 in obj;
317
- };
318
- var version = (obj) => {
319
- const version2 = obj[EchoSchema2.ObjectVersionId];
320
- if (version2 === void 0) {
321
- return unversioned;
322
- }
323
- return version2;
324
- };
325
- var versionValid = (version2) => {
326
- assertArgument(isVersion(version2), "version", "Invalid version object");
327
- return !!version2.versioned;
328
- };
329
- var compareVersions = (version1, version2) => {
330
- assertArgument(isVersion(version1), "version1", "Invalid version object");
331
- assertArgument(isVersion(version2), "version2", "Invalid version object");
332
- if (!versionValid(version1) || !versionValid(version2)) {
333
- return "unversioned";
334
- }
335
- if (version1.automergeHeads?.length !== version2.automergeHeads?.length) {
336
- return "different";
337
- }
338
- if (version1.automergeHeads?.some((head) => !version2.automergeHeads?.includes(head))) {
339
- return "different";
340
- }
341
- return "equal";
342
- };
343
- var encodeVersion = (version2) => {
344
- return JSON.stringify(version2);
345
- };
346
- var decodeVersion = (version2) => {
347
- const parsed = JSON.parse(version2);
348
- parsed[VersionTypeId2] = {};
349
- return parsed;
350
- };
351
-
352
- // src/Ref.ts
353
- var Ref_exports = {};
354
- __export(Ref_exports, {
355
- Array: () => Array2,
356
- fromDXN: () => fromDXN,
357
- isRef: () => isRef,
358
- make: () => make2
359
- });
360
- import * as EchoSchema3 from "@dxos/echo-schema";
361
- var Array2 = EchoSchema3.RefArray;
362
- var isRef = EchoSchema3.Ref.isRef;
363
- var make2 = EchoSchema3.Ref.make;
364
- var fromDXN = EchoSchema3.Ref.fromDXN;
365
-
366
- // src/Relation.ts
367
- var Relation_exports = {};
368
- __export(Relation_exports, {
369
- Any: () => Any2,
370
- Source: () => Source,
371
- Target: () => Target,
372
- getSource: () => getSource,
373
- getSourceDXN: () => getSourceDXN,
374
- getTarget: () => getTarget,
375
- getTargetDXN: () => getTargetDXN,
376
- isRelation: () => isRelation,
377
- make: () => make3
378
- });
379
- import { Schema as Schema2 } from "effect";
380
- import { raise } from "@dxos/debug";
381
- import * as EchoSchema4 from "@dxos/echo-schema";
382
- import { assertArgument as assertArgument2, invariant as invariant3 } from "@dxos/invariant";
383
- import { DXN as DXN2 } from "@dxos/keys";
384
- import { live as live2 } from "@dxos/live-object";
385
- import { assumeType as assumeType2 } from "@dxos/util";
386
- var __dxlog_file3 = "/__w/dxos/dxos/packages/core/echo/echo/src/Relation.ts";
387
- var Any2 = Schema2.Struct({}).pipe(Relation({
388
- typename: "dxos.org/types/Any",
389
- version: "0.1.0",
390
- source: Any,
391
- target: Any
392
- }));
393
- var Source = EchoSchema4.RelationSourceId;
394
- var Target = EchoSchema4.RelationTargetId;
395
- var make3 = (schema, props, meta) => {
396
- assertArgument2(EchoSchema4.getTypeAnnotation(schema)?.kind === EchoSchema4.EntityKind.Relation, "schema", "Expected a relation schema");
397
- if (props[EchoSchema4.MetaId] != null) {
398
- meta = props[EchoSchema4.MetaId];
399
- delete props[EchoSchema4.MetaId];
400
- }
401
- const sourceDXN = EchoSchema4.getObjectDXN(props[Source]) ?? raise(new Error("Unresolved relation source"));
402
- const targetDXN = EchoSchema4.getObjectDXN(props[Target]) ?? raise(new Error("Unresolved relation target"));
403
- props[EchoSchema4.RelationSourceDXNId] = sourceDXN;
404
- props[EchoSchema4.RelationTargetDXNId] = targetDXN;
405
- return live2(schema, props, meta);
406
- };
407
- var isRelation = (value) => {
408
- if (typeof value !== "object" || value === null) {
409
- return false;
410
- }
411
- if (EchoSchema4.ATTR_RELATION_SOURCE in value || EchoSchema4.ATTR_RELATION_TARGET in value) {
412
- return true;
413
- }
414
- const kind = value[EchoSchema4.EntityKindId];
415
- return kind === EchoSchema4.EntityKind.Relation;
416
- };
417
- var getSourceDXN = (value) => {
418
- assertArgument2(isRelation(value), "Expected a relation");
419
- assumeType2(value);
420
- const dxn = value[EchoSchema4.RelationSourceDXNId];
421
- invariant3(dxn instanceof DXN2, void 0, {
422
- F: __dxlog_file3,
423
- L: 109,
424
- S: void 0,
425
- A: [
426
- "dxn instanceof DXN",
427
- ""
428
- ]
429
- });
430
- return dxn;
431
- };
432
- var getTargetDXN = (value) => {
433
- assertArgument2(isRelation(value), "Expected a relation");
434
- assumeType2(value);
435
- const dxn = value[EchoSchema4.RelationTargetDXNId];
436
- invariant3(dxn instanceof DXN2, void 0, {
437
- F: __dxlog_file3,
438
- L: 121,
439
- S: void 0,
440
- A: [
441
- "dxn instanceof DXN",
442
- ""
443
- ]
444
- });
445
- return dxn;
446
- };
447
- var getSource = (relation) => {
448
- assertArgument2(isRelation(relation), "Expected a relation");
449
- assumeType2(relation);
450
- const obj = relation[EchoSchema4.RelationSourceId];
451
- invariant3(obj !== void 0, `Invalid source: ${relation.id}`, {
452
- F: __dxlog_file3,
453
- L: 133,
454
- S: void 0,
455
- A: [
456
- "obj !== undefined",
457
- "`Invalid source: ${relation.id}`"
458
- ]
459
- });
460
- return obj;
461
- };
462
- var getTarget = (relation) => {
463
- assertArgument2(isRelation(relation), "Expected a relation");
464
- assumeType2(relation);
465
- const obj = relation[EchoSchema4.RelationTargetId];
466
- invariant3(obj !== void 0, `Invalid target: ${relation.id}`, {
467
- F: __dxlog_file3,
468
- L: 145,
469
- S: void 0,
470
- A: [
471
- "obj !== undefined",
472
- "`Invalid target: ${relation.id}`"
473
- ]
474
- });
475
- return obj;
476
- };
477
-
478
- // src/index.ts
479
- import { DXN as DXN4 } from "@dxos/keys";
480
-
481
- // src/query/dsl.ts
482
- import { Match, Schema as Schema3 } from "effect";
483
- import { raise as raise2 } from "@dxos/debug";
484
- import { getTypeReference } from "@dxos/echo-schema";
485
- import { assertArgument as assertArgument3 } from "@dxos/invariant";
486
- import { DXN as DXN3, ObjectId as ObjectId3 } from "@dxos/keys";
487
- function _define_property(obj, key, value) {
488
- if (key in obj) {
489
- Object.defineProperty(obj, key, {
490
- value,
491
- enumerable: true,
492
- configurable: true,
493
- writable: true
494
- });
495
- } else {
496
- obj[key] = value;
497
- }
498
- return obj;
499
- }
500
- var OrderClass = class _OrderClass {
501
- static is(value) {
502
- return typeof value === "object" && value !== null && "~Order" in value;
503
- }
504
- constructor(ast) {
505
- _define_property(this, "ast", void 0);
506
- _define_property(this, "~Order", void 0);
507
- this.ast = ast;
508
- this["~Order"] = _OrderClass.variance;
509
- }
510
- };
511
- _define_property(OrderClass, "variance", {});
512
- (function(Order2) {
513
- Order2.natural = new OrderClass({
514
- kind: "natural"
515
- });
516
- Order2.property = (property, direction) => new OrderClass({
517
- kind: "property",
518
- property,
519
- direction
520
- });
521
- })(Order || (Order = {}));
522
- var FilterClass = class _FilterClass {
523
- static is(value) {
524
- return typeof value === "object" && value !== null && "~Filter" in value;
525
- }
526
- static everything() {
527
- return new _FilterClass({
528
- type: "object",
529
- typename: null,
530
- props: {}
531
- });
532
- }
533
- static nothing() {
534
- return new _FilterClass({
535
- type: "not",
536
- filter: {
537
- type: "object",
538
- typename: null,
539
- props: {}
540
- }
541
- });
542
- }
543
- static relation() {
544
- return new _FilterClass({
545
- type: "object",
546
- typename: null,
547
- props: {}
548
- });
549
- }
550
- static ids(...ids) {
551
- assertArgument3(ids.every((id) => ObjectId3.isValid(id)), "ids", "ids must be valid");
552
- if (ids.length === 0) {
553
- return Filter.nothing();
554
- }
555
- return new _FilterClass({
556
- type: "object",
557
- typename: null,
558
- id: ids,
559
- props: {}
560
- });
561
- }
562
- static type(schema, props) {
563
- const dxn = getTypeReference(schema)?.toDXN() ?? raise2(new TypeError("Schema has no DXN"));
564
- return new _FilterClass({
565
- type: "object",
566
- typename: dxn.toString(),
567
- ...propsFilterToAst(props ?? {})
568
- });
569
- }
570
- static typename(typename) {
571
- assertArgument3(!typename.startsWith("dxn:"), "typename", "Typename must no be qualified");
572
- return new _FilterClass({
573
- type: "object",
574
- typename: DXN3.fromTypename(typename).toString(),
575
- props: {}
576
- });
577
- }
578
- static typeDXN(dxn) {
579
- return new _FilterClass({
580
- type: "object",
581
- typename: dxn.toString(),
582
- props: {}
583
- });
584
- }
585
- static tag(tag) {
586
- return new _FilterClass({
587
- type: "tag",
588
- tag
589
- });
590
- }
591
- static props(props) {
592
- return new _FilterClass({
593
- type: "object",
594
- typename: null,
595
- ...propsFilterToAst(props)
596
- });
597
- }
598
- static text(text, options) {
599
- return new _FilterClass({
600
- type: "text-search",
601
- text,
602
- searchKind: options?.type
603
- });
604
- }
605
- static foreignKeys(schema, keys) {
606
- const dxn = getTypeReference(schema)?.toDXN() ?? raise2(new TypeError("Schema has no DXN"));
607
- return new _FilterClass({
608
- type: "object",
609
- typename: dxn.toString(),
610
- props: {},
611
- foreignKeys: keys
612
- });
613
- }
614
- static eq(value) {
615
- if (!isRef(value) && typeof value === "object" && value !== null) {
616
- throw new TypeError("Cannot use object as a value for eq filter");
617
- }
618
- return new _FilterClass({
619
- type: "compare",
620
- operator: "eq",
621
- value: isRef(value) ? value.noInline().encode() : value
622
- });
623
- }
624
- static neq(value) {
625
- return new _FilterClass({
626
- type: "compare",
627
- operator: "neq",
628
- value
629
- });
630
- }
631
- static gt(value) {
632
- return new _FilterClass({
633
- type: "compare",
634
- operator: "gt",
635
- value
636
- });
637
- }
638
- static gte(value) {
639
- return new _FilterClass({
640
- type: "compare",
641
- operator: "gte",
642
- value
643
- });
644
- }
645
- static lt(value) {
646
- return new _FilterClass({
647
- type: "compare",
648
- operator: "lt",
649
- value
650
- });
651
- }
652
- static lte(value) {
653
- return new _FilterClass({
654
- type: "compare",
655
- operator: "lte",
656
- value
657
- });
658
- }
659
- static in(...values) {
660
- return new _FilterClass({
661
- type: "in",
662
- values
663
- });
664
- }
665
- static contains(value) {
666
- return new _FilterClass({
667
- type: "contains",
668
- value
669
- });
670
- }
671
- static between(from, to) {
672
- return new _FilterClass({
673
- type: "range",
674
- from,
675
- to
676
- });
677
- }
678
- static not(filter) {
679
- return new _FilterClass({
680
- type: "not",
681
- filter: filter.ast
682
- });
683
- }
684
- static and(...filters) {
685
- return new _FilterClass({
686
- type: "and",
687
- filters: filters.map((f) => f.ast)
688
- });
689
- }
690
- static or(...filters) {
691
- return new _FilterClass({
692
- type: "or",
693
- filters: filters.map((f) => f.ast)
694
- });
695
- }
696
- constructor(ast) {
697
- _define_property(this, "ast", void 0);
698
- _define_property(this, "~Filter", void 0);
699
- this.ast = ast;
700
- this["~Filter"] = _FilterClass.variance;
701
- }
702
- };
703
- _define_property(FilterClass, "variance", {});
704
- var Filter = FilterClass;
705
- var propsFilterToAst = (predicates) => {
706
- let idFilter;
707
- if ("id" in predicates) {
708
- assertArgument3(typeof predicates.id === "string" || Array.isArray(predicates.id), "predicates.id", "invalid id filter");
709
- idFilter = typeof predicates.id === "string" ? [
710
- predicates.id
711
- ] : predicates.id;
712
- Schema3.Array(ObjectId3).pipe(Schema3.validateSync)(idFilter);
713
- }
714
- return {
715
- id: idFilter,
716
- props: Object.fromEntries(Object.entries(predicates).filter(([prop, _value]) => prop !== "id").map(([prop, predicate]) => [
717
- prop,
718
- processPredicate(predicate)
719
- ]))
720
- };
721
- };
722
- var processPredicate = (predicate) => {
723
- return Match.value(predicate).pipe(
724
- Match.withReturnType(),
725
- Match.when(Filter.is, (predicate2) => predicate2.ast),
726
- // TODO(wittjosiah): Add support for array predicates.
727
- Match.when(Array.isArray, (_predicate) => {
728
- throw new Error("Array predicates are not yet supported.");
729
- }),
730
- Match.when((predicate2) => !isRef(predicate2) && typeof predicate2 === "object" && predicate2 !== null, (predicate2) => {
731
- const nestedProps = Object.fromEntries(Object.entries(predicate2).map(([key, value]) => [
732
- key,
733
- processPredicate(value)
734
- ]));
735
- return {
736
- type: "object",
737
- typename: null,
738
- props: nestedProps
739
- };
740
- }),
741
- Match.orElse((value) => Filter.eq(value).ast)
742
- );
743
- };
744
- var QueryClass = class _QueryClass {
745
- static is(value) {
746
- return typeof value === "object" && value !== null && "~Query" in value;
747
- }
748
- static fromAst(ast) {
749
- return new _QueryClass(ast);
750
- }
751
- static select(filter) {
752
- return new _QueryClass({
753
- type: "select",
754
- filter: filter.ast
755
- });
756
- }
757
- static type(schema, predicates) {
758
- return new _QueryClass({
759
- type: "select",
760
- filter: FilterClass.type(schema, predicates).ast
761
- });
762
- }
763
- static all(...queries) {
764
- if (queries.length === 0) {
765
- throw new TypeError("Query.all combines results of multiple queries, to query all objects use Query.select(Filter.everything())");
766
- }
767
- return new _QueryClass({
768
- type: "union",
769
- queries: queries.map((q) => q.ast)
770
- });
771
- }
772
- static without(source, exclude) {
773
- return new _QueryClass({
774
- type: "set-difference",
775
- source: source.ast,
776
- exclude: exclude.ast
777
- });
778
- }
779
- select(filter) {
780
- if (Filter.is(filter)) {
781
- return new _QueryClass({
782
- type: "filter",
783
- selection: this.ast,
784
- filter: filter.ast
785
- });
786
- } else {
787
- return new _QueryClass({
788
- type: "filter",
789
- selection: this.ast,
790
- filter: FilterClass.props(filter).ast
791
- });
792
- }
793
- }
794
- reference(key) {
795
- return new _QueryClass({
796
- type: "reference-traversal",
797
- anchor: this.ast,
798
- property: key
799
- });
800
- }
801
- referencedBy(target, key) {
802
- const dxn = getTypeReference(target)?.toDXN() ?? raise2(new TypeError("Target schema has no DXN"));
803
- return new _QueryClass({
804
- type: "incoming-references",
805
- anchor: this.ast,
806
- property: key,
807
- typename: dxn.toString()
808
- });
809
- }
810
- sourceOf(relation, predicates) {
811
- return new _QueryClass({
812
- type: "relation",
813
- anchor: this.ast,
814
- direction: "outgoing",
815
- filter: FilterClass.type(relation, predicates).ast
816
- });
817
- }
818
- targetOf(relation, predicates) {
819
- return new _QueryClass({
820
- type: "relation",
821
- anchor: this.ast,
822
- direction: "incoming",
823
- filter: FilterClass.type(relation, predicates).ast
824
- });
825
- }
826
- source() {
827
- return new _QueryClass({
828
- type: "relation-traversal",
829
- anchor: this.ast,
830
- direction: "source"
831
- });
832
- }
833
- target() {
834
- return new _QueryClass({
835
- type: "relation-traversal",
836
- anchor: this.ast,
837
- direction: "target"
838
- });
839
- }
840
- orderBy(...order) {
841
- return new _QueryClass({
842
- type: "order",
843
- query: this.ast,
844
- order: order.map((o) => o.ast)
845
- });
846
- }
847
- options(options) {
848
- return new _QueryClass({
849
- type: "options",
850
- query: this.ast,
851
- options
852
- });
853
- }
854
- constructor(ast) {
855
- _define_property(this, "ast", void 0);
856
- _define_property(this, "~Query", void 0);
857
- this.ast = ast;
858
- this["~Query"] = _QueryClass.variance;
859
- }
860
- };
861
- _define_property(QueryClass, "variance", {});
862
- var Query = QueryClass;
863
- var Order;
864
-
865
- // src/index.ts
866
- import { QueryAST } from "@dxos/echo-protocol";
867
-
868
- export {
869
- SchemaNotFoundError,
870
- ObjectNotFoundError,
871
- Key_exports,
872
- Type_exports,
873
- Obj_exports,
874
- Ref_exports,
875
- Relation_exports,
876
- Filter,
877
- Query,
878
- Order,
879
- DXN4 as DXN,
880
- QueryAST
881
- };
882
- //# sourceMappingURL=chunk-I4YEWYJA.mjs.map