@dxos/echo 0.8.4-main.5ad4a44 → 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 (343) hide show
  1. package/dist/lib/browser/{chunk-MWLA34S5.mjs → chunk-7GH6RXJ3.mjs} +2513 -2673
  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 +21 -19
  6. package/dist/lib/browser/internal/index.mjs +55 -45
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/testing/index.mjs +247 -217
  9. package/dist/lib/browser/testing/index.mjs.map +4 -4
  10. package/dist/lib/node-esm/chunk-JE5RXM2I.mjs +1111 -0
  11. package/dist/lib/node-esm/chunk-JE5RXM2I.mjs.map +7 -0
  12. package/dist/lib/node-esm/{chunk-YTNLFBIK.mjs → chunk-M4B6BMD2.mjs} +2513 -2673
  13. package/dist/lib/node-esm/chunk-M4B6BMD2.mjs.map +7 -0
  14. package/dist/lib/node-esm/index.mjs +21 -19
  15. package/dist/lib/node-esm/internal/index.mjs +55 -45
  16. package/dist/lib/node-esm/meta.json +1 -1
  17. package/dist/lib/node-esm/testing/index.mjs +247 -217
  18. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  19. package/dist/types/src/Annotation.d.ts +2 -0
  20. package/dist/types/src/Annotation.d.ts.map +1 -0
  21. package/dist/types/src/Database.d.ts +137 -0
  22. package/dist/types/src/Database.d.ts.map +1 -0
  23. package/dist/types/src/Entity.d.ts +36 -0
  24. package/dist/types/src/Entity.d.ts.map +1 -0
  25. package/dist/types/src/Format.d.ts +4 -0
  26. package/dist/types/src/Format.d.ts.map +1 -0
  27. package/dist/types/src/JsonSchema.d.ts +9 -0
  28. package/dist/types/src/JsonSchema.d.ts.map +1 -0
  29. package/dist/types/src/Key.d.ts +1 -0
  30. package/dist/types/src/Key.d.ts.map +1 -1
  31. package/dist/types/src/Obj.d.ts +85 -62
  32. package/dist/types/src/Obj.d.ts.map +1 -1
  33. package/dist/types/src/Ref.d.ts +10 -10
  34. package/dist/types/src/Ref.d.ts.map +1 -1
  35. package/dist/types/src/Relation.d.ts +14 -11
  36. package/dist/types/src/Relation.d.ts.map +1 -1
  37. package/dist/types/src/Tag.d.ts +17 -0
  38. package/dist/types/src/Tag.d.ts.map +1 -0
  39. package/dist/types/src/Type.d.ts +39 -49
  40. package/dist/types/src/Type.d.ts.map +1 -1
  41. package/dist/types/src/errors.d.ts +14 -18
  42. package/dist/types/src/errors.d.ts.map +1 -1
  43. package/dist/types/src/index.d.ts +7 -3
  44. package/dist/types/src/index.d.ts.map +1 -1
  45. package/dist/types/src/internal/annotations/annotations.d.ts +174 -0
  46. package/dist/types/src/internal/annotations/annotations.d.ts.map +1 -0
  47. package/dist/types/src/internal/annotations/annotations.test.d.ts.map +1 -0
  48. package/dist/types/src/internal/annotations/index.d.ts +3 -0
  49. package/dist/types/src/internal/annotations/index.d.ts.map +1 -0
  50. package/dist/types/src/internal/annotations/util.d.ts +26 -0
  51. package/dist/types/src/internal/annotations/util.d.ts.map +1 -0
  52. package/dist/types/src/internal/entities/entity.d.ts +10 -0
  53. package/dist/types/src/internal/entities/entity.d.ts.map +1 -0
  54. package/dist/types/src/internal/{object → entities}/expando.d.ts +3 -1
  55. package/dist/types/src/internal/entities/expando.d.ts.map +1 -0
  56. package/dist/types/src/internal/entities/index.d.ts +6 -0
  57. package/dist/types/src/internal/entities/index.d.ts.map +1 -0
  58. package/dist/types/src/internal/entities/model.d.ts +70 -0
  59. package/dist/types/src/internal/entities/model.d.ts.map +1 -0
  60. package/dist/types/src/internal/entities/object.d.ts +11 -0
  61. package/dist/types/src/internal/entities/object.d.ts.map +1 -0
  62. package/dist/types/src/internal/entities/relation.d.ts +55 -0
  63. package/dist/types/src/internal/entities/relation.d.ts.map +1 -0
  64. package/dist/types/src/internal/entities/util.d.ts +2 -0
  65. package/dist/types/src/internal/entities/util.d.ts.map +1 -0
  66. package/dist/types/src/internal/formats/format.d.ts +2 -0
  67. package/dist/types/src/internal/formats/format.d.ts.map +1 -1
  68. package/dist/types/src/internal/formats/types.d.ts +7 -7
  69. package/dist/types/src/internal/formats/types.d.ts.map +1 -1
  70. package/dist/types/src/internal/index.d.ts +6 -10
  71. package/dist/types/src/internal/index.d.ts.map +1 -1
  72. package/dist/types/src/internal/json-schema/annotations.d.ts.map +1 -0
  73. package/dist/types/src/internal/json-schema/effect-schema.test.d.ts.map +1 -0
  74. package/dist/types/src/internal/json-schema/index.d.ts +2 -0
  75. package/dist/types/src/internal/json-schema/index.d.ts.map +1 -1
  76. package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +1 -1
  77. package/dist/types/src/internal/{json → json-schema}/json-schema.d.ts +2 -5
  78. package/dist/types/src/internal/json-schema/json-schema.d.ts.map +1 -0
  79. package/dist/types/src/internal/json-schema/json-schema.test.d.ts.map +1 -0
  80. package/dist/types/src/internal/object/common.d.ts.map +1 -1
  81. package/dist/types/src/internal/object/{create.d.ts → create-object.d.ts} +9 -10
  82. package/dist/types/src/internal/object/create-object.d.ts.map +1 -0
  83. package/dist/types/src/internal/object/create-object.test.d.ts +2 -0
  84. package/dist/types/src/internal/object/create-object.test.d.ts.map +1 -0
  85. package/dist/types/src/internal/object/deleted.d.ts +2 -2
  86. package/dist/types/src/internal/object/deleted.d.ts.map +1 -1
  87. package/dist/types/src/internal/object/ids.d.ts.map +1 -1
  88. package/dist/types/src/internal/object/index.d.ts +3 -12
  89. package/dist/types/src/internal/object/index.d.ts.map +1 -1
  90. package/dist/types/src/internal/object/json-serializer.d.ts +1 -2
  91. package/dist/types/src/internal/object/json-serializer.d.ts.map +1 -1
  92. package/dist/types/src/internal/object/schema-validator.d.ts.map +1 -1
  93. package/dist/types/src/internal/object/typed-object.d.ts +1 -1
  94. package/dist/types/src/internal/object/typed-object.d.ts.map +1 -1
  95. package/dist/types/src/internal/proxy/index.d.ts +3 -0
  96. package/dist/types/src/internal/proxy/index.d.ts.map +1 -0
  97. package/dist/types/src/internal/proxy/make-object.d.ts +16 -0
  98. package/dist/types/src/internal/proxy/make-object.d.ts.map +1 -0
  99. package/dist/types/src/internal/proxy/typed-handler.d.ts +1 -1
  100. package/dist/types/src/internal/proxy/typed-handler.d.ts.map +1 -1
  101. package/dist/types/src/internal/ref/ref.d.ts +15 -12
  102. package/dist/types/src/internal/ref/ref.d.ts.map +1 -1
  103. package/dist/types/src/internal/schema/compose.d.ts.map +1 -0
  104. package/dist/types/src/internal/schema/compose.test.d.ts.map +1 -0
  105. package/dist/types/src/internal/schema/echo-schema.d.ts +9 -9
  106. package/dist/types/src/internal/schema/echo-schema.d.ts.map +1 -1
  107. package/dist/types/src/internal/schema/index.d.ts +3 -4
  108. package/dist/types/src/internal/schema/index.d.ts.map +1 -1
  109. package/dist/types/src/internal/schema/manipulation.d.ts.map +1 -1
  110. package/dist/types/src/internal/schema/persistent-schema.d.ts +18 -0
  111. package/dist/types/src/internal/schema/persistent-schema.d.ts.map +1 -0
  112. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts +1 -1
  113. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts.map +1 -1
  114. package/dist/types/src/internal/types/base.d.ts +37 -0
  115. package/dist/types/src/internal/types/base.d.ts.map +1 -0
  116. package/dist/types/src/internal/{ast/entity-kind.d.ts → types/entity.d.ts} +3 -1
  117. package/dist/types/src/internal/types/entity.d.ts.map +1 -0
  118. package/dist/types/src/internal/types/index.d.ts +5 -2
  119. package/dist/types/src/internal/types/index.d.ts.map +1 -1
  120. package/dist/types/src/internal/{object → types}/meta.d.ts +20 -11
  121. package/dist/types/src/internal/types/meta.d.ts.map +1 -0
  122. package/dist/types/src/internal/types/typename.d.ts +13 -0
  123. package/dist/types/src/internal/types/typename.d.ts.map +1 -0
  124. package/dist/types/src/internal/{object → types}/version.d.ts +3 -2
  125. package/dist/types/src/internal/types/version.d.ts.map +1 -0
  126. package/dist/types/src/query/filter.d.ts +167 -0
  127. package/dist/types/src/query/filter.d.ts.map +1 -0
  128. package/dist/types/src/query/index.d.ts +3 -1
  129. package/dist/types/src/query/index.d.ts.map +1 -1
  130. package/dist/types/src/query/order.d.ts +12 -0
  131. package/dist/types/src/query/order.d.ts.map +1 -0
  132. package/dist/types/src/query/query.d.ts +9 -144
  133. package/dist/types/src/query/query.d.ts.map +1 -1
  134. package/dist/types/src/query/testing.d.ts +51 -0
  135. package/dist/types/src/query/testing.d.ts.map +1 -0
  136. package/dist/types/src/{internal/query/query.d.ts → query/types.d.ts} +1 -1
  137. package/dist/types/src/query/types.d.ts.map +1 -0
  138. package/dist/types/src/query/util.d.ts +8 -0
  139. package/dist/types/src/query/util.d.ts.map +1 -0
  140. package/dist/types/src/{test → testing}/api.test.d.ts.map +1 -1
  141. package/dist/types/src/testing/index.d.ts +3 -3
  142. package/dist/types/src/testing/index.d.ts.map +1 -1
  143. package/dist/types/src/testing/test-data.d.ts +18 -0
  144. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  145. package/dist/types/src/testing/test-schema.d.ts +337 -0
  146. package/dist/types/src/testing/test-schema.d.ts.map +1 -0
  147. package/dist/types/src/{internal/testing/utils.d.ts → testing/util.d.ts} +11 -5
  148. package/dist/types/src/testing/util.d.ts.map +1 -0
  149. package/dist/types/tsconfig.tsbuildinfo +1 -1
  150. package/package.json +46 -38
  151. package/src/Annotation.ts +17 -0
  152. package/src/Database.ts +189 -0
  153. package/src/Entity.ts +51 -0
  154. package/src/Format.ts +11 -0
  155. package/src/JsonSchema.ts +16 -0
  156. package/src/Key.ts +3 -0
  157. package/src/Obj.ts +260 -147
  158. package/src/Ref.ts +9 -9
  159. package/src/Relation.ts +58 -44
  160. package/src/Tag.ts +40 -0
  161. package/src/Type.ts +96 -83
  162. package/src/index.ts +10 -4
  163. package/src/internal/README.md +83 -0
  164. package/src/internal/{ast → annotations}/annotations.test.ts +13 -15
  165. package/src/internal/annotations/annotations.ts +463 -0
  166. package/src/internal/annotations/index.ts +6 -0
  167. package/src/internal/annotations/util.ts +70 -0
  168. package/src/internal/entities/entity.ts +109 -0
  169. package/src/internal/{object → entities}/expando.ts +7 -5
  170. package/src/internal/entities/index.ts +9 -0
  171. package/src/internal/entities/model.ts +129 -0
  172. package/src/internal/entities/object.ts +45 -0
  173. package/src/internal/entities/relation.ts +155 -0
  174. package/src/internal/entities/util.ts +33 -0
  175. package/src/internal/formats/date.test.ts +1 -1
  176. package/src/internal/formats/date.ts +5 -5
  177. package/src/internal/formats/format.test.ts +5 -5
  178. package/src/internal/formats/format.ts +3 -0
  179. package/src/internal/formats/number.ts +5 -5
  180. package/src/internal/formats/object.ts +2 -2
  181. package/src/internal/formats/string.ts +9 -9
  182. package/src/internal/formats/types.ts +44 -39
  183. package/src/internal/index.ts +29 -13
  184. package/src/internal/{json → json-schema}/annotations.ts +1 -1
  185. package/src/internal/json-schema/index.ts +2 -0
  186. package/src/internal/json-schema/json-schema-type.ts +4 -3
  187. package/src/internal/{json → json-schema}/json-schema.test.ts +230 -97
  188. package/src/internal/{json → json-schema}/json-schema.ts +67 -87
  189. package/src/internal/object/common.ts +3 -4
  190. package/src/internal/object/{create.test.ts → create-object.test.ts} +31 -33
  191. package/src/internal/object/{create.ts → create-object.ts} +34 -35
  192. package/src/internal/object/deleted.ts +6 -6
  193. package/src/internal/object/ids.ts +1 -1
  194. package/src/internal/object/index.ts +3 -12
  195. package/src/internal/object/inspect.ts +3 -5
  196. package/src/internal/object/json-serializer.test.ts +33 -38
  197. package/src/internal/object/json-serializer.ts +43 -38
  198. package/src/internal/object/schema-validator.ts +3 -2
  199. package/src/internal/object/typed-object.test.ts +1 -1
  200. package/src/internal/object/typed-object.ts +17 -4
  201. package/src/internal/proxy/handler.test.ts +30 -20
  202. package/src/internal/proxy/index.ts +6 -0
  203. package/src/internal/proxy/{reactive-object.ts → make-object.ts} +19 -14
  204. package/src/internal/proxy/schema.test.ts +5 -4
  205. package/src/internal/proxy/typed-handler.test.ts +28 -28
  206. package/src/internal/proxy/typed-handler.ts +11 -6
  207. package/src/internal/proxy/typed-object.test.ts +17 -12
  208. package/src/internal/ref/ref.test.ts +9 -8
  209. package/src/internal/ref/ref.ts +24 -20
  210. package/src/internal/{projection → schema}/compose.test.ts +5 -6
  211. package/src/internal/{projection → schema}/compose.ts +2 -1
  212. package/src/internal/schema/echo-schema.ts +30 -28
  213. package/src/internal/schema/index.ts +3 -4
  214. package/src/internal/schema/manipulation.ts +7 -1
  215. package/src/internal/schema/persistent-schema.ts +28 -0
  216. package/src/internal/schema/runtime-schema-registry.ts +4 -4
  217. package/src/internal/types/base.ts +58 -0
  218. package/src/internal/{ast/entity-kind.ts → types/entity.ts} +8 -0
  219. package/src/internal/types/index.ts +5 -2
  220. package/src/internal/{object → types}/meta.ts +32 -18
  221. package/src/internal/types/typename.ts +45 -0
  222. package/src/internal/types/version.ts +20 -0
  223. package/src/query/filter.ts +455 -0
  224. package/src/query/index.ts +4 -1
  225. package/src/query/order.ts +34 -0
  226. package/src/query/query.test.ts +188 -216
  227. package/src/query/query.ts +24 -505
  228. package/src/query/testing.ts +64 -0
  229. package/src/query/util.ts +25 -0
  230. package/src/testing/api.test.ts +100 -0
  231. package/src/testing/index.ts +3 -3
  232. package/src/testing/test-data.ts +130 -0
  233. package/src/testing/test-schema.ts +213 -0
  234. package/src/{internal/testing/utils.ts → testing/util.ts} +38 -14
  235. package/dist/lib/browser/chunk-MWLA34S5.mjs.map +0 -7
  236. package/dist/lib/browser/chunk-OAZJQHVO.mjs +0 -453
  237. package/dist/lib/browser/chunk-OAZJQHVO.mjs.map +0 -7
  238. package/dist/lib/browser/chunk-ORIE2FMS.mjs +0 -514
  239. package/dist/lib/browser/chunk-ORIE2FMS.mjs.map +0 -7
  240. package/dist/lib/browser/query/index.mjs +0 -23
  241. package/dist/lib/browser/query/index.mjs.map +0 -7
  242. package/dist/lib/node-esm/chunk-AXWVDOP7.mjs +0 -453
  243. package/dist/lib/node-esm/chunk-AXWVDOP7.mjs.map +0 -7
  244. package/dist/lib/node-esm/chunk-L4PBAJDP.mjs +0 -514
  245. package/dist/lib/node-esm/chunk-L4PBAJDP.mjs.map +0 -7
  246. package/dist/lib/node-esm/chunk-YTNLFBIK.mjs.map +0 -7
  247. package/dist/lib/node-esm/query/index.mjs +0 -23
  248. package/dist/lib/node-esm/query/index.mjs.map +0 -7
  249. package/dist/types/src/internal/ast/annotation-helper.d.ts +0 -8
  250. package/dist/types/src/internal/ast/annotation-helper.d.ts.map +0 -1
  251. package/dist/types/src/internal/ast/annotations.d.ts +0 -119
  252. package/dist/types/src/internal/ast/annotations.d.ts.map +0 -1
  253. package/dist/types/src/internal/ast/annotations.test.d.ts.map +0 -1
  254. package/dist/types/src/internal/ast/entity-kind.d.ts.map +0 -1
  255. package/dist/types/src/internal/ast/index.d.ts +0 -5
  256. package/dist/types/src/internal/ast/index.d.ts.map +0 -1
  257. package/dist/types/src/internal/ast/types.d.ts +0 -6
  258. package/dist/types/src/internal/ast/types.d.ts.map +0 -1
  259. package/dist/types/src/internal/json/annotations.d.ts.map +0 -1
  260. package/dist/types/src/internal/json/effect-schema.test.d.ts.map +0 -1
  261. package/dist/types/src/internal/json/index.d.ts +0 -2
  262. package/dist/types/src/internal/json/index.d.ts.map +0 -1
  263. package/dist/types/src/internal/json/json-schema.d.ts.map +0 -1
  264. package/dist/types/src/internal/json/json-schema.test.d.ts.map +0 -1
  265. package/dist/types/src/internal/object/accessors.d.ts +0 -29
  266. package/dist/types/src/internal/object/accessors.d.ts.map +0 -1
  267. package/dist/types/src/internal/object/create.d.ts.map +0 -1
  268. package/dist/types/src/internal/object/create.test.d.ts +0 -2
  269. package/dist/types/src/internal/object/create.test.d.ts.map +0 -1
  270. package/dist/types/src/internal/object/entity.d.ts +0 -22
  271. package/dist/types/src/internal/object/entity.d.ts.map +0 -1
  272. package/dist/types/src/internal/object/expando.d.ts.map +0 -1
  273. package/dist/types/src/internal/object/meta.d.ts.map +0 -1
  274. package/dist/types/src/internal/object/model.d.ts +0 -117
  275. package/dist/types/src/internal/object/model.d.ts.map +0 -1
  276. package/dist/types/src/internal/object/relation.d.ts +0 -17
  277. package/dist/types/src/internal/object/relation.d.ts.map +0 -1
  278. package/dist/types/src/internal/object/typed-relation.d.ts +0 -32
  279. package/dist/types/src/internal/object/typed-relation.d.ts.map +0 -1
  280. package/dist/types/src/internal/object/typename.d.ts +0 -15
  281. package/dist/types/src/internal/object/typename.d.ts.map +0 -1
  282. package/dist/types/src/internal/object/version.d.ts.map +0 -1
  283. package/dist/types/src/internal/projection/compose.d.ts.map +0 -1
  284. package/dist/types/src/internal/projection/compose.test.d.ts.map +0 -1
  285. package/dist/types/src/internal/projection/index.d.ts +0 -2
  286. package/dist/types/src/internal/projection/index.d.ts.map +0 -1
  287. package/dist/types/src/internal/proxy/reactive-object.d.ts +0 -15
  288. package/dist/types/src/internal/proxy/reactive-object.d.ts.map +0 -1
  289. package/dist/types/src/internal/query/index.d.ts +0 -2
  290. package/dist/types/src/internal/query/index.d.ts.map +0 -1
  291. package/dist/types/src/internal/query/query.d.ts.map +0 -1
  292. package/dist/types/src/internal/schema/stored-schema.d.ts +0 -13
  293. package/dist/types/src/internal/schema/stored-schema.d.ts.map +0 -1
  294. package/dist/types/src/internal/testing/index.d.ts +0 -3
  295. package/dist/types/src/internal/testing/index.d.ts.map +0 -1
  296. package/dist/types/src/internal/testing/types.d.ts +0 -455
  297. package/dist/types/src/internal/testing/types.d.ts.map +0 -1
  298. package/dist/types/src/internal/testing/utils.d.ts.map +0 -1
  299. package/dist/types/src/internal/types/types.d.ts +0 -79
  300. package/dist/types/src/internal/types/types.d.ts.map +0 -1
  301. package/dist/types/src/internal/types/types.test.d.ts +0 -2
  302. package/dist/types/src/internal/types/types.test.d.ts.map +0 -1
  303. package/dist/types/src/internal/types/util.d.ts +0 -5
  304. package/dist/types/src/internal/types/util.d.ts.map +0 -1
  305. package/dist/types/src/query/tag.d.ts +0 -18
  306. package/dist/types/src/query/tag.d.ts.map +0 -1
  307. package/dist/types/src/testing/echo-schema.d.ts +0 -7
  308. package/dist/types/src/testing/echo-schema.d.ts.map +0 -1
  309. package/dist/types/src/testing/types.d.ts +0 -113
  310. package/dist/types/src/testing/types.d.ts.map +0 -1
  311. package/src/internal/ast/annotation-helper.ts +0 -22
  312. package/src/internal/ast/annotations.ts +0 -212
  313. package/src/internal/ast/index.ts +0 -8
  314. package/src/internal/ast/types.ts +0 -17
  315. package/src/internal/json/index.ts +0 -5
  316. package/src/internal/object/accessors.ts +0 -115
  317. package/src/internal/object/entity.ts +0 -204
  318. package/src/internal/object/model.ts +0 -170
  319. package/src/internal/object/relation.ts +0 -24
  320. package/src/internal/object/typed-relation.ts +0 -85
  321. package/src/internal/object/typename.ts +0 -61
  322. package/src/internal/object/version.ts +0 -22
  323. package/src/internal/projection/index.ts +0 -5
  324. package/src/internal/query/index.ts +0 -5
  325. package/src/internal/schema/stored-schema.ts +0 -26
  326. package/src/internal/testing/index.ts +0 -6
  327. package/src/internal/testing/types.ts +0 -211
  328. package/src/internal/types/types.test.ts +0 -48
  329. package/src/internal/types/types.ts +0 -176
  330. package/src/internal/types/util.ts +0 -9
  331. package/src/query/tag.ts +0 -35
  332. package/src/test/api.test.ts +0 -180
  333. package/src/testing/echo-schema.ts +0 -39
  334. package/src/testing/types.ts +0 -91
  335. /package/dist/types/src/internal/{ast → annotations}/annotations.test.d.ts +0 -0
  336. /package/dist/types/src/internal/{json → json-schema}/annotations.d.ts +0 -0
  337. /package/dist/types/src/internal/{json → json-schema}/effect-schema.test.d.ts +0 -0
  338. /package/dist/types/src/internal/{json → json-schema}/json-schema.test.d.ts +0 -0
  339. /package/dist/types/src/internal/{projection → schema}/compose.d.ts +0 -0
  340. /package/dist/types/src/internal/{projection → schema}/compose.test.d.ts +0 -0
  341. /package/dist/types/src/{test → testing}/api.test.d.ts +0 -0
  342. /package/src/internal/{json → json-schema}/effect-schema.test.ts +0 -0
  343. /package/src/{internal/query/query.ts → query/types.ts} +0 -0
@@ -0,0 +1,174 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import * as SchemaAST from 'effect/SchemaAST';
3
+ import { Reference } from '@dxos/echo-protocol';
4
+ import { DXN } from '@dxos/keys';
5
+ import { type Primitive } from '@dxos/util';
6
+ import { EntityKind } from '../types';
7
+ /**
8
+ * Sets the path for the field.
9
+ * @param path Data source path in the json path format. This is the field path in the source object.
10
+ */
11
+ export declare const FieldPath: (path: string) => <A, I, R>(self: Schema.Schema<A, I, R>) => Schema.Schema<A, I, R>;
12
+ /**
13
+ * ECHO identifier (for a stored schema).
14
+ * Must be a `dxn:echo:` URI.
15
+ */
16
+ export declare const TypeIdentifierAnnotationId: unique symbol;
17
+ export declare const getTypeIdentifierAnnotation: (schema: Schema.Schema.All) => string | undefined;
18
+ /**
19
+ * Fully qualified globally unique typename.
20
+ * Example: `dxos.org/type/Person`
21
+ */
22
+ export declare const TypenameSchema: Schema.refine<string, typeof Schema.String>;
23
+ /**
24
+ * Semantic version format: `major.minor.patch`
25
+ * Example: `1.0.0`
26
+ */
27
+ export declare const VersionSchema: Schema.refine<string, typeof Schema.String>;
28
+ export declare const TypeMeta: Schema.Struct<{
29
+ typename: Schema.refine<string, typeof Schema.String>;
30
+ version: Schema.refine<string, typeof Schema.String>;
31
+ }>;
32
+ export interface TypeMeta extends Schema.Schema.Type<typeof TypeMeta> {
33
+ }
34
+ /**
35
+ * Entity type.
36
+ */
37
+ export declare const TypeAnnotationId: unique symbol;
38
+ /**
39
+ * Payload stored under {@link TypeAnnotationId}.
40
+ */
41
+ export declare const TypeAnnotation: Schema.extend<Schema.Struct<{
42
+ typename: Schema.refine<string, typeof Schema.String>;
43
+ version: Schema.refine<string, typeof Schema.String>;
44
+ }>, Schema.Struct<{
45
+ kind: Schema.Enums<typeof EntityKind>;
46
+ /**
47
+ * If this is a relation, the schema of the source object.
48
+ * Must be present if entity kind is {@link EntityKind.Relation}.
49
+ */
50
+ sourceSchema: Schema.optional<Schema.refine<string, typeof Schema.NonEmptyString>>;
51
+ /**
52
+ * If this is a relation, the schema of the target object.
53
+ * Must be present if entity kind is {@link EntityKind.Relation}.
54
+ */
55
+ targetSchema: Schema.optional<Schema.refine<string, typeof Schema.NonEmptyString>>;
56
+ }>>;
57
+ export interface TypeAnnotation extends Schema.Schema.Type<typeof TypeAnnotation> {
58
+ }
59
+ /**
60
+ * @returns {@link TypeAnnotation} from a schema.
61
+ * Schema must have been created with {@link TypedObject} or {@link TypedLink} or manually assigned an appropriate annotation.
62
+ */
63
+ export declare const getTypeAnnotation: (schema: Schema.Schema.All) => TypeAnnotation | undefined;
64
+ /**
65
+ * @returns {@link EntityKind} from a schema.
66
+ */
67
+ export declare const getEntityKind: (schema: Schema.Schema.All) => EntityKind | undefined;
68
+ /**
69
+ * Checks if the object is an instance of the schema.
70
+ * Only typename is compared, the schema version is ignored.
71
+ *
72
+ * The following cases are considered to mean that the object is an instance of the schema:
73
+ * - Object was created with this exact schema.
74
+ * - Object was created with a different version of this schema.
75
+ * - Object was created with a different schema (maybe dynamic) that has the same typename.
76
+ */
77
+ export declare const isInstanceOf: <Schema extends Schema.Schema.AnyNoContext>(schema: Schema, object: any) => object is Schema.Schema.Type<Schema>;
78
+ /**
79
+ * PropertyMeta (metadata for dynamic schema properties).
80
+ * For user-defined annotations.
81
+ */
82
+ export declare const PropertyMetaAnnotationId: unique symbol;
83
+ export type PropertyMetaValue = Primitive | Record<string, Primitive> | Primitive[];
84
+ export type PropertyMetaAnnotation = {
85
+ [name: string]: PropertyMetaValue;
86
+ };
87
+ export declare const PropertyMeta: (name: string, value: PropertyMetaValue) => <A, I, R>(self: Schema.Schema<A, I, R>) => Schema.Schema<A, I, R>;
88
+ export declare const getPropertyMetaAnnotation: <T>(prop: SchemaAST.PropertySignature, name: string) => T | undefined;
89
+ /**
90
+ * Schema reference.
91
+ */
92
+ export declare const ReferenceAnnotationId: unique symbol;
93
+ export type ReferenceAnnotationValue = TypeAnnotation;
94
+ export declare const getReferenceAnnotation: (schema: Schema.Schema.AnyNoContext) => TypeAnnotation | undefined;
95
+ /**
96
+ * SchemaMeta.
97
+ */
98
+ export declare const SchemaMetaSymbol: unique symbol;
99
+ export type SchemaMeta = TypeMeta & {
100
+ id: string;
101
+ };
102
+ /**
103
+ * Identifies a schema as a schema for a hidden system type.
104
+ */
105
+ export declare const SystemTypeAnnotationId: unique symbol;
106
+ export declare const SystemTypeAnnotation: import("./util").AnnotationHelper<boolean>;
107
+ /**
108
+ * Identifies label property or JSON path expression.
109
+ * Either a string or an array of strings representing field accessors each matched in priority order.
110
+ */
111
+ export declare const LabelAnnotationId: unique symbol;
112
+ export declare const LabelAnnotation: import("./util").AnnotationHelper<string[]>;
113
+ /**
114
+ * Returns the label for a given object based on {@link LabelAnnotationId}.
115
+ */
116
+ export declare const getLabel: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>) => string | undefined;
117
+ /**
118
+ * Sets the label for a given object based on {@link LabelAnnotationId}.
119
+ */
120
+ export declare const setLabel: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>, label: string) => void;
121
+ /**
122
+ * Identifies description property or JSON path expression.
123
+ * A string representing field accessor.
124
+ */
125
+ export declare const DescriptionAnnotationId: unique symbol;
126
+ export declare const DescriptionAnnotation: import("./util").AnnotationHelper<string>;
127
+ /**
128
+ * Returns the label for a given object based on {@link LabelAnnotationId}.
129
+ */
130
+ export declare const getDescription: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>) => string | undefined;
131
+ /**
132
+ * Sets the description for a given object based on {@link DescriptionAnnotationId}.
133
+ */
134
+ export declare const setDescription: <S extends Schema.Schema.Any>(schema: S, object: Schema.Schema.Type<S>, description: string) => void;
135
+ /**
136
+ * Identifies if a property should be included in a form or not.
137
+ * By default, all properties are included in forms, so this is opt-out.
138
+ */
139
+ export declare const FormInputAnnotationId: unique symbol;
140
+ export declare const FormInputAnnotation: import("./util").AnnotationHelper<boolean>;
141
+ /**
142
+ * Default field to be used on referenced schema to lookup the value.
143
+ */
144
+ export declare const FieldLookupAnnotationId: unique symbol;
145
+ /**
146
+ * Generate test data.
147
+ */
148
+ export declare const GeneratorAnnotationId: unique symbol;
149
+ export type GeneratorAnnotationValue = string | {
150
+ generator: string;
151
+ args?: any[];
152
+ probability?: number;
153
+ };
154
+ export declare const GeneratorAnnotation: import("./util").AnnotationHelper<GeneratorAnnotationValue>;
155
+ /**
156
+ * @returns DXN of the schema.
157
+ *
158
+ * For non-stored schema returns `dxn:type:`.
159
+ * For stored schema returns `dxn:echo:`.
160
+ */
161
+ export declare const getSchemaDXN: (schema: Schema.Schema.All) => DXN | undefined;
162
+ /**
163
+ * Returns a reference that will be used to point to a schema.
164
+ * @deprecated Use {@link getSchemaDXN} instead.
165
+ */
166
+ export declare const getTypeReference: (schema: Schema.Schema.All | undefined) => Reference | undefined;
167
+ /**
168
+ * Returns a reference that will be used to point to a schema.
169
+ * @throws If it is not possible to reference this schema.
170
+ *
171
+ * @deprecated Use {@link getSchemaDXN} instead.
172
+ */
173
+ export declare const requireTypeReference: (schema: Schema.Schema.AnyNoContext) => Reference;
174
+ //# sourceMappingURL=annotations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../../../../src/internal/annotations/annotations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/annotations/annotations.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export * from './annotations';
2
+ export * from './util';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/annotations/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type * as Option from 'effect/Option';
2
+ import type * as Schema from 'effect/Schema';
3
+ import * as SchemaAST from 'effect/SchemaAST';
4
+ import { EntityKind } from '../types';
5
+ export interface AnnotationHelper<T> {
6
+ get: (schema: Schema.Schema.Any) => Option.Option<T>;
7
+ set: (value: T) => <S extends Schema.Schema.Any>(schema: S) => S;
8
+ }
9
+ export declare const createAnnotationHelper: <T>(id: symbol) => AnnotationHelper<T>;
10
+ /**
11
+ * If property is optional returns the nested property, otherwise returns the property.
12
+ */
13
+ export declare const unwrapOptional: (property: SchemaAST.PropertySignature) => SchemaAST.AST | SchemaAST.PropertySignature;
14
+ /**
15
+ * @see JSONSchemaAnnotationId
16
+ * @returns JSON-schema annotation so that the schema can be serialized with correct parameters.
17
+ */
18
+ export declare const makeTypeJsonSchemaAnnotation: (options: {
19
+ identifier?: string;
20
+ kind: EntityKind;
21
+ typename: string;
22
+ version: string;
23
+ relationSource?: string;
24
+ relationTarget?: string;
25
+ }) => any;
26
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../../src/internal/annotations/util.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAK9C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrD,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;CAClE;AAED,eAAO,MAAM,sBAAsB,GAAI,CAAC,EAAE,IAAI,MAAM,KAAG,gBAAgB,CAAC,CAAC,CAQxE,CAAC;AAEF;;GAEG;AAEH,eAAO,MAAM,cAAc,GAAI,UAAU,SAAS,CAAC,iBAAiB,gDAMnE,CAAC;AAEF;;;GAGG;AAEH,eAAO,MAAM,4BAA4B,GAAI,SAAS;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,QAiBA,CAAC"}
@@ -0,0 +1,10 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import type * as Types from 'effect/Types';
3
+ import { type ToMutable } from '@dxos/util';
4
+ import { type TypeMeta } from '../annotations';
5
+ import { type HasId } from '../types';
6
+ export type EchoTypeSchemaProps<T, ExtraFields = {}> = Types.Simplify<HasId & ToMutable<T> & ExtraFields>;
7
+ export interface EchoTypeSchema<Self extends Schema.Schema.Any, ExtraFields = {}> extends TypeMeta, Schema.AnnotableClass<EchoTypeSchema<Self, ExtraFields>, EchoTypeSchemaProps<Schema.Schema.Type<Self>, ExtraFields>, EchoTypeSchemaProps<Schema.Schema.Encoded<Self>, ExtraFields>, Schema.Schema.Context<Self>> {
8
+ instanceOf(value: unknown): boolean;
9
+ }
10
+ //# sourceMappingURL=entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/entity.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,UAAU,CAAC;AAKtC,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,WAAW,GAAG,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;AAG1G,MAAM,WAAW,cAAc,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,GAAG,EAAE,CAC9E,SAAQ,QAAQ,EACd,MAAM,CAAC,cAAc,CACnB,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,EACjC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,EAC1D,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,EAC7D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAC5B;IAQH,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;CACrC"}
@@ -9,6 +9,8 @@ declare const ExpandoSchema: import("./entity").EchoTypeSchema<Schema.TypeLitera
9
9
  */
10
10
  export interface Expando extends Schema.Schema.Type<typeof ExpandoSchema> {
11
11
  }
12
- export declare const Expando: Schema.Schema<Expando>;
12
+ export interface ExpandoEncoded extends Schema.Schema.Encoded<typeof ExpandoSchema> {
13
+ }
14
+ export declare const Expando: Schema.Schema<Expando, ExpandoEncoded>;
13
15
  export {};
14
16
  //# sourceMappingURL=expando.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expando.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/expando.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,eAAO,MAAM,gBAAgB,0BAA0B,CAAC;AAExD,QAAA,MAAM,aAAa;;;QAKlB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,OAAQ,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,aAAa,CAAC;CAAG;AAC5E,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,aAAa,CAAC;CAAG;AACtF,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,cAAc,CAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './expando';
2
+ export * from './model';
3
+ export * from './object';
4
+ export * from './relation';
5
+ export * from './util';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/index.ts"],"names":[],"mappings":"AAIA,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,70 @@
1
+ import type * as Schema from 'effect/Schema';
2
+ import { type ForeignKey } from '@dxos/echo-protocol';
3
+ import { DXN, ObjectId } from '@dxos/keys';
4
+ import { type ATTR_META, type ATTR_TYPE, EntityKind, KindId, type MetaId, type ObjectMeta, type SchemaId, TypeId, type Version } from '../types';
5
+ import { type ATTR_RELATION_SOURCE, type ATTR_RELATION_TARGET, RelationSourceDXNId, RelationSourceId, RelationTargetDXNId, RelationTargetId } from './relation';
6
+ /**
7
+ * Property name for self DXN when object is serialized to JSON.
8
+ */
9
+ export declare const ATTR_SELF_DXN = "@dxn";
10
+ /**
11
+ * DXN to the object itself.
12
+ */
13
+ export declare const SelfDXNId: unique symbol;
14
+ /**
15
+ * Property name for deleted when object is serialized to JSON.
16
+ */
17
+ export declare const ATTR_DELETED = "@deleted";
18
+ /**
19
+ * Deletion marker.
20
+ */
21
+ export declare const ObjectDeletedId: unique symbol;
22
+ /**
23
+ * Object version accessor symbol.
24
+ */
25
+ export declare const ObjectVersionId: unique symbol;
26
+ /**
27
+ * Internal runtime representation of an object.
28
+ * The fields are accessed through getter functions.
29
+ */
30
+ export interface InternalObjectProps {
31
+ id: ObjectId;
32
+ readonly [TypeId]?: DXN;
33
+ readonly [SelfDXNId]?: DXN;
34
+ /**
35
+ * Returns the schema for the object.
36
+ */
37
+ readonly [SchemaId]?: Schema.Schema.AnyNoContext;
38
+ readonly [KindId]: EntityKind;
39
+ readonly [MetaId]?: ObjectMeta;
40
+ readonly [ObjectDeletedId]?: boolean;
41
+ readonly [ObjectVersionId]?: Version;
42
+ readonly [RelationSourceDXNId]?: DXN;
43
+ readonly [RelationTargetDXNId]?: DXN;
44
+ readonly [RelationSourceId]?: InternalObjectProps;
45
+ readonly [RelationTargetId]?: InternalObjectProps;
46
+ }
47
+ /**
48
+ * Entity metadata.
49
+ */
50
+ export interface ObjectMetaJSON {
51
+ keys: ForeignKey[];
52
+ tags?: string[];
53
+ }
54
+ /**
55
+ * JSON representation of an object or relation metadata.
56
+ */
57
+ export interface ObjectJSON {
58
+ id: string;
59
+ [ATTR_TYPE]: DXN.String;
60
+ [ATTR_SELF_DXN]?: DXN.String;
61
+ [ATTR_DELETED]?: boolean;
62
+ [ATTR_META]?: ObjectMetaJSON;
63
+ [ATTR_RELATION_SOURCE]?: DXN.String;
64
+ [ATTR_RELATION_TARGET]?: DXN.String;
65
+ }
66
+ /**
67
+ * NOTE: Keep as `function` to avoid type inference issues.
68
+ */
69
+ export declare function assertObjectModel(obj: unknown): asserts obj is InternalObjectProps;
70
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/model.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EACL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,UAAU,EACV,MAAM,EACN,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,MAAM,EACN,KAAK,OAAO,EACb,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAMpB;;GAEG;AACH,eAAO,MAAM,aAAa,SAAS,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,SAAS,eAA+B,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,eAAe,eAAmC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAAO,MAAyC,CAAC;AAE/E;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,QAAQ,CAAC;IAGb,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC;IAGxB,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACjD,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC;IACrC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC;IACrC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,CAAC,EAAE,mBAAmB,CAAC;IAClD,QAAQ,CAAC,CAAC,gBAAgB,CAAC,CAAC,EAAE,mBAAmB,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC;IACxB,CAAC,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC;IAC7B,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC;IACzB,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC;IAC7B,CAAC,oBAAoB,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC;IACpC,CAAC,oBAAoB,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC;CACrC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,IAAI,mBAAmB,CAgBlF"}
@@ -0,0 +1,11 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import { type TypeMeta } from '../annotations';
3
+ import { type EchoTypeSchema } from './entity';
4
+ /**
5
+ * Schema for Obj entity types.
6
+ * Pipeable function to add ECHO object annotations to a schema.
7
+ */
8
+ export declare const EchoObjectSchema: {
9
+ (meta: TypeMeta): <Self extends Schema.Schema.Any>(self: Self) => EchoTypeSchema<Self>;
10
+ };
11
+ //# sourceMappingURL=object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAyC,KAAK,QAAQ,EAAgC,MAAM,gBAAgB,CAAC;AAGpH,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,UAAU,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE;IAG7B,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,KAAK,cAAc,CAAC,IAAI,CAAC,CAAC;CAuBxF,CAAC"}
@@ -0,0 +1,55 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import { type TypeMeta } from '../annotations';
3
+ import { type EchoTypeSchema } from './entity';
4
+ /**
5
+ * Property name for relation source when object is serialized to JSON.
6
+ */
7
+ export declare const ATTR_RELATION_SOURCE = "@relationSource";
8
+ /**
9
+ * Used to access relation source ref on live ECHO objects.
10
+ * Reading this symbol must return `Live<EchoObjectSchema<any>>` or a DXN.
11
+ */
12
+ export declare const RelationSourceId: unique symbol;
13
+ /**
14
+ * Used to access relation source ref on live ECHO objects.
15
+ * Reading this symbol must return `Live<EchoObjectSchema<any>>` or a DXN.
16
+ */
17
+ export declare const RelationSourceDXNId: unique symbol;
18
+ /**
19
+ * Property name for relation target when object is serialized to JSON.
20
+ */
21
+ export declare const ATTR_RELATION_TARGET = "@relationTarget";
22
+ /**
23
+ * Used to access relation target ref on live ECHO objects.
24
+ * Reading this symbol must return `Live<EchoObjectSchema<any>>` or a DXN.
25
+ */
26
+ export declare const RelationTargetId: unique symbol;
27
+ /**
28
+ * Used to access relation target ref on live ECHO objects.
29
+ * Reading this symbol must return `Live<EchoObjectSchema<any>>` or a DXN.
30
+ */
31
+ export declare const RelationTargetDXNId: unique symbol;
32
+ /**
33
+ * Source and target props on relations.
34
+ */
35
+ export type RelationSourceTargetRefs<Source = any, Target = any> = {
36
+ /**
37
+ * Source ECHO live object.
38
+ */
39
+ [RelationSourceId]: Source;
40
+ /**
41
+ * Target ECHO live object.
42
+ */
43
+ [RelationTargetId]: Target;
44
+ };
45
+ export type RelationSource<R> = R extends RelationSourceTargetRefs<infer Source, infer _Target> ? Source : never;
46
+ export type RelationTarget<R> = R extends RelationSourceTargetRefs<infer _Source, infer Target> ? Target : never;
47
+ export type EchoRelationSchemaOptions<TSource extends Schema.Schema.AnyNoContext, TTarget extends Schema.Schema.AnyNoContext> = TypeMeta & {
48
+ source: TSource;
49
+ target: TTarget;
50
+ };
51
+ /**
52
+ * Schema for Relation entity types.
53
+ */
54
+ export declare const EchoRelationSchema: <Source extends Schema.Schema.AnyNoContext, Target extends Schema.Schema.AnyNoContext>({ source, target, typename, version, }: EchoRelationSchemaOptions<Source, Target>) => <Self extends Schema.Schema.Any>(self: Self) => EchoTypeSchema<Self, RelationSourceTargetRefs<Schema.Schema.Type<Source>, Schema.Schema.Type<Target>>>;
55
+ //# sourceMappingURL=relation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/relation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,OAAO,EAGL,KAAK,QAAQ,EAKd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,UAAU,CAAC;AAEnE;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC;AAE7F;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAgD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAmD,CAAC;AAE7F;;GAEG;AAEH,MAAM,MAAM,wBAAwB,CAAC,MAAM,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI;IACjE;;OAEG;IACH,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,wBAAwB,CAAC,MAAM,MAAM,EAAE,MAAM,OAAO,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AACjH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,wBAAwB,CAAC,MAAM,OAAO,EAAE,MAAM,MAAM,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AAEjH,MAAM,MAAM,yBAAyB,CACnC,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IACxC,QAAQ,GAAG;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EACzC,wCAKC,yBAAyB,CAAC,MAAM,EAAE,MAAM,CAAC,MAYlC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EACpC,MAAM,IAAI,KACT,cAAc,CAAC,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CA6BzG,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../../src/internal/entities/util.ts"],"names":[],"mappings":""}
@@ -1,12 +1,14 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import * as NumberUtil from './number';
3
3
  import * as ObjectUtil from './object';
4
+ import { TypeFormat as TypeFormatEnum } from './types';
4
5
  /**
5
6
  * Formats.
6
7
  * https://json-schema.org/understanding-json-schema/reference/string#built-in-formats
7
8
  * NOTE: A JSON Schema validator will ignore any format type that it does not understand.
8
9
  */
9
10
  export declare namespace Format {
11
+ export import TypeFormat = TypeFormatEnum;
10
12
  const DXN: Schema.refine<string, typeof Schema.NonEmptyString>;
11
13
  const Email: Schema.refine<string, typeof Schema.String>;
12
14
  const Formula: typeof Schema.String;
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../../src/internal/formats/format.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,KAAK,UAAU,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,UAAU,MAAM,UAAU,CAAC;AAOvC;;;;GAIG;AAEH,yBAAiB,MAAM,CAAC;IAEf,MAAM,GAAG,qDAAkB,CAAC;IAC5B,MAAM,KAAK,6CAAmB,CAAC;IAC/B,MAAM,OAAO,sBAAqB,CAAC;IACnC,MAAM,QAAQ,sBAAsB,CAAC;IACrC,MAAM,IAAI,sBAAkB,CAAC;IAC7B,MAAM,QAAQ,sBAAsB,CAAC;IACrC,MAAM,KAAK,sBAAmB,CAAC;IAC/B,MAAM,GAAG,6CAAiB,CAAC;IAC3B,MAAM,IAAI,oBAAc,CAAC;IAIzB,MAAM,QAAQ,8FAAsB,CAAC;IACrC,MAAM,OAAO,mDAAqB,CAAC;IACnC,MAAM,OAAO,uFAAqB,CAAC;IACnC,MAAM,SAAS,2CAAuB,CAAC;IAGvC,MAAM,QAAQ,2CAAoB,CAAC;IACnC,MAAM,IAAI,2CAAoB,CAAC;IAC/B,MAAM,IAAI,2CAAoB,CAAC;IAC/B,MAAM,QAAQ,2CAAoB,CAAC;IAGnC,MAAM,QAAQ,uUAAsB,CAAC;IAC5C,KAAY,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;CAC5C"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../../src/internal/formats/format.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,KAAK,UAAU,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,UAAU,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,SAAS,CAAC;AAMvD;;;;GAIG;AAEH,yBAAiB,MAAM,CAAC;IACtB,MAAM,QAAQ,UAAU,GAAG,cAAc,CAAC;IAGnC,MAAM,GAAG,qDAAkB,CAAC;IAC5B,MAAM,KAAK,6CAAmB,CAAC;IAC/B,MAAM,OAAO,sBAAqB,CAAC;IACnC,MAAM,QAAQ,sBAAsB,CAAC;IACrC,MAAM,IAAI,sBAAkB,CAAC;IAC7B,MAAM,QAAQ,sBAAsB,CAAC;IACrC,MAAM,KAAK,sBAAmB,CAAC;IAC/B,MAAM,GAAG,6CAAiB,CAAC;IAC3B,MAAM,IAAI,oBAAc,CAAC;IAIzB,MAAM,QAAQ,8FAAsB,CAAC;IACrC,MAAM,OAAO,mDAAqB,CAAC;IACnC,MAAM,OAAO,uFAAqB,CAAC;IACnC,MAAM,SAAS,2CAAuB,CAAC;IAGvC,MAAM,QAAQ,2CAAoB,CAAC;IACnC,MAAM,IAAI,2CAAoB,CAAC;IAC/B,MAAM,IAAI,2CAAoB,CAAC;IAC/B,MAAM,QAAQ,2CAAoB,CAAC;IAGnC,MAAM,QAAQ,uUAAsB,CAAC;IAC5C,KAAY,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;CAC5C"}
@@ -16,9 +16,9 @@ export declare const getTypeEnum: (property: JsonSchemaType) => TypeEnum | undef
16
16
  * https://json-schema.org/understanding-json-schema/reference/string#built-in-formats
17
17
  */
18
18
  export declare const FormatAnnotationId: unique symbol;
19
- export declare const FormatAnnotation: import("..").AnnotationHelper<FormatEnum>;
20
- export declare const getFormatAnnotation: (node: SchemaAST.AST) => FormatEnum | undefined;
21
- export declare enum FormatEnum {
19
+ export declare const FormatAnnotation: import("..").AnnotationHelper<TypeFormat>;
20
+ export declare const getFormatAnnotation: (node: SchemaAST.AST) => TypeFormat | undefined;
21
+ export declare enum TypeFormat {
22
22
  None = "none",
23
23
  String = "string",
24
24
  Number = "number",
@@ -46,19 +46,19 @@ export declare enum FormatEnum {
46
46
  Duration = "duration",
47
47
  GeoPoint = "lnglat"
48
48
  }
49
- export declare const FormatEnums: FormatEnum[];
49
+ export declare const FormatEnums: TypeFormat[];
50
50
  export declare const PropertyKind: {
51
51
  type: typeof TypeEnum;
52
- format: typeof FormatEnum;
52
+ format: typeof TypeFormat;
53
53
  };
54
54
  /**
55
55
  * Default formats
56
56
  */
57
- export declare const typeToFormat: Partial<Record<TypeEnum, FormatEnum>>;
57
+ export declare const typeToFormat: Partial<Record<TypeEnum, TypeFormat>>;
58
58
  /**
59
59
  * Map of format to type.
60
60
  */
61
- export declare const formatToType: Record<FormatEnum, TypeEnum>;
61
+ export declare const formatToType: Record<TypeFormat, TypeEnum>;
62
62
  /**
63
63
  * Allowed value options for select.
64
64
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/internal/formats/types.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,UAAU,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,MAAM,MAAM,UAAU,GAClB,UAAU,CAAC,iBAAiB,GAC5B,UAAU,CAAC,iBAAiB,GAC5B,UAAU,CAAC,iBAAiB,GAC5B,UAAU,CAAC,kBAAkB,GAC7B,UAAU,CAAC,cAAc,CAAC;AAI9B,oBAAY,QAAQ;IAClB,KAAK,UAAU,CAAE,wBAAwB;IACzC,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,GAAG,QAAQ;CACZ;AAGD,eAAO,MAAM,WAAW,GAAI,UAAU,cAAc,KAAG,QAAQ,GAAG,SAejE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,eAA+C,CAAC;AAE/E,eAAO,MAAM,gBAAgB,2CAAyD,CAAC;AAEvF,eAAO,MAAM,mBAAmB,GAAI,MAAM,SAAS,CAAC,GAAG,KAAG,UAAU,GAAG,SAC8B,CAAC;AAGtG,oBAAY,UAAU;IACpB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,GAAG,QAAQ;IAMX,GAAG,QAAQ,CAAE,cAAc;IAC3B,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,OAAO,YAAY,CAAE,uBAAuB;IAC5C,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,YAAY,kBAAkB;IAC9B,WAAW,iBAAiB;IAC5B,GAAG,QAAQ;IACX,IAAI,SAAS;IAMb,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,SAAS,cAAc;IAMvB,QAAQ,cAAc;IACtB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,QAAQ,aAAa;IAMrB,QAAQ,WAAW;CACpB;AAED,eAAO,MAAM,WAAW,cAAmC,CAAC;AAE5D,eAAO,MAAM,YAAY;;;CAGxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAI9D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAmCrD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,eAAgD,CAAC;AAEjF,eAAO,MAAM,oBAAoB,GAAI,MAAM,SAAS,CAAC,GAAG,KAAG,qBAAqB,EAAE,GAAG,SAC8B,CAAC;AAEpH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/internal/formats/types.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,UAAU,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,MAAM,MAAM,UAAU,GAClB,UAAU,CAAC,iBAAiB,GAC5B,UAAU,CAAC,iBAAiB,GAC5B,UAAU,CAAC,iBAAiB,GAC5B,UAAU,CAAC,kBAAkB,GAC7B,UAAU,CAAC,cAAc,CAAC;AAI9B,oBAAY,QAAQ;IAClB,KAAK,UAAU,CAAE,wBAAwB;IACzC,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,GAAG,QAAQ;CACZ;AAGD,eAAO,MAAM,WAAW,GAAI,UAAU,cAAc,KAAG,QAAQ,GAAG,SAejE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,eAA+C,CAAC;AAE/E,eAAO,MAAM,gBAAgB,2CAAyD,CAAC;AAEvF,eAAO,MAAM,mBAAmB,GAAI,MAAM,SAAS,CAAC,GAAG,KAAG,UAAU,GAAG,SAC8B,CAAC;AAGtG,oBAAY,UAAU;IACpB,IAAI,SAAS;IAMb,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,GAAG,QAAQ;IAMX,GAAG,QAAQ,CAAE,cAAc;IAC3B,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,OAAO,YAAY,CAAE,uBAAuB;IAC5C,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,YAAY,kBAAkB;IAC9B,WAAW,iBAAiB;IAC5B,GAAG,QAAQ;IACX,IAAI,SAAS;IAMb,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,SAAS,cAAc;IAMvB,QAAQ,cAAc;IACtB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,QAAQ,aAAa;IAMrB,QAAQ,WAAW;CACpB;AAED,eAAO,MAAM,WAAW,cAAmC,CAAC;AAE5D,eAAO,MAAM,YAAY;;;CAGxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAI9D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAmCrD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,eAAgD,CAAC;AAEjF,eAAO,MAAM,oBAAoB,GAAI,MAAM,SAAS,CAAC,GAAG,KAAG,qBAAqB,EAAE,GAAG,SAC8B,CAAC;AAEpH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,CAAC"}
@@ -1,15 +1,11 @@
1
- export { JsonPath, splitJsonPath, JsonProp } from '@dxos/effect';
2
- export { ObjectId } from '@dxos/keys';
3
- export { ForeignKey } from '@dxos/echo-protocol';
4
- export * from './ast';
1
+ export { JsonPath, JsonProp, getValue, setValue, splitJsonPath } from '@dxos/effect';
2
+ export * from './annotations';
3
+ export * from './entities';
5
4
  export * from './formats';
6
- export * from './json';
7
5
  export * from './json-schema';
8
- export * from './object';
9
- export * from './types';
10
- export { defineHiddenProperty } from '@dxos/live-object';
11
6
  export * from './ref';
12
- export * from './projection';
7
+ export * from './types';
8
+ export * from './object';
9
+ export * from './proxy';
13
10
  export * from './schema';
14
- export { live } from './proxy/reactive-object';
15
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGjE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAErF,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/annotations.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,yBAAyB,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAOrF,KAAK,sBAAsB,GAAG,MAAM,cAAc,CAAC;AAGnD,KAAK,4BAA4B,GAAG,MAAM,yBAAyB,CAAC;AAEpE;;;GAGG;AAEH,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAG7E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAG9E,CAAC;AAEF;;GAEG;AAGH,eAAO,MAAM,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAKjF,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"effect-schema.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/effect-schema.test.ts"],"names":[],"mappings":""}
@@ -1,3 +1,5 @@
1
+ export * from './annotations';
1
2
  export * from './json-schema-normalize';
2
3
  export * from './json-schema-type';
4
+ export * from './json-schema';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/index.ts"],"names":[],"mappings":"AAIA,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"json-schema-type.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema-type.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAqBvD;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC;;;OAGG;;IAGH;;;OAGG;;IAGH;;OAEG;;IAQH;;OAEG;;;;;;IAYH;;OAEG;;GAOkB,CAAC;AACxB,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE7F;;;;GAIG;AAGH,QAAA,MAAM,eAAe;IACnB;;;OAGG;;IAKH;;;OAGG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;OAKG;;IAGH;;;OAGG;;IAGH;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;;;;;;;IAmBH;;OAEG;;IAGH;;OAEG;;;;;;;;;;;;IAiCH;;;;;;OAMG;;;;;;;;;;;;;;;;;;;;;;;;IAuEH;;OAEG;;QArSH;;;WAGG;;QAGH;;;WAGG;;QAGH;;WAEG;;QAQH;;WAEG;;;;;;QAYH;;WAEG;;;IAmQH;;OAEG;;QA3SH;;;WAGG;;QAGH;;;WAGG;;QAGH;;WAEG;;QAQH;;WAEG;;;;;;QAYH;;WAEG;;;EAuQmE,CAAC;AAEzE,eAAO,MAAM,gBAAgB,UAAsC,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,eAAe,CAAC,CAAC;CAAG;AAErG,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAwC,CAAC;AAIlG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,cAAc,EAAE,UAAU,QAAQ,KAAG,cAAc,GAAG,SAE/F,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,cAAc,EAAE,UAAU,QAAQ,EAAE,OAAO,cAAc,mBAIlG,CAAC"}
1
+ {"version":3,"file":"json-schema-type.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema-type.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAqBvD;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC;;;OAGG;;IAGH;;;OAGG;;IAGH;;OAEG;;IAQH;;OAEG;;;;;;IAYH;;OAEG;;GAOkB,CAAC;AACxB,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE7F;;;;GAIG;AAGH,QAAA,MAAM,eAAe;IACnB;;;OAGG;;IAKH;;;OAGG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;OAKG;;IAGH;;;OAGG;;IAGH;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;;;;;;;IAmBH;;OAEG;;IAGH;;OAEG;;;;;;;;;;;;IAiCH;;;;;;OAMG;;;;;;;;;;;;;;;;;;;;;;;;IAuEH;;OAEG;;QArSH;;;WAGG;;QAGH;;;WAGG;;QAGH;;WAEG;;QAQH;;WAEG;;;;;;QAYH;;WAEG;;;IAmQH;;OAEG;;QA3SH;;;WAGG;;QAGH;;;WAGG;;QAGH;;WAEG;;QAQH;;WAEG;;;;;;QAYH;;WAEG;;;EAuQmE,CAAC;AAEzE,eAAO,MAAM,gBAAgB,UAAsC,CAAC;AAEpE;;GAEG;AAEH,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,eAAe,CAAC,CAAC;CAAG;AAErG,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAwC,CAAC;AAIlG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,cAAc,EAAE,UAAU,QAAQ,KAAG,cAAc,GAAG,SAE/F,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,cAAc,EAAE,UAAU,QAAQ,EAAE,OAAO,cAAc,mBAIlG,CAAC"}
@@ -1,9 +1,5 @@
1
1
  import * as Schema from 'effect/Schema';
2
- import { type JsonSchemaType } from '../json-schema';
3
- /**
4
- * Create object jsonSchema.
5
- */
6
- export declare const createJsonSchema: (schema?: Schema.Struct<any>) => JsonSchemaType;
2
+ import { type JsonSchemaType } from './json-schema-type';
7
3
  export declare enum PropType {
8
4
  NONE = 0,
9
5
  STRING = 1,// TODO(burdon): vs TEXT?
@@ -20,6 +16,7 @@ export type JsonSchemaOptions = {
20
16
  };
21
17
  /**
22
18
  * Convert effect schema to JSON Schema.
19
+ * NOTE: This handles custom annotations.
23
20
  * @param schema
24
21
  */
25
22
  export declare const toJsonSchema: (schema: Schema.Schema.All, options?: JsonSchemaOptions) => JsonSchemaType;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAsBxC,OAAO,EAIL,KAAK,cAAc,EAEpB,MAAM,oBAAoB,CAAC;AAG5B,oBAAY,QAAQ;IAClB,IAAI,IAAI;IACR,MAAM,IAAI,CAAE,yBAAyB;IACrC,MAAM,IAAI;IACV,OAAO,IAAI;IACX,IAAI,IAAI;IACR,GAAG,IAAI;IACP,MAAM,IAAI;IACV,IAAI,IAAI;CACT;AAGD,eAAO,MAAM,UAAU,GAAI,OAAO,QAAQ,KAAG,MAiB5C,CAAC;AAIF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AAGH,eAAO,MAAM,YAAY,GAAI,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,UAAS,iBAAsB,KAAG,cAqBzF,CAAC;AAkEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,cAAc,EAAE,QAAQ,cAAc,CAAC,OAAO,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,YA0GpG,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/json-schema/json-schema.test.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../../src/internal/object/common.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,MAAM,MAAM,kBAAkB,GAAG;IAE/B,OAAO,CAAC,EAAE,IAAI,CAAC;IAEf,MAAM,CAAC,EAAE,IAAI,CAAC;CACf,CAAC;AAEF;;GAEG;AAGH,KAAK,sBAAsB,CACzB,YAAY,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,EACzC,OAAO,SAAS,kBAAkB,IAChC,OAAO,CAAC,SAAS,CAAC,SAAS,OAAO,GAClC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GACjE,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;AAE7D;;GAEG;AAGH,MAAM,MAAM,iBAAiB,CAC3B,YAAY,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,EACzC,OAAO,SAAS,kBAAkB,IAChC,sBAAsB,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,OAAO,GACjG,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GACjF,EAAE,CAAC,CAAC;AAEV,eAAO,MAAM,oBAAoB,GAC/B,UAAU,MAAM,EAChB,SAAS,MAAM,EACf,YAAY,MAAM,CAAC,MAAM,CAAC,YAAY,KACrC,MAAM,CAAC,WAAW,CAAC,GAAG,CAuBxB,CAAC"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../../src/internal/object/common.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAMxC,MAAM,MAAM,kBAAkB,GAAG;IAE/B,OAAO,CAAC,EAAE,IAAI,CAAC;IAEf,MAAM,CAAC,EAAE,IAAI,CAAC;CACf,CAAC;AAEF;;GAEG;AAGH,KAAK,sBAAsB,CACzB,YAAY,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,EACzC,OAAO,SAAS,kBAAkB,IAChC,OAAO,CAAC,SAAS,CAAC,SAAS,OAAO,GAClC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GACjE,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;AAE7D;;GAEG;AAGH,MAAM,MAAM,iBAAiB,CAC3B,YAAY,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,EACzC,OAAO,SAAS,kBAAkB,IAChC,sBAAsB,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,OAAO,GACjG,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GACjF,EAAE,CAAC,CAAC;AAEV,eAAO,MAAM,oBAAoB,GAC/B,UAAU,MAAM,EAChB,SAAS,MAAM,EACf,YAAY,MAAM,CAAC,MAAM,CAAC,YAAY,KACrC,MAAM,CAAC,WAAW,CAAC,GAAG,CAuBxB,CAAC"}