@metaobjectsdev/metadata 0.5.0-rc.1

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 (405) hide show
  1. package/LICENSE +189 -0
  2. package/README.md +29 -0
  3. package/dist/attr-class-map.d.ts +26 -0
  4. package/dist/attr-class-map.d.ts.map +1 -0
  5. package/dist/attr-class-map.js +44 -0
  6. package/dist/attr-class-map.js.map +1 -0
  7. package/dist/attr-schema-validate.d.ts +9 -0
  8. package/dist/attr-schema-validate.d.ts.map +1 -0
  9. package/dist/attr-schema-validate.js +100 -0
  10. package/dist/attr-schema-validate.js.map +1 -0
  11. package/dist/constants.d.ts +208 -0
  12. package/dist/constants.d.ts.map +1 -0
  13. package/dist/constants.js +419 -0
  14. package/dist/constants.js.map +1 -0
  15. package/dist/core/attr/attr-constants.d.ts +12 -0
  16. package/dist/core/attr/attr-constants.d.ts.map +1 -0
  17. package/dist/core/attr/attr-constants.js +27 -0
  18. package/dist/core/attr/attr-constants.js.map +1 -0
  19. package/dist/core/attr/meta-attr-filter.d.ts +10 -0
  20. package/dist/core/attr/meta-attr-filter.d.ts.map +1 -0
  21. package/dist/core/attr/meta-attr-filter.js +56 -0
  22. package/dist/core/attr/meta-attr-filter.js.map +1 -0
  23. package/dist/core/attr/meta-attr-properties.d.ts +9 -0
  24. package/dist/core/attr/meta-attr-properties.d.ts.map +1 -0
  25. package/dist/core/attr/meta-attr-properties.js +22 -0
  26. package/dist/core/attr/meta-attr-properties.js.map +1 -0
  27. package/dist/core/attr/meta-attr-stringarray.d.ts +9 -0
  28. package/dist/core/attr/meta-attr-stringarray.d.ts.map +1 -0
  29. package/dist/core/attr/meta-attr-stringarray.js +29 -0
  30. package/dist/core/attr/meta-attr-stringarray.js.map +1 -0
  31. package/dist/core/attr/meta-attr.d.ts +37 -0
  32. package/dist/core/attr/meta-attr.d.ts.map +1 -0
  33. package/dist/core/attr/meta-attr.js +97 -0
  34. package/dist/core/attr/meta-attr.js.map +1 -0
  35. package/dist/core/export-json.d.ts +29 -0
  36. package/dist/core/export-json.d.ts.map +1 -0
  37. package/dist/core/export-json.js +45 -0
  38. package/dist/core/export-json.js.map +1 -0
  39. package/dist/core/field/field-constants.d.ts +40 -0
  40. package/dist/core/field/field-constants.d.ts.map +1 -0
  41. package/dist/core/field/field-constants.js +66 -0
  42. package/dist/core/field/field-constants.js.map +1 -0
  43. package/dist/core/field/field-schema.d.ts +6 -0
  44. package/dist/core/field/field-schema.d.ts.map +1 -0
  45. package/dist/core/field/field-schema.js +92 -0
  46. package/dist/core/field/field-schema.js.map +1 -0
  47. package/dist/core/field/meta-field.d.ts +50 -0
  48. package/dist/core/field/meta-field.d.ts.map +1 -0
  49. package/dist/core/field/meta-field.js +121 -0
  50. package/dist/core/field/meta-field.js.map +1 -0
  51. package/dist/core/file-meta-data-loader.d.ts +18 -0
  52. package/dist/core/file-meta-data-loader.d.ts.map +1 -0
  53. package/dist/core/file-meta-data-loader.js +81 -0
  54. package/dist/core/file-meta-data-loader.js.map +1 -0
  55. package/dist/core/file-source.d.ts +12 -0
  56. package/dist/core/file-source.d.ts.map +1 -0
  57. package/dist/core/file-source.js +46 -0
  58. package/dist/core/file-source.js.map +1 -0
  59. package/dist/core/identity/identity-constants.d.ts +19 -0
  60. package/dist/core/identity/identity-constants.d.ts.map +1 -0
  61. package/dist/core/identity/identity-constants.js +35 -0
  62. package/dist/core/identity/identity-constants.js.map +1 -0
  63. package/dist/core/identity/identity-schema.d.ts +6 -0
  64. package/dist/core/identity/identity-schema.d.ts.map +1 -0
  65. package/dist/core/identity/identity-schema.js +55 -0
  66. package/dist/core/identity/identity-schema.js.map +1 -0
  67. package/dist/core/identity/meta-identity.d.ts +71 -0
  68. package/dist/core/identity/meta-identity.d.ts.map +1 -0
  69. package/dist/core/identity/meta-identity.js +129 -0
  70. package/dist/core/identity/meta-identity.js.map +1 -0
  71. package/dist/core/index.d.ts +6 -0
  72. package/dist/core/index.d.ts.map +1 -0
  73. package/dist/core/index.js +11 -0
  74. package/dist/core/index.js.map +1 -0
  75. package/dist/core/object/meta-object.d.ts +39 -0
  76. package/dist/core/object/meta-object.d.ts.map +1 -0
  77. package/dist/core/object/meta-object.js +80 -0
  78. package/dist/core/object/meta-object.js.map +1 -0
  79. package/dist/core/object/object-constants.d.ts +5 -0
  80. package/dist/core/object/object-constants.d.ts.map +1 -0
  81. package/dist/core/object/object-constants.js +18 -0
  82. package/dist/core/object/object-constants.js.map +1 -0
  83. package/dist/core/object/object-schema.d.ts +4 -0
  84. package/dist/core/object/object-schema.d.ts.map +1 -0
  85. package/dist/core/object/object-schema.js +5 -0
  86. package/dist/core/object/object-schema.js.map +1 -0
  87. package/dist/core/parser-yaml.d.ts +3 -0
  88. package/dist/core/parser-yaml.d.ts.map +1 -0
  89. package/dist/core/parser-yaml.js +39 -0
  90. package/dist/core/parser-yaml.js.map +1 -0
  91. package/dist/core/query/query-constants.d.ts +20 -0
  92. package/dist/core/query/query-constants.d.ts.map +1 -0
  93. package/dist/core/query/query-constants.js +56 -0
  94. package/dist/core/query/query-constants.js.map +1 -0
  95. package/dist/core/relationship/find-reference.d.ts +22 -0
  96. package/dist/core/relationship/find-reference.d.ts.map +1 -0
  97. package/dist/core/relationship/find-reference.js +29 -0
  98. package/dist/core/relationship/find-reference.js.map +1 -0
  99. package/dist/core/relationship/meta-relationship.d.ts +11 -0
  100. package/dist/core/relationship/meta-relationship.d.ts.map +1 -0
  101. package/dist/core/relationship/meta-relationship.js +27 -0
  102. package/dist/core/relationship/meta-relationship.js.map +1 -0
  103. package/dist/core/relationship/relationship-constants.d.ts +14 -0
  104. package/dist/core/relationship/relationship-constants.d.ts.map +1 -0
  105. package/dist/core/relationship/relationship-constants.js +28 -0
  106. package/dist/core/relationship/relationship-constants.js.map +1 -0
  107. package/dist/core/relationship/relationship-schema.d.ts +4 -0
  108. package/dist/core/relationship/relationship-schema.d.ts.map +1 -0
  109. package/dist/core/relationship/relationship-schema.js +37 -0
  110. package/dist/core/relationship/relationship-schema.js.map +1 -0
  111. package/dist/core/validator/meta-validator.d.ts +29 -0
  112. package/dist/core/validator/meta-validator.d.ts.map +1 -0
  113. package/dist/core/validator/meta-validator.js +49 -0
  114. package/dist/core/validator/meta-validator.js.map +1 -0
  115. package/dist/core/validator/validator-constants.d.ts +11 -0
  116. package/dist/core/validator/validator-constants.d.ts.map +1 -0
  117. package/dist/core/validator/validator-constants.js +25 -0
  118. package/dist/core/validator/validator-constants.js.map +1 -0
  119. package/dist/core/validator/validator-schema.d.ts +4 -0
  120. package/dist/core/validator/validator-schema.d.ts.map +1 -0
  121. package/dist/core/validator/validator-schema.js +38 -0
  122. package/dist/core/validator/validator-schema.js.map +1 -0
  123. package/dist/core/yaml-desugar.d.ts +10 -0
  124. package/dist/core/yaml-desugar.d.ts.map +1 -0
  125. package/dist/core/yaml-desugar.js +99 -0
  126. package/dist/core/yaml-desugar.js.map +1 -0
  127. package/dist/core-attr-schemas.d.ts +22 -0
  128. package/dist/core-attr-schemas.d.ts.map +1 -0
  129. package/dist/core-attr-schemas.js +324 -0
  130. package/dist/core-attr-schemas.js.map +1 -0
  131. package/dist/core-types.d.ts +20 -0
  132. package/dist/core-types.d.ts.map +1 -0
  133. package/dist/core-types.js +225 -0
  134. package/dist/core-types.js.map +1 -0
  135. package/dist/data-converter.d.ts +17 -0
  136. package/dist/data-converter.d.ts.map +1 -0
  137. package/dist/data-converter.js +117 -0
  138. package/dist/data-converter.js.map +1 -0
  139. package/dist/data-type.d.ts +15 -0
  140. package/dist/data-type.d.ts.map +1 -0
  141. package/dist/data-type.js +25 -0
  142. package/dist/data-type.js.map +1 -0
  143. package/dist/db/db-attr-schemas.d.ts +8 -0
  144. package/dist/db/db-attr-schemas.d.ts.map +1 -0
  145. package/dist/db/db-attr-schemas.js +26 -0
  146. package/dist/db/db-attr-schemas.js.map +1 -0
  147. package/dist/db/db-provider.d.ts +3 -0
  148. package/dist/db/db-provider.d.ts.map +1 -0
  149. package/dist/db/db-provider.js +28 -0
  150. package/dist/db/db-provider.js.map +1 -0
  151. package/dist/errors.d.ts +26 -0
  152. package/dist/errors.d.ts.map +1 -0
  153. package/dist/errors.js +59 -0
  154. package/dist/errors.js.map +1 -0
  155. package/dist/index.d.ts +70 -0
  156. package/dist/index.d.ts.map +1 -0
  157. package/dist/index.js +76 -0
  158. package/dist/index.js.map +1 -0
  159. package/dist/loader/meta-data-loader.d.ts +87 -0
  160. package/dist/loader/meta-data-loader.d.ts.map +1 -0
  161. package/dist/loader/meta-data-loader.js +232 -0
  162. package/dist/loader/meta-data-loader.js.map +1 -0
  163. package/dist/loader/meta-data-source.d.ts +23 -0
  164. package/dist/loader/meta-data-source.d.ts.map +1 -0
  165. package/dist/loader/meta-data-source.js +20 -0
  166. package/dist/loader/meta-data-source.js.map +1 -0
  167. package/dist/loader/validation-passes.d.ts +7 -0
  168. package/dist/loader/validation-passes.d.ts.map +1 -0
  169. package/dist/loader/validation-passes.js +244 -0
  170. package/dist/loader/validation-passes.js.map +1 -0
  171. package/dist/meta/find-reference.d.ts +22 -0
  172. package/dist/meta/find-reference.d.ts.map +1 -0
  173. package/dist/meta/find-reference.js +29 -0
  174. package/dist/meta/find-reference.js.map +1 -0
  175. package/dist/meta/meta-attr.d.ts +8 -0
  176. package/dist/meta/meta-attr.d.ts.map +1 -0
  177. package/dist/meta/meta-attr.js +17 -0
  178. package/dist/meta/meta-attr.js.map +1 -0
  179. package/dist/meta/meta-data.d.ts +107 -0
  180. package/dist/meta/meta-data.d.ts.map +1 -0
  181. package/dist/meta/meta-data.js +302 -0
  182. package/dist/meta/meta-data.js.map +1 -0
  183. package/dist/meta/meta-field.d.ts +48 -0
  184. package/dist/meta/meta-field.d.ts.map +1 -0
  185. package/dist/meta/meta-field.js +94 -0
  186. package/dist/meta/meta-field.js.map +1 -0
  187. package/dist/meta/meta-identity.d.ts +71 -0
  188. package/dist/meta/meta-identity.d.ts.map +1 -0
  189. package/dist/meta/meta-identity.js +129 -0
  190. package/dist/meta/meta-identity.js.map +1 -0
  191. package/dist/meta/meta-layout.d.ts +23 -0
  192. package/dist/meta/meta-layout.d.ts.map +1 -0
  193. package/dist/meta/meta-layout.js +45 -0
  194. package/dist/meta/meta-layout.js.map +1 -0
  195. package/dist/meta/meta-object.d.ts +40 -0
  196. package/dist/meta/meta-object.d.ts.map +1 -0
  197. package/dist/meta/meta-object.js +81 -0
  198. package/dist/meta/meta-object.js.map +1 -0
  199. package/dist/meta/meta-origin.d.ts +32 -0
  200. package/dist/meta/meta-origin.d.ts.map +1 -0
  201. package/dist/meta/meta-origin.js +55 -0
  202. package/dist/meta/meta-origin.js.map +1 -0
  203. package/dist/meta/meta-relationship.d.ts +11 -0
  204. package/dist/meta/meta-relationship.d.ts.map +1 -0
  205. package/dist/meta/meta-relationship.js +27 -0
  206. package/dist/meta/meta-relationship.js.map +1 -0
  207. package/dist/meta/meta-root.d.ts +12 -0
  208. package/dist/meta/meta-root.d.ts.map +1 -0
  209. package/dist/meta/meta-root.js +24 -0
  210. package/dist/meta/meta-root.js.map +1 -0
  211. package/dist/meta/meta-source.d.ts +18 -0
  212. package/dist/meta/meta-source.d.ts.map +1 -0
  213. package/dist/meta/meta-source.js +31 -0
  214. package/dist/meta/meta-source.js.map +1 -0
  215. package/dist/meta/meta-validator.d.ts +29 -0
  216. package/dist/meta/meta-validator.d.ts.map +1 -0
  217. package/dist/meta/meta-validator.js +49 -0
  218. package/dist/meta/meta-validator.js.map +1 -0
  219. package/dist/meta/meta-view.d.ts +4 -0
  220. package/dist/meta/meta-view.d.ts.map +1 -0
  221. package/dist/meta/meta-view.js +8 -0
  222. package/dist/meta/meta-view.js.map +1 -0
  223. package/dist/naming.d.ts +27 -0
  224. package/dist/naming.d.ts.map +1 -0
  225. package/dist/naming.js +72 -0
  226. package/dist/naming.js.map +1 -0
  227. package/dist/object-serializer.d.ts +10 -0
  228. package/dist/object-serializer.d.ts.map +1 -0
  229. package/dist/object-serializer.js +128 -0
  230. package/dist/object-serializer.js.map +1 -0
  231. package/dist/overlay.d.ts +2 -0
  232. package/dist/overlay.d.ts.map +1 -0
  233. package/dist/overlay.js +6 -0
  234. package/dist/overlay.js.map +1 -0
  235. package/dist/parser-core.d.ts +47 -0
  236. package/dist/parser-core.d.ts.map +1 -0
  237. package/dist/parser-core.js +516 -0
  238. package/dist/parser-core.js.map +1 -0
  239. package/dist/parser-json.d.ts +4 -0
  240. package/dist/parser-json.d.ts.map +1 -0
  241. package/dist/parser-json.js +19 -0
  242. package/dist/parser-json.js.map +1 -0
  243. package/dist/persistence/db/db-attr-schemas.d.ts +8 -0
  244. package/dist/persistence/db/db-attr-schemas.d.ts.map +1 -0
  245. package/dist/persistence/db/db-attr-schemas.js +28 -0
  246. package/dist/persistence/db/db-attr-schemas.js.map +1 -0
  247. package/dist/persistence/db/db-constants.d.ts +5 -0
  248. package/dist/persistence/db/db-constants.d.ts.map +1 -0
  249. package/dist/persistence/db/db-constants.js +6 -0
  250. package/dist/persistence/db/db-constants.js.map +1 -0
  251. package/dist/persistence/db/db-provider.d.ts +3 -0
  252. package/dist/persistence/db/db-provider.d.ts.map +1 -0
  253. package/dist/persistence/db/db-provider.js +29 -0
  254. package/dist/persistence/db/db-provider.js.map +1 -0
  255. package/dist/persistence/db/db-schema.d.ts +8 -0
  256. package/dist/persistence/db/db-schema.d.ts.map +1 -0
  257. package/dist/persistence/db/db-schema.js +27 -0
  258. package/dist/persistence/db/db-schema.js.map +1 -0
  259. package/dist/persistence/origin/meta-origin.d.ts +32 -0
  260. package/dist/persistence/origin/meta-origin.d.ts.map +1 -0
  261. package/dist/persistence/origin/meta-origin.js +55 -0
  262. package/dist/persistence/origin/meta-origin.js.map +1 -0
  263. package/dist/persistence/origin/origin-constants.d.ts +12 -0
  264. package/dist/persistence/origin/origin-constants.d.ts.map +1 -0
  265. package/dist/persistence/origin/origin-constants.js +27 -0
  266. package/dist/persistence/origin/origin-constants.js.map +1 -0
  267. package/dist/persistence/origin/origin-schema.d.ts +4 -0
  268. package/dist/persistence/origin/origin-schema.d.ts.map +1 -0
  269. package/dist/persistence/origin/origin-schema.js +49 -0
  270. package/dist/persistence/origin/origin-schema.js.map +1 -0
  271. package/dist/persistence/source/meta-source.d.ts +18 -0
  272. package/dist/persistence/source/meta-source.d.ts.map +1 -0
  273. package/dist/persistence/source/meta-source.js +31 -0
  274. package/dist/persistence/source/meta-source.js.map +1 -0
  275. package/dist/persistence/source/source-constants.d.ts +16 -0
  276. package/dist/persistence/source/source-constants.d.ts.map +1 -0
  277. package/dist/persistence/source/source-constants.js +28 -0
  278. package/dist/persistence/source/source-constants.js.map +1 -0
  279. package/dist/presentation/layout/layout-constants.d.ts +10 -0
  280. package/dist/presentation/layout/layout-constants.d.ts.map +1 -0
  281. package/dist/presentation/layout/layout-constants.js +21 -0
  282. package/dist/presentation/layout/layout-constants.js.map +1 -0
  283. package/dist/presentation/layout/layout-schema.d.ts +4 -0
  284. package/dist/presentation/layout/layout-schema.d.ts.map +1 -0
  285. package/dist/presentation/layout/layout-schema.js +46 -0
  286. package/dist/presentation/layout/layout-schema.js.map +1 -0
  287. package/dist/presentation/layout/meta-layout.d.ts +23 -0
  288. package/dist/presentation/layout/meta-layout.d.ts.map +1 -0
  289. package/dist/presentation/layout/meta-layout.js +47 -0
  290. package/dist/presentation/layout/meta-layout.js.map +1 -0
  291. package/dist/presentation/view/meta-view.d.ts +4 -0
  292. package/dist/presentation/view/meta-view.d.ts.map +1 -0
  293. package/dist/presentation/view/meta-view.js +8 -0
  294. package/dist/presentation/view/meta-view.js.map +1 -0
  295. package/dist/presentation/view/view-constants.d.ts +20 -0
  296. package/dist/presentation/view/view-constants.d.ts.map +1 -0
  297. package/dist/presentation/view/view-constants.js +47 -0
  298. package/dist/presentation/view/view-constants.js.map +1 -0
  299. package/dist/presentation/view/view-schema.d.ts +4 -0
  300. package/dist/presentation/view/view-schema.d.ts.map +1 -0
  301. package/dist/presentation/view/view-schema.js +15 -0
  302. package/dist/presentation/view/view-schema.js.map +1 -0
  303. package/dist/provider.d.ts +20 -0
  304. package/dist/provider.d.ts.map +1 -0
  305. package/dist/provider.js +58 -0
  306. package/dist/provider.js.map +1 -0
  307. package/dist/registry.d.ts +89 -0
  308. package/dist/registry.d.ts.map +1 -0
  309. package/dist/registry.js +107 -0
  310. package/dist/registry.js.map +1 -0
  311. package/dist/serializer-json.d.ts +16 -0
  312. package/dist/serializer-json.d.ts.map +1 -0
  313. package/dist/serializer-json.js +154 -0
  314. package/dist/serializer-json.js.map +1 -0
  315. package/dist/shared/base-types.d.ts +23 -0
  316. package/dist/shared/base-types.d.ts.map +1 -0
  317. package/dist/shared/base-types.js +43 -0
  318. package/dist/shared/base-types.js.map +1 -0
  319. package/dist/shared/meta-data.d.ts +123 -0
  320. package/dist/shared/meta-data.d.ts.map +1 -0
  321. package/dist/shared/meta-data.js +365 -0
  322. package/dist/shared/meta-data.js.map +1 -0
  323. package/dist/shared/meta-root.d.ts +12 -0
  324. package/dist/shared/meta-root.d.ts.map +1 -0
  325. package/dist/shared/meta-root.js +24 -0
  326. package/dist/shared/meta-root.js.map +1 -0
  327. package/dist/shared/structural.d.ts +20 -0
  328. package/dist/shared/structural.d.ts.map +1 -0
  329. package/dist/shared/structural.js +49 -0
  330. package/dist/shared/structural.js.map +1 -0
  331. package/dist/subtype-rules.d.ts +8 -0
  332. package/dist/subtype-rules.d.ts.map +1 -0
  333. package/dist/subtype-rules.js +34 -0
  334. package/dist/subtype-rules.js.map +1 -0
  335. package/dist/super-resolve.d.ts +34 -0
  336. package/dist/super-resolve.d.ts.map +1 -0
  337. package/dist/super-resolve.js +124 -0
  338. package/dist/super-resolve.js.map +1 -0
  339. package/package.json +50 -0
  340. package/src/attr-class-map.ts +64 -0
  341. package/src/attr-schema-validate.ts +134 -0
  342. package/src/core/attr/attr-constants.ts +31 -0
  343. package/src/core/attr/meta-attr-filter.ts +67 -0
  344. package/src/core/attr/meta-attr-properties.ts +26 -0
  345. package/src/core/attr/meta-attr-stringarray.ts +31 -0
  346. package/src/core/attr/meta-attr.ts +125 -0
  347. package/src/core/export-json.ts +66 -0
  348. package/src/core/field/field-constants.ts +79 -0
  349. package/src/core/field/field-schema.ts +121 -0
  350. package/src/core/field/meta-field.ts +179 -0
  351. package/src/core/file-meta-data-loader.ts +89 -0
  352. package/src/core/file-source.ts +52 -0
  353. package/src/core/identity/identity-constants.ts +44 -0
  354. package/src/core/identity/identity-schema.ts +80 -0
  355. package/src/core/identity/meta-identity.ts +148 -0
  356. package/src/core/index.ts +12 -0
  357. package/src/core/object/meta-object.ts +151 -0
  358. package/src/core/object/object-constants.ts +21 -0
  359. package/src/core/object/object-schema.ts +7 -0
  360. package/src/core/parser-yaml.ts +54 -0
  361. package/src/core/query/query-constants.ts +66 -0
  362. package/src/core/relationship/find-reference.ts +44 -0
  363. package/src/core/relationship/meta-relationship.ts +36 -0
  364. package/src/core/relationship/relationship-constants.ts +38 -0
  365. package/src/core/relationship/relationship-schema.ts +49 -0
  366. package/src/core/validator/meta-validator.ts +62 -0
  367. package/src/core/validator/validator-constants.ts +31 -0
  368. package/src/core/validator/validator-schema.ts +50 -0
  369. package/src/core/yaml-desugar.ts +145 -0
  370. package/src/core-types.ts +329 -0
  371. package/src/data-converter.ts +125 -0
  372. package/src/data-type.ts +33 -0
  373. package/src/errors.ts +68 -0
  374. package/src/index.ts +165 -0
  375. package/src/loader/meta-data-loader.ts +307 -0
  376. package/src/loader/meta-data-source.ts +35 -0
  377. package/src/loader/validation-passes.ts +370 -0
  378. package/src/naming.ts +86 -0
  379. package/src/object-serializer.ts +153 -0
  380. package/src/overlay.ts +5 -0
  381. package/src/parser-core.ts +815 -0
  382. package/src/parser-json.ts +28 -0
  383. package/src/persistence/db/db-constants.ts +6 -0
  384. package/src/persistence/db/db-provider.ts +36 -0
  385. package/src/persistence/db/db-schema.ts +40 -0
  386. package/src/persistence/origin/meta-origin.ts +67 -0
  387. package/src/persistence/origin/origin-constants.ts +35 -0
  388. package/src/persistence/origin/origin-schema.ts +66 -0
  389. package/src/persistence/source/meta-source.ts +38 -0
  390. package/src/persistence/source/source-constants.ts +35 -0
  391. package/src/presentation/layout/layout-constants.ts +27 -0
  392. package/src/presentation/layout/layout-schema.ts +62 -0
  393. package/src/presentation/layout/meta-layout.ts +61 -0
  394. package/src/presentation/view/meta-view.ts +8 -0
  395. package/src/presentation/view/view-constants.ts +53 -0
  396. package/src/presentation/view/view-schema.ts +21 -0
  397. package/src/provider.ts +85 -0
  398. package/src/registry.ts +190 -0
  399. package/src/serializer-json.ts +210 -0
  400. package/src/shared/base-types.ts +52 -0
  401. package/src/shared/meta-data.ts +443 -0
  402. package/src/shared/meta-root.ts +33 -0
  403. package/src/shared/structural.ts +62 -0
  404. package/src/subtype-rules.ts +56 -0
  405. package/src/super-resolve.ts +147 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,419 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Base type names (the 8 registered base types — Java metaobjects-core vocabulary)
3
+ // ---------------------------------------------------------------------------
4
+ export const TYPE_METADATA = "metadata";
5
+ export const TYPE_OBJECT = "object";
6
+ export const TYPE_FIELD = "field";
7
+ export const TYPE_ATTR = "attr";
8
+ export const TYPE_VALIDATOR = "validator";
9
+ export const TYPE_VIEW = "view";
10
+ export const TYPE_IDENTITY = "identity";
11
+ export const TYPE_RELATIONSHIP = "relationship";
12
+ export const TYPE_LAYOUT = "layout";
13
+ export const TYPE_SOURCE = "source";
14
+ export const TYPE_ORIGIN = "origin";
15
+ export const BASE_TYPES = [
16
+ TYPE_METADATA,
17
+ TYPE_OBJECT,
18
+ TYPE_FIELD,
19
+ TYPE_ATTR,
20
+ TYPE_VALIDATOR,
21
+ TYPE_VIEW,
22
+ TYPE_IDENTITY,
23
+ TYPE_RELATIONSHIP,
24
+ TYPE_LAYOUT,
25
+ TYPE_SOURCE,
26
+ TYPE_ORIGIN,
27
+ ];
28
+ // ---------------------------------------------------------------------------
29
+ // Universal subtype
30
+ // ---------------------------------------------------------------------------
31
+ export const SUBTYPE_BASE = "base";
32
+ // ---------------------------------------------------------------------------
33
+ // Metadata subtypes (1)
34
+ // ---------------------------------------------------------------------------
35
+ /**
36
+ * The metadata document root subtype. The root node is `metadata.root` in the
37
+ * canonical format. (Distinct from the universal SUBTYPE_BASE — the redesigned
38
+ * format spec confirms the root subtype is `root`, not `base`.)
39
+ */
40
+ export const SUBTYPE_ROOT = "root";
41
+ export const METADATA_SUBTYPES = [SUBTYPE_ROOT];
42
+ // ---------------------------------------------------------------------------
43
+ // Object subtypes (cross-language, conceptual)
44
+ // ---------------------------------------------------------------------------
45
+ //
46
+ // - base : abstract template (no runtime semantics)
47
+ // - entity : persistent record (typically has @primary identity)
48
+ // - value : value-object (no identity; equality by content)
49
+ //
50
+ // Java runtime strategies (pojo/map/proxy) live on @javaRuntime, not subType.
51
+ export const OBJECT_SUBTYPE_ENTITY = "entity";
52
+ export const OBJECT_SUBTYPE_VALUE = "value";
53
+ export const OBJECT_SUBTYPES = [
54
+ SUBTYPE_BASE,
55
+ OBJECT_SUBTYPE_ENTITY,
56
+ OBJECT_SUBTYPE_VALUE,
57
+ ];
58
+ // ---------------------------------------------------------------------------
59
+ // Field subtypes (15)
60
+ // ---------------------------------------------------------------------------
61
+ export const FIELD_SUBTYPE_STRING = "string";
62
+ export const FIELD_SUBTYPE_INT = "int";
63
+ export const FIELD_SUBTYPE_SHORT = "short";
64
+ export const FIELD_SUBTYPE_BYTE = "byte";
65
+ export const FIELD_SUBTYPE_LONG = "long";
66
+ export const FIELD_SUBTYPE_DOUBLE = "double";
67
+ export const FIELD_SUBTYPE_FLOAT = "float";
68
+ export const FIELD_SUBTYPE_DECIMAL = "decimal";
69
+ export const FIELD_SUBTYPE_BOOLEAN = "boolean";
70
+ export const FIELD_SUBTYPE_DATE = "date";
71
+ export const FIELD_SUBTYPE_TIME = "time";
72
+ export const FIELD_SUBTYPE_TIMESTAMP = "timestamp";
73
+ export const FIELD_SUBTYPE_OBJECT = "object";
74
+ export const FIELD_SUBTYPE_CLASS = "class";
75
+ export const FIELD_SUBTYPE_CURRENCY = "currency";
76
+ export const FIELD_SUBTYPES = [
77
+ SUBTYPE_BASE,
78
+ FIELD_SUBTYPE_STRING,
79
+ FIELD_SUBTYPE_INT,
80
+ FIELD_SUBTYPE_SHORT,
81
+ FIELD_SUBTYPE_BYTE,
82
+ FIELD_SUBTYPE_LONG,
83
+ FIELD_SUBTYPE_DOUBLE,
84
+ FIELD_SUBTYPE_FLOAT,
85
+ FIELD_SUBTYPE_DECIMAL,
86
+ FIELD_SUBTYPE_BOOLEAN,
87
+ FIELD_SUBTYPE_DATE,
88
+ FIELD_SUBTYPE_TIME,
89
+ FIELD_SUBTYPE_TIMESTAMP,
90
+ FIELD_SUBTYPE_OBJECT,
91
+ FIELD_SUBTYPE_CLASS,
92
+ FIELD_SUBTYPE_CURRENCY,
93
+ ];
94
+ // ---------------------------------------------------------------------------
95
+ // Attr subtypes (9)
96
+ // ---------------------------------------------------------------------------
97
+ export const ATTR_SUBTYPE_STRING = "string";
98
+ export const ATTR_SUBTYPE_INT = "int";
99
+ export const ATTR_SUBTYPE_LONG = "long";
100
+ export const ATTR_SUBTYPE_DOUBLE = "double";
101
+ export const ATTR_SUBTYPE_BOOLEAN = "boolean";
102
+ export const ATTR_SUBTYPE_CLASS = "class";
103
+ export const ATTR_SUBTYPE_PROPERTIES = "properties";
104
+ export const ATTR_SUBTYPE_STRINGARRAY = "stringarray";
105
+ export const ATTR_SUBTYPES = [
106
+ SUBTYPE_BASE,
107
+ ATTR_SUBTYPE_STRING,
108
+ ATTR_SUBTYPE_INT,
109
+ ATTR_SUBTYPE_LONG,
110
+ ATTR_SUBTYPE_DOUBLE,
111
+ ATTR_SUBTYPE_BOOLEAN,
112
+ ATTR_SUBTYPE_CLASS,
113
+ ATTR_SUBTYPE_PROPERTIES,
114
+ ATTR_SUBTYPE_STRINGARRAY,
115
+ ];
116
+ // ---------------------------------------------------------------------------
117
+ // Validator subtypes (6)
118
+ // ---------------------------------------------------------------------------
119
+ export const VALIDATOR_SUBTYPE_REQUIRED = "required";
120
+ export const VALIDATOR_SUBTYPE_LENGTH = "length";
121
+ export const VALIDATOR_SUBTYPE_REGEX = "regex";
122
+ export const VALIDATOR_SUBTYPE_NUMERIC = "numeric";
123
+ export const VALIDATOR_SUBTYPE_ARRAY = "array";
124
+ export const VALIDATOR_SUBTYPES = [
125
+ SUBTYPE_BASE,
126
+ VALIDATOR_SUBTYPE_REQUIRED,
127
+ VALIDATOR_SUBTYPE_LENGTH,
128
+ VALIDATOR_SUBTYPE_REGEX,
129
+ VALIDATOR_SUBTYPE_NUMERIC,
130
+ VALIDATOR_SUBTYPE_ARRAY,
131
+ ];
132
+ // ---------------------------------------------------------------------------
133
+ // View subtypes (13)
134
+ //
135
+ // The view's subType IS the UI control type. Each control kind has its own
136
+ // expected attrs (placeholder, maxLength, options, etc.) — runtime-ts
137
+ // surfaces them as opaque Record<string, unknown>; UI layers interpret.
138
+ // Mirrors metaobjects-dynamic/web/.../html/*View.java naming.
139
+ // ---------------------------------------------------------------------------
140
+ export const VIEW_SUBTYPE_TEXT = "text";
141
+ export const VIEW_SUBTYPE_TEXTAREA = "textarea";
142
+ export const VIEW_SUBTYPE_DATE = "date";
143
+ export const VIEW_SUBTYPE_MONTH = "month";
144
+ export const VIEW_SUBTYPE_HOTLINK = "hotlink";
145
+ export const VIEW_SUBTYPE_DROPDOWN = "dropdown";
146
+ export const VIEW_SUBTYPE_RADIO = "radio";
147
+ export const VIEW_SUBTYPE_CHECKBOX = "checkbox";
148
+ export const VIEW_SUBTYPE_NUMBER = "number";
149
+ export const VIEW_SUBTYPE_PASSWORD = "password";
150
+ export const VIEW_SUBTYPE_HIDDEN = "hidden";
151
+ export const VIEW_SUBTYPE_WEB = "web"; // abstract base for web-rendered views
152
+ export const VIEW_SUBTYPE_CURRENCY = "currency";
153
+ export const VIEW_SUBTYPES = [
154
+ SUBTYPE_BASE,
155
+ VIEW_SUBTYPE_TEXT,
156
+ VIEW_SUBTYPE_TEXTAREA,
157
+ VIEW_SUBTYPE_DATE,
158
+ VIEW_SUBTYPE_MONTH,
159
+ VIEW_SUBTYPE_HOTLINK,
160
+ VIEW_SUBTYPE_DROPDOWN,
161
+ VIEW_SUBTYPE_RADIO,
162
+ VIEW_SUBTYPE_CHECKBOX,
163
+ VIEW_SUBTYPE_NUMBER,
164
+ VIEW_SUBTYPE_PASSWORD,
165
+ VIEW_SUBTYPE_HIDDEN,
166
+ VIEW_SUBTYPE_WEB,
167
+ VIEW_SUBTYPE_CURRENCY,
168
+ ];
169
+ // ---------------------------------------------------------------------------
170
+ // Layout type — object-level UI surfaces (replaces Project B's object-attached
171
+ // data-grid view subtype; views are now strictly field-level per Java parity).
172
+ // ---------------------------------------------------------------------------
173
+ export const LAYOUT_SUBTYPE_DATA_GRID = "dataGrid";
174
+ export const LAYOUT_SUBTYPES = [
175
+ SUBTYPE_BASE,
176
+ LAYOUT_SUBTYPE_DATA_GRID,
177
+ ];
178
+ // ---------------------------------------------------------------------------
179
+ // Layout attrs (on dataGrid layouts)
180
+ // ---------------------------------------------------------------------------
181
+ export const LAYOUT_DATA_GRID_ATTR_PAGE_SIZE = "pageSize";
182
+ export const LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_FIELD = "defaultSortField";
183
+ export const LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_ORDER = "defaultSortOrder";
184
+ export const LAYOUT_DATA_GRID_ATTR_FILTERABLE = "filterable";
185
+ export const LAYOUT_DATA_GRID_ATTR_FILTER = "filter";
186
+ export const LAYOUT_DATA_GRID_ATTR_COLUMNS = "columns";
187
+ // ---------------------------------------------------------------------------
188
+ // View attrs (on currency views)
189
+ // ---------------------------------------------------------------------------
190
+ /** BCP 47 locale code on a view[currency]. Defaults to "en-US" when omitted. */
191
+ export const VIEW_CURRENCY_ATTR_LOCALE = "locale";
192
+ /** Default BCP 47 locale code when @locale is omitted on a view[currency]. */
193
+ export const VIEW_CURRENCY_ATTR_LOCALE_DEFAULT = "en-US";
194
+ // ---------------------------------------------------------------------------
195
+ // Identity subtypes (2 — NO base; Java doesn't register one)
196
+ // ---------------------------------------------------------------------------
197
+ export const IDENTITY_SUBTYPE_PRIMARY = "primary";
198
+ export const IDENTITY_SUBTYPE_SECONDARY = "secondary";
199
+ export const IDENTITY_SUBTYPE_REFERENCE = "reference";
200
+ export const IDENTITY_SUBTYPES = [
201
+ IDENTITY_SUBTYPE_PRIMARY,
202
+ IDENTITY_SUBTYPE_SECONDARY,
203
+ IDENTITY_SUBTYPE_REFERENCE,
204
+ ];
205
+ // ---------------------------------------------------------------------------
206
+ // Relationship subtypes (4)
207
+ // ---------------------------------------------------------------------------
208
+ export const RELATIONSHIP_SUBTYPE_ASSOCIATION = "association";
209
+ export const RELATIONSHIP_SUBTYPE_AGGREGATION = "aggregation";
210
+ export const RELATIONSHIP_SUBTYPE_COMPOSITION = "composition";
211
+ export const RELATIONSHIP_SUBTYPES = [
212
+ SUBTYPE_BASE,
213
+ RELATIONSHIP_SUBTYPE_ASSOCIATION,
214
+ RELATIONSHIP_SUBTYPE_AGGREGATION,
215
+ RELATIONSHIP_SUBTYPE_COMPOSITION,
216
+ ];
217
+ // ---------------------------------------------------------------------------
218
+ // Reserved structural body keys (redesigned format — NOT @-prefixed, NOT attrs)
219
+ //
220
+ // Every node body is a map whose only permitted non-@ keys are these. The
221
+ // canonical body-key order is: name, package, extends, abstract, overlay,
222
+ // isArray, @-attrs (alphabetical), children.
223
+ // ---------------------------------------------------------------------------
224
+ export const RESERVED_KEY_NAME = "name";
225
+ export const RESERVED_KEY_PACKAGE = "package";
226
+ export const RESERVED_KEY_EXTENDS = "extends"; // the supertype reference
227
+ export const RESERVED_KEY_ABSTRACT = "abstract"; // true → the node is abstract
228
+ export const RESERVED_KEY_OVERLAY = "overlay"; // true → re-opens an existing same-named node
229
+ export const RESERVED_KEY_IS_ARRAY = "isArray"; // true → the node is an array
230
+ export const RESERVED_KEY_CHILDREN = "children";
231
+ /** attr-child-node body key carrying the typed value. */
232
+ export const RESERVED_KEY_VALUE = "value";
233
+ export const RESERVED_KEYS = new Set([
234
+ RESERVED_KEY_NAME,
235
+ RESERVED_KEY_PACKAGE,
236
+ RESERVED_KEY_EXTENDS,
237
+ RESERVED_KEY_ABSTRACT,
238
+ RESERVED_KEY_OVERLAY,
239
+ RESERVED_KEY_IS_ARRAY,
240
+ RESERVED_KEY_CHILDREN,
241
+ RESERVED_KEY_VALUE,
242
+ ]);
243
+ // ---------------------------------------------------------------------------
244
+ // JSON document special keys (top-level, ignored during wrapper-key detection)
245
+ // ---------------------------------------------------------------------------
246
+ export const JSON_KEY_SCHEMA = "$schema";
247
+ // ---------------------------------------------------------------------------
248
+ // Inline attribute prefix + fused type.subType key separator
249
+ // ---------------------------------------------------------------------------
250
+ export const ATTR_PREFIX = "@";
251
+ /** Separator fusing type and subType in a node's wrapper key (`object.entity`). */
252
+ export const TYPE_SUBTYPE_SEPARATOR = ".";
253
+ // ---------------------------------------------------------------------------
254
+ // Package path conventions
255
+ // ---------------------------------------------------------------------------
256
+ /** Separator between package segments and between package and name. */
257
+ export const PACKAGE_SEPARATOR = "::";
258
+ /** Relative-reference "go up one level" marker. */
259
+ export const PACKAGE_PARENT = "..";
260
+ // ---------------------------------------------------------------------------
261
+ // Wildcard for child-rule matching
262
+ // ---------------------------------------------------------------------------
263
+ export const CHILD_RULE_WILDCARD = "*";
264
+ // ---------------------------------------------------------------------------
265
+ // Codegen / runtime attribute keys
266
+ //
267
+ // These are the attribute names referenced by codegen-ts, runtime-ts, and
268
+ // migrate-ts when reading metadata. Centralized here for typo-safety and
269
+ // cross-language parity (Java metaobjects-core uses analogous string
270
+ // constants for the same attribute names).
271
+ // ---------------------------------------------------------------------------
272
+ // Identity attrs
273
+ export const IDENTITY_ATTR_FIELDS = "fields";
274
+ export const IDENTITY_ATTR_GENERATION = "generation";
275
+ /** On secondary identities: true → uniqueIndex; false/absent → index. Defaults to true for back-compat. */
276
+ export const IDENTITY_ATTR_UNIQUE = "unique";
277
+ /** Identity-reference attr: target entity (bare or dotted `Entity.field` / `Entity.fA,fB`). */
278
+ export const IDENTITY_REFERENCE_ATTR_REFERENCES = "references";
279
+ /** Identity-reference attr: physical-enforcement flag. Default true → hard FK constraint; false → logical-only reference. */
280
+ export const IDENTITY_REFERENCE_ATTR_ENFORCE = "enforce";
281
+ // Relationship attrs
282
+ export const RELATIONSHIP_ATTR_CARDINALITY = "cardinality";
283
+ export const RELATIONSHIP_ATTR_OBJECT_REF = "objectRef";
284
+ export const RELATIONSHIP_ATTR_JOIN_ENTITY = "joinEntity"; // N:M cardinality
285
+ export const RELATIONSHIP_ATTR_JOIN_FIELDS = "joinFields"; // N:M cardinality
286
+ // Field-level attrs (used by codegen-ts column mapper)
287
+ export const FIELD_ATTR_REQUIRED = "required";
288
+ export const FIELD_ATTR_UNIQUE = "unique";
289
+ export const FIELD_ATTR_DEFAULT = "default";
290
+ export const FIELD_ATTR_MAX_LENGTH = "maxLength";
291
+ export const FIELD_ATTR_DB_COLUMN = "dbColumn";
292
+ export const FIELD_ATTR_PRECISION = "precision";
293
+ export const FIELD_ATTR_SCALE = "scale";
294
+ export const FIELD_ATTR_FILTERABLE = "filterable";
295
+ export const FIELD_ATTR_SORTABLE = "sortable";
296
+ export const FIELD_ATTR_SORTABLE_DEFAULT_ORDER = "sortableDefaultOrder";
297
+ /** When true, suppress the @filterable-without-index Loader warning (Project D drift check). */
298
+ export const FIELD_ATTR_DB_INDEXED = "db.indexed";
299
+ /** ISO 4217 currency code on a currency-subtype field. Defaults to "USD" when omitted. */
300
+ export const FIELD_ATTR_CURRENCY = "currency";
301
+ /** Default ISO 4217 currency code when @currency is omitted on a currency field. */
302
+ export const FIELD_ATTR_CURRENCY_DEFAULT = "USD";
303
+ /** Auto-set semantics on a timestamp field. Values: "onCreate" | "onUpdate". */
304
+ export const FIELD_ATTR_AUTO_SET = "autoSet";
305
+ /** Name (or FQN) of the target object an object-typed field nests. Same wire
306
+ * spelling as the relationship `@objectRef` — Java's single ATTR_OBJECT_REF. */
307
+ export const FIELD_ATTR_OBJECT_REF = "objectRef";
308
+ export const AUTO_SET_ON_CREATE = "onCreate";
309
+ export const AUTO_SET_ON_UPDATE = "onUpdate";
310
+ export const AUTO_SET_VALUES = [AUTO_SET_ON_CREATE, AUTO_SET_ON_UPDATE];
311
+ // Sort order values (used by @sortableDefaultOrder on fields and @defaultSortOrder on dataGrid layouts)
312
+ export const SORT_ORDER_ASC = "asc";
313
+ export const SORT_ORDER_DESC = "desc";
314
+ export const SORT_ORDER_VALUES = [SORT_ORDER_ASC, SORT_ORDER_DESC];
315
+ // Java runtime materialization strategies (values for @javaRuntime on objects)
316
+ export const OBJECT_JAVA_RUNTIME_POJO = "pojo";
317
+ export const OBJECT_JAVA_RUNTIME_MAP = "map";
318
+ export const OBJECT_JAVA_RUNTIME_PROXY = "proxy";
319
+ export const OBJECT_JAVA_RUNTIME_VALUES = [
320
+ OBJECT_JAVA_RUNTIME_POJO,
321
+ OBJECT_JAVA_RUNTIME_MAP,
322
+ OBJECT_JAVA_RUNTIME_PROXY,
323
+ ];
324
+ // Validator attr keys (used by codegen-ts when reading validator children)
325
+ export const VALIDATOR_ATTR_PATTERN = "pattern";
326
+ export const VALIDATOR_ATTR_MIN = "min";
327
+ export const VALIDATOR_ATTR_MAX = "max";
328
+ // Identity generation strategies (values for IDENTITY_ATTR_GENERATION)
329
+ export const GENERATION_INCREMENT = "increment";
330
+ export const GENERATION_UUID = "uuid";
331
+ export const GENERATION_ASSIGNED = "assigned";
332
+ export const GENERATION_VALUES = [
333
+ GENERATION_INCREMENT,
334
+ GENERATION_UUID,
335
+ GENERATION_ASSIGNED,
336
+ ];
337
+ // Relationship cardinality values (for RELATIONSHIP_ATTR_CARDINALITY)
338
+ export const CARDINALITY_ONE = "one";
339
+ export const CARDINALITY_MANY = "many";
340
+ export const CARDINALITY_VALUES = [CARDINALITY_ONE, CARDINALITY_MANY];
341
+ // ---------------------------------------------------------------------------
342
+ // Filter operators (Project D) — shared source of truth across server +
343
+ // codegen. Each subtype declares which operators are legal for fields of that
344
+ // type. Server allowlist generation + TS type generation + codegen-time grid
345
+ // validation all import from here.
346
+ // ---------------------------------------------------------------------------
347
+ export const FILTER_OPS = [
348
+ "eq", "ne", "gt", "gte", "lt", "lte", "in", "like", "isNull",
349
+ ];
350
+ export const OPS_BY_SUBTYPE = {
351
+ string: ["eq", "ne", "in", "like", "isNull"],
352
+ int: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
353
+ short: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
354
+ byte: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
355
+ long: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
356
+ double: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
357
+ float: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
358
+ decimal: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
359
+ boolean: ["eq", "isNull"],
360
+ date: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
361
+ time: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
362
+ timestamp: ["eq", "ne", "gt", "gte", "lt", "lte", "in", "isNull"],
363
+ };
364
+ export function opsForSubType(subType) {
365
+ return OPS_BY_SUBTYPE[subType] ?? [];
366
+ }
367
+ // Object-level attrs
368
+ /** Java runtime strategy for an object. Values: "pojo" | "map" | "proxy". */
369
+ export const OBJECT_ATTR_JAVA_RUNTIME = "javaRuntime";
370
+ // ---------------------------------------------------------------------------
371
+ // Source type — declares where an object's data lives (Project E).
372
+ // dbTable / dbView ship in v1. Multiple sources per object are allowed
373
+ // and meaningful (write-through CQRS: dbTable for writes + dbView for reads).
374
+ // ---------------------------------------------------------------------------
375
+ export const SOURCE_SUBTYPE_DB_TABLE = "dbTable";
376
+ export const SOURCE_SUBTYPE_DB_VIEW = "dbView";
377
+ export const SOURCE_SUBTYPES = [
378
+ SUBTYPE_BASE,
379
+ SOURCE_SUBTYPE_DB_TABLE,
380
+ SOURCE_SUBTYPE_DB_VIEW,
381
+ ];
382
+ // Source attrs — both dbTable and dbView use @name for the SQL identifier
383
+ // (table name and view name respectively). Same key for ergonomic consistency.
384
+ export const SOURCE_DB_TABLE_ATTR_NAME = "name";
385
+ export const SOURCE_DB_VIEW_ATTR_NAME = "name";
386
+ /** Shared @name attr key for MetaSource (covers both dbTable and dbView). Use this
387
+ * in generic source accessors instead of the subtype-specific aliases above. */
388
+ export const SOURCE_ATTR_NAME = "name";
389
+ /** Optional DB schema attr on source[dbTable] / source[dbView]. Postgres uses
390
+ * this to namespace tables/views. SQLite has no schema concept and rejects
391
+ * any non-default value. Default for Postgres: "public". */
392
+ export const SOURCE_ATTR_SCHEMA = "schema";
393
+ /** Default Postgres schema when @schema is omitted from a source. */
394
+ export const DEFAULT_DB_SCHEMA_POSTGRES = "public";
395
+ // ---------------------------------------------------------------------------
396
+ // Origin type — field-level provenance (Project E).
397
+ //
398
+ // Origin is a child of `field`. Says "this field's value comes from there."
399
+ // passthrough: from <Entity.field> [via <relationship path>]
400
+ // aggregate: <agg> of <Entity.field> via <relationship path>
401
+ //
402
+ // ---------------------------------------------------------------------------
403
+ export const ORIGIN_SUBTYPE_PASSTHROUGH = "passthrough";
404
+ export const ORIGIN_SUBTYPE_AGGREGATE = "aggregate";
405
+ export const ORIGIN_SUBTYPES = [
406
+ SUBTYPE_BASE,
407
+ ORIGIN_SUBTYPE_PASSTHROUGH,
408
+ ORIGIN_SUBTYPE_AGGREGATE,
409
+ ];
410
+ // passthrough attrs
411
+ export const ORIGIN_PASSTHROUGH_ATTR_FROM = "from";
412
+ export const ORIGIN_PASSTHROUGH_ATTR_VIA = "via";
413
+ // aggregate attrs
414
+ export const ORIGIN_AGGREGATE_ATTR_AGG = "agg";
415
+ export const ORIGIN_AGGREGATE_ATTR_OF = "of";
416
+ export const ORIGIN_AGGREGATE_ATTR_VIA = "via";
417
+ // aggregate function vocabulary
418
+ export const AGGREGATE_FUNCTIONS = ["count", "sum", "avg", "min", "max"];
419
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export declare const ATTR_SUBTYPE_STRING = "string";
2
+ export declare const ATTR_SUBTYPE_INT = "int";
3
+ export declare const ATTR_SUBTYPE_LONG = "long";
4
+ export declare const ATTR_SUBTYPE_DOUBLE = "double";
5
+ export declare const ATTR_SUBTYPE_BOOLEAN = "boolean";
6
+ export declare const ATTR_SUBTYPE_CLASS = "class";
7
+ export declare const ATTR_SUBTYPE_PROPERTIES = "properties";
8
+ export declare const ATTR_SUBTYPE_STRINGARRAY = "stringarray";
9
+ export declare const ATTR_SUBTYPE_FILTER = "filter";
10
+ export declare const ATTR_SUBTYPES: readonly ["base", "string", "int", "long", "double", "boolean", "class", "properties", "stringarray", "filter"];
11
+ export type AttrSubType = (typeof ATTR_SUBTYPES)[number];
12
+ //# sourceMappingURL=attr-constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attr-constants.d.ts","sourceRoot":"","sources":["../../../src/core/attr/attr-constants.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,mBAAmB,WAAW,CAAC;AAC5C,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AACtC,eAAO,MAAM,iBAAiB,SAAS,CAAC;AACxC,eAAO,MAAM,mBAAmB,WAAW,CAAC;AAC5C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAC9C,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAC1C,eAAO,MAAM,uBAAuB,eAAe,CAAC;AACpD,eAAO,MAAM,wBAAwB,gBAAgB,CAAC;AACtD,eAAO,MAAM,mBAAmB,WAAW,CAAC;AAE5C,eAAO,MAAM,aAAa,iHAWhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ // Attr concern constants — subtypes for the attr.* type family.
2
+ import { SUBTYPE_BASE } from "../../shared/base-types.js";
3
+ // ---------------------------------------------------------------------------
4
+ // Attr subtypes (10)
5
+ // ---------------------------------------------------------------------------
6
+ export const ATTR_SUBTYPE_STRING = "string";
7
+ export const ATTR_SUBTYPE_INT = "int";
8
+ export const ATTR_SUBTYPE_LONG = "long";
9
+ export const ATTR_SUBTYPE_DOUBLE = "double";
10
+ export const ATTR_SUBTYPE_BOOLEAN = "boolean";
11
+ export const ATTR_SUBTYPE_CLASS = "class";
12
+ export const ATTR_SUBTYPE_PROPERTIES = "properties";
13
+ export const ATTR_SUBTYPE_STRINGARRAY = "stringarray";
14
+ export const ATTR_SUBTYPE_FILTER = "filter";
15
+ export const ATTR_SUBTYPES = [
16
+ SUBTYPE_BASE,
17
+ ATTR_SUBTYPE_STRING,
18
+ ATTR_SUBTYPE_INT,
19
+ ATTR_SUBTYPE_LONG,
20
+ ATTR_SUBTYPE_DOUBLE,
21
+ ATTR_SUBTYPE_BOOLEAN,
22
+ ATTR_SUBTYPE_CLASS,
23
+ ATTR_SUBTYPE_PROPERTIES,
24
+ ATTR_SUBTYPE_STRINGARRAY,
25
+ ATTR_SUBTYPE_FILTER,
26
+ ];
27
+ //# sourceMappingURL=attr-constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attr-constants.js","sourceRoot":"","sources":["../../../src/core/attr/attr-constants.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AAC5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AACtC,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACxC,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AAC5C,MAAM,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAAC;AAC9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAC1C,MAAM,CAAC,MAAM,uBAAuB,GAAG,YAAY,CAAC;AACpD,MAAM,CAAC,MAAM,wBAAwB,GAAG,aAAa,CAAC;AACtD,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AAE5C,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,YAAY;IACZ,mBAAmB;IACnB,gBAAgB;IAChB,iBAAiB;IACjB,mBAAmB;IACnB,oBAAoB;IACpB,kBAAkB;IAClB,uBAAuB;IACvB,wBAAwB;IACxB,mBAAmB;CACX,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { MetaAttr, type ValueError } from "./meta-attr.js";
2
+ import { type AttrValue } from "../../shared/meta-data.js";
3
+ import { type DataType } from "../../data-type.js";
4
+ export declare class FilterAttr extends MetaAttr {
5
+ get dataType(): DataType;
6
+ coerce(raw: unknown): AttrValue;
7
+ desugar(value: AttrValue): AttrValue;
8
+ validateValue(value: AttrValue): ValueError[];
9
+ }
10
+ //# sourceMappingURL=meta-attr-filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta-attr-filter.d.ts","sourceRoot":"","sources":["../../../src/core/attr/meta-attr-filter.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,KAAK,UAAU,EAAmB,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,KAAK,SAAS,EAAkC,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAoB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAWrE,qBAAa,UAAW,SAAQ,QAAQ;IACtC,IAAa,QAAQ,IAAI,QAAQ,CAEhC;IAEQ,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS;IAM/B,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IAKpC,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,EAAE;CAKvD"}
@@ -0,0 +1,56 @@
1
+ // FilterAttr — attr subtype `filter`. Object-shaped value; desugars a preset
2
+ // filter to canonical `{ field: { op: value } }` form (scalar→eq, array→in,
3
+ // null→isNull; or/and recurse). Moved here from parser-core.ts
4
+ // `normalizeFilterAttr` / `desugarFilterObject` / `desugarClause`.
5
+ import { MetaAttr, runtimeTypeName } from "./meta-attr.js";
6
+ import {} from "../../shared/meta-data.js";
7
+ import { DATA_TYPE_OBJECT } from "../../data-type.js";
8
+ import { ATTR_SUBTYPE_FILTER } from "./attr-constants.js";
9
+ import { FILTER_OP_EQ, FILTER_OP_IN, FILTER_OP_IS_NULL, FILTER_COMPOSE_OR, FILTER_COMPOSE_AND, } from "../query/query-constants.js";
10
+ import { registerAttrClass } from "../../attr-class-map.js";
11
+ export class FilterAttr extends MetaAttr {
12
+ get dataType() {
13
+ return DATA_TYPE_OBJECT;
14
+ }
15
+ coerce(raw) {
16
+ // Stored verbatim: an object is the canonical shape; a non-object (e.g. a
17
+ // legacy JSON string) is passed through unchanged so validateValue rejects it.
18
+ return raw;
19
+ }
20
+ desugar(value) {
21
+ if (typeof value !== "object" || value === null || Array.isArray(value))
22
+ return value;
23
+ return desugarFilterObject(value);
24
+ }
25
+ validateValue(value) {
26
+ return typeof value === "object" && value !== null && !Array.isArray(value)
27
+ ? []
28
+ : [{ message: `attribute '@${this.name}' must be of type 'filter' but got ${runtimeTypeName(value)}` }];
29
+ }
30
+ }
31
+ function desugarFilterObject(filter) {
32
+ const out = {};
33
+ for (const [key, raw] of Object.entries(filter)) {
34
+ if (key === FILTER_COMPOSE_OR || key === FILTER_COMPOSE_AND) {
35
+ out[key] = Array.isArray(raw)
36
+ ? raw.map((sub) => typeof sub === "object" && sub !== null && !Array.isArray(sub)
37
+ ? desugarFilterObject(sub)
38
+ : sub)
39
+ : raw;
40
+ continue;
41
+ }
42
+ out[key] = desugarClause(raw);
43
+ }
44
+ return out;
45
+ }
46
+ function desugarClause(raw) {
47
+ if (raw === null)
48
+ return { [FILTER_OP_IS_NULL]: true };
49
+ if (Array.isArray(raw))
50
+ return { [FILTER_OP_IN]: raw };
51
+ if (typeof raw === "object")
52
+ return raw;
53
+ return { [FILTER_OP_EQ]: raw };
54
+ }
55
+ registerAttrClass(ATTR_SUBTYPE_FILTER, FilterAttr);
56
+ //# sourceMappingURL=meta-attr-filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta-attr-filter.js","sourceRoot":"","sources":["../../../src/core/attr/meta-attr-filter.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,4EAA4E;AAC5E,+DAA+D;AAC/D,mEAAmE;AAEnE,OAAO,EAAE,QAAQ,EAAmB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAkD,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAiB,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,OAAO,UAAW,SAAQ,QAAQ;IACtC,IAAa,QAAQ;QACnB,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEQ,MAAM,CAAC,GAAY;QAC1B,0EAA0E;QAC1E,+EAA+E;QAC/E,OAAO,GAAgB,CAAC;IAC1B,CAAC;IAEQ,OAAO,CAAC,KAAgB;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACtF,OAAO,mBAAmB,CAAC,KAAmB,CAAC,CAAC;IAClD,CAAC;IAEQ,aAAa,CAAC,KAAgB;QACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACzE,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,IAAI,CAAC,IAAI,sCAAsC,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5G,CAAC;CACF;AAED,SAAS,mBAAmB,CAAC,MAAkB;IAC7C,MAAM,GAAG,GAA6B,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,IAAI,GAAG,KAAK,iBAAiB,IAAI,GAAG,KAAK,kBAAkB,EAAE,CAAC;YAC5D,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;gBAC3B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAa,EAAE,EAAE,CACxB,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;oBAC5D,CAAC,CAAC,mBAAmB,CAAC,GAAiB,CAAC;oBACxC,CAAC,CAAC,GAAG,CACR;gBACH,CAAC,CAAE,GAAgB,CAAC;YACtB,SAAS;QACX,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,aAAa,CAAC,GAAa;IAClC,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC;IACvD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC;IACvD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAiB,CAAC;IACtD,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC;AACjC,CAAC;AAED,iBAAiB,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { MetaAttr, type ValueError } from "./meta-attr.js";
2
+ import { type AttrValue } from "../../shared/meta-data.js";
3
+ import { type DataType } from "../../data-type.js";
4
+ export declare class PropertiesAttr extends MetaAttr {
5
+ get dataType(): DataType;
6
+ coerce(raw: unknown): AttrValue;
7
+ validateValue(value: AttrValue): ValueError[];
8
+ }
9
+ //# sourceMappingURL=meta-attr-properties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta-attr-properties.d.ts","sourceRoot":"","sources":["../../../src/core/attr/meta-attr-properties.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,KAAK,UAAU,EAAmB,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAoB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAIrE,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,IAAa,QAAQ,IAAI,QAAQ,CAEhC;IAEQ,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS;IAI/B,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,EAAE;CAKvD"}
@@ -0,0 +1,22 @@
1
+ // PropertiesAttr — attr subtype `properties`. Object-shaped value (a string
2
+ // bag / arbitrary JSON object). No desugar (identity); object validation.
3
+ import { MetaAttr, runtimeTypeName } from "./meta-attr.js";
4
+ import {} from "../../shared/meta-data.js";
5
+ import { DATA_TYPE_OBJECT } from "../../data-type.js";
6
+ import { registerAttrClass } from "../../attr-class-map.js";
7
+ import { ATTR_SUBTYPE_PROPERTIES } from "./attr-constants.js";
8
+ export class PropertiesAttr extends MetaAttr {
9
+ get dataType() {
10
+ return DATA_TYPE_OBJECT;
11
+ }
12
+ coerce(raw) {
13
+ return raw;
14
+ }
15
+ validateValue(value) {
16
+ return typeof value === "object" && value !== null && !Array.isArray(value)
17
+ ? []
18
+ : [{ message: `attribute '@${this.name}' must be of type 'properties' but got ${runtimeTypeName(value)}` }];
19
+ }
20
+ }
21
+ registerAttrClass(ATTR_SUBTYPE_PROPERTIES, PropertiesAttr);
22
+ //# sourceMappingURL=meta-attr-properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta-attr-properties.js","sourceRoot":"","sources":["../../../src/core/attr/meta-attr-properties.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,0EAA0E;AAE1E,OAAO,EAAE,QAAQ,EAAmB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAkB,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAiB,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,IAAa,QAAQ;QACnB,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEQ,MAAM,CAAC,GAAY;QAC1B,OAAO,GAAgB,CAAC;IAC1B,CAAC;IAEQ,aAAa,CAAC,KAAgB;QACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACzE,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,IAAI,CAAC,IAAI,0CAA0C,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAChH,CAAC;CACF;AAED,iBAAiB,CAAC,uBAAuB,EAAE,cAAc,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { MetaAttr, type ValueError } from "./meta-attr.js";
2
+ import { type AttrValue } from "../../shared/meta-data.js";
3
+ import { type DataType } from "../../data-type.js";
4
+ export declare class StringArrayAttr extends MetaAttr {
5
+ get dataType(): DataType;
6
+ coerce(raw: unknown): AttrValue;
7
+ validateValue(value: AttrValue): ValueError[];
8
+ }
9
+ //# sourceMappingURL=meta-attr-stringarray.d.ts.map