@metaobjectsdev/metadata 0.8.1-rc.1 → 0.9.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 (220) hide show
  1. package/dist/attr-schema-validate.d.ts.map +1 -1
  2. package/dist/attr-schema-validate.js +49 -1
  3. package/dist/attr-schema-validate.js.map +1 -1
  4. package/dist/core/field/field-constants.d.ts +27 -2
  5. package/dist/core/field/field-constants.d.ts.map +1 -1
  6. package/dist/core/field/field-constants.js +30 -2
  7. package/dist/core/field/field-constants.js.map +1 -1
  8. package/dist/core/field/field-schema.d.ts +9 -1
  9. package/dist/core/field/field-schema.d.ts.map +1 -1
  10. package/dist/core/field/field-schema.js +34 -3
  11. package/dist/core/field/field-schema.js.map +1 -1
  12. package/dist/core/field/meta-field.d.ts +10 -0
  13. package/dist/core/field/meta-field.d.ts.map +1 -1
  14. package/dist/core/field/meta-field.js +36 -1
  15. package/dist/core/field/meta-field.js.map +1 -1
  16. package/dist/core/field/validate-field-readonly.d.ts +9 -0
  17. package/dist/core/field/validate-field-readonly.d.ts.map +1 -0
  18. package/dist/core/field/validate-field-readonly.js +116 -0
  19. package/dist/core/field/validate-field-readonly.js.map +1 -0
  20. package/dist/core/object/meta-object-aware.d.ts +11 -0
  21. package/dist/core/object/meta-object-aware.d.ts.map +1 -0
  22. package/dist/core/object/meta-object-aware.js +15 -0
  23. package/dist/core/object/meta-object-aware.js.map +1 -0
  24. package/dist/core/object/meta-object.d.ts +21 -0
  25. package/dist/core/object/meta-object.d.ts.map +1 -1
  26. package/dist/core/object/meta-object.js +43 -2
  27. package/dist/core/object/meta-object.js.map +1 -1
  28. package/dist/core/object/object-class-registry.d.ts +22 -0
  29. package/dist/core/object/object-class-registry.d.ts.map +1 -0
  30. package/dist/core/object/object-class-registry.js +38 -0
  31. package/dist/core/object/object-class-registry.js.map +1 -0
  32. package/dist/core/object/object-constants.d.ts +7 -0
  33. package/dist/core/object/object-constants.d.ts.map +1 -1
  34. package/dist/core/object/object-constants.js +14 -0
  35. package/dist/core/object/object-constants.js.map +1 -1
  36. package/dist/core/object/object-schema.d.ts.map +1 -1
  37. package/dist/core/object/object-schema.js +24 -1
  38. package/dist/core/object/object-schema.js.map +1 -1
  39. package/dist/core/object/validate-discriminator.d.ts +4 -0
  40. package/dist/core/object/validate-discriminator.d.ts.map +1 -0
  41. package/dist/core/object/validate-discriminator.js +145 -0
  42. package/dist/core/object/validate-discriminator.js.map +1 -0
  43. package/dist/core/object/value-object.d.ts +23 -0
  44. package/dist/core/object/value-object.d.ts.map +1 -0
  45. package/dist/core/object/value-object.js +51 -0
  46. package/dist/core/object/value-object.js.map +1 -0
  47. package/dist/core/query/query-constants.d.ts.map +1 -1
  48. package/dist/core/query/query-constants.js +4 -0
  49. package/dist/core/query/query-constants.js.map +1 -1
  50. package/dist/core-types.d.ts.map +1 -1
  51. package/dist/core-types.js +16 -4
  52. package/dist/core-types.js.map +1 -1
  53. package/dist/errors.d.ts +2 -2
  54. package/dist/errors.d.ts.map +1 -1
  55. package/dist/errors.js +23 -0
  56. package/dist/errors.js.map +1 -1
  57. package/dist/index.d.ts +5 -0
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +4 -0
  60. package/dist/index.js.map +1 -1
  61. package/dist/loader/meta-data-loader.d.ts.map +1 -1
  62. package/dist/loader/meta-data-loader.js +26 -1
  63. package/dist/loader/meta-data-loader.js.map +1 -1
  64. package/dist/loader/validation-passes.d.ts +1 -0
  65. package/dist/loader/validation-passes.d.ts.map +1 -1
  66. package/dist/loader/validation-passes.js +122 -2
  67. package/dist/loader/validation-passes.js.map +1 -1
  68. package/dist/naming.d.ts.map +1 -1
  69. package/dist/naming.js +7 -6
  70. package/dist/naming.js.map +1 -1
  71. package/dist/persistence/db/db-constants.d.ts +23 -0
  72. package/dist/persistence/db/db-constants.d.ts.map +1 -1
  73. package/dist/persistence/db/db-constants.js +31 -0
  74. package/dist/persistence/db/db-constants.js.map +1 -1
  75. package/dist/persistence/db/db-provider.js +3 -3
  76. package/dist/persistence/db/db-provider.js.map +1 -1
  77. package/dist/persistence/db/db-schema.d.ts +8 -0
  78. package/dist/persistence/db/db-schema.d.ts.map +1 -1
  79. package/dist/persistence/db/db-schema.js +17 -1
  80. package/dist/persistence/db/db-schema.js.map +1 -1
  81. package/dist/persistence/source/meta-source.d.ts +15 -1
  82. package/dist/persistence/source/meta-source.d.ts.map +1 -1
  83. package/dist/persistence/source/meta-source.js +55 -3
  84. package/dist/persistence/source/meta-source.js.map +1 -1
  85. package/dist/persistence/source/source-constants.d.ts +20 -1
  86. package/dist/persistence/source/source-constants.d.ts.map +1 -1
  87. package/dist/persistence/source/source-constants.js +36 -1
  88. package/dist/persistence/source/source-constants.js.map +1 -1
  89. package/dist/persistence/source/source-schema.d.ts.map +1 -1
  90. package/dist/persistence/source/source-schema.js +65 -4
  91. package/dist/persistence/source/source-schema.js.map +1 -1
  92. package/dist/persistence/source/validate-source-parameter-ref.d.ts +4 -0
  93. package/dist/persistence/source/validate-source-parameter-ref.d.ts.map +1 -0
  94. package/dist/persistence/source/validate-source-parameter-ref.js +96 -0
  95. package/dist/persistence/source/validate-source-parameter-ref.js.map +1 -0
  96. package/dist/persistence/source/validate-source-physical-names.d.ts +9 -0
  97. package/dist/persistence/source/validate-source-physical-names.d.ts.map +1 -0
  98. package/dist/persistence/source/validate-source-physical-names.js +79 -0
  99. package/dist/persistence/source/validate-source-physical-names.js.map +1 -0
  100. package/dist/serializer-json.d.ts.map +1 -1
  101. package/dist/serializer-json.js +43 -0
  102. package/dist/serializer-json.js.map +1 -1
  103. package/dist/template/template-constants.d.ts +9 -0
  104. package/dist/template/template-constants.d.ts.map +1 -1
  105. package/dist/template/template-constants.js +20 -0
  106. package/dist/template/template-constants.js.map +1 -1
  107. package/dist/template/template-schema.d.ts.map +1 -1
  108. package/dist/template/template-schema.js +42 -3
  109. package/dist/template/template-schema.js.map +1 -1
  110. package/package.json +1 -1
  111. package/src/attr-schema-validate.ts +70 -0
  112. package/src/core/field/field-constants.ts +37 -2
  113. package/src/core/field/field-schema.ts +43 -2
  114. package/src/core/field/meta-field.ts +39 -0
  115. package/src/core/field/validate-field-readonly.ts +142 -0
  116. package/src/core/object/meta-object-aware.ts +27 -0
  117. package/src/core/object/meta-object.ts +47 -2
  118. package/src/core/object/object-class-registry.ts +48 -0
  119. package/src/core/object/object-constants.ts +17 -0
  120. package/src/core/object/object-schema.ts +29 -1
  121. package/src/core/object/validate-discriminator.ts +195 -0
  122. package/src/core/object/value-object.ts +65 -0
  123. package/src/core/query/query-constants.ts +5 -0
  124. package/src/core-types.ts +17 -4
  125. package/src/errors.ts +23 -0
  126. package/src/index.ts +10 -0
  127. package/src/loader/meta-data-loader.ts +31 -1
  128. package/src/loader/validation-passes.ts +161 -0
  129. package/src/naming.ts +6 -5
  130. package/src/persistence/db/db-constants.ts +40 -0
  131. package/src/persistence/db/db-provider.ts +3 -3
  132. package/src/persistence/db/db-schema.ts +20 -0
  133. package/src/persistence/source/meta-source.ts +64 -2
  134. package/src/persistence/source/source-constants.ts +40 -1
  135. package/src/persistence/source/source-schema.ts +78 -3
  136. package/src/persistence/source/validate-source-parameter-ref.ts +143 -0
  137. package/src/persistence/source/validate-source-physical-names.ts +123 -0
  138. package/src/serializer-json.ts +50 -0
  139. package/src/template/template-constants.ts +23 -0
  140. package/src/template/template-schema.ts +49 -2
  141. package/dist/constants.d.ts +0 -208
  142. package/dist/constants.d.ts.map +0 -1
  143. package/dist/constants.js +0 -419
  144. package/dist/constants.js.map +0 -1
  145. package/dist/core/file-meta-data-loader.d.ts +0 -18
  146. package/dist/core/file-meta-data-loader.d.ts.map +0 -1
  147. package/dist/core/file-meta-data-loader.js +0 -81
  148. package/dist/core/file-meta-data-loader.js.map +0 -1
  149. package/dist/core/file-source.d.ts +0 -12
  150. package/dist/core/file-source.d.ts.map +0 -1
  151. package/dist/core/file-source.js +0 -46
  152. package/dist/core/file-source.js.map +0 -1
  153. package/dist/core-attr-schemas.d.ts +0 -22
  154. package/dist/core-attr-schemas.d.ts.map +0 -1
  155. package/dist/core-attr-schemas.js +0 -324
  156. package/dist/core-attr-schemas.js.map +0 -1
  157. package/dist/db/db-attr-schemas.d.ts +0 -8
  158. package/dist/db/db-attr-schemas.d.ts.map +0 -1
  159. package/dist/db/db-attr-schemas.js +0 -26
  160. package/dist/db/db-attr-schemas.js.map +0 -1
  161. package/dist/db/db-provider.d.ts +0 -3
  162. package/dist/db/db-provider.d.ts.map +0 -1
  163. package/dist/db/db-provider.js +0 -28
  164. package/dist/db/db-provider.js.map +0 -1
  165. package/dist/meta/find-reference.d.ts +0 -22
  166. package/dist/meta/find-reference.d.ts.map +0 -1
  167. package/dist/meta/find-reference.js +0 -29
  168. package/dist/meta/find-reference.js.map +0 -1
  169. package/dist/meta/meta-attr.d.ts +0 -8
  170. package/dist/meta/meta-attr.d.ts.map +0 -1
  171. package/dist/meta/meta-attr.js +0 -17
  172. package/dist/meta/meta-attr.js.map +0 -1
  173. package/dist/meta/meta-data.d.ts +0 -107
  174. package/dist/meta/meta-data.d.ts.map +0 -1
  175. package/dist/meta/meta-data.js +0 -302
  176. package/dist/meta/meta-data.js.map +0 -1
  177. package/dist/meta/meta-field.d.ts +0 -48
  178. package/dist/meta/meta-field.d.ts.map +0 -1
  179. package/dist/meta/meta-field.js +0 -94
  180. package/dist/meta/meta-field.js.map +0 -1
  181. package/dist/meta/meta-identity.d.ts +0 -71
  182. package/dist/meta/meta-identity.d.ts.map +0 -1
  183. package/dist/meta/meta-identity.js +0 -129
  184. package/dist/meta/meta-identity.js.map +0 -1
  185. package/dist/meta/meta-layout.d.ts +0 -23
  186. package/dist/meta/meta-layout.d.ts.map +0 -1
  187. package/dist/meta/meta-layout.js +0 -45
  188. package/dist/meta/meta-layout.js.map +0 -1
  189. package/dist/meta/meta-object.d.ts +0 -40
  190. package/dist/meta/meta-object.d.ts.map +0 -1
  191. package/dist/meta/meta-object.js +0 -81
  192. package/dist/meta/meta-object.js.map +0 -1
  193. package/dist/meta/meta-origin.d.ts +0 -32
  194. package/dist/meta/meta-origin.d.ts.map +0 -1
  195. package/dist/meta/meta-origin.js +0 -55
  196. package/dist/meta/meta-origin.js.map +0 -1
  197. package/dist/meta/meta-relationship.d.ts +0 -11
  198. package/dist/meta/meta-relationship.d.ts.map +0 -1
  199. package/dist/meta/meta-relationship.js +0 -27
  200. package/dist/meta/meta-relationship.js.map +0 -1
  201. package/dist/meta/meta-root.d.ts +0 -12
  202. package/dist/meta/meta-root.d.ts.map +0 -1
  203. package/dist/meta/meta-root.js +0 -24
  204. package/dist/meta/meta-root.js.map +0 -1
  205. package/dist/meta/meta-source.d.ts +0 -18
  206. package/dist/meta/meta-source.d.ts.map +0 -1
  207. package/dist/meta/meta-source.js +0 -31
  208. package/dist/meta/meta-source.js.map +0 -1
  209. package/dist/meta/meta-validator.d.ts +0 -29
  210. package/dist/meta/meta-validator.d.ts.map +0 -1
  211. package/dist/meta/meta-validator.js +0 -49
  212. package/dist/meta/meta-validator.js.map +0 -1
  213. package/dist/meta/meta-view.d.ts +0 -4
  214. package/dist/meta/meta-view.d.ts.map +0 -1
  215. package/dist/meta/meta-view.js +0 -8
  216. package/dist/meta/meta-view.js.map +0 -1
  217. package/dist/persistence/db/db-attr-schemas.d.ts +0 -8
  218. package/dist/persistence/db/db-attr-schemas.d.ts.map +0 -1
  219. package/dist/persistence/db/db-attr-schemas.js +0 -28
  220. package/dist/persistence/db/db-attr-schemas.js.map +0 -1
package/dist/constants.js DELETED
@@ -1,419 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { MetaDataLoader, type LoadResult } from "../loader/meta-data-loader.js";
2
- import type { ParseOptions, ParseResult } from "../parser-core.js";
3
- import type { MetaDataSource } from "../loader/meta-data-source.js";
4
- export declare class FileMetaDataLoader extends MetaDataLoader {
5
- /** Adds YAML parsing on top of the base loader's JSON-only `parseSource`. */
6
- protected parseSource(content: string, source: MetaDataSource, parseOpts: ParseOptions): ParseResult;
7
- /**
8
- * Load every `.json` / `.yaml` / `.yml` file in a directory (non-recursive),
9
- * in deterministic ordinal filename order.
10
- * @param opts.exclude glob patterns (relative to dir) to skip — `*` / `**`.
11
- */
12
- loadDirectory(dir: string, opts?: {
13
- exclude?: string[];
14
- }): Promise<LoadResult>;
15
- /** Load an explicit list of file paths, in order. */
16
- loadFiles(paths: string[]): Promise<LoadResult>;
17
- }
18
- //# sourceMappingURL=file-meta-data-loader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-meta-data-loader.d.ts","sourceRoot":"","sources":["../../src/core/file-meta-data-loader.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhF,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAYpE,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,6EAA6E;cAC1D,WAAW,CAC5B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,YAAY,GACtB,WAAW;IAOd;;;;OAIG;IACG,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IA2CpF,qDAAqD;IAC/C,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;CAGtD"}
@@ -1,81 +0,0 @@
1
- // FileMetaDataLoader — discovers file-backed MetaDataSources and runs the
2
- // MetaDataLoader pipeline over them. A UrlMetaDataLoader will slot in the
3
- // same way later.
4
- import { readdir, stat } from "node:fs/promises";
5
- import { join } from "node:path";
6
- import { MetaDataLoader } from "../loader/meta-data-loader.js";
7
- import { FileSource } from "./file-source.js";
8
- import { parseYaml } from "./parser-yaml.js";
9
- /** Minimal glob matcher supporting `*` (any chars except `/`) and `**` (any chars). */
10
- function matchSimpleGlob(pattern, value) {
11
- const regexStr = pattern
12
- .replace(/[.+^${}()|[\]\\]/g, "\\$&")
13
- .replace(/\*\*/g, "::DOUBLESTAR::")
14
- .replace(/\*/g, "[^/]*")
15
- .replace(/::DOUBLESTAR::/g, ".*");
16
- return new RegExp(`^${regexStr}$`).test(value);
17
- }
18
- export class FileMetaDataLoader extends MetaDataLoader {
19
- /** Adds YAML parsing on top of the base loader's JSON-only `parseSource`. */
20
- parseSource(content, source, parseOpts) {
21
- if (source.format === "yaml") {
22
- return parseYaml(content, parseOpts);
23
- }
24
- return super.parseSource(content, source, parseOpts);
25
- }
26
- /**
27
- * Load every `.json` / `.yaml` / `.yml` file in a directory (non-recursive),
28
- * in deterministic ordinal filename order.
29
- * @param opts.exclude glob patterns (relative to dir) to skip — `*` / `**`.
30
- */
31
- async loadDirectory(dir, opts) {
32
- let entries;
33
- try {
34
- // Sorted for deterministic multi-file load order: the overlay merge is
35
- // order-sensitive (last-writer-wins on attr conflicts), so the scan must
36
- // not depend on filesystem readdir order. Ordinal filename sort is
37
- // reproducible across the Java/Python/C# ports.
38
- entries = (await readdir(dir)).sort();
39
- }
40
- catch (err) {
41
- // Surface the I/O failure as a collected error via the empty-source path.
42
- const emptyResult = await this.load([]);
43
- return {
44
- ...emptyResult,
45
- errors: [
46
- new Error(`loadDirectory: cannot read ${dir}: ${err.message}`),
47
- ...emptyResult.errors,
48
- ],
49
- };
50
- }
51
- const excludes = opts?.exclude ?? [];
52
- const paths = [];
53
- for (const entry of entries) {
54
- const lower = entry.toLowerCase();
55
- if (!lower.endsWith(".json") && !lower.endsWith(".yaml") && !lower.endsWith(".yml")) {
56
- continue;
57
- }
58
- const filePath = join(dir, entry);
59
- let statResult;
60
- try {
61
- statResult = await stat(filePath);
62
- }
63
- catch {
64
- // Entry vanished between readdir and stat (TOCTOU) or is not accessible.
65
- // Skip it rather than breaking the no-throw contract of loadDirectory.
66
- continue;
67
- }
68
- if (!statResult.isFile())
69
- continue;
70
- if (excludes.some((p) => matchSimpleGlob(p, entry)))
71
- continue;
72
- paths.push(filePath);
73
- }
74
- return this.loadFiles(paths);
75
- }
76
- /** Load an explicit list of file paths, in order. */
77
- async loadFiles(paths) {
78
- return this.load(paths.map((p) => new FileSource(p)));
79
- }
80
- }
81
- //# sourceMappingURL=file-meta-data-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-meta-data-loader.js","sourceRoot":"","sources":["../../src/core/file-meta-data-loader.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import type { MetaDataFormat, MetaDataSource } from "../loader/meta-data-source.js";
2
- /** A metadata source backed by a file on disk. */
3
- export declare class FileSource implements MetaDataSource {
4
- readonly id: string;
5
- readonly format: MetaDataFormat;
6
- private readonly _path;
7
- constructor(path: string);
8
- /** The absolute/relative path this source reads from. */
9
- get path(): string;
10
- read(): Promise<string>;
11
- }
12
- //# sourceMappingURL=file-source.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-source.d.ts","sourceRoot":"","sources":["../../src/core/file-source.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAwBpF,kDAAkD;AAClD,qBAAa,UAAW,YAAW,cAAc;IAC/C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEnB,IAAI,EAAE,MAAM;IAOxB,yDAAyD;IACzD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;CAI9B"}
@@ -1,46 +0,0 @@
1
- // FileSource — a MetaDataSource backed by a file on disk. Server-side only
2
- // (touches node:fs); lives under src/core/ so the browser-safe root never
3
- // imports it.
4
- import { basename, extname } from "node:path";
5
- /** Infer a source format from a file extension. `.yaml`/`.yml` → "yaml";
6
- * everything else (including `.json`) → "json", the canonical default. */
7
- function inferFormat(path) {
8
- const ext = extname(path).toLowerCase();
9
- return ext === ".yaml" || ext === ".yml" ? "yaml" : "json";
10
- }
11
- // File reader — Bun-first (Bun.file().text()) with a Node fallback
12
- // (node:fs/promises.readFile). Matches CLAUDE.md's Bun-first / Node-compatible policy.
13
- let _readText;
14
- async function getReadText() {
15
- if (_readText !== undefined)
16
- return _readText;
17
- if (typeof Bun !== "undefined") {
18
- _readText = (p) => Bun.file(p).text();
19
- }
20
- else {
21
- const { readFile } = await import("node:fs/promises");
22
- _readText = (p) => readFile(p, "utf-8");
23
- }
24
- return _readText;
25
- }
26
- /** A metadata source backed by a file on disk. */
27
- export class FileSource {
28
- id;
29
- format;
30
- _path;
31
- constructor(path) {
32
- this._path = path;
33
- // basename() for readable error messages; cross-platform (handles both / and \). Full path retained for read().
34
- this.id = basename(path);
35
- this.format = inferFormat(path);
36
- }
37
- /** The absolute/relative path this source reads from. */
38
- get path() {
39
- return this._path;
40
- }
41
- async read() {
42
- const readText = await getReadText();
43
- return readText(this._path);
44
- }
45
- }
46
- //# sourceMappingURL=file-source.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-source.js","sourceRoot":"","sources":["../../src/core/file-source.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,0EAA0E;AAC1E,cAAc;AAEd,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAG9C;2EAC2E;AAC3E,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACxC,OAAO,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;AAC7D,CAAC;AAED,mEAAmE;AACnE,uFAAuF;AACvF,IAAI,SAA0D,CAAC;AAE/D,KAAK,UAAU,WAAW;IACxB,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC9C,IAAI,OAAO,GAAG,KAAK,WAAW,EAAE,CAAC;QAC/B,SAAS,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACtD,SAAS,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,kDAAkD;AAClD,MAAM,OAAO,UAAU;IACZ,EAAE,CAAS;IACX,MAAM,CAAiB;IACf,KAAK,CAAS;IAE/B,YAAY,IAAY;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,gHAAgH;QAChH,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,yDAAyD;IACzD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;QACrC,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;CACF"}
@@ -1,22 +0,0 @@
1
- import type { AttrSchema } from "./registry.js";
2
- /** Attrs common to every field subtype (codegen-ts column mapper + Project D filter/sort). */
3
- export declare const commonFieldAttrs: AttrSchema[];
4
- /** The @currency attr — only on field.currency. */
5
- export declare const currencyFieldAttr: AttrSchema;
6
- /** Attrs on view.currency. */
7
- export declare const currencyViewAttrs: AttrSchema[];
8
- /** Attrs common to every object subtype. */
9
- export declare const objectAttrs: AttrSchema[];
10
- /** Attrs common to every relationship subtype. */
11
- export declare const relationshipAttrs: AttrSchema[];
12
- /** Attrs on identity.primary / identity.secondary — @fields is required. */
13
- export declare const identityFieldsAttr: AttrSchema;
14
- /** Attrs on layout.dataGrid. */
15
- export declare const dataGridLayoutAttrs: AttrSchema[];
16
- /** Attrs per origin subtype. base has none; passthrough and aggregate carry their respective attrs. */
17
- export declare const ORIGIN_ATTRS_MAP: Map<string, AttrSchema[]>;
18
- /** Attrs per identity subtype. primary adds @generation; secondary adds @unique. */
19
- export declare const IDENTITY_ATTRS_MAP: Map<string, AttrSchema[]>;
20
- /** Attrs per validator subtype. Required uses none; regex adds @pattern. */
21
- export declare const VALIDATOR_ATTRS_MAP: Map<string, AttrSchema[]>;
22
- //# sourceMappingURL=core-attr-schemas.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core-attr-schemas.d.ts","sourceRoot":"","sources":["../src/core-attr-schemas.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAiEhD,8FAA8F;AAC9F,eAAO,MAAM,gBAAgB,EAAE,UAAU,EAkFxC,CAAC;AAEF,mDAAmD;AACnD,eAAO,MAAM,iBAAiB,EAAE,UAO/B,CAAC;AAEF,8BAA8B;AAC9B,eAAO,MAAM,iBAAiB,EAAE,UAAU,EASzC,CAAC;AAEF,4CAA4C;AAC5C,eAAO,MAAM,WAAW,EAAE,UAAU,EASnC,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,iBAAiB,EAAE,UAAU,EAgCzC,CAAC;AAEF,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,EAAE,UAMhC,CAAC;AAyFF,gCAAgC;AAChC,eAAO,MAAM,mBAAmB,EAAE,UAAU,EAuC3C,CAAC;AAkBF,uGAAuG;AACvG,eAAO,MAAM,gBAAgB,2BAI3B,CAAC;AAEH,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,2BAI7B,CAAC;AAEH,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,2BAe9B,CAAC"}