@dxos/echo 0.8.4-main.3a94e84 → 0.8.4-main.3c1ae3b

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 (478) hide show
  1. package/README.md +1 -1
  2. package/dist/lib/browser/Annotation.mjs +31 -0
  3. package/dist/lib/browser/Annotation.mjs.map +7 -0
  4. package/dist/lib/browser/Database.mjs +14 -0
  5. package/dist/lib/browser/Database.mjs.map +7 -0
  6. package/dist/lib/browser/Entity.mjs +20 -0
  7. package/dist/lib/browser/Entity.mjs.map +7 -0
  8. package/dist/lib/browser/Err.mjs +11 -0
  9. package/dist/lib/browser/Err.mjs.map +7 -0
  10. package/dist/lib/browser/Filter.mjs +60 -0
  11. package/dist/lib/browser/Filter.mjs.map +7 -0
  12. package/dist/lib/browser/Format.mjs +67 -0
  13. package/dist/lib/browser/Format.mjs.map +7 -0
  14. package/dist/lib/browser/JsonSchema.mjs +18 -0
  15. package/dist/lib/browser/JsonSchema.mjs.map +7 -0
  16. package/dist/lib/browser/Key.mjs +13 -0
  17. package/dist/lib/browser/Key.mjs.map +7 -0
  18. package/dist/lib/browser/Obj.mjs +83 -0
  19. package/dist/lib/browser/Obj.mjs.map +7 -0
  20. package/dist/lib/browser/Order.mjs +11 -0
  21. package/dist/lib/browser/Order.mjs.map +7 -0
  22. package/dist/lib/browser/Query.mjs +25 -0
  23. package/dist/lib/browser/Query.mjs.map +7 -0
  24. package/dist/lib/browser/QueryResult.mjs +3 -0
  25. package/dist/lib/browser/QueryResult.mjs.map +7 -0
  26. package/dist/lib/browser/Ref.mjs +21 -0
  27. package/dist/lib/browser/Ref.mjs.map +7 -0
  28. package/dist/lib/browser/Relation.mjs +33 -0
  29. package/dist/lib/browser/Relation.mjs.map +7 -0
  30. package/dist/lib/browser/SchemaRegistry.mjs +3 -0
  31. package/dist/lib/browser/SchemaRegistry.mjs.map +7 -0
  32. package/dist/lib/browser/Tag.mjs +25 -0
  33. package/dist/lib/browser/Tag.mjs.map +7 -0
  34. package/dist/lib/browser/Type.mjs +38 -0
  35. package/dist/lib/browser/Type.mjs.map +7 -0
  36. package/dist/lib/browser/chunk-3B2G6BW4.mjs +74 -0
  37. package/dist/lib/browser/chunk-3B2G6BW4.mjs.map +7 -0
  38. package/dist/lib/browser/chunk-5IN7XBIQ.mjs +24 -0
  39. package/dist/lib/browser/chunk-5IN7XBIQ.mjs.map +7 -0
  40. package/dist/lib/browser/chunk-6XVZF5VJ.mjs +2924 -0
  41. package/dist/lib/browser/chunk-6XVZF5VJ.mjs.map +7 -0
  42. package/dist/lib/browser/chunk-AGOWBKY6.mjs +94 -0
  43. package/dist/lib/browser/chunk-AGOWBKY6.mjs.map +7 -0
  44. package/dist/lib/browser/chunk-BD6MRI4M.mjs +113 -0
  45. package/dist/lib/browser/chunk-BD6MRI4M.mjs.map +7 -0
  46. package/dist/lib/browser/chunk-CGS2ULMK.mjs +11 -0
  47. package/dist/lib/browser/chunk-CGS2ULMK.mjs.map +7 -0
  48. package/dist/lib/browser/chunk-DOPKE2FQ.mjs +32 -0
  49. package/dist/lib/browser/chunk-DOPKE2FQ.mjs.map +7 -0
  50. package/dist/lib/browser/chunk-ESLW4N7S.mjs +41 -0
  51. package/dist/lib/browser/chunk-ESLW4N7S.mjs.map +7 -0
  52. package/dist/lib/browser/chunk-F4YF6C3O.mjs +363 -0
  53. package/dist/lib/browser/chunk-F4YF6C3O.mjs.map +7 -0
  54. package/dist/lib/browser/chunk-FGFQWIZE.mjs +9 -0
  55. package/dist/lib/browser/chunk-FGFQWIZE.mjs.map +7 -0
  56. package/dist/lib/browser/chunk-INHXFXY5.mjs +22 -0
  57. package/dist/lib/browser/chunk-INHXFXY5.mjs.map +7 -0
  58. package/dist/lib/browser/chunk-JG4GH6LN.mjs +9 -0
  59. package/dist/lib/browser/chunk-JG4GH6LN.mjs.map +7 -0
  60. package/dist/lib/browser/chunk-MYCCGG2T.mjs +15 -0
  61. package/dist/lib/browser/chunk-MYCCGG2T.mjs.map +7 -0
  62. package/dist/lib/browser/chunk-NFH3POTD.mjs +37 -0
  63. package/dist/lib/browser/chunk-NFH3POTD.mjs.map +7 -0
  64. package/dist/lib/browser/chunk-O6FOICWT.mjs +57 -0
  65. package/dist/lib/browser/chunk-O6FOICWT.mjs.map +7 -0
  66. package/dist/lib/browser/chunk-P2B4BASR.mjs +288 -0
  67. package/dist/lib/browser/chunk-P2B4BASR.mjs.map +7 -0
  68. package/dist/lib/browser/chunk-QHC3ZYNC.mjs +152 -0
  69. package/dist/lib/browser/chunk-QHC3ZYNC.mjs.map +7 -0
  70. package/dist/lib/browser/chunk-QU7PWSZD.mjs +62 -0
  71. package/dist/lib/browser/chunk-QU7PWSZD.mjs.map +7 -0
  72. package/dist/lib/browser/chunk-RP4JV7FD.mjs +403 -0
  73. package/dist/lib/browser/chunk-RP4JV7FD.mjs.map +7 -0
  74. package/dist/lib/browser/chunk-V7TON6BX.mjs +151 -0
  75. package/dist/lib/browser/chunk-V7TON6BX.mjs.map +7 -0
  76. package/dist/lib/browser/chunk-WABSVOOX.mjs +303 -0
  77. package/dist/lib/browser/chunk-WABSVOOX.mjs.map +7 -0
  78. package/dist/lib/browser/chunk-XRHHSMHJ.mjs +39 -0
  79. package/dist/lib/browser/chunk-XRHHSMHJ.mjs.map +7 -0
  80. package/dist/lib/browser/chunk-ZIM3Y4ZK.mjs +38 -0
  81. package/dist/lib/browser/chunk-ZIM3Y4ZK.mjs.map +7 -0
  82. package/dist/lib/browser/index.mjs +72 -9
  83. package/dist/lib/browser/internal/index.mjs +347 -0
  84. package/dist/lib/browser/internal/index.mjs.map +7 -0
  85. package/dist/lib/browser/meta.json +1 -1
  86. package/dist/lib/browser/testing/index.mjs +322 -32
  87. package/dist/lib/browser/testing/index.mjs.map +4 -4
  88. package/dist/lib/node-esm/Annotation.mjs +31 -0
  89. package/dist/lib/node-esm/Annotation.mjs.map +7 -0
  90. package/dist/lib/node-esm/Database.mjs +14 -0
  91. package/dist/lib/node-esm/Database.mjs.map +7 -0
  92. package/dist/lib/node-esm/Entity.mjs +20 -0
  93. package/dist/lib/node-esm/Entity.mjs.map +7 -0
  94. package/dist/lib/node-esm/Err.mjs +11 -0
  95. package/dist/lib/node-esm/Err.mjs.map +7 -0
  96. package/dist/lib/node-esm/Filter.mjs +60 -0
  97. package/dist/lib/node-esm/Filter.mjs.map +7 -0
  98. package/dist/lib/node-esm/Format.mjs +67 -0
  99. package/dist/lib/node-esm/Format.mjs.map +7 -0
  100. package/dist/lib/node-esm/JsonSchema.mjs +18 -0
  101. package/dist/lib/node-esm/JsonSchema.mjs.map +7 -0
  102. package/dist/lib/node-esm/Key.mjs +13 -0
  103. package/dist/lib/node-esm/Key.mjs.map +7 -0
  104. package/dist/lib/node-esm/Obj.mjs +83 -0
  105. package/dist/lib/node-esm/Obj.mjs.map +7 -0
  106. package/dist/lib/node-esm/Order.mjs +11 -0
  107. package/dist/lib/node-esm/Order.mjs.map +7 -0
  108. package/dist/lib/node-esm/Query.mjs +25 -0
  109. package/dist/lib/node-esm/Query.mjs.map +7 -0
  110. package/dist/lib/node-esm/QueryResult.mjs +3 -0
  111. package/dist/lib/node-esm/QueryResult.mjs.map +7 -0
  112. package/dist/lib/node-esm/Ref.mjs +21 -0
  113. package/dist/lib/node-esm/Ref.mjs.map +7 -0
  114. package/dist/lib/node-esm/Relation.mjs +33 -0
  115. package/dist/lib/node-esm/Relation.mjs.map +7 -0
  116. package/dist/lib/node-esm/SchemaRegistry.mjs +3 -0
  117. package/dist/lib/node-esm/SchemaRegistry.mjs.map +7 -0
  118. package/dist/lib/node-esm/Tag.mjs +25 -0
  119. package/dist/lib/node-esm/Tag.mjs.map +7 -0
  120. package/dist/lib/node-esm/Type.mjs +38 -0
  121. package/dist/lib/node-esm/Type.mjs.map +7 -0
  122. package/dist/lib/node-esm/chunk-5M5P2DCR.mjs +32 -0
  123. package/dist/lib/node-esm/chunk-5M5P2DCR.mjs.map +7 -0
  124. package/dist/lib/node-esm/chunk-6OTQZKHX.mjs +303 -0
  125. package/dist/lib/node-esm/chunk-6OTQZKHX.mjs.map +7 -0
  126. package/dist/lib/node-esm/chunk-76LEDWHO.mjs +152 -0
  127. package/dist/lib/node-esm/chunk-76LEDWHO.mjs.map +7 -0
  128. package/dist/lib/node-esm/chunk-AGHZH33D.mjs +9 -0
  129. package/dist/lib/node-esm/chunk-AGHZH33D.mjs.map +7 -0
  130. package/dist/lib/node-esm/chunk-AJEMYSIR.mjs +22 -0
  131. package/dist/lib/node-esm/chunk-AJEMYSIR.mjs.map +7 -0
  132. package/dist/lib/node-esm/chunk-BJACR7QG.mjs +363 -0
  133. package/dist/lib/node-esm/chunk-BJACR7QG.mjs.map +7 -0
  134. package/dist/lib/node-esm/chunk-BYL2NPEA.mjs +37 -0
  135. package/dist/lib/node-esm/chunk-BYL2NPEA.mjs.map +7 -0
  136. package/dist/lib/node-esm/chunk-CCMFPJUT.mjs +74 -0
  137. package/dist/lib/node-esm/chunk-CCMFPJUT.mjs.map +7 -0
  138. package/dist/lib/node-esm/chunk-D5BW7KHR.mjs +39 -0
  139. package/dist/lib/node-esm/chunk-D5BW7KHR.mjs.map +7 -0
  140. package/dist/lib/node-esm/chunk-DJX53IQ3.mjs +2924 -0
  141. package/dist/lib/node-esm/chunk-DJX53IQ3.mjs.map +7 -0
  142. package/dist/lib/node-esm/chunk-FWTPV5QD.mjs +94 -0
  143. package/dist/lib/node-esm/chunk-FWTPV5QD.mjs.map +7 -0
  144. package/dist/lib/node-esm/chunk-HLUDHPFO.mjs +403 -0
  145. package/dist/lib/node-esm/chunk-HLUDHPFO.mjs.map +7 -0
  146. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  147. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  148. package/dist/lib/node-esm/chunk-JYZSF62S.mjs +113 -0
  149. package/dist/lib/node-esm/chunk-JYZSF62S.mjs.map +7 -0
  150. package/dist/lib/node-esm/chunk-KUX5JEL2.mjs +57 -0
  151. package/dist/lib/node-esm/chunk-KUX5JEL2.mjs.map +7 -0
  152. package/dist/lib/node-esm/chunk-LDXRA5TC.mjs +288 -0
  153. package/dist/lib/node-esm/chunk-LDXRA5TC.mjs.map +7 -0
  154. package/dist/lib/node-esm/chunk-MOWUEW5P.mjs +15 -0
  155. package/dist/lib/node-esm/chunk-MOWUEW5P.mjs.map +7 -0
  156. package/dist/lib/node-esm/chunk-NHYOREKX.mjs +62 -0
  157. package/dist/lib/node-esm/chunk-NHYOREKX.mjs.map +7 -0
  158. package/dist/lib/node-esm/chunk-QVZZHCDS.mjs +9 -0
  159. package/dist/lib/node-esm/chunk-QVZZHCDS.mjs.map +7 -0
  160. package/dist/lib/node-esm/chunk-W3OLV7MG.mjs +41 -0
  161. package/dist/lib/node-esm/chunk-W3OLV7MG.mjs.map +7 -0
  162. package/dist/lib/node-esm/chunk-W5AQXKVF.mjs +38 -0
  163. package/dist/lib/node-esm/chunk-W5AQXKVF.mjs.map +7 -0
  164. package/dist/lib/node-esm/chunk-YNBFXTDG.mjs +24 -0
  165. package/dist/lib/node-esm/chunk-YNBFXTDG.mjs.map +7 -0
  166. package/dist/lib/node-esm/chunk-Z53QIBP2.mjs +151 -0
  167. package/dist/lib/node-esm/chunk-Z53QIBP2.mjs.map +7 -0
  168. package/dist/lib/node-esm/index.mjs +72 -9
  169. package/dist/lib/node-esm/internal/index.mjs +347 -0
  170. package/dist/lib/node-esm/internal/index.mjs.map +7 -0
  171. package/dist/lib/node-esm/meta.json +1 -1
  172. package/dist/lib/node-esm/testing/index.mjs +322 -32
  173. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  174. package/dist/types/src/Annotation.d.ts +2 -0
  175. package/dist/types/src/Annotation.d.ts.map +1 -0
  176. package/dist/types/src/Database.d.ts +179 -0
  177. package/dist/types/src/Database.d.ts.map +1 -0
  178. package/dist/types/src/Entity.d.ts +36 -0
  179. package/dist/types/src/Entity.d.ts.map +1 -0
  180. package/dist/types/src/Err.d.ts +68 -0
  181. package/dist/types/src/Err.d.ts.map +1 -0
  182. package/dist/types/src/Filter.d.ts +120 -0
  183. package/dist/types/src/Filter.d.ts.map +1 -0
  184. package/dist/types/src/Format.d.ts +4 -0
  185. package/dist/types/src/Format.d.ts.map +1 -0
  186. package/dist/types/src/Hypergraph.d.ts +60 -0
  187. package/dist/types/src/Hypergraph.d.ts.map +1 -0
  188. package/dist/types/src/JsonSchema.d.ts +9 -0
  189. package/dist/types/src/JsonSchema.d.ts.map +1 -0
  190. package/dist/types/src/Key.d.ts +1 -0
  191. package/dist/types/src/Key.d.ts.map +1 -1
  192. package/dist/types/src/Obj.d.ts +152 -35
  193. package/dist/types/src/Obj.d.ts.map +1 -1
  194. package/dist/types/src/Order.d.ts +11 -0
  195. package/dist/types/src/Order.d.ts.map +1 -0
  196. package/dist/types/src/Query.d.ts +107 -0
  197. package/dist/types/src/Query.d.ts.map +1 -0
  198. package/dist/types/src/Query.test.d.ts +2 -0
  199. package/dist/types/src/Query.test.d.ts.map +1 -0
  200. package/dist/types/src/QueryResult.d.ts +84 -0
  201. package/dist/types/src/QueryResult.d.ts.map +1 -0
  202. package/dist/types/src/Ref.d.ts +12 -10
  203. package/dist/types/src/Ref.d.ts.map +1 -1
  204. package/dist/types/src/Relation.d.ts +20 -14
  205. package/dist/types/src/Relation.d.ts.map +1 -1
  206. package/dist/types/src/SchemaRegistry.d.ts +73 -0
  207. package/dist/types/src/SchemaRegistry.d.ts.map +1 -0
  208. package/dist/types/src/Tag.d.ts +17 -0
  209. package/dist/types/src/Tag.d.ts.map +1 -0
  210. package/dist/types/src/Type.d.ts +39 -50
  211. package/dist/types/src/Type.d.ts.map +1 -1
  212. package/dist/types/src/index.d.ts +15 -3
  213. package/dist/types/src/index.d.ts.map +1 -1
  214. package/dist/types/src/internal/annotations/annotations.d.ts +179 -0
  215. package/dist/types/src/internal/annotations/annotations.d.ts.map +1 -0
  216. package/dist/types/src/internal/annotations/annotations.test.d.ts +2 -0
  217. package/dist/types/src/internal/annotations/annotations.test.d.ts.map +1 -0
  218. package/dist/types/src/internal/annotations/index.d.ts +3 -0
  219. package/dist/types/src/internal/annotations/index.d.ts.map +1 -0
  220. package/dist/types/src/internal/annotations/util.d.ts +27 -0
  221. package/dist/types/src/internal/annotations/util.d.ts.map +1 -0
  222. package/dist/types/src/internal/entities/entity.d.ts +10 -0
  223. package/dist/types/src/internal/entities/entity.d.ts.map +1 -0
  224. package/dist/types/src/internal/entities/expando.d.ts +16 -0
  225. package/dist/types/src/internal/entities/expando.d.ts.map +1 -0
  226. package/dist/types/src/internal/entities/index.d.ts +6 -0
  227. package/dist/types/src/internal/entities/index.d.ts.map +1 -0
  228. package/dist/types/src/internal/entities/model.d.ts +70 -0
  229. package/dist/types/src/internal/entities/model.d.ts.map +1 -0
  230. package/dist/types/src/internal/entities/object.d.ts +11 -0
  231. package/dist/types/src/internal/entities/object.d.ts.map +1 -0
  232. package/dist/types/src/internal/entities/relation.d.ts +55 -0
  233. package/dist/types/src/internal/entities/relation.d.ts.map +1 -0
  234. package/dist/types/src/internal/entities/util.d.ts +2 -0
  235. package/dist/types/src/internal/entities/util.d.ts.map +1 -0
  236. package/dist/types/src/internal/formats/date.d.ts +63 -0
  237. package/dist/types/src/internal/formats/date.d.ts.map +1 -0
  238. package/dist/types/src/internal/formats/date.test.d.ts +2 -0
  239. package/dist/types/src/internal/formats/date.test.d.ts.map +1 -0
  240. package/dist/types/src/internal/formats/format.d.ts +32 -0
  241. package/dist/types/src/internal/formats/format.d.ts.map +1 -0
  242. package/dist/types/src/internal/formats/format.test.d.ts +2 -0
  243. package/dist/types/src/internal/formats/format.test.d.ts.map +1 -0
  244. package/dist/types/src/internal/formats/index.d.ts +8 -0
  245. package/dist/types/src/internal/formats/index.d.ts.map +1 -0
  246. package/dist/types/src/internal/formats/number.d.ts +31 -0
  247. package/dist/types/src/internal/formats/number.d.ts.map +1 -0
  248. package/dist/types/src/internal/formats/object.d.ts +35 -0
  249. package/dist/types/src/internal/formats/object.d.ts.map +1 -0
  250. package/dist/types/src/internal/formats/select.d.ts +13 -0
  251. package/dist/types/src/internal/formats/select.d.ts.map +1 -0
  252. package/dist/types/src/internal/formats/string.d.ts +42 -0
  253. package/dist/types/src/internal/formats/string.d.ts.map +1 -0
  254. package/dist/types/src/internal/formats/types.d.ts +72 -0
  255. package/dist/types/src/internal/formats/types.d.ts.map +1 -0
  256. package/dist/types/src/internal/index.d.ts +11 -0
  257. package/dist/types/src/internal/index.d.ts.map +1 -0
  258. package/dist/types/src/internal/json-schema/annotations.d.ts +19 -0
  259. package/dist/types/src/internal/json-schema/annotations.d.ts.map +1 -0
  260. package/dist/types/src/internal/json-schema/effect-schema.test.d.ts +2 -0
  261. package/dist/types/src/internal/json-schema/effect-schema.test.d.ts.map +1 -0
  262. package/dist/types/src/internal/json-schema/index.d.ts +5 -0
  263. package/dist/types/src/internal/json-schema/index.d.ts.map +1 -0
  264. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts +7 -0
  265. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +1 -0
  266. package/dist/types/src/internal/json-schema/json-schema-type.d.ts +250 -0
  267. package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +1 -0
  268. package/dist/types/src/internal/json-schema/json-schema.d.ts +29 -0
  269. package/dist/types/src/internal/json-schema/json-schema.d.ts.map +1 -0
  270. package/dist/types/src/internal/json-schema/json-schema.test.d.ts +2 -0
  271. package/dist/types/src/internal/json-schema/json-schema.test.d.ts.map +1 -0
  272. package/dist/types/src/internal/object/common.d.ts +18 -0
  273. package/dist/types/src/internal/object/common.d.ts.map +1 -0
  274. package/dist/types/src/internal/object/create-object.d.ts +39 -0
  275. package/dist/types/src/internal/object/create-object.d.ts.map +1 -0
  276. package/dist/types/src/internal/object/create-object.test.d.ts +2 -0
  277. package/dist/types/src/internal/object/create-object.test.d.ts.map +1 -0
  278. package/dist/types/src/internal/object/deleted.d.ts +6 -0
  279. package/dist/types/src/internal/object/deleted.d.ts.map +1 -0
  280. package/dist/types/src/internal/object/ids.d.ts +6 -0
  281. package/dist/types/src/internal/object/ids.d.ts.map +1 -0
  282. package/dist/types/src/internal/object/index.d.ts +8 -0
  283. package/dist/types/src/internal/object/index.d.ts.map +1 -0
  284. package/dist/types/src/internal/object/inspect.d.ts +2 -0
  285. package/dist/types/src/internal/object/inspect.d.ts.map +1 -0
  286. package/dist/types/src/internal/object/json-serializer.d.ts +31 -0
  287. package/dist/types/src/internal/object/json-serializer.d.ts.map +1 -0
  288. package/dist/types/src/internal/object/json-serializer.test.d.ts +2 -0
  289. package/dist/types/src/internal/object/json-serializer.test.d.ts.map +1 -0
  290. package/dist/types/src/internal/object/schema-validator.d.ts +15 -0
  291. package/dist/types/src/internal/object/schema-validator.d.ts.map +1 -0
  292. package/dist/types/src/internal/object/schema-validator.test.d.ts +2 -0
  293. package/dist/types/src/internal/object/schema-validator.test.d.ts.map +1 -0
  294. package/dist/types/src/internal/object/typed-object.d.ts +31 -0
  295. package/dist/types/src/internal/object/typed-object.d.ts.map +1 -0
  296. package/dist/types/src/internal/object/typed-object.test.d.ts +2 -0
  297. package/dist/types/src/internal/object/typed-object.test.d.ts.map +1 -0
  298. package/dist/types/src/internal/proxy/handler.test.d.ts +2 -0
  299. package/dist/types/src/internal/proxy/handler.test.d.ts.map +1 -0
  300. package/dist/types/src/internal/proxy/index.d.ts +3 -0
  301. package/dist/types/src/internal/proxy/index.d.ts.map +1 -0
  302. package/dist/types/src/internal/proxy/make-object.d.ts +16 -0
  303. package/dist/types/src/internal/proxy/make-object.d.ts.map +1 -0
  304. package/dist/types/src/internal/proxy/schema.test.d.ts +2 -0
  305. package/dist/types/src/internal/proxy/schema.test.d.ts.map +1 -0
  306. package/dist/types/src/internal/proxy/typed-handler.d.ts +44 -0
  307. package/dist/types/src/internal/proxy/typed-handler.d.ts.map +1 -0
  308. package/dist/types/src/internal/proxy/typed-handler.test.d.ts +2 -0
  309. package/dist/types/src/internal/proxy/typed-handler.test.d.ts.map +1 -0
  310. package/dist/types/src/internal/proxy/typed-object.test.d.ts +2 -0
  311. package/dist/types/src/internal/proxy/typed-object.test.d.ts.map +1 -0
  312. package/dist/types/src/internal/ref/index.d.ts +3 -0
  313. package/dist/types/src/internal/ref/index.d.ts.map +1 -0
  314. package/dist/types/src/internal/ref/ref-array.d.ts +21 -0
  315. package/dist/types/src/internal/ref/ref-array.d.ts.map +1 -0
  316. package/dist/types/src/internal/ref/ref.d.ts +209 -0
  317. package/dist/types/src/internal/ref/ref.d.ts.map +1 -0
  318. package/dist/types/src/internal/ref/ref.test.d.ts +2 -0
  319. package/dist/types/src/internal/ref/ref.test.d.ts.map +1 -0
  320. package/dist/types/src/internal/schema/compose.d.ts +6 -0
  321. package/dist/types/src/internal/schema/compose.d.ts.map +1 -0
  322. package/dist/types/src/internal/schema/compose.test.d.ts +2 -0
  323. package/dist/types/src/internal/schema/compose.test.d.ts.map +1 -0
  324. package/dist/types/src/internal/schema/echo-schema.d.ts +168 -0
  325. package/dist/types/src/internal/schema/echo-schema.d.ts.map +1 -0
  326. package/dist/types/src/internal/schema/index.d.ts +5 -0
  327. package/dist/types/src/internal/schema/index.d.ts.map +1 -0
  328. package/dist/types/src/internal/schema/manipulation.d.ts +10 -0
  329. package/dist/types/src/internal/schema/manipulation.d.ts.map +1 -0
  330. package/dist/types/src/internal/schema/persistent-schema.d.ts +18 -0
  331. package/dist/types/src/internal/schema/persistent-schema.d.ts.map +1 -0
  332. package/dist/types/src/internal/schema/snapshot.d.ts +6 -0
  333. package/dist/types/src/internal/schema/snapshot.d.ts.map +1 -0
  334. package/dist/types/src/internal/types/base.d.ts +37 -0
  335. package/dist/types/src/internal/types/base.d.ts.map +1 -0
  336. package/dist/types/src/internal/types/entity.d.ts +12 -0
  337. package/dist/types/src/internal/types/entity.d.ts.map +1 -0
  338. package/dist/types/src/internal/types/index.d.ts +6 -0
  339. package/dist/types/src/internal/types/index.d.ts.map +1 -0
  340. package/dist/types/src/internal/types/meta.d.ts +40 -0
  341. package/dist/types/src/internal/types/meta.d.ts.map +1 -0
  342. package/dist/types/src/internal/types/typename.d.ts +13 -0
  343. package/dist/types/src/internal/types/typename.d.ts.map +1 -0
  344. package/dist/types/src/internal/types/version.d.ts +15 -0
  345. package/dist/types/src/internal/types/version.d.ts.map +1 -0
  346. package/dist/types/src/{test → testing}/api.test.d.ts.map +1 -1
  347. package/dist/types/src/testing/index.d.ts +3 -1
  348. package/dist/types/src/testing/index.d.ts.map +1 -1
  349. package/dist/types/src/testing/test-data.d.ts +18 -0
  350. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  351. package/dist/types/src/testing/test-schema.d.ts +407 -0
  352. package/dist/types/src/testing/test-schema.d.ts.map +1 -0
  353. package/dist/types/src/testing/util.d.ts +16 -0
  354. package/dist/types/src/testing/util.d.ts.map +1 -0
  355. package/dist/types/tsconfig.tsbuildinfo +1 -1
  356. package/package.json +164 -33
  357. package/src/Annotation.ts +17 -0
  358. package/src/Database.ts +308 -0
  359. package/src/Entity.ts +51 -0
  360. package/src/Err.ts +18 -0
  361. package/src/Filter.ts +376 -0
  362. package/src/Format.ts +9 -0
  363. package/src/Hypergraph.ts +74 -0
  364. package/src/JsonSchema.ts +16 -0
  365. package/src/Key.ts +3 -0
  366. package/src/Obj.ts +407 -71
  367. package/src/Order.ts +34 -0
  368. package/src/Query.test.ts +346 -0
  369. package/src/Query.ts +279 -0
  370. package/src/QueryResult.ts +109 -0
  371. package/src/Ref.ts +25 -9
  372. package/src/Relation.ts +72 -46
  373. package/src/SchemaRegistry.ts +92 -0
  374. package/src/Tag.ts +40 -0
  375. package/src/Type.ts +98 -84
  376. package/src/index.ts +17 -4
  377. package/src/internal/README.md +87 -0
  378. package/src/internal/annotations/annotations.test.ts +96 -0
  379. package/src/internal/annotations/annotations.ts +488 -0
  380. package/src/internal/annotations/index.ts +6 -0
  381. package/src/internal/annotations/util.ts +72 -0
  382. package/src/internal/entities/entity.ts +109 -0
  383. package/src/internal/entities/expando.ts +23 -0
  384. package/src/internal/entities/index.ts +9 -0
  385. package/src/internal/entities/model.ts +129 -0
  386. package/src/internal/entities/object.ts +45 -0
  387. package/src/internal/entities/relation.ts +155 -0
  388. package/src/internal/entities/util.ts +33 -0
  389. package/src/internal/formats/date.test.ts +56 -0
  390. package/src/internal/formats/date.ts +217 -0
  391. package/src/internal/formats/format.test.ts +77 -0
  392. package/src/internal/formats/format.ts +54 -0
  393. package/src/internal/formats/index.ts +12 -0
  394. package/src/internal/formats/number.ts +89 -0
  395. package/src/internal/formats/object.ts +80 -0
  396. package/src/internal/formats/select.ts +18 -0
  397. package/src/internal/formats/string.ts +81 -0
  398. package/src/internal/formats/types.ts +186 -0
  399. package/src/internal/index.ts +38 -0
  400. package/src/internal/json-schema/annotations.ts +50 -0
  401. package/src/internal/json-schema/effect-schema.test.ts +143 -0
  402. package/src/internal/json-schema/index.ts +8 -0
  403. package/src/internal/json-schema/json-schema-normalize.ts +109 -0
  404. package/src/internal/json-schema/json-schema-type.ts +404 -0
  405. package/src/internal/json-schema/json-schema.test.ts +861 -0
  406. package/src/internal/json-schema/json-schema.ts +528 -0
  407. package/src/internal/object/common.ts +75 -0
  408. package/src/internal/object/create-object.test.ts +116 -0
  409. package/src/internal/object/create-object.ts +95 -0
  410. package/src/internal/object/deleted.ts +19 -0
  411. package/src/internal/object/ids.ts +12 -0
  412. package/src/internal/object/index.ts +11 -0
  413. package/src/internal/object/inspect.ts +46 -0
  414. package/src/internal/object/json-serializer.test.ts +94 -0
  415. package/src/internal/object/json-serializer.ts +230 -0
  416. package/src/internal/object/schema-validator.test.ts +186 -0
  417. package/src/internal/object/schema-validator.ts +244 -0
  418. package/src/internal/object/typed-object.test.ts +34 -0
  419. package/src/internal/object/typed-object.ts +94 -0
  420. package/src/internal/proxy/handler.test.ts +173 -0
  421. package/src/internal/proxy/index.ts +6 -0
  422. package/src/internal/proxy/make-object.ts +113 -0
  423. package/src/internal/proxy/schema.test.ts +137 -0
  424. package/src/internal/proxy/typed-handler.test.ts +102 -0
  425. package/src/internal/proxy/typed-handler.ts +233 -0
  426. package/src/internal/proxy/typed-object.test.ts +105 -0
  427. package/src/internal/ref/index.ts +6 -0
  428. package/src/internal/ref/ref-array.ts +39 -0
  429. package/src/internal/ref/ref.test.ts +101 -0
  430. package/src/internal/ref/ref.ts +525 -0
  431. package/src/internal/schema/compose.test.ts +42 -0
  432. package/src/internal/schema/compose.ts +37 -0
  433. package/src/internal/schema/echo-schema.ts +385 -0
  434. package/src/internal/schema/index.ts +8 -0
  435. package/src/internal/schema/manipulation.ts +92 -0
  436. package/src/internal/schema/persistent-schema.ts +28 -0
  437. package/src/internal/schema/snapshot.ts +25 -0
  438. package/src/internal/types/base.ts +57 -0
  439. package/src/internal/types/entity.ts +23 -0
  440. package/src/internal/types/index.ts +9 -0
  441. package/src/internal/types/meta.ts +76 -0
  442. package/src/internal/types/typename.ts +45 -0
  443. package/src/internal/types/version.ts +20 -0
  444. package/src/testing/api.test.ts +100 -0
  445. package/src/testing/index.ts +3 -1
  446. package/src/testing/test-data.ts +130 -0
  447. package/src/testing/test-schema.ts +224 -0
  448. package/src/testing/util.ts +78 -0
  449. package/dist/lib/browser/chunk-EUA7CM23.mjs +0 -619
  450. package/dist/lib/browser/chunk-EUA7CM23.mjs.map +0 -7
  451. package/dist/lib/node-esm/chunk-IV6BWGHK.mjs +0 -619
  452. package/dist/lib/node-esm/chunk-IV6BWGHK.mjs.map +0 -7
  453. package/dist/types/src/experimental/database.d.ts +0 -8
  454. package/dist/types/src/experimental/database.d.ts.map +0 -1
  455. package/dist/types/src/experimental/index.d.ts +0 -1
  456. package/dist/types/src/experimental/index.d.ts.map +0 -1
  457. package/dist/types/src/experimental/queue.d.ts +0 -8
  458. package/dist/types/src/experimental/queue.d.ts.map +0 -1
  459. package/dist/types/src/experimental/space.d.ts +0 -8
  460. package/dist/types/src/experimental/space.d.ts.map +0 -1
  461. package/dist/types/src/query/dsl.d.ts +0 -218
  462. package/dist/types/src/query/dsl.d.ts.map +0 -1
  463. package/dist/types/src/query/dsl.test.d.ts +0 -2
  464. package/dist/types/src/query/dsl.test.d.ts.map +0 -1
  465. package/dist/types/src/query/index.d.ts +0 -2
  466. package/dist/types/src/query/index.d.ts.map +0 -1
  467. package/dist/types/src/testing/types.d.ts +0 -113
  468. package/dist/types/src/testing/types.d.ts.map +0 -1
  469. package/src/experimental/database.ts +0 -11
  470. package/src/experimental/index.ts +0 -7
  471. package/src/experimental/queue.ts +0 -11
  472. package/src/experimental/space.ts +0 -11
  473. package/src/query/dsl.test.ts +0 -323
  474. package/src/query/dsl.ts +0 -646
  475. package/src/query/index.ts +0 -5
  476. package/src/test/api.test.ts +0 -173
  477. package/src/testing/types.ts +0 -91
  478. /package/dist/types/src/{test → testing}/api.test.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Database.d.ts","sourceRoot":"","sources":["../../../src/Database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { ObjectId } from '@dxos/keys';
2
+ import { EntityKind, KindId } from './internal';
3
+ export { KindId };
4
+ export declare const Kind: typeof EntityKind;
5
+ export type Kind = EntityKind;
6
+ export declare const KindSchema: import("effect/Schema").Enums<typeof EntityKind>;
7
+ /**
8
+ * Assigns a kind to an Object or Relation instance.
9
+ */
10
+ export interface OfKind<K extends Kind> {
11
+ readonly [KindId]: K;
12
+ readonly id: ObjectId;
13
+ }
14
+ /**
15
+ * Obj or Relation with a specific set of properties.
16
+ */
17
+ export type Entity<Props> = OfKind<Kind> & Props;
18
+ /**
19
+ * Unknown Obj or Relation.
20
+ */
21
+ export interface Unknown extends OfKind<Kind> {
22
+ }
23
+ /**
24
+ * Object with arbitrary properties.
25
+ *
26
+ * NOTE: Due to how typescript works, this type is not assignable to a specific schema type.
27
+ * In that case, use `Obj.instanceOf` to check if an object is of a specific type.
28
+ *
29
+ * This type is very permissive and allows accessing any property on the object.
30
+ * We should move to Obj.Any that is not permissive and requires explicit instanceof checks..
31
+ */
32
+ export interface Any extends OfKind<Kind> {
33
+ [key: string]: unknown;
34
+ }
35
+ export declare const getKind: (schema: import("effect/Schema").Schema.All) => EntityKind | undefined;
36
+ //# sourceMappingURL=Entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Entity.d.ts","sourceRoot":"","sources":["../../../src/Entity.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAoB,MAAM,EAAiB,MAAM,YAAY,CAAC;AAEjF,OAAO,EAAE,MAAM,EAAE,CAAC;AAMlB,eAAO,MAAM,IAAI,mBAAa,CAAC;AAC/B,MAAM,MAAM,IAAI,GAAG,UAAU,CAAC;AAC9B,eAAO,MAAM,UAAU,kDAAmB,CAAC;AAE3C;;GAEG;AAEH,MAAM,WAAW,MAAM,CAAC,CAAC,SAAS,IAAI;IACpC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrB,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,OAAQ,SAAQ,MAAM,CAAC,IAAI,CAAC;CAAG;AAEhD;;;;;;;;GAQG;AACH,MAAM,WAAW,GAAI,SAAQ,MAAM,CAAC,IAAI,CAAC;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,OAAO,wEAAgB,CAAC"}
@@ -0,0 +1,68 @@
1
+ import { BaseError, type BaseErrorOptions } from '@dxos/errors';
2
+ import { type DXN } from '@dxos/keys';
3
+ declare const SchemaNotFoundError_base: {
4
+ new (options?: BaseErrorOptions): {
5
+ code: "SCHEMA_NOT_FOUND";
6
+ context: Record<string, unknown>;
7
+ readonly name: "SCHEMA_NOT_FOUND";
8
+ readonly message: string;
9
+ readonly _tag: "SCHEMA_NOT_FOUND";
10
+ stack?: string;
11
+ cause?: unknown;
12
+ };
13
+ code: "SCHEMA_NOT_FOUND";
14
+ is(error: unknown): error is BaseError;
15
+ wrap(options?: Omit<BaseErrorOptions, "cause"> & {
16
+ ifTypeDiffers?: boolean;
17
+ }): (error: unknown) => {
18
+ code: "SCHEMA_NOT_FOUND";
19
+ context: Record<string, unknown>;
20
+ readonly name: "SCHEMA_NOT_FOUND";
21
+ readonly message: string;
22
+ readonly _tag: "SCHEMA_NOT_FOUND";
23
+ stack?: string;
24
+ cause?: unknown;
25
+ };
26
+ extend<Code extends string = string>(code: Code, message?: string): any;
27
+ isError(error: unknown): error is Error;
28
+ captureStackTrace(targetObject: object, constructorOpt?: Function): void;
29
+ prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
30
+ stackTraceLimit: number;
31
+ };
32
+ export declare class SchemaNotFoundError extends SchemaNotFoundError_base {
33
+ constructor(schema: string, options?: BaseErrorOptions);
34
+ }
35
+ declare const ObjectNotFoundError_base: {
36
+ new (options?: BaseErrorOptions): {
37
+ code: "OBJECT_NOT_FOUND";
38
+ context: Record<string, unknown>;
39
+ readonly name: "OBJECT_NOT_FOUND";
40
+ readonly message: string;
41
+ readonly _tag: "OBJECT_NOT_FOUND";
42
+ stack?: string;
43
+ cause?: unknown;
44
+ };
45
+ code: "OBJECT_NOT_FOUND";
46
+ is(error: unknown): error is BaseError;
47
+ wrap(options?: Omit<BaseErrorOptions, "cause"> & {
48
+ ifTypeDiffers?: boolean;
49
+ }): (error: unknown) => {
50
+ code: "OBJECT_NOT_FOUND";
51
+ context: Record<string, unknown>;
52
+ readonly name: "OBJECT_NOT_FOUND";
53
+ readonly message: string;
54
+ readonly _tag: "OBJECT_NOT_FOUND";
55
+ stack?: string;
56
+ cause?: unknown;
57
+ };
58
+ extend<Code extends string = string>(code: Code, message?: string): any;
59
+ isError(error: unknown): error is Error;
60
+ captureStackTrace(targetObject: object, constructorOpt?: Function): void;
61
+ prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
62
+ stackTraceLimit: number;
63
+ };
64
+ export declare class ObjectNotFoundError extends ObjectNotFoundError_base {
65
+ constructor(dxn: DXN, options?: BaseErrorOptions);
66
+ }
67
+ export {};
68
+ //# sourceMappingURL=Err.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Err.d.ts","sourceRoot":"","sources":["../../../src/Err.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;;;;;;;;;;;;;;qBAa4iB,CAAC;;;;;;;;;;;;;;;;AAXnlB,qBAAa,mBAAoB,SAAQ,wBAAwD;gBACnF,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB;CAGvD;;;;;;;;;;;;;;qBAOilB,CAAC;;;;;;;;;;;;;;;;AALnlB,qBAAa,mBAAoB,SAAQ,wBAAwD;gBACnF,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,gBAAgB;CAGjD"}
@@ -0,0 +1,120 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import type * as Types from 'effect/Types';
3
+ import { type ForeignKey, type QueryAST } from '@dxos/echo-protocol';
4
+ import { DXN, ObjectId } from '@dxos/keys';
5
+ export interface Filter<T> {
6
+ '~Filter': {
7
+ value: Types.Contravariant<T>;
8
+ };
9
+ ast: QueryAST.Filter;
10
+ }
11
+ export type Props<T> = {
12
+ [K in keyof T & string]?: Filter<T[K]> | T[K];
13
+ };
14
+ export type Any = Filter<any>;
15
+ export type Type<F extends Any> = F extends Filter<infer T> ? T : never;
16
+ declare class FilterClass implements Any {
17
+ readonly ast: QueryAST.Filter;
18
+ private static variance;
19
+ constructor(ast: QueryAST.Filter);
20
+ '~Filter': {
21
+ value: Types.Contravariant<any>;
22
+ };
23
+ }
24
+ export declare const is: (value: unknown) => value is Any;
25
+ /** Construct a filter from an ast. */
26
+ export declare const fromAst: (ast: QueryAST.Filter) => Any;
27
+ /**
28
+ * Filter that matches all objects.
29
+ */
30
+ export declare const everything: () => FilterClass;
31
+ /**
32
+ * Filter that matches no objects.
33
+ */
34
+ export declare const nothing: () => FilterClass;
35
+ export declare const id: (...ids: ObjectId[]) => Any;
36
+ /**
37
+ * Filter by type.
38
+ */
39
+ export declare const type: <S extends Schema.Schema.All>(schema: S | string, props?: Props<Schema.Schema.Type<S>>) => Filter<Schema.Schema.Type<S>>;
40
+ /**
41
+ * Filter by non-qualified typename.
42
+ */
43
+ export declare const typename: (typename: string) => Any;
44
+ /**
45
+ * Filter by fully qualified type DXN.
46
+ */
47
+ export declare const typeDXN: (dxn: DXN) => Any;
48
+ /**
49
+ * Filter by tag.
50
+ */
51
+ export declare const tag: (tag: string) => Any;
52
+ /**
53
+ * Filter by properties.
54
+ */
55
+ export declare const props: <T>(props: Props<T>) => Filter<T>;
56
+ export type TextSearchOptions = {
57
+ type?: 'full-text' | 'vector';
58
+ };
59
+ /**
60
+ * Full-text or vector search.
61
+ */
62
+ export declare const text: (text: string, options?: TextSearchOptions) => Any;
63
+ /**
64
+ * Filter by foreign keys.
65
+ */
66
+ export declare const foreignKeys: <S extends Schema.Schema.All>(schema: S | string, keys: ForeignKey[]) => Filter<Schema.Schema.Type<S>>;
67
+ /**
68
+ * Predicate for property to be equal to the provided value.
69
+ */
70
+ export declare const eq: <T>(value: T) => Filter<T | undefined>;
71
+ /**
72
+ * Predicate for property to be not equal to the provided value.
73
+ */
74
+ export declare const neq: <T>(value: T) => Filter<T | undefined>;
75
+ /**
76
+ * Predicate for property to be greater than the provided value.
77
+ */
78
+ export declare const gt: <T>(value: T) => Filter<T | undefined>;
79
+ /**
80
+ * Predicate for property to be greater than or equal to the provided value.
81
+ */
82
+ export declare const gte: <T>(value: T) => Filter<T | undefined>;
83
+ /**
84
+ * Predicate for property to be less than the provided value.
85
+ */
86
+ export declare const lt: <T>(value: T) => Filter<T | undefined>;
87
+ /**
88
+ * Predicate for property to be less than or equal to the provided value.
89
+ */
90
+ export declare const lte: <T>(value: T) => Filter<T | undefined>;
91
+ /**
92
+ * Predicate for property to be in the provided array.
93
+ * @param values - Values to check against.
94
+ */
95
+ declare const in$: <T>(...values: T[]) => Filter<T | undefined>;
96
+ export { in$ as in };
97
+ /**
98
+ * Predicate for an array property to contain the provided value.
99
+ * @param value - Value to check against.
100
+ */
101
+ export declare const contains: <T>(value: T) => Filter<readonly T[] | undefined>;
102
+ /**
103
+ * Predicate for property to be in the provided range.
104
+ * @param from - Start of the range (inclusive).
105
+ * @param to - End of the range (exclusive).
106
+ */
107
+ export declare const between: <T>(from: T, to: T) => Filter<unknown>;
108
+ /**
109
+ * Negate the filter.
110
+ */
111
+ export declare const not: <F extends Any>(filter: F) => Filter<Type<F>>;
112
+ /**
113
+ * Combine filters with a logical AND.
114
+ */
115
+ export declare const and: <Filters extends readonly Any[]>(...filters: Filters) => Filter<Type<Filters[number]>>;
116
+ /**
117
+ * Combine filters with a logical OR.
118
+ */
119
+ export declare const or: <Filters extends readonly Any[]>(...filters: Filters) => Filter<Type<Filters[number]>>;
120
+ //# sourceMappingURL=Filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../src/Filter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type TypeFormat as Format } from './internal';
2
+ export * from './internal/formats';
3
+ export type { Format };
4
+ //# sourceMappingURL=Format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Format.d.ts","sourceRoot":"","sources":["../../../src/Format.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,IAAI,MAAM,EAAE,MAAM,YAAY,CAAC;AAEvD,cAAc,oBAAoB,CAAC;AAEnC,YAAY,EAAE,MAAM,EAAE,CAAC"}
@@ -0,0 +1,60 @@
1
+ import { type DXN } from '@dxos/keys';
2
+ import type * as Database from './Database';
3
+ import type * as Entity from './Entity';
4
+ import { type AnyProperties } from './internal';
5
+ import type * as Key from './Key';
6
+ import type * as Ref from './Ref';
7
+ import type * as SchemaRegistry from './SchemaRegistry';
8
+ /**
9
+ * Resolution context.
10
+ * Affects how non-absolute DXNs are resolved.
11
+ */
12
+ export interface RefResolutionContext {
13
+ /**
14
+ * Space that the resolution is happening from.
15
+ */
16
+ space?: Key.SpaceId;
17
+ /**
18
+ * Queue that the resolution is happening from.
19
+ * This queue will be searched first, and then the space it belongs to.
20
+ */
21
+ queue?: DXN;
22
+ }
23
+ export interface RefResolverOptions {
24
+ /**
25
+ * Resolution context.
26
+ * Affects how non-absolute DXNs are resolved.
27
+ */
28
+ context?: RefResolutionContext;
29
+ /**
30
+ * Middleware to change the resolved object before returning it.
31
+ * @deprecated On track to be removed.
32
+ */
33
+ middleware?: (obj: AnyProperties) => AnyProperties;
34
+ }
35
+ /**
36
+ *
37
+ */
38
+ export interface Hypergraph extends Database.Queryable {
39
+ get schemaRegistry(): SchemaRegistry.SchemaRegistry;
40
+ /**
41
+ * Query objects.
42
+ */
43
+ query: Database.QueryFn;
44
+ /**
45
+ * Creates a reference to an existing object in the database.
46
+ *
47
+ * NOTE: The reference may be dangling if the object is not present in the database.
48
+ * NOTE: Difference from `Ref.fromDXN`
49
+ * `Ref.fromDXN(dxn)` returns an unhydrated reference. The `.load` and `.target` APIs will not work.
50
+ * `db.makeRef(dxn)` is preferable in cases with access to the database.
51
+ */
52
+ makeRef<T extends Entity.Unknown = Entity.Unknown>(dxn: DXN): Ref.Ref<T>;
53
+ /**
54
+ * @param hostDb Host database for reference resolution.
55
+ * @param middleware Called with the loaded object. The caller may change the object.
56
+ * @returns Result of `onLoad`.
57
+ */
58
+ createRefResolver(options: RefResolverOptions): Ref.Resolver;
59
+ }
60
+ //# sourceMappingURL=Hypergraph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Hypergraph.d.ts","sourceRoot":"","sources":["../../../src/Hypergraph.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,OAAO,KAAK,KAAK,cAAc,MAAM,kBAAkB,CAAC;AAExD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAEpB;;;OAGG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAE/B;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,aAAa,CAAC;CACpD;AAED;;GAEG;AAEH,MAAM,WAAW,UAAW,SAAQ,QAAQ,CAAC,SAAS;IACpD,IAAI,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC;IAEpD;;OAEG;IACH,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC;IAExB;;;;;;;OAOG;IACH,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEzE;;;;OAIG;IAEH,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,GAAG,CAAC,QAAQ,CAAC;CAC9D"}
@@ -0,0 +1,9 @@
1
+ import type * as Schema from 'effect/Schema';
2
+ import { JsonSchemaType } from './internal';
3
+ export { toEffectSchema, toJsonSchema } from './internal';
4
+ /**
5
+ * Serializable JsonSchema type definition.
6
+ */
7
+ export type JsonSchema = JsonSchemaType;
8
+ export declare const JsonSchema: Schema.Schema<JsonSchemaType>;
9
+ //# sourceMappingURL=JsonSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonSchema.d.ts","sourceRoot":"","sources":["../../../src/JsonSchema.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC;AAExC,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAkB,CAAC"}
@@ -1,2 +1,3 @@
1
+ export { ForeignKey } from '@dxos/echo-protocol';
1
2
  export { SpaceId, ObjectId } from '@dxos/keys';
2
3
  //# sourceMappingURL=Key.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Key.d.ts","sourceRoot":"","sources":["../../../src/Key.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"Key.d.ts","sourceRoot":"","sources":["../../../src/Key.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -1,81 +1,198 @@
1
- import { Schema } from 'effect';
2
- import * as EchoSchema from '@dxos/echo-schema';
3
- import { type DXN } from '@dxos/keys';
4
- import type * as LiveObject from '@dxos/live-object';
5
- import type * as Ref from './Ref';
6
- import type * as Relation from './Relation';
7
- import type * as Type from './Type';
8
- interface ObjBase extends Type.OfKind<EchoSchema.EntityKind.Object> {
9
- readonly id: EchoSchema.ObjectId;
1
+ import * as Schema from 'effect/Schema';
2
+ import { type ForeignKey } from '@dxos/echo-protocol';
3
+ import { type DXN, ObjectId } from '@dxos/keys';
4
+ import * as Entity from './Entity';
5
+ import { type AnyEchoObject, type AnyProperties, type ObjectJSON, type ObjectMeta, VersionTypeId } from './internal';
6
+ import * as Ref from './Ref';
7
+ import * as Type from './Type';
8
+ /**
9
+ * Base type for all ECHO objects.
10
+ * @private
11
+ */
12
+ interface BaseObj extends AnyEchoObject, Entity.OfKind<typeof Entity.Kind.Object> {
13
+ }
14
+ /**
15
+ * Base type for all Obj objects.
16
+ */
17
+ export interface Any extends BaseObj {
10
18
  }
19
+ export declare const Any: Type.obj<Schema.Struct<{}>>;
11
20
  /**
12
21
  * Object type with specific properties.
13
22
  */
14
- export type Obj<Props> = ObjBase & Props;
23
+ export type Obj<Props> = BaseObj & Props;
15
24
  /**
16
- * Base type for all ECHO objects.
25
+ * Object with arbitrary properties.
26
+ *
27
+ * NOTE: Due to how typescript works, this type is not assignable to a specific schema type.
28
+ * In that case, use `Obj.instanceOf` to check if an object is of a specific type.
17
29
  */
18
- export interface Any extends ObjBase {
30
+ export interface AnyProps extends BaseObj, AnyProperties {
19
31
  }
20
- type Props<T> = {
21
- id?: EchoSchema.ObjectId;
32
+ type Props<T = any> = {
33
+ id?: ObjectId;
34
+ [Meta]?: Partial<ObjectMeta>;
22
35
  } & Type.Properties<T>;
23
- export type MakeProps<S extends Type.Obj.Any> = NoInfer<Props<Schema.Schema.Type<S>>>;
36
+ export type MakeProps<T extends Schema.Schema.AnyNoContext> = {
37
+ id?: ObjectId;
38
+ [Meta]?: Partial<ObjectMeta>;
39
+ } & NoInfer<Props<Schema.Schema.Type<T>>>;
40
+ /**
41
+ * Creates a new object of the given types.
42
+ * @param schema - Object schema.
43
+ * @param props - Object properties.
44
+ * @param meta - Object metadata (deprecated) -- pass with Obj.Meta.
45
+ *
46
+ * Meta can be passed as a symbol in `props`.
47
+ *
48
+ * Example:
49
+ * ```ts
50
+ * const obj = Obj.make(Person, { [Obj.Meta]: { keys: [...] }, name: 'John' });
51
+ * ```
52
+ */
53
+ export declare const make: <S extends Schema.Schema.AnyNoContext>(schema: S, props: MakeProps<S>, meta?: Partial<ObjectMeta>) => Obj<Schema.Schema.Type<S>>;
24
54
  /**
25
- * Creates new object.
55
+ * Determine if object is an ECHO object.
26
56
  */
27
- export declare const make: <S extends Type.Obj.Any>(schema: S, props: MakeProps<S>, meta?: EchoSchema.ObjectMeta) => LiveObject.Live<Schema.Schema.Type<S>>;
28
57
  export declare const isObject: (obj: unknown) => obj is Any;
58
+ /**
59
+ * Returns an immutable snapshot of an object.
60
+ */
61
+ export declare const getSnapshot: <T extends Any>(obj: Obj<T>) => T;
62
+ export type CloneOptions = {
63
+ /**
64
+ * Retain the original object's ID.
65
+ * @default false
66
+ */
67
+ retainId?: boolean;
68
+ };
69
+ /**
70
+ * Clones an object or relation.
71
+ * This does not clone referenced objects, only the properties in the object.
72
+ * @returns A new object with the same schema and properties.
73
+ */
74
+ export declare const clone: <T extends Any>(obj: T, opts?: CloneOptions) => T;
75
+ export declare const ID: import("@dxos/keys").ObjectIdClass;
76
+ export type ID = ObjectId;
29
77
  /**
30
78
  * Test if object or relation is an instance of a schema.
31
79
  * @example
32
80
  * ```ts
33
81
  * const john = Obj.make(Person, { name: 'John' });
34
- * const johnIsPerson = Obj.instanceOf(Person)(john);
35
- *
36
82
  * const isPerson = Obj.instanceOf(Person);
37
- * if(isPerson(john)) {
83
+ * if (isPerson(john)) {
38
84
  * // john is Person
39
85
  * }
40
86
  * ```
41
87
  */
42
88
  export declare const instanceOf: {
43
- <S extends Type.Relation.Any | Type.Obj.Any>(schema: S): (value: unknown) => value is Schema.Schema.Type<S>;
44
- <S extends Type.Relation.Any | Type.Obj.Any>(schema: S, value: unknown): value is Schema.Schema.Type<S>;
89
+ <S extends Type.Entity.Any>(schema: S): (value: unknown) => value is Schema.Schema.Type<S>;
90
+ <S extends Type.Entity.Any>(schema: S, value: unknown): value is Schema.Schema.Type<S>;
45
91
  };
46
- export declare const getSchema: (obj: unknown | undefined) => Schema.Schema.AnyNoContext | undefined;
47
- export declare const getDXN: (obj: Any) => DXN;
92
+ export declare const getDXN: (entity: Entity.Unknown) => DXN;
48
93
  /**
49
94
  * @returns The DXN of the object's type.
50
- * @example dxn:example.com/type/Contact:1.0.0
95
+ * @example dxn:example.com/type/Person:1.0.0
51
96
  */
52
- export declare const getTypeDXN: (obj: EchoSchema.BaseObject) => DXN | undefined;
97
+ export declare const getTypeDXN: (obj: AnyProperties) => DXN | undefined;
98
+ /**
99
+ * Get the schema of the object.
100
+ */
101
+ export declare const getSchema: (obj: unknown | undefined) => Schema.Schema.AnyNoContext | undefined;
53
102
  /**
54
103
  * @returns The typename of the object's type.
55
- * @example `example.com/type/Contact`
104
+ * @example `example.com/type/Person`
105
+ */
106
+ export declare const getTypename: (entity: Entity.Unknown) => string | undefined;
107
+ export declare const Meta: unique symbol;
108
+ export declare const getMeta: (entity: AnyProperties) => ObjectMeta;
109
+ /**
110
+ * @returns Foreign keys for the object from the specified source.
56
111
  */
57
- export declare const getTypename: (obj: Any) => string | undefined;
58
- export declare const getMeta: (obj: Any) => EchoSchema.ObjectMeta;
59
- export declare const isDeleted: (obj: Any) => boolean;
60
- export declare const getLabel: (obj: Any) => string | undefined;
112
+ export declare const getKeys: {
113
+ (entity: Entity.Unknown, source: string): ForeignKey[];
114
+ (source: string): (entity: Entity.Unknown) => ForeignKey[];
115
+ };
116
+ /**
117
+ * Delete all keys from the object for the specified source.
118
+ * @param entity
119
+ * @param source
120
+ */
121
+ export declare const deleteKeys: (entity: Entity.Unknown, source: string) => void;
122
+ export declare const addTag: (entity: Entity.Unknown, tag: string) => void;
123
+ export declare const removeTag: (entity: Entity.Unknown, tag: string) => void;
124
+ export declare const isDeleted: (entity: Entity.Unknown) => boolean;
125
+ export declare const getLabel: (entity: Entity.Unknown) => string | undefined;
126
+ export declare const setLabel: (entity: Entity.Unknown, label: string) => void;
127
+ export declare const getDescription: (entity: Entity.Unknown) => string | undefined;
128
+ export declare const setDescription: (entity: Entity.Unknown, description: string) => void;
61
129
  /**
62
130
  * JSON representation of an object.
63
131
  */
64
- export type JSON = EchoSchema.ObjectJSON;
132
+ export type JSON = ObjectJSON;
65
133
  /**
66
134
  * Converts object to its JSON representation.
67
135
  *
68
136
  * The same algorithm is used when calling the standard `JSON.stringify(obj)` function.
69
137
  */
70
- export declare const toJSON: (obj: Any | Relation.Any) => JSON;
138
+ export declare const toJSON: (entity: Entity.Unknown) => JSON;
71
139
  /**
72
140
  * Creates an object from its json representation, performing schema validation.
73
141
  * References and schemas will be resolvable if the `refResolver` is provided.
74
142
  *
75
- * The function need to be async to support resolving the schema as well as the relation endpoints.
143
+ * The function must be async to support resolving the schema as well as the relation endpoints.
144
+ *
145
+ * @param options.refResolver - Resolver for references. Produces hydrated references that can be resolved.
146
+ * @param options.dxn - Override object DXN. Changes the result of `Obj.getDXN`.
76
147
  */
77
148
  export declare const fromJSON: (json: unknown, options?: {
78
149
  refResolver?: Ref.Resolver;
150
+ dxn?: DXN;
79
151
  }) => Promise<Any>;
80
- export {};
152
+ export type Comparator = (a: Entity.Unknown, b: Entity.Unknown) => number;
153
+ export declare const sortByLabel: Comparator;
154
+ export declare const sortByTypename: Comparator;
155
+ export declare const sort: (...comparators: Comparator[]) => Comparator;
156
+ /**
157
+ * Unique symbol for version type identification.
158
+ */
159
+ export { VersionTypeId };
160
+ /**
161
+ * Represent object version.
162
+ * May be backed by Automerge.
163
+ * Objects with no history are not versioned.
164
+ */
165
+ export interface Version {
166
+ [VersionTypeId]: {};
167
+ /**
168
+ * Whether the object is versioned.
169
+ */
170
+ versioned: boolean;
171
+ /**
172
+ * Automerge heads.
173
+ */
174
+ automergeHeads?: string[];
175
+ }
176
+ /**
177
+ * Checks that `obj` is a version object.
178
+ */
179
+ export declare const isVersion: (entity: unknown) => entity is Version;
180
+ /**
181
+ * Returns the version of the object.
182
+ */
183
+ export declare const version: (entity: Entity.Unknown) => Version;
184
+ /**
185
+ * Checks that `version` is a valid version object.
186
+ */
187
+ export declare const versionValid: (version: Version) => boolean;
188
+ export type VersionCompareResult = 'unversioned' | 'equal' | 'different';
189
+ /**
190
+ * Compares two versions.
191
+ * @param version1
192
+ * @param version2
193
+ * @returns 'unversioned' if either object is unversioned, 'equal' if the versions are equal, 'different' if the versions are different.
194
+ */
195
+ export declare const compareVersions: (version1: Version, version2: Version) => VersionCompareResult;
196
+ export declare const encodeVersion: (version: Version) => string;
197
+ export declare const decodeVersion: (version: string) => Version;
81
198
  //# sourceMappingURL=Obj.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Obj.d.ts","sourceRoot":"","sources":["../../../src/Obj.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Obj.d.ts","sourceRoot":"","sources":["../../../src/Obj.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { type QueryAST } from '@dxos/echo-protocol';
2
+ export interface Order<T> {
3
+ '~Order': {
4
+ value: T;
5
+ };
6
+ ast: QueryAST.Order;
7
+ }
8
+ export type Any = Order<any>;
9
+ export declare const natural: Order<any>;
10
+ export declare const property: <T>(property: keyof T & string, direction: QueryAST.OrderDirection) => Order<T>;
11
+ //# sourceMappingURL=Order.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Order.d.ts","sourceRoot":"","sources":["../../../src/Order.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,KAAK,CAAC,CAAC;IAEtB,QAAQ,EAAE;QAAE,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC;IAEvB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;CACrB;AAED,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AAc7B,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,GAAG,CAAuC,CAAC;AACvE,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,UAAU,MAAM,CAAC,GAAG,MAAM,EAAE,WAAW,QAAQ,CAAC,cAAc,KAAG,KAAK,CAAC,CAAC,CAKhG,CAAC"}