@objectstack/spec 2.0.5 → 2.0.7

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 (293) hide show
  1. package/dist/ai/index.d.mts +1 -1
  2. package/dist/ai/index.d.ts +1 -1
  3. package/dist/ai/index.js +230 -3
  4. package/dist/ai/index.js.map +1 -1
  5. package/dist/ai/index.mjs +218 -3
  6. package/dist/ai/index.mjs.map +1 -1
  7. package/dist/api/index.d.mts +2 -2
  8. package/dist/api/index.d.ts +2 -2
  9. package/dist/api/index.js +3409 -2841
  10. package/dist/api/index.js.map +1 -1
  11. package/dist/api/index.mjs +3386 -2841
  12. package/dist/api/index.mjs.map +1 -1
  13. package/dist/automation/index.d.mts +1 -1
  14. package/dist/automation/index.d.ts +1 -1
  15. package/dist/contracts/index.d.mts +2 -2
  16. package/dist/contracts/index.d.ts +2 -2
  17. package/dist/contracts/index.js.map +1 -1
  18. package/dist/data/index.d.mts +2 -2
  19. package/dist/data/index.d.ts +2 -2
  20. package/dist/data/index.js +58 -1
  21. package/dist/data/index.js.map +1 -1
  22. package/dist/data/index.mjs +58 -1
  23. package/dist/data/index.mjs.map +1 -1
  24. package/dist/{driver.zod-E3C6n0W-.d.ts → driver.zod-B3Q0oLlF.d.ts} +1 -1
  25. package/dist/{driver.zod-DnOPgUGi.d.mts → driver.zod-Bf2z72WQ.d.mts} +1 -1
  26. package/dist/{index-DyawwLFZ.d.ts → index-B3C8s_DZ.d.ts} +307 -29
  27. package/dist/{index-DTCkpGMm.d.mts → index-BliYpI46.d.mts} +879 -52
  28. package/dist/{index-BbtSaxHm.d.ts → index-BpE_xfkc.d.ts} +3289 -229
  29. package/dist/{index-E1mP_eoE.d.mts → index-C3cFLYII.d.mts} +307 -29
  30. package/dist/{index-BpP0MwlW.d.ts → index-CXtgLAue.d.ts} +879 -52
  31. package/dist/{index-D-tf4nDV.d.mts → index-CYbdd-mL.d.mts} +27 -1
  32. package/dist/index-CeUUI-ym.d.mts +2102 -0
  33. package/dist/{index-BPhGHW32.d.ts → index-CfvdYFyf.d.ts} +27 -1
  34. package/dist/{index-CDN6TRx9.d.mts → index-ClHj1Tbo.d.mts} +71 -2
  35. package/dist/{index-CDN6TRx9.d.ts → index-ClHj1Tbo.d.ts} +71 -2
  36. package/dist/index-CmY8tgpL.d.ts +2102 -0
  37. package/dist/{index-DRCh2NTZ.d.mts → index-CqDMk0T6.d.mts} +3289 -229
  38. package/dist/{index-d9wYlv-g.d.ts → index-DNKiU_-x.d.mts} +684 -18
  39. package/dist/{index-d9wYlv-g.d.mts → index-DNKiU_-x.d.ts} +684 -18
  40. package/dist/{index-CisfSmuF.d.ts → index-Dm4UfDKG.d.ts} +451 -19
  41. package/dist/index-KhvhiesR.d.mts +6902 -0
  42. package/dist/{index-BV0xBoer.d.mts → index-Onf8hbkX.d.mts} +451 -19
  43. package/dist/index-OqCqQSaH.d.ts +6902 -0
  44. package/dist/index.d.mts +2519 -222
  45. package/dist/index.d.ts +2519 -222
  46. package/dist/index.js +9957 -8069
  47. package/dist/index.js.map +1 -1
  48. package/dist/index.mjs +9957 -8069
  49. package/dist/index.mjs.map +1 -1
  50. package/dist/integration/index.d.mts +1 -1
  51. package/dist/integration/index.d.ts +1 -1
  52. package/dist/integration/index.js +67 -0
  53. package/dist/integration/index.js.map +1 -1
  54. package/dist/integration/index.mjs +61 -0
  55. package/dist/integration/index.mjs.map +1 -1
  56. package/dist/kernel/index.d.mts +2 -2
  57. package/dist/kernel/index.d.ts +2 -2
  58. package/dist/kernel/index.js +1698 -1474
  59. package/dist/kernel/index.js.map +1 -1
  60. package/dist/kernel/index.mjs +1690 -1474
  61. package/dist/kernel/index.mjs.map +1 -1
  62. package/dist/{package-registry.zod-CbS9FKeH.d.mts → package-registry.zod-BJQSiICj.d.mts} +78 -43
  63. package/dist/{package-registry.zod-CbS9FKeH.d.ts → package-registry.zod-BJQSiICj.d.ts} +78 -43
  64. package/dist/security/index.d.mts +1 -1
  65. package/dist/security/index.d.ts +1 -1
  66. package/dist/security/index.js +47 -1
  67. package/dist/security/index.js.map +1 -1
  68. package/dist/security/index.mjs +45 -1
  69. package/dist/security/index.mjs.map +1 -1
  70. package/dist/system/index.d.mts +1 -1
  71. package/dist/system/index.d.ts +1 -1
  72. package/dist/system/index.js +2189 -1821
  73. package/dist/system/index.js.map +1 -1
  74. package/dist/system/index.mjs +2168 -1821
  75. package/dist/system/index.mjs.map +1 -1
  76. package/dist/ui/index.d.mts +1 -1
  77. package/dist/ui/index.d.ts +1 -1
  78. package/dist/ui/index.js +1414 -767
  79. package/dist/ui/index.js.map +1 -1
  80. package/dist/ui/index.mjs +1354 -767
  81. package/dist/ui/index.mjs.map +1 -1
  82. package/json-schema/ai/Agent.json +203 -0
  83. package/json-schema/ai/AgentCommunicationProtocol.json +9 -0
  84. package/json-schema/ai/AgentGroupMember.json +45 -0
  85. package/json-schema/ai/AgentGroupRole.json +10 -0
  86. package/json-schema/ai/DevOpsAgent.json +203 -0
  87. package/json-schema/ai/MCPClientConfig.json +168 -0
  88. package/json-schema/ai/MCPRootEntry.json +23 -0
  89. package/json-schema/ai/MCPRootsConfig.json +49 -0
  90. package/json-schema/ai/MCPSamplingConfig.json +46 -0
  91. package/json-schema/ai/MCPServerConfig.json +120 -0
  92. package/json-schema/ai/MCPStreamingConfig.json +38 -0
  93. package/json-schema/ai/MCPToolApproval.json +39 -0
  94. package/json-schema/ai/MultiAgentGroup.json +137 -0
  95. package/json-schema/ai/StructuredOutputConfig.json +75 -0
  96. package/json-schema/ai/StructuredOutputFormat.json +12 -0
  97. package/json-schema/ai/TransformPipelineStep.json +11 -0
  98. package/json-schema/api/AppDefinitionResponse.json +285 -7
  99. package/json-schema/api/BasePresence.json +40 -0
  100. package/json-schema/api/BatchLoadingStrategy.json +40 -0
  101. package/json-schema/api/Callback.json +39 -0
  102. package/json-schema/api/DataLoaderConfig.json +55 -0
  103. package/json-schema/api/DisablePackageResponse.json +26 -0
  104. package/json-schema/api/Discovery.json +4 -62
  105. package/json-schema/api/EnablePackageResponse.json +26 -0
  106. package/json-schema/api/FederationEntity.json +110 -0
  107. package/json-schema/api/FederationEntityKey.json +20 -0
  108. package/json-schema/api/FederationExternalField.json +18 -0
  109. package/json-schema/api/FederationGateway.json +327 -0
  110. package/json-schema/api/FederationProvides.json +19 -0
  111. package/json-schema/api/FederationRequires.json +19 -0
  112. package/json-schema/api/GetDiscoveryResponse.json +1 -60
  113. package/json-schema/api/GetPackageResponse.json +26 -0
  114. package/json-schema/api/GraphQLConfig.json +327 -0
  115. package/json-schema/api/GraphQLQueryAdapter.json +84 -0
  116. package/json-schema/api/InstallPackageRequest.json +26 -0
  117. package/json-schema/api/InstallPackageResponse.json +26 -0
  118. package/json-schema/api/ListPackagesResponse.json +26 -0
  119. package/json-schema/api/ODataQueryAdapter.json +66 -0
  120. package/json-schema/api/OpenApi31Extensions.json +139 -0
  121. package/json-schema/api/OperatorMapping.json +26 -0
  122. package/json-schema/api/PresenceStatus.json +10 -0
  123. package/json-schema/api/QueryAdapterConfig.json +272 -0
  124. package/json-schema/api/QueryAdapterTarget.json +9 -0
  125. package/json-schema/api/QueryOptimizationConfig.json +126 -0
  126. package/json-schema/api/RealtimeRecordAction.json +9 -0
  127. package/json-schema/api/RestQueryAdapter.json +86 -0
  128. package/json-schema/api/RestServerConfig.json +139 -0
  129. package/json-schema/api/SubgraphConfig.json +183 -0
  130. package/json-schema/api/WebhookConfig.json +129 -0
  131. package/json-schema/api/WebhookEvent.json +64 -0
  132. package/json-schema/data/ExternalLookup.json +128 -0
  133. package/json-schema/identity/SCIMBulkOperation.json +41 -0
  134. package/json-schema/identity/SCIMBulkRequest.json +73 -0
  135. package/json-schema/identity/SCIMBulkResponse.json +61 -0
  136. package/json-schema/identity/SCIMBulkResponseOperation.json +36 -0
  137. package/json-schema/integration/CircuitBreakerConfig.json +49 -0
  138. package/json-schema/integration/Connector.json +223 -0
  139. package/json-schema/integration/ConnectorHealth.json +113 -0
  140. package/json-schema/integration/DatabaseConnector.json +223 -0
  141. package/json-schema/integration/ErrorCategory.json +15 -0
  142. package/json-schema/integration/ErrorMappingConfig.json +112 -0
  143. package/json-schema/integration/ErrorMappingRule.json +66 -0
  144. package/json-schema/integration/FileStorageConnector.json +223 -0
  145. package/json-schema/integration/GitHubConnector.json +223 -0
  146. package/json-schema/integration/HealthCheckConfig.json +58 -0
  147. package/json-schema/integration/MessageQueueConnector.json +223 -0
  148. package/json-schema/integration/SaasConnector.json +223 -0
  149. package/json-schema/integration/VercelConnector.json +223 -0
  150. package/json-schema/kernel/CLICommandContribution.json +23 -0
  151. package/json-schema/kernel/CLIExtensionExport.json +22 -0
  152. package/json-schema/kernel/DevFixtureConfig.json +35 -0
  153. package/json-schema/kernel/DevPluginConfig.json +170 -0
  154. package/json-schema/kernel/DevPluginPreset.json +10 -0
  155. package/json-schema/kernel/DevServiceOverride.json +41 -0
  156. package/json-schema/kernel/DevToolsConfig.json +45 -0
  157. package/json-schema/kernel/DisablePackageResponse.json +26 -0
  158. package/json-schema/kernel/EnablePackageResponse.json +26 -0
  159. package/json-schema/kernel/GetPackageResponse.json +26 -0
  160. package/json-schema/kernel/InstallPackageRequest.json +26 -0
  161. package/json-schema/kernel/InstallPackageResponse.json +26 -0
  162. package/json-schema/kernel/InstalledPackage.json +26 -0
  163. package/json-schema/kernel/ListPackagesResponse.json +26 -0
  164. package/json-schema/kernel/Manifest.json +26 -0
  165. package/json-schema/kernel/MetadataFallbackStrategy.json +9 -0
  166. package/json-schema/kernel/MetadataLoaderContract.json +7 -0
  167. package/json-schema/kernel/MetadataManagerConfig.json +21 -0
  168. package/json-schema/security/RLSAuditConfig.json +62 -0
  169. package/json-schema/security/RLSAuditEvent.json +66 -0
  170. package/json-schema/security/RLSConfig.json +62 -0
  171. package/json-schema/system/AuthConfig.json +83 -0
  172. package/json-schema/system/BackupConfig.json +148 -0
  173. package/json-schema/system/BackupRetention.json +27 -0
  174. package/json-schema/system/BackupStrategy.json +10 -0
  175. package/json-schema/system/CacheAvalanchePrevention.json +77 -0
  176. package/json-schema/system/CacheConsistency.json +11 -0
  177. package/json-schema/system/CacheWarmup.json +44 -0
  178. package/json-schema/system/ComplianceAuditRequirement.json +43 -0
  179. package/json-schema/system/ComplianceEncryptionRequirement.json +58 -0
  180. package/json-schema/system/DataClassificationPolicy.json +46 -0
  181. package/json-schema/system/DisasterRecoveryPlan.json +414 -0
  182. package/json-schema/system/DistributedCacheConfig.json +269 -0
  183. package/json-schema/system/FailoverConfig.json +102 -0
  184. package/json-schema/system/FailoverMode.json +11 -0
  185. package/json-schema/system/MaskingVisibilityRule.json +56 -0
  186. package/json-schema/system/MetadataFallbackStrategy.json +9 -0
  187. package/json-schema/system/MetadataLoaderContract.json +9 -1
  188. package/json-schema/system/MetadataManagerConfig.json +52 -11
  189. package/json-schema/system/MetadataRecord.json +32 -1
  190. package/json-schema/system/MetadataSource.json +10 -0
  191. package/json-schema/system/MutualTLSConfig.json +83 -0
  192. package/json-schema/system/RPO.json +27 -0
  193. package/json-schema/system/RTO.json +27 -0
  194. package/json-schema/system/SecurityContextConfig.json +288 -0
  195. package/json-schema/system/SecurityEventCorrelation.json +40 -0
  196. package/json-schema/ui/Action.json +200 -5
  197. package/json-schema/ui/ActionParam.json +62 -2
  198. package/json-schema/ui/AnimationTrigger.json +14 -0
  199. package/json-schema/ui/App.json +285 -7
  200. package/json-schema/ui/AriaProps.json +49 -0
  201. package/json-schema/ui/BreakpointColumnMap.json +38 -0
  202. package/json-schema/ui/BreakpointName.json +12 -0
  203. package/json-schema/ui/BreakpointOrderMap.json +26 -0
  204. package/json-schema/ui/ChartAnnotation.json +31 -1
  205. package/json-schema/ui/ChartAxis.json +30 -1
  206. package/json-schema/ui/ChartConfig.json +259 -7
  207. package/json-schema/ui/ChartSeries.json +30 -1
  208. package/json-schema/ui/ColumnSummary.json +18 -0
  209. package/json-schema/ui/ComponentAnimation.json +246 -0
  210. package/json-schema/ui/ConflictResolution.json +11 -0
  211. package/json-schema/ui/Dashboard.json +627 -11
  212. package/json-schema/ui/DashboardNavItem.json +30 -1
  213. package/json-schema/ui/DashboardWidget.json +433 -8
  214. package/json-schema/ui/DateFormat.json +36 -0
  215. package/json-schema/ui/DensityMode.json +9 -0
  216. package/json-schema/ui/DndConfig.json +306 -0
  217. package/json-schema/ui/DragConstraint.json +44 -0
  218. package/json-schema/ui/DragHandle.json +10 -0
  219. package/json-schema/ui/DragItem.json +160 -0
  220. package/json-schema/ui/DropEffect.json +11 -0
  221. package/json-schema/ui/DropZone.json +114 -0
  222. package/json-schema/ui/EasingFunction.json +13 -0
  223. package/json-schema/ui/EvictionPolicy.json +10 -0
  224. package/json-schema/ui/FocusManagement.json +69 -0
  225. package/json-schema/ui/FocusTrapConfig.json +32 -0
  226. package/json-schema/ui/FormField.json +90 -3
  227. package/json-schema/ui/GalleryConfig.json +46 -0
  228. package/json-schema/ui/GestureConfig.json +128 -0
  229. package/json-schema/ui/GestureType.json +14 -0
  230. package/json-schema/ui/GroupNavItem.json +30 -1
  231. package/json-schema/ui/GroupingConfig.json +45 -0
  232. package/json-schema/ui/GroupingField.json +30 -0
  233. package/json-schema/ui/I18nLabel.json +34 -0
  234. package/json-schema/ui/I18nObject.json +26 -0
  235. package/json-schema/ui/KeyboardNavigationConfig.json +194 -0
  236. package/json-schema/ui/KeyboardShortcut.json +66 -0
  237. package/json-schema/ui/ListColumn.json +55 -1
  238. package/json-schema/ui/ListView.json +435 -4
  239. package/json-schema/ui/LocaleConfig.json +108 -0
  240. package/json-schema/ui/LongPressGestureConfig.json +20 -0
  241. package/json-schema/ui/MotionConfig.json +405 -0
  242. package/json-schema/ui/NavigationItem.json +150 -5
  243. package/json-schema/ui/Notification.json +232 -0
  244. package/json-schema/ui/NotificationAction.json +60 -0
  245. package/json-schema/ui/NotificationConfig.json +52 -0
  246. package/json-schema/ui/NotificationPosition.json +13 -0
  247. package/json-schema/ui/NotificationSeverity.json +11 -0
  248. package/json-schema/ui/NotificationType.json +12 -0
  249. package/json-schema/ui/NumberFormat.json +42 -0
  250. package/json-schema/ui/ObjectNavItem.json +30 -1
  251. package/json-schema/ui/OfflineCacheConfig.json +40 -0
  252. package/json-schema/ui/OfflineConfig.json +157 -0
  253. package/json-schema/ui/OfflineStrategy.json +12 -0
  254. package/json-schema/ui/Page.json +285 -3
  255. package/json-schema/ui/PageCardProps.json +79 -1
  256. package/json-schema/ui/PageComponent.json +175 -1
  257. package/json-schema/ui/PageHeaderProps.json +108 -2
  258. package/json-schema/ui/PageNavItem.json +30 -1
  259. package/json-schema/ui/PageRegion.json +175 -1
  260. package/json-schema/ui/PageTabsProps.json +79 -1
  261. package/json-schema/ui/PageTransition.json +53 -0
  262. package/json-schema/ui/PerformanceConfig.json +57 -0
  263. package/json-schema/ui/PersistStorage.json +10 -0
  264. package/json-schema/ui/PinchGestureConfig.json +16 -0
  265. package/json-schema/ui/PluralRule.json +40 -0
  266. package/json-schema/ui/Report.json +490 -8
  267. package/json-schema/ui/ReportChart.json +199 -5
  268. package/json-schema/ui/ReportColumn.json +126 -1
  269. package/json-schema/ui/ResponsiveConfig.json +97 -0
  270. package/json-schema/ui/RowColorConfig.json +25 -0
  271. package/json-schema/ui/RowHeight.json +12 -0
  272. package/json-schema/ui/SwipeDirection.json +10 -0
  273. package/json-schema/ui/SwipeGestureConfig.json +32 -0
  274. package/json-schema/ui/SyncConfig.json +47 -0
  275. package/json-schema/ui/Theme.json +137 -0
  276. package/json-schema/ui/TimelineConfig.json +46 -0
  277. package/json-schema/ui/TouchInteraction.json +232 -0
  278. package/json-schema/ui/TouchTargetConfig.json +49 -0
  279. package/json-schema/ui/TransitionConfig.json +47 -0
  280. package/json-schema/ui/TransitionPreset.json +16 -0
  281. package/json-schema/ui/UrlNavItem.json +30 -1
  282. package/json-schema/ui/ViewSharing.json +24 -0
  283. package/json-schema/ui/WcagContrastLevel.json +8 -0
  284. package/json-schema/ui/WidgetEvent.json +60 -2
  285. package/json-schema/ui/WidgetManifest.json +284 -6
  286. package/json-schema/ui/WidgetProperty.json +60 -2
  287. package/package.json +1 -1
  288. package/dist/index-C6p-2KXV.d.ts +0 -767
  289. package/dist/index-CVnGe2b8.d.mts +0 -767
  290. package/dist/index-CZjkpp75.d.mts +0 -3867
  291. package/dist/index-CgkjUheS.d.ts +0 -3867
  292. package/dist/{index-B08s7rEU.d.mts → index-DmhxH5jy.d.mts} +8 -8
  293. package/dist/{index-DqnBqATx.d.ts → index-y5JJvyML.d.ts} +8 -8
@@ -9,11 +9,70 @@
9
9
  "description": "Report unique name"
10
10
  },
11
11
  "label": {
12
- "type": "string",
12
+ "anyOf": [
13
+ {
14
+ "type": "string"
15
+ },
16
+ {
17
+ "type": "object",
18
+ "properties": {
19
+ "key": {
20
+ "type": "string",
21
+ "description": "Translation key (e.g., \"views.task_list.label\")"
22
+ },
23
+ "defaultValue": {
24
+ "description": "Fallback value when translation key is not found",
25
+ "type": "string"
26
+ },
27
+ "params": {
28
+ "description": "Interpolation parameters (e.g., { count: 5 })",
29
+ "type": "object",
30
+ "propertyNames": {
31
+ "type": "string"
32
+ },
33
+ "additionalProperties": {}
34
+ }
35
+ },
36
+ "required": [
37
+ "key"
38
+ ],
39
+ "additionalProperties": false
40
+ }
41
+ ],
13
42
  "description": "Report label"
14
43
  },
15
44
  "description": {
16
- "type": "string"
45
+ "anyOf": [
46
+ {
47
+ "type": "string"
48
+ },
49
+ {
50
+ "type": "object",
51
+ "properties": {
52
+ "key": {
53
+ "type": "string",
54
+ "description": "Translation key (e.g., \"views.task_list.label\")"
55
+ },
56
+ "defaultValue": {
57
+ "description": "Fallback value when translation key is not found",
58
+ "type": "string"
59
+ },
60
+ "params": {
61
+ "description": "Interpolation parameters (e.g., { count: 5 })",
62
+ "type": "object",
63
+ "propertyNames": {
64
+ "type": "string"
65
+ },
66
+ "additionalProperties": {}
67
+ }
68
+ },
69
+ "required": [
70
+ "key"
71
+ ],
72
+ "additionalProperties": false
73
+ }
74
+ ],
75
+ "description": "Display label: plain string or i18n translation object"
17
76
  },
18
77
  "objectName": {
19
78
  "type": "string",
@@ -41,7 +100,36 @@
41
100
  },
42
101
  "label": {
43
102
  "description": "Override label",
44
- "type": "string"
103
+ "anyOf": [
104
+ {
105
+ "type": "string"
106
+ },
107
+ {
108
+ "type": "object",
109
+ "properties": {
110
+ "key": {
111
+ "type": "string",
112
+ "description": "Translation key (e.g., \"views.task_list.label\")"
113
+ },
114
+ "defaultValue": {
115
+ "description": "Fallback value when translation key is not found",
116
+ "type": "string"
117
+ },
118
+ "params": {
119
+ "description": "Interpolation parameters (e.g., { count: 5 })",
120
+ "type": "object",
121
+ "propertyNames": {
122
+ "type": "string"
123
+ },
124
+ "additionalProperties": {}
125
+ }
126
+ },
127
+ "required": [
128
+ "key"
129
+ ],
130
+ "additionalProperties": false
131
+ }
132
+ ]
45
133
  },
46
134
  "aggregate": {
47
135
  "description": "Aggregation function",
@@ -54,6 +142,102 @@
54
142
  "count",
55
143
  "unique"
56
144
  ]
145
+ },
146
+ "responsive": {
147
+ "description": "Responsive visibility for this column",
148
+ "type": "object",
149
+ "properties": {
150
+ "breakpoint": {
151
+ "description": "Minimum breakpoint for visibility",
152
+ "type": "string",
153
+ "enum": [
154
+ "xs",
155
+ "sm",
156
+ "md",
157
+ "lg",
158
+ "xl",
159
+ "2xl"
160
+ ]
161
+ },
162
+ "hiddenOn": {
163
+ "description": "Hide on these breakpoints",
164
+ "type": "array",
165
+ "items": {
166
+ "type": "string",
167
+ "enum": [
168
+ "xs",
169
+ "sm",
170
+ "md",
171
+ "lg",
172
+ "xl",
173
+ "2xl"
174
+ ]
175
+ }
176
+ },
177
+ "columns": {
178
+ "description": "Grid columns per breakpoint",
179
+ "type": "object",
180
+ "properties": {
181
+ "xs": {
182
+ "type": "number",
183
+ "minimum": 1,
184
+ "maximum": 12
185
+ },
186
+ "sm": {
187
+ "type": "number",
188
+ "minimum": 1,
189
+ "maximum": 12
190
+ },
191
+ "md": {
192
+ "type": "number",
193
+ "minimum": 1,
194
+ "maximum": 12
195
+ },
196
+ "lg": {
197
+ "type": "number",
198
+ "minimum": 1,
199
+ "maximum": 12
200
+ },
201
+ "xl": {
202
+ "type": "number",
203
+ "minimum": 1,
204
+ "maximum": 12
205
+ },
206
+ "2xl": {
207
+ "type": "number",
208
+ "minimum": 1,
209
+ "maximum": 12
210
+ }
211
+ },
212
+ "additionalProperties": false
213
+ },
214
+ "order": {
215
+ "description": "Display order per breakpoint",
216
+ "type": "object",
217
+ "properties": {
218
+ "xs": {
219
+ "type": "number"
220
+ },
221
+ "sm": {
222
+ "type": "number"
223
+ },
224
+ "md": {
225
+ "type": "number"
226
+ },
227
+ "lg": {
228
+ "type": "number"
229
+ },
230
+ "xl": {
231
+ "type": "number"
232
+ },
233
+ "2xl": {
234
+ "type": "number"
235
+ }
236
+ },
237
+ "additionalProperties": false
238
+ }
239
+ },
240
+ "additionalProperties": false
57
241
  }
58
242
  },
59
243
  "required": [
@@ -190,15 +374,102 @@
190
374
  },
191
375
  "title": {
192
376
  "description": "Chart title",
193
- "type": "string"
377
+ "anyOf": [
378
+ {
379
+ "type": "string"
380
+ },
381
+ {
382
+ "type": "object",
383
+ "properties": {
384
+ "key": {
385
+ "type": "string",
386
+ "description": "Translation key (e.g., \"views.task_list.label\")"
387
+ },
388
+ "defaultValue": {
389
+ "description": "Fallback value when translation key is not found",
390
+ "type": "string"
391
+ },
392
+ "params": {
393
+ "description": "Interpolation parameters (e.g., { count: 5 })",
394
+ "type": "object",
395
+ "propertyNames": {
396
+ "type": "string"
397
+ },
398
+ "additionalProperties": {}
399
+ }
400
+ },
401
+ "required": [
402
+ "key"
403
+ ],
404
+ "additionalProperties": false
405
+ }
406
+ ]
194
407
  },
195
408
  "subtitle": {
196
409
  "description": "Chart subtitle",
197
- "type": "string"
410
+ "anyOf": [
411
+ {
412
+ "type": "string"
413
+ },
414
+ {
415
+ "type": "object",
416
+ "properties": {
417
+ "key": {
418
+ "type": "string",
419
+ "description": "Translation key (e.g., \"views.task_list.label\")"
420
+ },
421
+ "defaultValue": {
422
+ "description": "Fallback value when translation key is not found",
423
+ "type": "string"
424
+ },
425
+ "params": {
426
+ "description": "Interpolation parameters (e.g., { count: 5 })",
427
+ "type": "object",
428
+ "propertyNames": {
429
+ "type": "string"
430
+ },
431
+ "additionalProperties": {}
432
+ }
433
+ },
434
+ "required": [
435
+ "key"
436
+ ],
437
+ "additionalProperties": false
438
+ }
439
+ ]
198
440
  },
199
441
  "description": {
200
442
  "description": "Accessibility description",
201
- "type": "string"
443
+ "anyOf": [
444
+ {
445
+ "type": "string"
446
+ },
447
+ {
448
+ "type": "object",
449
+ "properties": {
450
+ "key": {
451
+ "type": "string",
452
+ "description": "Translation key (e.g., \"views.task_list.label\")"
453
+ },
454
+ "defaultValue": {
455
+ "description": "Fallback value when translation key is not found",
456
+ "type": "string"
457
+ },
458
+ "params": {
459
+ "description": "Interpolation parameters (e.g., { count: 5 })",
460
+ "type": "object",
461
+ "propertyNames": {
462
+ "type": "string"
463
+ },
464
+ "additionalProperties": {}
465
+ }
466
+ },
467
+ "required": [
468
+ "key"
469
+ ],
470
+ "additionalProperties": false
471
+ }
472
+ ]
202
473
  },
203
474
  "xAxis": {
204
475
  "type": "string",
@@ -220,7 +491,36 @@
220
491
  },
221
492
  "label": {
222
493
  "description": "Series display label",
223
- "type": "string"
494
+ "anyOf": [
495
+ {
496
+ "type": "string"
497
+ },
498
+ {
499
+ "type": "object",
500
+ "properties": {
501
+ "key": {
502
+ "type": "string",
503
+ "description": "Translation key (e.g., \"views.task_list.label\")"
504
+ },
505
+ "defaultValue": {
506
+ "description": "Fallback value when translation key is not found",
507
+ "type": "string"
508
+ },
509
+ "params": {
510
+ "description": "Interpolation parameters (e.g., { count: 5 })",
511
+ "type": "object",
512
+ "propertyNames": {
513
+ "type": "string"
514
+ },
515
+ "additionalProperties": {}
516
+ }
517
+ },
518
+ "required": [
519
+ "key"
520
+ ],
521
+ "additionalProperties": false
522
+ }
523
+ ]
224
524
  },
225
525
  "type": {
226
526
  "description": "Override chart type for this series",
@@ -359,7 +659,37 @@
359
659
  "type": "string"
360
660
  },
361
661
  "label": {
362
- "type": "string"
662
+ "anyOf": [
663
+ {
664
+ "type": "string"
665
+ },
666
+ {
667
+ "type": "object",
668
+ "properties": {
669
+ "key": {
670
+ "type": "string",
671
+ "description": "Translation key (e.g., \"views.task_list.label\")"
672
+ },
673
+ "defaultValue": {
674
+ "description": "Fallback value when translation key is not found",
675
+ "type": "string"
676
+ },
677
+ "params": {
678
+ "description": "Interpolation parameters (e.g., { count: 5 })",
679
+ "type": "object",
680
+ "propertyNames": {
681
+ "type": "string"
682
+ },
683
+ "additionalProperties": {}
684
+ }
685
+ },
686
+ "required": [
687
+ "key"
688
+ ],
689
+ "additionalProperties": false
690
+ }
691
+ ],
692
+ "description": "Display label: plain string or i18n translation object"
363
693
  },
364
694
  "style": {
365
695
  "default": "dashed",
@@ -407,6 +737,54 @@
407
737
  ],
408
738
  "additionalProperties": false
409
739
  },
740
+ "aria": {
741
+ "description": "ARIA accessibility attributes",
742
+ "type": "object",
743
+ "properties": {
744
+ "ariaLabel": {
745
+ "description": "Accessible label for screen readers (WAI-ARIA aria-label)",
746
+ "anyOf": [
747
+ {
748
+ "type": "string"
749
+ },
750
+ {
751
+ "type": "object",
752
+ "properties": {
753
+ "key": {
754
+ "type": "string",
755
+ "description": "Translation key (e.g., \"views.task_list.label\")"
756
+ },
757
+ "defaultValue": {
758
+ "description": "Fallback value when translation key is not found",
759
+ "type": "string"
760
+ },
761
+ "params": {
762
+ "description": "Interpolation parameters (e.g., { count: 5 })",
763
+ "type": "object",
764
+ "propertyNames": {
765
+ "type": "string"
766
+ },
767
+ "additionalProperties": {}
768
+ }
769
+ },
770
+ "required": [
771
+ "key"
772
+ ],
773
+ "additionalProperties": false
774
+ }
775
+ ]
776
+ },
777
+ "ariaDescribedBy": {
778
+ "description": "ID of element providing additional description (WAI-ARIA aria-describedby)",
779
+ "type": "string"
780
+ },
781
+ "role": {
782
+ "description": "WAI-ARIA role attribute (e.g., \"dialog\", \"navigation\", \"alert\")",
783
+ "type": "string"
784
+ }
785
+ },
786
+ "additionalProperties": false
787
+ },
410
788
  "groupBy": {
411
789
  "description": "Additional grouping field",
412
790
  "type": "string"
@@ -420,6 +798,110 @@
420
798
  "showDataLabels"
421
799
  ],
422
800
  "additionalProperties": false
801
+ },
802
+ "aria": {
803
+ "description": "ARIA accessibility attributes",
804
+ "type": "object",
805
+ "properties": {
806
+ "ariaLabel": {
807
+ "description": "Accessible label for screen readers (WAI-ARIA aria-label)",
808
+ "anyOf": [
809
+ {
810
+ "type": "string"
811
+ },
812
+ {
813
+ "type": "object",
814
+ "properties": {
815
+ "key": {
816
+ "type": "string",
817
+ "description": "Translation key (e.g., \"views.task_list.label\")"
818
+ },
819
+ "defaultValue": {
820
+ "description": "Fallback value when translation key is not found",
821
+ "type": "string"
822
+ },
823
+ "params": {
824
+ "description": "Interpolation parameters (e.g., { count: 5 })",
825
+ "type": "object",
826
+ "propertyNames": {
827
+ "type": "string"
828
+ },
829
+ "additionalProperties": {}
830
+ }
831
+ },
832
+ "required": [
833
+ "key"
834
+ ],
835
+ "additionalProperties": false
836
+ }
837
+ ]
838
+ },
839
+ "ariaDescribedBy": {
840
+ "description": "ID of element providing additional description (WAI-ARIA aria-describedby)",
841
+ "type": "string"
842
+ },
843
+ "role": {
844
+ "description": "WAI-ARIA role attribute (e.g., \"dialog\", \"navigation\", \"alert\")",
845
+ "type": "string"
846
+ }
847
+ },
848
+ "additionalProperties": false
849
+ },
850
+ "performance": {
851
+ "description": "Performance optimization settings",
852
+ "type": "object",
853
+ "properties": {
854
+ "lazyLoad": {
855
+ "description": "Enable lazy loading (defer rendering until visible)",
856
+ "type": "boolean"
857
+ },
858
+ "virtualScroll": {
859
+ "description": "Virtual scrolling configuration",
860
+ "type": "object",
861
+ "properties": {
862
+ "enabled": {
863
+ "default": false,
864
+ "description": "Enable virtual scrolling",
865
+ "type": "boolean"
866
+ },
867
+ "itemHeight": {
868
+ "description": "Fixed item height in pixels (for estimation)",
869
+ "type": "number"
870
+ },
871
+ "overscan": {
872
+ "description": "Number of extra items to render outside viewport",
873
+ "type": "number"
874
+ }
875
+ },
876
+ "required": [
877
+ "enabled"
878
+ ],
879
+ "additionalProperties": false
880
+ },
881
+ "cacheStrategy": {
882
+ "description": "Client-side data caching strategy",
883
+ "type": "string",
884
+ "enum": [
885
+ "none",
886
+ "cache-first",
887
+ "network-first",
888
+ "stale-while-revalidate"
889
+ ]
890
+ },
891
+ "prefetch": {
892
+ "description": "Prefetch data before component is visible",
893
+ "type": "boolean"
894
+ },
895
+ "pageSize": {
896
+ "description": "Number of items per page for pagination",
897
+ "type": "number"
898
+ },
899
+ "debounceMs": {
900
+ "description": "Debounce interval for user interactions in milliseconds",
901
+ "type": "number"
902
+ }
903
+ },
904
+ "additionalProperties": false
423
905
  }
424
906
  },
425
907
  "required": [