@dxos/echo 0.8.4-main.5ea62a8 → 0.8.4-main.66e292d

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 (328) hide show
  1. package/dist/lib/browser/chunk-7GH6RXJ3.mjs +3683 -0
  2. package/dist/lib/browser/chunk-7GH6RXJ3.mjs.map +7 -0
  3. package/dist/lib/browser/chunk-E4UTVJNF.mjs +1111 -0
  4. package/dist/lib/browser/chunk-E4UTVJNF.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +24 -1
  6. package/dist/lib/browser/internal/index.mjs +336 -0
  7. package/dist/lib/browser/internal/index.mjs.map +7 -0
  8. package/dist/lib/browser/meta.json +1 -1
  9. package/dist/lib/browser/testing/index.mjs +289 -31
  10. package/dist/lib/browser/testing/index.mjs.map +4 -4
  11. package/dist/lib/node-esm/chunk-JE5RXM2I.mjs +1111 -0
  12. package/dist/lib/node-esm/chunk-JE5RXM2I.mjs.map +7 -0
  13. package/dist/lib/node-esm/chunk-M4B6BMD2.mjs +3683 -0
  14. package/dist/lib/node-esm/chunk-M4B6BMD2.mjs.map +7 -0
  15. package/dist/lib/node-esm/index.mjs +24 -1
  16. package/dist/lib/node-esm/internal/index.mjs +336 -0
  17. package/dist/lib/node-esm/internal/index.mjs.map +7 -0
  18. package/dist/lib/node-esm/meta.json +1 -1
  19. package/dist/lib/node-esm/testing/index.mjs +289 -31
  20. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  21. package/dist/types/src/Annotation.d.ts +2 -0
  22. package/dist/types/src/Annotation.d.ts.map +1 -0
  23. package/dist/types/src/Database.d.ts +137 -0
  24. package/dist/types/src/Database.d.ts.map +1 -0
  25. package/dist/types/src/Entity.d.ts +36 -0
  26. package/dist/types/src/Entity.d.ts.map +1 -0
  27. package/dist/types/src/Format.d.ts +4 -0
  28. package/dist/types/src/Format.d.ts.map +1 -0
  29. package/dist/types/src/JsonSchema.d.ts +9 -0
  30. package/dist/types/src/JsonSchema.d.ts.map +1 -0
  31. package/dist/types/src/Key.d.ts +1 -0
  32. package/dist/types/src/Key.d.ts.map +1 -1
  33. package/dist/types/src/Obj.d.ts +121 -50
  34. package/dist/types/src/Obj.d.ts.map +1 -1
  35. package/dist/types/src/Ref.d.ts +10 -10
  36. package/dist/types/src/Ref.d.ts.map +1 -1
  37. package/dist/types/src/Relation.d.ts +18 -14
  38. package/dist/types/src/Relation.d.ts.map +1 -1
  39. package/dist/types/src/Tag.d.ts +17 -0
  40. package/dist/types/src/Tag.d.ts.map +1 -0
  41. package/dist/types/src/Type.d.ts +39 -50
  42. package/dist/types/src/Type.d.ts.map +1 -1
  43. package/dist/types/src/errors.d.ts +68 -0
  44. package/dist/types/src/errors.d.ts.map +1 -0
  45. package/dist/types/src/index.d.ts +9 -3
  46. package/dist/types/src/index.d.ts.map +1 -1
  47. package/dist/types/src/internal/annotations/annotations.d.ts +174 -0
  48. package/dist/types/src/internal/annotations/annotations.d.ts.map +1 -0
  49. package/dist/types/src/internal/annotations/annotations.test.d.ts +2 -0
  50. package/dist/types/src/internal/annotations/annotations.test.d.ts.map +1 -0
  51. package/dist/types/src/internal/annotations/index.d.ts +3 -0
  52. package/dist/types/src/internal/annotations/index.d.ts.map +1 -0
  53. package/dist/types/src/internal/annotations/util.d.ts +26 -0
  54. package/dist/types/src/internal/annotations/util.d.ts.map +1 -0
  55. package/dist/types/src/internal/entities/entity.d.ts +10 -0
  56. package/dist/types/src/internal/entities/entity.d.ts.map +1 -0
  57. package/dist/types/src/internal/entities/expando.d.ts +16 -0
  58. package/dist/types/src/internal/entities/expando.d.ts.map +1 -0
  59. package/dist/types/src/internal/entities/index.d.ts +6 -0
  60. package/dist/types/src/internal/entities/index.d.ts.map +1 -0
  61. package/dist/types/src/internal/entities/model.d.ts +70 -0
  62. package/dist/types/src/internal/entities/model.d.ts.map +1 -0
  63. package/dist/types/src/internal/entities/object.d.ts +11 -0
  64. package/dist/types/src/internal/entities/object.d.ts.map +1 -0
  65. package/dist/types/src/internal/entities/relation.d.ts +55 -0
  66. package/dist/types/src/internal/entities/relation.d.ts.map +1 -0
  67. package/dist/types/src/internal/entities/util.d.ts +2 -0
  68. package/dist/types/src/internal/entities/util.d.ts.map +1 -0
  69. package/dist/types/src/internal/formats/date.d.ts +63 -0
  70. package/dist/types/src/internal/formats/date.d.ts.map +1 -0
  71. package/dist/types/src/internal/formats/date.test.d.ts +2 -0
  72. package/dist/types/src/internal/formats/date.test.d.ts.map +1 -0
  73. package/dist/types/src/internal/formats/format.d.ts +32 -0
  74. package/dist/types/src/internal/formats/format.d.ts.map +1 -0
  75. package/dist/types/src/internal/formats/format.test.d.ts +2 -0
  76. package/dist/types/src/internal/formats/format.test.d.ts.map +1 -0
  77. package/dist/types/src/internal/formats/index.d.ts +8 -0
  78. package/dist/types/src/internal/formats/index.d.ts.map +1 -0
  79. package/dist/types/src/internal/formats/number.d.ts +31 -0
  80. package/dist/types/src/internal/formats/number.d.ts.map +1 -0
  81. package/dist/types/src/internal/formats/object.d.ts +35 -0
  82. package/dist/types/src/internal/formats/object.d.ts.map +1 -0
  83. package/dist/types/src/internal/formats/select.d.ts +11 -0
  84. package/dist/types/src/internal/formats/select.d.ts.map +1 -0
  85. package/dist/types/src/internal/formats/string.d.ts +38 -0
  86. package/dist/types/src/internal/formats/string.d.ts.map +1 -0
  87. package/dist/types/src/internal/formats/types.d.ts +68 -0
  88. package/dist/types/src/internal/formats/types.d.ts.map +1 -0
  89. package/dist/types/src/internal/index.d.ts +11 -0
  90. package/dist/types/src/internal/index.d.ts.map +1 -0
  91. package/dist/types/src/internal/json-schema/annotations.d.ts +19 -0
  92. package/dist/types/src/internal/json-schema/annotations.d.ts.map +1 -0
  93. package/dist/types/src/internal/json-schema/effect-schema.test.d.ts +2 -0
  94. package/dist/types/src/internal/json-schema/effect-schema.test.d.ts.map +1 -0
  95. package/dist/types/src/internal/json-schema/index.d.ts +5 -0
  96. package/dist/types/src/internal/json-schema/index.d.ts.map +1 -0
  97. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts +7 -0
  98. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +1 -0
  99. package/dist/types/src/internal/json-schema/json-schema-type.d.ts +250 -0
  100. package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +1 -0
  101. package/dist/types/src/internal/json-schema/json-schema.d.ts +29 -0
  102. package/dist/types/src/internal/json-schema/json-schema.d.ts.map +1 -0
  103. package/dist/types/src/internal/json-schema/json-schema.test.d.ts +2 -0
  104. package/dist/types/src/internal/json-schema/json-schema.test.d.ts.map +1 -0
  105. package/dist/types/src/internal/object/common.d.ts +18 -0
  106. package/dist/types/src/internal/object/common.d.ts.map +1 -0
  107. package/dist/types/src/internal/object/create-object.d.ts +39 -0
  108. package/dist/types/src/internal/object/create-object.d.ts.map +1 -0
  109. package/dist/types/src/internal/object/create-object.test.d.ts +2 -0
  110. package/dist/types/src/internal/object/create-object.test.d.ts.map +1 -0
  111. package/dist/types/src/internal/object/deleted.d.ts +6 -0
  112. package/dist/types/src/internal/object/deleted.d.ts.map +1 -0
  113. package/dist/types/src/internal/object/ids.d.ts +6 -0
  114. package/dist/types/src/internal/object/ids.d.ts.map +1 -0
  115. package/dist/types/src/internal/object/index.d.ts +8 -0
  116. package/dist/types/src/internal/object/index.d.ts.map +1 -0
  117. package/dist/types/src/internal/object/inspect.d.ts +2 -0
  118. package/dist/types/src/internal/object/inspect.d.ts.map +1 -0
  119. package/dist/types/src/internal/object/json-serializer.d.ts +31 -0
  120. package/dist/types/src/internal/object/json-serializer.d.ts.map +1 -0
  121. package/dist/types/src/internal/object/json-serializer.test.d.ts +2 -0
  122. package/dist/types/src/internal/object/json-serializer.test.d.ts.map +1 -0
  123. package/dist/types/src/internal/object/schema-validator.d.ts +15 -0
  124. package/dist/types/src/internal/object/schema-validator.d.ts.map +1 -0
  125. package/dist/types/src/internal/object/schema-validator.test.d.ts +2 -0
  126. package/dist/types/src/internal/object/schema-validator.test.d.ts.map +1 -0
  127. package/dist/types/src/internal/object/typed-object.d.ts +31 -0
  128. package/dist/types/src/internal/object/typed-object.d.ts.map +1 -0
  129. package/dist/types/src/internal/object/typed-object.test.d.ts +2 -0
  130. package/dist/types/src/internal/object/typed-object.test.d.ts.map +1 -0
  131. package/dist/types/src/internal/proxy/handler.test.d.ts +2 -0
  132. package/dist/types/src/internal/proxy/handler.test.d.ts.map +1 -0
  133. package/dist/types/src/internal/proxy/index.d.ts +3 -0
  134. package/dist/types/src/internal/proxy/index.d.ts.map +1 -0
  135. package/dist/types/src/internal/proxy/make-object.d.ts +16 -0
  136. package/dist/types/src/internal/proxy/make-object.d.ts.map +1 -0
  137. package/dist/types/src/internal/proxy/schema.test.d.ts +2 -0
  138. package/dist/types/src/internal/proxy/schema.test.d.ts.map +1 -0
  139. package/dist/types/src/internal/proxy/typed-handler.d.ts +44 -0
  140. package/dist/types/src/internal/proxy/typed-handler.d.ts.map +1 -0
  141. package/dist/types/src/internal/proxy/typed-handler.test.d.ts +2 -0
  142. package/dist/types/src/internal/proxy/typed-handler.test.d.ts.map +1 -0
  143. package/dist/types/src/internal/proxy/typed-object.test.d.ts +2 -0
  144. package/dist/types/src/internal/proxy/typed-object.test.d.ts.map +1 -0
  145. package/dist/types/src/internal/ref/index.d.ts +3 -0
  146. package/dist/types/src/internal/ref/index.d.ts.map +1 -0
  147. package/dist/types/src/internal/ref/ref-array.d.ts +21 -0
  148. package/dist/types/src/internal/ref/ref-array.d.ts.map +1 -0
  149. package/dist/types/src/internal/ref/ref.d.ts +209 -0
  150. package/dist/types/src/internal/ref/ref.d.ts.map +1 -0
  151. package/dist/types/src/internal/ref/ref.test.d.ts +2 -0
  152. package/dist/types/src/internal/ref/ref.test.d.ts.map +1 -0
  153. package/dist/types/src/internal/schema/compose.d.ts +6 -0
  154. package/dist/types/src/internal/schema/compose.d.ts.map +1 -0
  155. package/dist/types/src/internal/schema/compose.test.d.ts +2 -0
  156. package/dist/types/src/internal/schema/compose.test.d.ts.map +1 -0
  157. package/dist/types/src/internal/schema/echo-schema.d.ts +168 -0
  158. package/dist/types/src/internal/schema/echo-schema.d.ts.map +1 -0
  159. package/dist/types/src/internal/schema/index.d.ts +6 -0
  160. package/dist/types/src/internal/schema/index.d.ts.map +1 -0
  161. package/dist/types/src/internal/schema/manipulation.d.ts +10 -0
  162. package/dist/types/src/internal/schema/manipulation.d.ts.map +1 -0
  163. package/dist/types/src/internal/schema/persistent-schema.d.ts +18 -0
  164. package/dist/types/src/internal/schema/persistent-schema.d.ts.map +1 -0
  165. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts +18 -0
  166. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts.map +1 -0
  167. package/dist/types/src/internal/schema/snapshot.d.ts +6 -0
  168. package/dist/types/src/internal/schema/snapshot.d.ts.map +1 -0
  169. package/dist/types/src/internal/types/base.d.ts +37 -0
  170. package/dist/types/src/internal/types/base.d.ts.map +1 -0
  171. package/dist/types/src/internal/types/entity.d.ts +12 -0
  172. package/dist/types/src/internal/types/entity.d.ts.map +1 -0
  173. package/dist/types/src/internal/types/index.d.ts +6 -0
  174. package/dist/types/src/internal/types/index.d.ts.map +1 -0
  175. package/dist/types/src/internal/types/meta.d.ts +40 -0
  176. package/dist/types/src/internal/types/meta.d.ts.map +1 -0
  177. package/dist/types/src/internal/types/typename.d.ts +13 -0
  178. package/dist/types/src/internal/types/typename.d.ts.map +1 -0
  179. package/dist/types/src/internal/types/version.d.ts +15 -0
  180. package/dist/types/src/internal/types/version.d.ts.map +1 -0
  181. package/dist/types/src/query/filter.d.ts +167 -0
  182. package/dist/types/src/query/filter.d.ts.map +1 -0
  183. package/dist/types/src/query/index.d.ts +4 -1
  184. package/dist/types/src/query/index.d.ts.map +1 -1
  185. package/dist/types/src/query/order.d.ts +12 -0
  186. package/dist/types/src/query/order.d.ts.map +1 -0
  187. package/dist/types/src/query/query.d.ts +112 -0
  188. package/dist/types/src/query/query.d.ts.map +1 -0
  189. package/dist/types/src/query/query.test.d.ts +2 -0
  190. package/dist/types/src/query/query.test.d.ts.map +1 -0
  191. package/dist/types/src/query/testing.d.ts +51 -0
  192. package/dist/types/src/query/testing.d.ts.map +1 -0
  193. package/dist/types/src/query/types.d.ts +17 -0
  194. package/dist/types/src/query/types.d.ts.map +1 -0
  195. package/dist/types/src/query/util.d.ts +8 -0
  196. package/dist/types/src/query/util.d.ts.map +1 -0
  197. package/dist/types/src/{test → testing}/api.test.d.ts.map +1 -1
  198. package/dist/types/src/testing/index.d.ts +3 -1
  199. package/dist/types/src/testing/index.d.ts.map +1 -1
  200. package/dist/types/src/testing/test-data.d.ts +18 -0
  201. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  202. package/dist/types/src/testing/test-schema.d.ts +337 -0
  203. package/dist/types/src/testing/test-schema.d.ts.map +1 -0
  204. package/dist/types/src/testing/util.d.ts +16 -0
  205. package/dist/types/src/testing/util.d.ts.map +1 -0
  206. package/dist/types/tsconfig.tsbuildinfo +1 -1
  207. package/package.json +49 -29
  208. package/src/Annotation.ts +17 -0
  209. package/src/Database.ts +189 -0
  210. package/src/Entity.ts +51 -0
  211. package/src/Format.ts +11 -0
  212. package/src/JsonSchema.ts +16 -0
  213. package/src/Key.ts +3 -0
  214. package/src/Obj.ts +353 -107
  215. package/src/Ref.ts +9 -10
  216. package/src/Relation.ts +68 -43
  217. package/src/Tag.ts +40 -0
  218. package/src/Type.ts +97 -85
  219. package/src/errors.ts +18 -0
  220. package/src/index.ts +13 -4
  221. package/src/internal/README.md +83 -0
  222. package/src/internal/annotations/annotations.test.ts +96 -0
  223. package/src/internal/annotations/annotations.ts +463 -0
  224. package/src/internal/annotations/index.ts +6 -0
  225. package/src/internal/annotations/util.ts +70 -0
  226. package/src/internal/entities/entity.ts +109 -0
  227. package/src/internal/entities/expando.ts +23 -0
  228. package/src/internal/entities/index.ts +9 -0
  229. package/src/internal/entities/model.ts +129 -0
  230. package/src/internal/entities/object.ts +45 -0
  231. package/src/internal/entities/relation.ts +155 -0
  232. package/src/internal/entities/util.ts +33 -0
  233. package/src/internal/formats/date.test.ts +56 -0
  234. package/src/internal/formats/date.ts +217 -0
  235. package/src/internal/formats/format.test.ts +77 -0
  236. package/src/internal/formats/format.ts +55 -0
  237. package/src/internal/formats/index.ts +12 -0
  238. package/src/internal/formats/number.ts +89 -0
  239. package/src/internal/formats/object.ts +80 -0
  240. package/src/internal/formats/select.ts +16 -0
  241. package/src/internal/formats/string.ts +76 -0
  242. package/src/internal/formats/types.ts +180 -0
  243. package/src/internal/index.ts +38 -0
  244. package/src/internal/json-schema/annotations.ts +50 -0
  245. package/src/internal/json-schema/effect-schema.test.ts +143 -0
  246. package/src/internal/json-schema/index.ts +8 -0
  247. package/src/internal/json-schema/json-schema-normalize.ts +109 -0
  248. package/src/internal/json-schema/json-schema-type.ts +404 -0
  249. package/src/internal/json-schema/json-schema.test.ts +859 -0
  250. package/src/internal/json-schema/json-schema.ts +528 -0
  251. package/src/internal/object/common.ts +75 -0
  252. package/src/internal/object/create-object.test.ts +116 -0
  253. package/src/internal/object/create-object.ts +95 -0
  254. package/src/internal/object/deleted.ts +19 -0
  255. package/src/internal/object/ids.ts +12 -0
  256. package/src/internal/object/index.ts +11 -0
  257. package/src/internal/object/inspect.ts +46 -0
  258. package/src/internal/object/json-serializer.test.ts +94 -0
  259. package/src/internal/object/json-serializer.ts +230 -0
  260. package/src/internal/object/schema-validator.test.ts +186 -0
  261. package/src/internal/object/schema-validator.ts +242 -0
  262. package/src/internal/object/typed-object.test.ts +34 -0
  263. package/src/internal/object/typed-object.ts +94 -0
  264. package/src/internal/proxy/handler.test.ts +173 -0
  265. package/src/internal/proxy/index.ts +6 -0
  266. package/src/internal/proxy/make-object.ts +113 -0
  267. package/src/internal/proxy/schema.test.ts +137 -0
  268. package/src/internal/proxy/typed-handler.test.ts +102 -0
  269. package/src/internal/proxy/typed-handler.ts +233 -0
  270. package/src/internal/proxy/typed-object.test.ts +105 -0
  271. package/src/internal/ref/index.ts +6 -0
  272. package/src/internal/ref/ref-array.ts +39 -0
  273. package/src/internal/ref/ref.test.ts +101 -0
  274. package/src/internal/ref/ref.ts +525 -0
  275. package/src/internal/schema/compose.test.ts +42 -0
  276. package/src/internal/schema/compose.ts +37 -0
  277. package/src/internal/schema/echo-schema.ts +385 -0
  278. package/src/internal/schema/index.ts +9 -0
  279. package/src/internal/schema/manipulation.ts +92 -0
  280. package/src/internal/schema/persistent-schema.ts +28 -0
  281. package/src/internal/schema/runtime-schema-registry.ts +78 -0
  282. package/src/internal/schema/snapshot.ts +25 -0
  283. package/src/internal/types/base.ts +58 -0
  284. package/src/internal/types/entity.ts +23 -0
  285. package/src/internal/types/index.ts +9 -0
  286. package/src/internal/types/meta.ts +76 -0
  287. package/src/internal/types/typename.ts +45 -0
  288. package/src/internal/types/version.ts +20 -0
  289. package/src/query/filter.ts +455 -0
  290. package/src/query/index.ts +5 -1
  291. package/src/query/order.ts +34 -0
  292. package/src/query/query.test.ts +334 -0
  293. package/src/query/query.ts +303 -0
  294. package/src/query/testing.ts +64 -0
  295. package/src/query/types.ts +23 -0
  296. package/src/query/util.ts +25 -0
  297. package/src/testing/api.test.ts +100 -0
  298. package/src/testing/index.ts +3 -1
  299. package/src/testing/test-data.ts +130 -0
  300. package/src/testing/test-schema.ts +213 -0
  301. package/src/testing/util.ts +78 -0
  302. package/dist/lib/browser/chunk-2KNTYMIW.mjs +0 -697
  303. package/dist/lib/browser/chunk-2KNTYMIW.mjs.map +0 -7
  304. package/dist/lib/node-esm/chunk-EXNNC62J.mjs +0 -697
  305. package/dist/lib/node-esm/chunk-EXNNC62J.mjs.map +0 -7
  306. package/dist/types/src/experimental/database.d.ts +0 -8
  307. package/dist/types/src/experimental/database.d.ts.map +0 -1
  308. package/dist/types/src/experimental/index.d.ts +0 -1
  309. package/dist/types/src/experimental/index.d.ts.map +0 -1
  310. package/dist/types/src/experimental/queue.d.ts +0 -8
  311. package/dist/types/src/experimental/queue.d.ts.map +0 -1
  312. package/dist/types/src/experimental/space.d.ts +0 -8
  313. package/dist/types/src/experimental/space.d.ts.map +0 -1
  314. package/dist/types/src/query/dsl.d.ts +0 -218
  315. package/dist/types/src/query/dsl.d.ts.map +0 -1
  316. package/dist/types/src/query/dsl.test.d.ts +0 -2
  317. package/dist/types/src/query/dsl.test.d.ts.map +0 -1
  318. package/dist/types/src/testing/types.d.ts +0 -113
  319. package/dist/types/src/testing/types.d.ts.map +0 -1
  320. package/src/experimental/database.ts +0 -11
  321. package/src/experimental/index.ts +0 -7
  322. package/src/experimental/queue.ts +0 -11
  323. package/src/experimental/space.ts +0 -11
  324. package/src/query/dsl.test.ts +0 -324
  325. package/src/query/dsl.ts +0 -646
  326. package/src/test/api.test.ts +0 -173
  327. package/src/testing/types.ts +0 -91
  328. /package/dist/types/src/{test → testing}/api.test.d.ts +0 -0
@@ -1,697 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
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/Key.ts
9
- var Key_exports = {};
10
- __export(Key_exports, {
11
- ObjectId: () => ObjectId,
12
- SpaceId: () => SpaceId
13
- });
14
- import { SpaceId, ObjectId } from "@dxos/keys";
15
-
16
- // src/Obj.ts
17
- var Obj_exports = {};
18
- __export(Obj_exports, {
19
- Meta: () => Meta,
20
- clone: () => clone,
21
- deleteKeys: () => deleteKeys,
22
- fromJSON: () => fromJSON,
23
- getDXN: () => getDXN,
24
- getKeys: () => getKeys,
25
- getLabel: () => getLabel2,
26
- getMeta: () => getMeta2,
27
- getSchema: () => getSchema2,
28
- getTypeDXN: () => getTypeDXN,
29
- getTypename: () => getTypename,
30
- instanceOf: () => instanceOf,
31
- isDeleted: () => isDeleted2,
32
- isObject: () => isObject,
33
- make: () => make,
34
- setLabel: () => setLabel2,
35
- toJSON: () => toJSON
36
- });
37
- import { Schema } from "effect";
38
- import { dual } from "effect/Function";
39
- import * as EchoSchema from "@dxos/echo-schema";
40
- import { assertArgument, invariant } from "@dxos/invariant";
41
- import { live } from "@dxos/live-object";
42
- import { assumeType, deepMapValues } from "@dxos/util";
43
- var __dxlog_file = "/__w/dxos/dxos/packages/core/echo/echo/src/Obj.ts";
44
- var Meta = EchoSchema.MetaId;
45
- var make = (schema, props, meta) => {
46
- assertArgument(EchoSchema.getTypeAnnotation(schema)?.kind === EchoSchema.EntityKind.Object, "Expected an object schema");
47
- if (props[EchoSchema.MetaId] != null) {
48
- meta = props[EchoSchema.MetaId];
49
- delete props[EchoSchema.MetaId];
50
- }
51
- return live(schema, props, meta);
52
- };
53
- var isObject = (obj) => {
54
- assumeType(obj);
55
- return typeof obj === "object" && obj !== null && obj[EchoSchema.EntityKindId] === EchoSchema.EntityKind.Object;
56
- };
57
- var instanceOf = (...args) => {
58
- if (args.length === 1) {
59
- return (obj) => EchoSchema.isInstanceOf(args[0], obj);
60
- }
61
- return EchoSchema.isInstanceOf(args[0], args[1]);
62
- };
63
- var getSchema2 = EchoSchema.getSchema;
64
- var getDXN = (obj) => {
65
- assertArgument(!Schema.isSchema(obj), "Object should not be a schema.");
66
- const dxn = EchoSchema.getObjectDXN(obj);
67
- invariant(dxn != null, "Invalid object.", {
68
- F: __dxlog_file,
69
- L: 112,
70
- S: void 0,
71
- A: [
72
- "dxn != null",
73
- "'Invalid object.'"
74
- ]
75
- });
76
- return dxn;
77
- };
78
- var getTypeDXN = EchoSchema.getType;
79
- var getTypename = (obj) => {
80
- const schema = getSchema2(obj);
81
- if (schema == null) {
82
- return EchoSchema.getType(obj)?.asTypeDXN()?.type;
83
- }
84
- return EchoSchema.getSchemaTypename(schema);
85
- };
86
- var getMeta2 = (obj) => {
87
- const meta = EchoSchema.getMeta(obj);
88
- invariant(meta != null, "Invalid object.", {
89
- F: __dxlog_file,
90
- L: 140,
91
- S: void 0,
92
- A: [
93
- "meta != null",
94
- "'Invalid object.'"
95
- ]
96
- });
97
- return meta;
98
- };
99
- var getKeys = dual(2, (obj, source) => {
100
- const meta = EchoSchema.getMeta(obj);
101
- invariant(meta != null, "Invalid object.", {
102
- F: __dxlog_file,
103
- L: 152,
104
- S: void 0,
105
- A: [
106
- "meta != null",
107
- "'Invalid object.'"
108
- ]
109
- });
110
- return meta.keys.filter((key) => key.source === source);
111
- });
112
- var deleteKeys = (obj, source) => {
113
- const meta = EchoSchema.getMeta(obj);
114
- for (let i = 0; i < meta.keys.length; i++) {
115
- if (meta.keys[i].source === source) {
116
- meta.keys.splice(i, 1);
117
- i--;
118
- }
119
- }
120
- };
121
- var isDeleted2 = (obj) => {
122
- const deleted = EchoSchema.isDeleted(obj);
123
- invariant(typeof deleted === "boolean", "Invalid object.", {
124
- F: __dxlog_file,
125
- L: 174,
126
- S: void 0,
127
- A: [
128
- "typeof deleted === 'boolean'",
129
- "'Invalid object.'"
130
- ]
131
- });
132
- return deleted;
133
- };
134
- var getLabel2 = (obj) => {
135
- const schema = getSchema2(obj);
136
- if (schema != null) {
137
- return EchoSchema.getLabel(schema, obj);
138
- }
139
- };
140
- var setLabel2 = (obj, label) => {
141
- const schema = getSchema2(obj);
142
- if (schema != null) {
143
- EchoSchema.setLabel(schema, obj, label);
144
- }
145
- };
146
- var toJSON = (obj) => EchoSchema.objectToJSON(obj);
147
- var fromJSON = EchoSchema.objectFromJSON;
148
- var clone = (obj, opts) => {
149
- const { id, ...data } = obj;
150
- const schema = getSchema2(obj);
151
- invariant(schema != null, "Object should have a schema", {
152
- F: __dxlog_file,
153
- L: 234,
154
- S: void 0,
155
- A: [
156
- "schema != null",
157
- "'Object should have a schema'"
158
- ]
159
- });
160
- const props = deepMapValues(data, (value, recurse) => {
161
- if (EchoSchema.Ref.isRef(value)) {
162
- return value;
163
- }
164
- return recurse(value);
165
- });
166
- if (opts?.retainId) {
167
- props.id = id;
168
- }
169
- const meta = getMeta2(obj);
170
- props[EchoSchema.MetaId] = deepMapValues(meta, (value, recurse) => {
171
- if (EchoSchema.Ref.isRef(value)) {
172
- return value;
173
- }
174
- return recurse(value);
175
- });
176
- return make(schema, props);
177
- };
178
-
179
- // src/Ref.ts
180
- var Ref_exports = {};
181
- __export(Ref_exports, {
182
- Array: () => Array2,
183
- fromDXN: () => fromDXN,
184
- isRef: () => isRef,
185
- make: () => make2
186
- });
187
- import * as EchoSchema2 from "@dxos/echo-schema";
188
- var Array2 = EchoSchema2.RefArray;
189
- var isRef = EchoSchema2.Ref.isRef;
190
- var make2 = EchoSchema2.Ref.make;
191
- var fromDXN = EchoSchema2.Ref.fromDXN;
192
-
193
- // src/Relation.ts
194
- var Relation_exports = {};
195
- __export(Relation_exports, {
196
- Source: () => Source,
197
- Target: () => Target,
198
- getSource: () => getSource,
199
- getSourceDXN: () => getSourceDXN,
200
- getTarget: () => getTarget,
201
- getTargetDXN: () => getTargetDXN,
202
- isRelation: () => isRelation,
203
- make: () => make3
204
- });
205
- import { raise } from "@dxos/debug";
206
- import * as EchoSchema3 from "@dxos/echo-schema";
207
- import { assertArgument as assertArgument2, invariant as invariant2 } from "@dxos/invariant";
208
- import { DXN } from "@dxos/keys";
209
- import { live as live2 } from "@dxos/live-object";
210
- import { assumeType as assumeType2 } from "@dxos/util";
211
- var __dxlog_file2 = "/__w/dxos/dxos/packages/core/echo/echo/src/Relation.ts";
212
- var Source = EchoSchema3.RelationSourceId;
213
- var Target = EchoSchema3.RelationTargetId;
214
- var make3 = (schema, props, meta) => {
215
- assertArgument2(EchoSchema3.getTypeAnnotation(schema)?.kind === EchoSchema3.EntityKind.Relation, "Expected a relation schema");
216
- if (props[EchoSchema3.MetaId] != null) {
217
- meta = props[EchoSchema3.MetaId];
218
- delete props[EchoSchema3.MetaId];
219
- }
220
- const sourceDXN = EchoSchema3.getObjectDXN(props[Source]) ?? raise(new Error("Unresolved relation source"));
221
- const targetDXN = EchoSchema3.getObjectDXN(props[Target]) ?? raise(new Error("Unresolved relation target"));
222
- props[EchoSchema3.RelationSourceDXNId] = sourceDXN;
223
- props[EchoSchema3.RelationTargetDXNId] = targetDXN;
224
- return live2(schema, props, meta);
225
- };
226
- var isRelation = (value) => {
227
- if (typeof value !== "object" || value === null) {
228
- return false;
229
- }
230
- if (EchoSchema3.ATTR_RELATION_SOURCE in value || EchoSchema3.ATTR_RELATION_TARGET in value) {
231
- return true;
232
- }
233
- const kind = value[EchoSchema3.EntityKindId];
234
- return kind === EchoSchema3.EntityKind.Relation;
235
- };
236
- var getSourceDXN = (value) => {
237
- assertArgument2(isRelation(value), "Expected a relation");
238
- assumeType2(value);
239
- const dxn = value[EchoSchema3.RelationSourceDXNId];
240
- invariant2(dxn instanceof DXN, void 0, {
241
- F: __dxlog_file2,
242
- L: 99,
243
- S: void 0,
244
- A: [
245
- "dxn instanceof DXN",
246
- ""
247
- ]
248
- });
249
- return dxn;
250
- };
251
- var getTargetDXN = (value) => {
252
- assertArgument2(isRelation(value), "Expected a relation");
253
- assumeType2(value);
254
- const dxn = value[EchoSchema3.RelationTargetDXNId];
255
- invariant2(dxn instanceof DXN, void 0, {
256
- F: __dxlog_file2,
257
- L: 111,
258
- S: void 0,
259
- A: [
260
- "dxn instanceof DXN",
261
- ""
262
- ]
263
- });
264
- return dxn;
265
- };
266
- var getSource = (relation) => {
267
- assertArgument2(isRelation(relation), "Expected a relation");
268
- assumeType2(relation);
269
- const obj = relation[EchoSchema3.RelationSourceId];
270
- invariant2(obj !== void 0, `Invalid source: ${relation.id}`, {
271
- F: __dxlog_file2,
272
- L: 123,
273
- S: void 0,
274
- A: [
275
- "obj !== undefined",
276
- "`Invalid source: ${relation.id}`"
277
- ]
278
- });
279
- return obj;
280
- };
281
- var getTarget = (relation) => {
282
- assertArgument2(isRelation(relation), "Expected a relation");
283
- assumeType2(relation);
284
- const obj = relation[EchoSchema3.RelationTargetId];
285
- invariant2(obj !== void 0, `Invalid target: ${relation.id}`, {
286
- F: __dxlog_file2,
287
- L: 135,
288
- S: void 0,
289
- A: [
290
- "obj !== undefined",
291
- "`Invalid target: ${relation.id}`"
292
- ]
293
- });
294
- return obj;
295
- };
296
-
297
- // src/Type.ts
298
- var Type_exports = {};
299
- __export(Type_exports, {
300
- DXN: () => DXN2,
301
- Expando: () => Expando2,
302
- Format: () => Format,
303
- JsonSchema: () => JsonSchemaType,
304
- Kind: () => Kind,
305
- KindId: () => KindId,
306
- Obj: () => Obj,
307
- ObjectId: () => ObjectId2,
308
- Ref: () => Ref4,
309
- Relation: () => Relation,
310
- SpaceId: () => SpaceId2,
311
- getDXN: () => getDXN2,
312
- getMeta: () => getMeta3,
313
- getTypename: () => getTypename2,
314
- getVersion: () => getVersion,
315
- isMutable: () => isMutable2,
316
- toEffectSchema: () => toEffectSchema,
317
- toJsonSchema: () => toJsonSchema
318
- });
319
- import * as EchoSchema4 from "@dxos/echo-schema";
320
- import { invariant as invariant3 } from "@dxos/invariant";
321
- import { SpaceId as SpaceId2, ObjectId as ObjectId2, DXN as DXN2 } from "@dxos/keys";
322
- import { Format, JsonSchemaType, toEffectSchema, toJsonSchema } from "@dxos/echo-schema";
323
- var __dxlog_file3 = "/__w/dxos/dxos/packages/core/echo/echo/src/Type.ts";
324
- var KindId = EchoSchema4.EntityKindId;
325
- var Kind = EchoSchema4.EntityKind;
326
- var Obj = EchoSchema4.EchoObject;
327
- var Expando2 = EchoSchema4.Expando;
328
- var Relation = EchoSchema4.EchoRelation;
329
- var Ref4 = EchoSchema4.Ref;
330
- var getDXN2 = (schema) => {
331
- return EchoSchema4.getSchemaDXN(schema);
332
- };
333
- var getTypename2 = (schema) => {
334
- const typename = EchoSchema4.getSchemaTypename(schema);
335
- invariant3(typeof typename === "string" && !typename.startsWith("dxn:"), "Invalid typename", {
336
- F: __dxlog_file3,
337
- L: 212,
338
- S: void 0,
339
- A: [
340
- "typeof typename === 'string' && !typename.startsWith('dxn:')",
341
- "'Invalid typename'"
342
- ]
343
- });
344
- return typename;
345
- };
346
- var getVersion = (schema) => {
347
- const version = EchoSchema4.getSchemaVersion(schema);
348
- invariant3(typeof version === "string" && version.match(/^\d+\.\d+\.\d+$/), "Invalid version", {
349
- F: __dxlog_file3,
350
- L: 222,
351
- S: void 0,
352
- A: [
353
- "typeof version === 'string' && version.match(/^\\d+\\.\\d+\\.\\d+$/)",
354
- "'Invalid version'"
355
- ]
356
- });
357
- return version;
358
- };
359
- var isMutable2 = EchoSchema4.isMutable;
360
- var getMeta3 = (schema) => {
361
- return EchoSchema4.getTypeAnnotation(schema);
362
- };
363
-
364
- // src/index.ts
365
- import { DXN as DXN4 } from "@dxos/keys";
366
-
367
- // src/query/dsl.ts
368
- import { Schema as Schema2 } from "effect";
369
- import { raise as raise2 } from "@dxos/debug";
370
- import { getTypeReference } from "@dxos/echo-schema";
371
- import { assertArgument as assertArgument3 } from "@dxos/invariant";
372
- import { DXN as DXN3, ObjectId as ObjectId3 } from "@dxos/keys";
373
- function _define_property(obj, key, value) {
374
- if (key in obj) {
375
- Object.defineProperty(obj, key, {
376
- value,
377
- enumerable: true,
378
- configurable: true,
379
- writable: true
380
- });
381
- } else {
382
- obj[key] = value;
383
- }
384
- return obj;
385
- }
386
- var FilterClass = class _FilterClass {
387
- static is(value) {
388
- return typeof value === "object" && value !== null && "~Filter" in value;
389
- }
390
- static everything() {
391
- return new _FilterClass({
392
- type: "object",
393
- typename: null,
394
- props: {}
395
- });
396
- }
397
- static nothing() {
398
- return new _FilterClass({
399
- type: "not",
400
- filter: {
401
- type: "object",
402
- typename: null,
403
- props: {}
404
- }
405
- });
406
- }
407
- static relation() {
408
- return new _FilterClass({
409
- type: "object",
410
- typename: null,
411
- props: {}
412
- });
413
- }
414
- static ids(...ids) {
415
- assertArgument3(ids.every((id) => ObjectId3.isValid(id)), "ids must be valid");
416
- if (ids.length === 0) {
417
- return Filter.nothing();
418
- }
419
- return new _FilterClass({
420
- type: "object",
421
- typename: null,
422
- id: ids,
423
- props: {}
424
- });
425
- }
426
- static type(schema, props) {
427
- const dxn = getTypeReference(schema)?.toDXN() ?? raise2(new TypeError("Schema has no DXN"));
428
- return new _FilterClass({
429
- type: "object",
430
- typename: dxn.toString(),
431
- ...propsFilterToAst(props ?? {})
432
- });
433
- }
434
- static typename(typename) {
435
- assertArgument3(!typename.startsWith("dxn:"), "Typename must no be qualified");
436
- return new _FilterClass({
437
- type: "object",
438
- typename: DXN3.fromTypename(typename).toString(),
439
- props: {}
440
- });
441
- }
442
- static typeDXN(dxn) {
443
- return new _FilterClass({
444
- type: "object",
445
- typename: dxn.toString(),
446
- props: {}
447
- });
448
- }
449
- /**
450
- * @internal
451
- */
452
- static _props(props) {
453
- return new _FilterClass({
454
- type: "object",
455
- typename: null,
456
- ...propsFilterToAst(props)
457
- });
458
- }
459
- static text(text, options) {
460
- return new _FilterClass({
461
- type: "text-search",
462
- text,
463
- searchKind: options?.type
464
- });
465
- }
466
- static foreignKeys(schema, keys) {
467
- const dxn = getTypeReference(schema)?.toDXN() ?? raise2(new TypeError("Schema has no DXN"));
468
- return new _FilterClass({
469
- type: "object",
470
- typename: dxn.toString(),
471
- props: {},
472
- foreignKeys: keys
473
- });
474
- }
475
- static eq(value) {
476
- if (!isRef(value) && typeof value === "object" && value !== null) {
477
- throw new TypeError("Cannot use object as a value for eq filter");
478
- }
479
- return new _FilterClass({
480
- type: "compare",
481
- operator: "eq",
482
- value: isRef(value) ? value.noInline().encode() : value
483
- });
484
- }
485
- static neq(value) {
486
- return new _FilterClass({
487
- type: "compare",
488
- operator: "neq",
489
- value
490
- });
491
- }
492
- static gt(value) {
493
- return new _FilterClass({
494
- type: "compare",
495
- operator: "gt",
496
- value
497
- });
498
- }
499
- static gte(value) {
500
- return new _FilterClass({
501
- type: "compare",
502
- operator: "gte",
503
- value
504
- });
505
- }
506
- static lt(value) {
507
- return new _FilterClass({
508
- type: "compare",
509
- operator: "lt",
510
- value
511
- });
512
- }
513
- static lte(value) {
514
- return new _FilterClass({
515
- type: "compare",
516
- operator: "lte",
517
- value
518
- });
519
- }
520
- static in(...values) {
521
- return new _FilterClass({
522
- type: "in",
523
- values
524
- });
525
- }
526
- static between(from, to) {
527
- return new _FilterClass({
528
- type: "range",
529
- from,
530
- to
531
- });
532
- }
533
- static not(filter) {
534
- return new _FilterClass({
535
- type: "not",
536
- filter: filter.ast
537
- });
538
- }
539
- static and(...filters) {
540
- return new _FilterClass({
541
- type: "and",
542
- filters: filters.map((f) => f.ast)
543
- });
544
- }
545
- static or(...filters) {
546
- return new _FilterClass({
547
- type: "or",
548
- filters: filters.map((f) => f.ast)
549
- });
550
- }
551
- constructor(ast) {
552
- _define_property(this, "ast", void 0);
553
- _define_property(this, "~Filter", void 0);
554
- this.ast = ast;
555
- this["~Filter"] = _FilterClass.variance;
556
- }
557
- };
558
- _define_property(FilterClass, "variance", {});
559
- var Filter = FilterClass;
560
- var propsFilterToAst = (predicates) => {
561
- let idFilter;
562
- if ("id" in predicates) {
563
- assertArgument3(typeof predicates.id === "string" || Array.isArray(predicates.id), "invalid id filter");
564
- idFilter = typeof predicates.id === "string" ? [
565
- predicates.id
566
- ] : predicates.id;
567
- Schema2.Array(ObjectId3).pipe(Schema2.validateSync)(idFilter);
568
- }
569
- return {
570
- id: idFilter,
571
- props: Object.fromEntries(Object.entries(predicates).filter(([prop, _value]) => prop !== "id").map(([prop, predicate]) => [
572
- prop,
573
- Filter.is(predicate) ? predicate.ast : Filter.eq(predicate).ast
574
- ]))
575
- };
576
- };
577
- var QueryClass = class _QueryClass {
578
- static is(value) {
579
- return typeof value === "object" && value !== null && "~Query" in value;
580
- }
581
- static select(filter) {
582
- return new _QueryClass({
583
- type: "select",
584
- filter: filter.ast
585
- });
586
- }
587
- static type(schema, predicates) {
588
- return new _QueryClass({
589
- type: "select",
590
- filter: FilterClass.type(schema, predicates).ast
591
- });
592
- }
593
- static all(...queries) {
594
- if (queries.length === 0) {
595
- throw new TypeError("Query.all combines results of multiple queries, to query all objects use Query.select(Filter.everything())");
596
- }
597
- return new _QueryClass({
598
- type: "union",
599
- queries: queries.map((q) => q.ast)
600
- });
601
- }
602
- static without(source, exclude) {
603
- return new _QueryClass({
604
- type: "set-difference",
605
- source: source.ast,
606
- exclude: exclude.ast
607
- });
608
- }
609
- select(filter) {
610
- if (Filter.is(filter)) {
611
- return new _QueryClass({
612
- type: "filter",
613
- selection: this.ast,
614
- filter: filter.ast
615
- });
616
- } else {
617
- return new _QueryClass({
618
- type: "filter",
619
- selection: this.ast,
620
- filter: FilterClass._props(filter).ast
621
- });
622
- }
623
- }
624
- reference(key) {
625
- return new _QueryClass({
626
- type: "reference-traversal",
627
- anchor: this.ast,
628
- property: key
629
- });
630
- }
631
- referencedBy(target, key) {
632
- const dxn = getTypeReference(target)?.toDXN() ?? raise2(new TypeError("Target schema has no DXN"));
633
- return new _QueryClass({
634
- type: "incoming-references",
635
- anchor: this.ast,
636
- property: key,
637
- typename: dxn.toString()
638
- });
639
- }
640
- sourceOf(relation, predicates) {
641
- return new _QueryClass({
642
- type: "relation",
643
- anchor: this.ast,
644
- direction: "outgoing",
645
- filter: FilterClass.type(relation, predicates).ast
646
- });
647
- }
648
- targetOf(relation, predicates) {
649
- return new _QueryClass({
650
- type: "relation",
651
- anchor: this.ast,
652
- direction: "incoming",
653
- filter: FilterClass.type(relation, predicates).ast
654
- });
655
- }
656
- source() {
657
- return new _QueryClass({
658
- type: "relation-traversal",
659
- anchor: this.ast,
660
- direction: "source"
661
- });
662
- }
663
- target() {
664
- return new _QueryClass({
665
- type: "relation-traversal",
666
- anchor: this.ast,
667
- direction: "target"
668
- });
669
- }
670
- options(options) {
671
- return new _QueryClass({
672
- type: "options",
673
- query: this.ast,
674
- options
675
- });
676
- }
677
- constructor(ast) {
678
- _define_property(this, "ast", void 0);
679
- _define_property(this, "~Query", void 0);
680
- this.ast = ast;
681
- this["~Query"] = _QueryClass.variance;
682
- }
683
- };
684
- _define_property(QueryClass, "variance", {});
685
- var Query = QueryClass;
686
-
687
- export {
688
- Key_exports,
689
- Obj_exports,
690
- Ref_exports,
691
- Relation_exports,
692
- Type_exports,
693
- Filter,
694
- Query,
695
- DXN4 as DXN
696
- };
697
- //# sourceMappingURL=chunk-EXNNC62J.mjs.map