@objectstack/spec 0.3.0 → 0.3.2

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 (400) hide show
  1. package/dist/ai/conversation.zod.d.ts +1059 -0
  2. package/dist/ai/conversation.zod.d.ts.map +1 -0
  3. package/dist/ai/conversation.zod.js +248 -0
  4. package/dist/ai/cost.zod.d.ts +2025 -0
  5. package/dist/ai/cost.zod.d.ts.map +1 -0
  6. package/dist/ai/cost.zod.js +324 -0
  7. package/dist/ai/index.d.ts +8 -0
  8. package/dist/ai/index.d.ts.map +1 -1
  9. package/dist/ai/index.js +8 -0
  10. package/dist/ai/model-registry.zod.d.ts +53 -53
  11. package/dist/ai/nlq.zod.d.ts +24 -24
  12. package/dist/ai/predictive.zod.d.ts +838 -0
  13. package/dist/ai/predictive.zod.d.ts.map +1 -0
  14. package/dist/ai/predictive.zod.js +244 -0
  15. package/dist/ai/rag-pipeline.zod.d.ts +22 -22
  16. package/dist/ai/workflow-automation.zod.d.ts +590 -0
  17. package/dist/ai/workflow-automation.zod.d.ts.map +1 -0
  18. package/dist/ai/workflow-automation.zod.js +197 -0
  19. package/dist/api/contract.zod.d.ts +22 -22
  20. package/dist/data/field.zod.d.ts +409 -4
  21. package/dist/data/field.zod.d.ts.map +1 -1
  22. package/dist/data/field.zod.js +28 -2
  23. package/dist/data/mapping.zod.d.ts +6 -6
  24. package/dist/data/object.zod.d.ts +80 -10
  25. package/dist/data/object.zod.d.ts.map +1 -1
  26. package/dist/data/workflow.zod.d.ts +809 -18
  27. package/dist/data/workflow.zod.d.ts.map +1 -1
  28. package/dist/data/workflow.zod.js +115 -7
  29. package/dist/system/api.zod.d.ts +4 -4
  30. package/dist/system/audit.zod.d.ts +1172 -0
  31. package/dist/system/audit.zod.d.ts.map +1 -0
  32. package/dist/system/audit.zod.js +596 -0
  33. package/dist/system/auth.zod.d.ts +8 -8
  34. package/dist/system/driver.zod.d.ts +4 -4
  35. package/dist/system/events.zod.d.ts +177 -0
  36. package/dist/system/events.zod.d.ts.map +1 -0
  37. package/dist/system/events.zod.js +51 -0
  38. package/dist/system/identity.zod.d.ts +4 -4
  39. package/dist/system/index.d.ts +5 -0
  40. package/dist/system/index.d.ts.map +1 -1
  41. package/dist/system/index.js +5 -0
  42. package/dist/system/job.zod.d.ts +237 -0
  43. package/dist/system/job.zod.d.ts.map +1 -0
  44. package/dist/system/job.zod.js +82 -0
  45. package/dist/system/manifest.zod.d.ts +10 -10
  46. package/dist/system/realtime.zod.d.ts +135 -0
  47. package/dist/system/realtime.zod.d.ts.map +1 -0
  48. package/dist/system/realtime.zod.js +83 -0
  49. package/dist/system/tenant.zod.d.ts +1151 -0
  50. package/dist/system/tenant.zod.d.ts.map +1 -0
  51. package/dist/system/tenant.zod.js +498 -0
  52. package/dist/system/webhook.zod.d.ts +2 -2
  53. package/dist/ui/action.zod.d.ts +8 -8
  54. package/dist/ui/theme.zod.d.ts +12 -12
  55. package/dist/ui/view.zod.d.ts +2315 -54
  56. package/dist/ui/view.zod.d.ts.map +1 -1
  57. package/dist/ui/view.zod.js +102 -3
  58. package/dist/ui/widget.zod.d.ts +40 -5
  59. package/dist/ui/widget.zod.d.ts.map +1 -1
  60. package/json-schema/README.md +127 -0
  61. package/json-schema/ai/AITask.json +123 -0
  62. package/json-schema/ai/AITaskType.json +21 -0
  63. package/json-schema/ai/AIWorkflowAutomation.json +379 -0
  64. package/json-schema/ai/AIWorkflowExecutionResult.json +105 -0
  65. package/json-schema/ai/AIWorkflowTrigger.json +18 -0
  66. package/json-schema/ai/BatchAIWorkflowExecution.json +48 -0
  67. package/json-schema/ai/BillingPeriod.json +18 -0
  68. package/json-schema/ai/BudgetLimit.json +111 -0
  69. package/json-schema/ai/BudgetStatus.json +91 -0
  70. package/json-schema/ai/BudgetType.json +17 -0
  71. package/json-schema/ai/ConversationAnalytics.json +86 -0
  72. package/json-schema/ai/ConversationContext.json +48 -0
  73. package/json-schema/ai/ConversationMessage.json +209 -0
  74. package/json-schema/ai/ConversationSession.json +458 -0
  75. package/json-schema/ai/ConversationSummary.json +73 -0
  76. package/json-schema/ai/CostAlert.json +107 -0
  77. package/json-schema/ai/CostAlertType.json +16 -0
  78. package/json-schema/ai/CostAnalytics.json +589 -0
  79. package/json-schema/ai/CostBreakdownDimension.json +20 -0
  80. package/json-schema/ai/CostBreakdownEntry.json +60 -0
  81. package/json-schema/ai/CostEntry.json +106 -0
  82. package/json-schema/ai/CostMetricType.json +17 -0
  83. package/json-schema/ai/CostOptimizationRecommendation.json +100 -0
  84. package/json-schema/ai/CostQueryFilters.json +112 -0
  85. package/json-schema/ai/CostReport.json +964 -0
  86. package/json-schema/ai/EvaluationMetrics.json +64 -0
  87. package/json-schema/ai/FunctionCall.json +28 -0
  88. package/json-schema/ai/Hyperparameters.json +80 -0
  89. package/json-schema/ai/MessageContent.json +46 -0
  90. package/json-schema/ai/MessageContentType.json +16 -0
  91. package/json-schema/ai/MessagePruningEvent.json +92 -0
  92. package/json-schema/ai/MessageRole.json +16 -0
  93. package/json-schema/ai/ModelDrift.json +73 -0
  94. package/json-schema/ai/ModelFeature.json +71 -0
  95. package/json-schema/ai/PostProcessingAction.json +41 -0
  96. package/json-schema/ai/PredictionRequest.json +39 -0
  97. package/json-schema/ai/PredictionResult.json +82 -0
  98. package/json-schema/ai/PredictiveModel.json +445 -0
  99. package/json-schema/ai/PredictiveModelType.json +18 -0
  100. package/json-schema/ai/TokenBudgetConfig.json +92 -0
  101. package/json-schema/ai/TokenBudgetStrategy.json +16 -0
  102. package/json-schema/ai/TokenUsageStats.json +66 -0
  103. package/json-schema/ai/ToolCall.json +49 -0
  104. package/json-schema/ai/TrainingConfig.json +88 -0
  105. package/json-schema/ai/WorkflowFieldCondition.json +33 -0
  106. package/json-schema/ai/WorkflowSchedule.json +51 -0
  107. package/json-schema/data/CustomScriptAction.json +49 -0
  108. package/json-schema/{Field.json → data/Field.json} +50 -1
  109. package/json-schema/{FieldType.json → data/FieldType.json} +4 -1
  110. package/json-schema/data/HttpCallAction.json +81 -0
  111. package/json-schema/{Object.json → data/Object.json} +50 -1
  112. package/json-schema/data/PushNotificationAction.json +59 -0
  113. package/json-schema/data/SlackMessageAction.json +45 -0
  114. package/json-schema/data/SmsNotificationAction.json +50 -0
  115. package/json-schema/data/TaskCreationAction.json +59 -0
  116. package/json-schema/data/TeamsMessageAction.json +45 -0
  117. package/json-schema/data/WebhookTriggerAction.json +58 -0
  118. package/json-schema/data/WorkflowAction.json +465 -0
  119. package/json-schema/data/WorkflowRule.json +509 -0
  120. package/json-schema/system/AuditConfig.json +587 -0
  121. package/json-schema/system/AuditEvent.json +232 -0
  122. package/json-schema/system/AuditEventActor.json +48 -0
  123. package/json-schema/system/AuditEventChange.json +25 -0
  124. package/json-schema/system/AuditEventFilter.json +127 -0
  125. package/json-schema/system/AuditEventSeverity.json +19 -0
  126. package/json-schema/system/AuditEventTarget.json +33 -0
  127. package/json-schema/system/AuditEventType.json +53 -0
  128. package/json-schema/system/AuditRetentionPolicy.json +73 -0
  129. package/json-schema/system/AuditStorageConfig.json +60 -0
  130. package/json-schema/system/CronSchedule.json +29 -0
  131. package/json-schema/system/DatabaseLevelIsolationStrategy.json +139 -0
  132. package/json-schema/system/Event.json +52 -0
  133. package/json-schema/system/EventHandler.json +29 -0
  134. package/json-schema/system/EventMetadata.json +33 -0
  135. package/json-schema/system/EventPersistence.json +25 -0
  136. package/json-schema/system/EventRoute.json +27 -0
  137. package/json-schema/system/IntervalSchedule.json +25 -0
  138. package/json-schema/system/Job.json +127 -0
  139. package/json-schema/system/JobExecution.json +49 -0
  140. package/json-schema/system/JobExecutionStatus.json +15 -0
  141. package/json-schema/system/LevelIsolationStrategySchema.json +93 -0
  142. package/json-schema/system/OnceSchedule.json +25 -0
  143. package/json-schema/system/Presence.json +40 -0
  144. package/json-schema/system/PresenceStatus.json +14 -0
  145. package/json-schema/system/RealtimeAction.json +14 -0
  146. package/json-schema/system/RealtimeEvent.json +51 -0
  147. package/json-schema/system/RealtimeEventType.json +15 -0
  148. package/json-schema/system/RetryPolicy.json +30 -0
  149. package/json-schema/system/RowLevelIsolationStrategy.json +74 -0
  150. package/json-schema/system/Schedule.json +71 -0
  151. package/json-schema/system/Subscription.json +65 -0
  152. package/json-schema/system/SubscriptionEvent.json +32 -0
  153. package/json-schema/system/SuspiciousActivityRule.json +175 -0
  154. package/json-schema/system/Tenant.json +61 -0
  155. package/json-schema/system/TenantIsolationConfig.json +298 -0
  156. package/json-schema/system/TenantIsolationLevel.json +14 -0
  157. package/json-schema/system/TenantQuota.json +27 -0
  158. package/json-schema/system/TenantSecurityPolicy.json +115 -0
  159. package/json-schema/system/TransportProtocol.json +14 -0
  160. package/json-schema/{Action.json → ui/Action.json} +4 -1
  161. package/json-schema/{ActionParam.json → ui/ActionParam.json} +4 -1
  162. package/json-schema/{FieldWidgetProps.json → ui/FieldWidgetProps.json} +50 -1
  163. package/json-schema/ui/FormField.json +61 -0
  164. package/json-schema/ui/FormSection.json +101 -0
  165. package/json-schema/ui/FormView.json +354 -0
  166. package/json-schema/ui/HttpMethod.json +16 -0
  167. package/json-schema/ui/HttpRequest.json +46 -0
  168. package/json-schema/ui/ListColumn.json +57 -0
  169. package/json-schema/ui/ListView.json +398 -0
  170. package/json-schema/ui/PaginationConfig.json +26 -0
  171. package/json-schema/ui/SelectionConfig.json +22 -0
  172. package/json-schema/ui/View.json +1500 -0
  173. package/json-schema/ui/ViewData.json +142 -0
  174. package/package.json +12 -12
  175. package/json-schema/AuthenticationConfig.json +0 -601
  176. package/json-schema/AuthenticationProvider.json +0 -617
  177. package/json-schema/FormSection.json +0 -42
  178. package/json-schema/FormView.json +0 -99
  179. package/json-schema/ListView.json +0 -153
  180. package/json-schema/MenuItem.json +0 -28
  181. package/json-schema/View.json +0 -500
  182. package/json-schema/WorkflowAction.json +0 -84
  183. package/json-schema/WorkflowRule.json +0 -128
  184. /package/json-schema/{AIKnowledge.json → ai/AIKnowledge.json} +0 -0
  185. /package/json-schema/{AIModelConfig.json → ai/AIModelConfig.json} +0 -0
  186. /package/json-schema/{AITool.json → ai/AITool.json} +0 -0
  187. /package/json-schema/{Agent.json → ai/Agent.json} +0 -0
  188. /package/json-schema/{ChunkingStrategy.json → ai/ChunkingStrategy.json} +0 -0
  189. /package/json-schema/{DocumentChunk.json → ai/DocumentChunk.json} +0 -0
  190. /package/json-schema/{DocumentLoaderConfig.json → ai/DocumentLoaderConfig.json} +0 -0
  191. /package/json-schema/{DocumentMetadata.json → ai/DocumentMetadata.json} +0 -0
  192. /package/json-schema/{EmbeddingModel.json → ai/EmbeddingModel.json} +0 -0
  193. /package/json-schema/{Entity.json → ai/Entity.json} +0 -0
  194. /package/json-schema/{FieldSynonymConfig.json → ai/FieldSynonymConfig.json} +0 -0
  195. /package/json-schema/{ModelCapability.json → ai/ModelCapability.json} +0 -0
  196. /package/json-schema/{ModelConfig.json → ai/ModelConfig.json} +0 -0
  197. /package/json-schema/{ModelLimits.json → ai/ModelLimits.json} +0 -0
  198. /package/json-schema/{ModelPricing.json → ai/ModelPricing.json} +0 -0
  199. /package/json-schema/{ModelProvider.json → ai/ModelProvider.json} +0 -0
  200. /package/json-schema/{ModelRegistry.json → ai/ModelRegistry.json} +0 -0
  201. /package/json-schema/{ModelRegistryEntry.json → ai/ModelRegistryEntry.json} +0 -0
  202. /package/json-schema/{ModelSelectionCriteria.json → ai/ModelSelectionCriteria.json} +0 -0
  203. /package/json-schema/{NLQAnalytics.json → ai/NLQAnalytics.json} +0 -0
  204. /package/json-schema/{NLQFieldMapping.json → ai/NLQFieldMapping.json} +0 -0
  205. /package/json-schema/{NLQModelConfig.json → ai/NLQModelConfig.json} +0 -0
  206. /package/json-schema/{NLQParseResult.json → ai/NLQParseResult.json} +0 -0
  207. /package/json-schema/{NLQRequest.json → ai/NLQRequest.json} +0 -0
  208. /package/json-schema/{NLQResponse.json → ai/NLQResponse.json} +0 -0
  209. /package/json-schema/{NLQTrainingExample.json → ai/NLQTrainingExample.json} +0 -0
  210. /package/json-schema/{PromptTemplate.json → ai/PromptTemplate.json} +0 -0
  211. /package/json-schema/{PromptVariable.json → ai/PromptVariable.json} +0 -0
  212. /package/json-schema/{QueryContext.json → ai/QueryContext.json} +0 -0
  213. /package/json-schema/{QueryIntent.json → ai/QueryIntent.json} +0 -0
  214. /package/json-schema/{QueryTemplate.json → ai/QueryTemplate.json} +0 -0
  215. /package/json-schema/{RAGPipelineConfig.json → ai/RAGPipelineConfig.json} +0 -0
  216. /package/json-schema/{RAGPipelineStatus.json → ai/RAGPipelineStatus.json} +0 -0
  217. /package/json-schema/{RAGQueryRequest.json → ai/RAGQueryRequest.json} +0 -0
  218. /package/json-schema/{RAGQueryResponse.json → ai/RAGQueryResponse.json} +0 -0
  219. /package/json-schema/{RerankingConfig.json → ai/RerankingConfig.json} +0 -0
  220. /package/json-schema/{RetrievalStrategy.json → ai/RetrievalStrategy.json} +0 -0
  221. /package/json-schema/{Timeframe.json → ai/Timeframe.json} +0 -0
  222. /package/json-schema/{VectorStoreConfig.json → ai/VectorStoreConfig.json} +0 -0
  223. /package/json-schema/{VectorStoreProvider.json → ai/VectorStoreProvider.json} +0 -0
  224. /package/json-schema/{ApiError.json → api/ApiError.json} +0 -0
  225. /package/json-schema/{BaseResponse.json → api/BaseResponse.json} +0 -0
  226. /package/json-schema/{BulkRequest.json → api/BulkRequest.json} +0 -0
  227. /package/json-schema/{BulkResponse.json → api/BulkResponse.json} +0 -0
  228. /package/json-schema/{CreateRequest.json → api/CreateRequest.json} +0 -0
  229. /package/json-schema/{DeleteResponse.json → api/DeleteResponse.json} +0 -0
  230. /package/json-schema/{ExportRequest.json → api/ExportRequest.json} +0 -0
  231. /package/json-schema/{ListRecordResponse.json → api/ListRecordResponse.json} +0 -0
  232. /package/json-schema/{ModificationResult.json → api/ModificationResult.json} +0 -0
  233. /package/json-schema/{RecordData.json → api/RecordData.json} +0 -0
  234. /package/json-schema/{SingleRecordResponse.json → api/SingleRecordResponse.json} +0 -0
  235. /package/json-schema/{UpdateRequest.json → api/UpdateRequest.json} +0 -0
  236. /package/json-schema/{Address.json → data/Address.json} +0 -0
  237. /package/json-schema/{AggregationFunction.json → data/AggregationFunction.json} +0 -0
  238. /package/json-schema/{AggregationNode.json → data/AggregationNode.json} +0 -0
  239. /package/json-schema/{AsyncValidation.json → data/AsyncValidation.json} +0 -0
  240. /package/json-schema/{ComparisonOperator.json → data/ComparisonOperator.json} +0 -0
  241. /package/json-schema/{ConditionalValidation.json → data/ConditionalValidation.json} +0 -0
  242. /package/json-schema/{CrossFieldValidation.json → data/CrossFieldValidation.json} +0 -0
  243. /package/json-schema/{CustomValidator.json → data/CustomValidator.json} +0 -0
  244. /package/json-schema/{Dataset.json → data/Dataset.json} +0 -0
  245. /package/json-schema/{DatasetMode.json → data/DatasetMode.json} +0 -0
  246. /package/json-schema/{EmailAlertAction.json → data/EmailAlertAction.json} +0 -0
  247. /package/json-schema/{EqualityOperator.json → data/EqualityOperator.json} +0 -0
  248. /package/json-schema/{FieldMapping.json → data/FieldMapping.json} +0 -0
  249. /package/json-schema/{FieldNode.json → data/FieldNode.json} +0 -0
  250. /package/json-schema/{FieldOperators.json → data/FieldOperators.json} +0 -0
  251. /package/json-schema/{FieldPermission.json → data/FieldPermission.json} +0 -0
  252. /package/json-schema/{FieldUpdateAction.json → data/FieldUpdateAction.json} +0 -0
  253. /package/json-schema/{FilterCondition.json → data/FilterCondition.json} +0 -0
  254. /package/json-schema/{FilterNode.json → data/FilterNode.json} +0 -0
  255. /package/json-schema/{FilterOperator.json → data/FilterOperator.json} +0 -0
  256. /package/json-schema/{Flow.json → data/Flow.json} +0 -0
  257. /package/json-schema/{FlowEdge.json → data/FlowEdge.json} +0 -0
  258. /package/json-schema/{FlowNode.json → data/FlowNode.json} +0 -0
  259. /package/json-schema/{FlowNodeAction.json → data/FlowNodeAction.json} +0 -0
  260. /package/json-schema/{FlowVariable.json → data/FlowVariable.json} +0 -0
  261. /package/json-schema/{FormatValidation.json → data/FormatValidation.json} +0 -0
  262. /package/json-schema/{Index.json → data/Index.json} +0 -0
  263. /package/json-schema/{JoinNode.json → data/JoinNode.json} +0 -0
  264. /package/json-schema/{JoinType.json → data/JoinType.json} +0 -0
  265. /package/json-schema/{LocationCoordinates.json → data/LocationCoordinates.json} +0 -0
  266. /package/json-schema/{LogicOperator.json → data/LogicOperator.json} +0 -0
  267. /package/json-schema/{Mapping.json → data/Mapping.json} +0 -0
  268. /package/json-schema/{NormalizedFilter.json → data/NormalizedFilter.json} +0 -0
  269. /package/json-schema/{OWDModel.json → data/OWDModel.json} +0 -0
  270. /package/json-schema/{ObjectCapabilities.json → data/ObjectCapabilities.json} +0 -0
  271. /package/json-schema/{ObjectPermission.json → data/ObjectPermission.json} +0 -0
  272. /package/json-schema/{PermissionSet.json → data/PermissionSet.json} +0 -0
  273. /package/json-schema/{Query.json → data/Query.json} +0 -0
  274. /package/json-schema/{QueryFilter.json → data/QueryFilter.json} +0 -0
  275. /package/json-schema/{RangeOperator.json → data/RangeOperator.json} +0 -0
  276. /package/json-schema/{ScriptValidation.json → data/ScriptValidation.json} +0 -0
  277. /package/json-schema/{SelectOption.json → data/SelectOption.json} +0 -0
  278. /package/json-schema/{SetOperator.json → data/SetOperator.json} +0 -0
  279. /package/json-schema/{SharingLevel.json → data/SharingLevel.json} +0 -0
  280. /package/json-schema/{SharingRule.json → data/SharingRule.json} +0 -0
  281. /package/json-schema/{SharingRuleType.json → data/SharingRuleType.json} +0 -0
  282. /package/json-schema/{SortNode.json → data/SortNode.json} +0 -0
  283. /package/json-schema/{SpecialOperator.json → data/SpecialOperator.json} +0 -0
  284. /package/json-schema/{StateMachineValidation.json → data/StateMachineValidation.json} +0 -0
  285. /package/json-schema/{StringOperator.json → data/StringOperator.json} +0 -0
  286. /package/json-schema/{TransformType.json → data/TransformType.json} +0 -0
  287. /package/json-schema/{Trigger.json → data/Trigger.json} +0 -0
  288. /package/json-schema/{TriggerAction.json → data/TriggerAction.json} +0 -0
  289. /package/json-schema/{TriggerContext.json → data/TriggerContext.json} +0 -0
  290. /package/json-schema/{TriggerTiming.json → data/TriggerTiming.json} +0 -0
  291. /package/json-schema/{UniquenessValidation.json → data/UniquenessValidation.json} +0 -0
  292. /package/json-schema/{ValidationRule.json → data/ValidationRule.json} +0 -0
  293. /package/json-schema/{WindowFunction.json → data/WindowFunction.json} +0 -0
  294. /package/json-schema/{WindowFunctionNode.json → data/WindowFunctionNode.json} +0 -0
  295. /package/json-schema/{WindowSpec.json → data/WindowSpec.json} +0 -0
  296. /package/json-schema/{WorkflowTriggerType.json → data/WorkflowTriggerType.json} +0 -0
  297. /package/json-schema/{Account.json → system/Account.json} +0 -0
  298. /package/json-schema/{AccountLinkingConfig.json → system/AccountLinkingConfig.json} +0 -0
  299. /package/json-schema/{ApiCapabilities.json → system/ApiCapabilities.json} +0 -0
  300. /package/json-schema/{ApiEndpoint.json → system/ApiEndpoint.json} +0 -0
  301. /package/json-schema/{ApiMapping.json → system/ApiMapping.json} +0 -0
  302. /package/json-schema/{ApiRoutes.json → system/ApiRoutes.json} +0 -0
  303. /package/json-schema/{AuditPolicy.json → system/AuditPolicy.json} +0 -0
  304. /package/json-schema/{AuthConfig.json → system/AuthConfig.json} +0 -0
  305. /package/json-schema/{AuthPluginConfig.json → system/AuthPluginConfig.json} +0 -0
  306. /package/json-schema/{AuthStrategy.json → system/AuthStrategy.json} +0 -0
  307. /package/json-schema/{CSRFConfig.json → system/CSRFConfig.json} +0 -0
  308. /package/json-schema/{DatabaseAdapter.json → system/DatabaseAdapter.json} +0 -0
  309. /package/json-schema/{DatabaseMapping.json → system/DatabaseMapping.json} +0 -0
  310. /package/json-schema/{Datasource.json → system/Datasource.json} +0 -0
  311. /package/json-schema/{DatasourceCapabilities.json → system/DatasourceCapabilities.json} +0 -0
  312. /package/json-schema/{Discovery.json → system/Discovery.json} +0 -0
  313. /package/json-schema/{DriverCapabilities.json → system/DriverCapabilities.json} +0 -0
  314. /package/json-schema/{DriverDefinition.json → system/DriverDefinition.json} +0 -0
  315. /package/json-schema/{DriverInterface.json → system/DriverInterface.json} +0 -0
  316. /package/json-schema/{DriverOptions.json → system/DriverOptions.json} +0 -0
  317. /package/json-schema/{DriverType.json → system/DriverType.json} +0 -0
  318. /package/json-schema/{EmailPasswordConfig.json → system/EmailPasswordConfig.json} +0 -0
  319. /package/json-schema/{EnterpriseAuthConfig.json → system/EnterpriseAuthConfig.json} +0 -0
  320. /package/json-schema/{Feature.json → system/Feature.json} +0 -0
  321. /package/json-schema/{HttpMethod.json → system/HttpMethod.json} +0 -0
  322. /package/json-schema/{I18nContext.json → system/I18nContext.json} +0 -0
  323. /package/json-schema/{Invitation.json → system/Invitation.json} +0 -0
  324. /package/json-schema/{InvitationStatus.json → system/InvitationStatus.json} +0 -0
  325. /package/json-schema/{LDAPConfig.json → system/LDAPConfig.json} +0 -0
  326. /package/json-schema/{License.json → system/License.json} +0 -0
  327. /package/json-schema/{Locale.json → system/Locale.json} +0 -0
  328. /package/json-schema/{Logger.json → system/Logger.json} +0 -0
  329. /package/json-schema/{MagicLinkConfig.json → system/MagicLinkConfig.json} +0 -0
  330. /package/json-schema/{Manifest.json → system/Manifest.json} +0 -0
  331. /package/json-schema/{Member.json → system/Member.json} +0 -0
  332. /package/json-schema/{MetricType.json → system/MetricType.json} +0 -0
  333. /package/json-schema/{NetworkPolicy.json → system/NetworkPolicy.json} +0 -0
  334. /package/json-schema/{OAuthProvider.json → system/OAuthProvider.json} +0 -0
  335. /package/json-schema/{OIDCConfig.json → system/OIDCConfig.json} +0 -0
  336. /package/json-schema/{ObjectQLClient.json → system/ObjectQLClient.json} +0 -0
  337. /package/json-schema/{Organization.json → system/Organization.json} +0 -0
  338. /package/json-schema/{PasskeyConfig.json → system/PasskeyConfig.json} +0 -0
  339. /package/json-schema/{PasswordPolicy.json → system/PasswordPolicy.json} +0 -0
  340. /package/json-schema/{Plan.json → system/Plan.json} +0 -0
  341. /package/json-schema/{Plugin.json → system/Plugin.json} +0 -0
  342. /package/json-schema/{PluginContext.json → system/PluginContext.json} +0 -0
  343. /package/json-schema/{PluginLifecycle.json → system/PluginLifecycle.json} +0 -0
  344. /package/json-schema/{Policy.json → system/Policy.json} +0 -0
  345. /package/json-schema/{RateLimit.json → system/RateLimit.json} +0 -0
  346. /package/json-schema/{RateLimitConfig.json → system/RateLimitConfig.json} +0 -0
  347. /package/json-schema/{Role.json → system/Role.json} +0 -0
  348. /package/json-schema/{Router.json → system/Router.json} +0 -0
  349. /package/json-schema/{SAMLConfig.json → system/SAMLConfig.json} +0 -0
  350. /package/json-schema/{Scheduler.json → system/Scheduler.json} +0 -0
  351. /package/json-schema/{ScopedStorage.json → system/ScopedStorage.json} +0 -0
  352. /package/json-schema/{Session.json → system/Session.json} +0 -0
  353. /package/json-schema/{SessionConfig.json → system/SessionConfig.json} +0 -0
  354. /package/json-schema/{SessionPolicy.json → system/SessionPolicy.json} +0 -0
  355. /package/json-schema/{StandardAuthProvider.json → system/StandardAuthProvider.json} +0 -0
  356. /package/json-schema/{SystemAPI.json → system/SystemAPI.json} +0 -0
  357. /package/json-schema/{Territory.json → system/Territory.json} +0 -0
  358. /package/json-schema/{TerritoryModel.json → system/TerritoryModel.json} +0 -0
  359. /package/json-schema/{TerritoryType.json → system/TerritoryType.json} +0 -0
  360. /package/json-schema/{TranslationBundle.json → system/TranslationBundle.json} +0 -0
  361. /package/json-schema/{TranslationData.json → system/TranslationData.json} +0 -0
  362. /package/json-schema/{TwoFactorConfig.json → system/TwoFactorConfig.json} +0 -0
  363. /package/json-schema/{User.json → system/User.json} +0 -0
  364. /package/json-schema/{UserFieldMapping.json → system/UserFieldMapping.json} +0 -0
  365. /package/json-schema/{VerificationToken.json → system/VerificationToken.json} +0 -0
  366. /package/json-schema/{Webhook.json → system/Webhook.json} +0 -0
  367. /package/json-schema/{WebhookReceiver.json → system/WebhookReceiver.json} +0 -0
  368. /package/json-schema/{WebhookTriggerType.json → system/WebhookTriggerType.json} +0 -0
  369. /package/json-schema/{Animation.json → ui/Animation.json} +0 -0
  370. /package/json-schema/{App.json → ui/App.json} +0 -0
  371. /package/json-schema/{AppBranding.json → ui/AppBranding.json} +0 -0
  372. /package/json-schema/{BorderRadius.json → ui/BorderRadius.json} +0 -0
  373. /package/json-schema/{Breakpoints.json → ui/Breakpoints.json} +0 -0
  374. /package/json-schema/{CalendarConfig.json → ui/CalendarConfig.json} +0 -0
  375. /package/json-schema/{ChartType.json → ui/ChartType.json} +0 -0
  376. /package/json-schema/{ColorPalette.json → ui/ColorPalette.json} +0 -0
  377. /package/json-schema/{Dashboard.json → ui/Dashboard.json} +0 -0
  378. /package/json-schema/{DashboardNavItem.json → ui/DashboardNavItem.json} +0 -0
  379. /package/json-schema/{DashboardWidget.json → ui/DashboardWidget.json} +0 -0
  380. /package/json-schema/{GanttConfig.json → ui/GanttConfig.json} +0 -0
  381. /package/json-schema/{GroupNavItem.json → ui/GroupNavItem.json} +0 -0
  382. /package/json-schema/{KanbanConfig.json → ui/KanbanConfig.json} +0 -0
  383. /package/json-schema/{NavigationItem.json → ui/NavigationItem.json} +0 -0
  384. /package/json-schema/{ObjectNavItem.json → ui/ObjectNavItem.json} +0 -0
  385. /package/json-schema/{Page.json → ui/Page.json} +0 -0
  386. /package/json-schema/{PageComponent.json → ui/PageComponent.json} +0 -0
  387. /package/json-schema/{PageNavItem.json → ui/PageNavItem.json} +0 -0
  388. /package/json-schema/{PageRegion.json → ui/PageRegion.json} +0 -0
  389. /package/json-schema/{Report.json → ui/Report.json} +0 -0
  390. /package/json-schema/{ReportChart.json → ui/ReportChart.json} +0 -0
  391. /package/json-schema/{ReportColumn.json → ui/ReportColumn.json} +0 -0
  392. /package/json-schema/{ReportGrouping.json → ui/ReportGrouping.json} +0 -0
  393. /package/json-schema/{ReportType.json → ui/ReportType.json} +0 -0
  394. /package/json-schema/{Shadow.json → ui/Shadow.json} +0 -0
  395. /package/json-schema/{Spacing.json → ui/Spacing.json} +0 -0
  396. /package/json-schema/{Theme.json → ui/Theme.json} +0 -0
  397. /package/json-schema/{ThemeMode.json → ui/ThemeMode.json} +0 -0
  398. /package/json-schema/{Typography.json → ui/Typography.json} +0 -0
  399. /package/json-schema/{UrlNavItem.json → ui/UrlNavItem.json} +0 -0
  400. /package/json-schema/{ZIndex.json → ui/ZIndex.json} +0 -0
@@ -0,0 +1,298 @@
1
+ {
2
+ "$ref": "#/definitions/TenantIsolationConfig",
3
+ "definitions": {
4
+ "TenantIsolationConfig": {
5
+ "anyOf": [
6
+ {
7
+ "type": "object",
8
+ "properties": {
9
+ "strategy": {
10
+ "type": "string",
11
+ "const": "shared_schema",
12
+ "description": "Row-level isolation strategy"
13
+ },
14
+ "database": {
15
+ "type": "object",
16
+ "properties": {
17
+ "enableRLS": {
18
+ "type": "boolean",
19
+ "default": true,
20
+ "description": "Enable PostgreSQL Row-Level Security"
21
+ },
22
+ "contextMethod": {
23
+ "type": "string",
24
+ "enum": [
25
+ "session_variable",
26
+ "search_path",
27
+ "application_name"
28
+ ],
29
+ "default": "session_variable",
30
+ "description": "How to set tenant context"
31
+ },
32
+ "contextVariable": {
33
+ "type": "string",
34
+ "default": "app.current_tenant",
35
+ "description": "Session variable name"
36
+ },
37
+ "applicationValidation": {
38
+ "type": "boolean",
39
+ "default": true,
40
+ "description": "Application-level tenant validation"
41
+ }
42
+ },
43
+ "additionalProperties": false,
44
+ "description": "Database configuration"
45
+ },
46
+ "performance": {
47
+ "type": "object",
48
+ "properties": {
49
+ "usePartialIndexes": {
50
+ "type": "boolean",
51
+ "default": true,
52
+ "description": "Use partial indexes per tenant"
53
+ },
54
+ "usePartitioning": {
55
+ "type": "boolean",
56
+ "default": false,
57
+ "description": "Use table partitioning by tenant_id"
58
+ },
59
+ "poolSizePerTenant": {
60
+ "type": "integer",
61
+ "exclusiveMinimum": 0,
62
+ "description": "Connection pool size per tenant"
63
+ }
64
+ },
65
+ "additionalProperties": false,
66
+ "description": "Performance settings"
67
+ }
68
+ },
69
+ "required": [
70
+ "strategy"
71
+ ],
72
+ "additionalProperties": false
73
+ },
74
+ {
75
+ "type": "object",
76
+ "properties": {
77
+ "strategy": {
78
+ "type": "string",
79
+ "const": "isolated_schema",
80
+ "description": "Schema-level isolation strategy"
81
+ },
82
+ "schema": {
83
+ "type": "object",
84
+ "properties": {
85
+ "namingPattern": {
86
+ "type": "string",
87
+ "default": "tenant_{tenant_id}",
88
+ "description": "Schema naming pattern"
89
+ },
90
+ "includePublicSchema": {
91
+ "type": "boolean",
92
+ "default": true,
93
+ "description": "Include public schema"
94
+ },
95
+ "sharedSchema": {
96
+ "type": "string",
97
+ "default": "public",
98
+ "description": "Schema for shared resources"
99
+ },
100
+ "autoCreateSchema": {
101
+ "type": "boolean",
102
+ "default": true,
103
+ "description": "Auto-create schema"
104
+ }
105
+ },
106
+ "additionalProperties": false,
107
+ "description": "Schema configuration"
108
+ },
109
+ "migrations": {
110
+ "type": "object",
111
+ "properties": {
112
+ "strategy": {
113
+ "type": "string",
114
+ "enum": [
115
+ "parallel",
116
+ "sequential",
117
+ "on_demand"
118
+ ],
119
+ "default": "parallel",
120
+ "description": "Migration strategy"
121
+ },
122
+ "maxConcurrent": {
123
+ "type": "integer",
124
+ "exclusiveMinimum": 0,
125
+ "default": 10,
126
+ "description": "Max concurrent migrations"
127
+ },
128
+ "rollbackOnError": {
129
+ "type": "boolean",
130
+ "default": true,
131
+ "description": "Rollback on error"
132
+ }
133
+ },
134
+ "additionalProperties": false,
135
+ "description": "Migration configuration"
136
+ },
137
+ "performance": {
138
+ "type": "object",
139
+ "properties": {
140
+ "poolPerSchema": {
141
+ "type": "boolean",
142
+ "default": false,
143
+ "description": "Separate pool per schema"
144
+ },
145
+ "schemaCacheTTL": {
146
+ "type": "integer",
147
+ "exclusiveMinimum": 0,
148
+ "default": 3600,
149
+ "description": "Schema cache TTL"
150
+ }
151
+ },
152
+ "additionalProperties": false,
153
+ "description": "Performance settings"
154
+ }
155
+ },
156
+ "required": [
157
+ "strategy"
158
+ ],
159
+ "additionalProperties": false
160
+ },
161
+ {
162
+ "type": "object",
163
+ "properties": {
164
+ "strategy": {
165
+ "type": "string",
166
+ "const": "isolated_db",
167
+ "description": "Database-level isolation strategy"
168
+ },
169
+ "database": {
170
+ "type": "object",
171
+ "properties": {
172
+ "namingPattern": {
173
+ "type": "string",
174
+ "default": "tenant_{tenant_id}",
175
+ "description": "Database naming pattern"
176
+ },
177
+ "serverStrategy": {
178
+ "type": "string",
179
+ "enum": [
180
+ "shared",
181
+ "sharded",
182
+ "dedicated"
183
+ ],
184
+ "default": "shared",
185
+ "description": "Server assignment strategy"
186
+ },
187
+ "separateCredentials": {
188
+ "type": "boolean",
189
+ "default": true,
190
+ "description": "Separate credentials per tenant"
191
+ },
192
+ "autoCreateDatabase": {
193
+ "type": "boolean",
194
+ "default": true,
195
+ "description": "Auto-create database"
196
+ }
197
+ },
198
+ "additionalProperties": false,
199
+ "description": "Database configuration"
200
+ },
201
+ "connectionPool": {
202
+ "type": "object",
203
+ "properties": {
204
+ "poolSize": {
205
+ "type": "integer",
206
+ "exclusiveMinimum": 0,
207
+ "default": 10,
208
+ "description": "Connection pool size"
209
+ },
210
+ "maxActivePools": {
211
+ "type": "integer",
212
+ "exclusiveMinimum": 0,
213
+ "default": 100,
214
+ "description": "Max active pools"
215
+ },
216
+ "idleTimeout": {
217
+ "type": "integer",
218
+ "exclusiveMinimum": 0,
219
+ "default": 300,
220
+ "description": "Idle pool timeout"
221
+ },
222
+ "usePooler": {
223
+ "type": "boolean",
224
+ "default": true,
225
+ "description": "Use connection pooler"
226
+ }
227
+ },
228
+ "additionalProperties": false,
229
+ "description": "Connection pool configuration"
230
+ },
231
+ "backup": {
232
+ "type": "object",
233
+ "properties": {
234
+ "strategy": {
235
+ "type": "string",
236
+ "enum": [
237
+ "individual",
238
+ "consolidated",
239
+ "on_demand"
240
+ ],
241
+ "default": "individual",
242
+ "description": "Backup strategy"
243
+ },
244
+ "frequencyHours": {
245
+ "type": "integer",
246
+ "exclusiveMinimum": 0,
247
+ "default": 24,
248
+ "description": "Backup frequency"
249
+ },
250
+ "retentionDays": {
251
+ "type": "integer",
252
+ "exclusiveMinimum": 0,
253
+ "default": 30,
254
+ "description": "Backup retention days"
255
+ }
256
+ },
257
+ "additionalProperties": false,
258
+ "description": "Backup configuration"
259
+ },
260
+ "encryption": {
261
+ "type": "object",
262
+ "properties": {
263
+ "perTenantKeys": {
264
+ "type": "boolean",
265
+ "default": false,
266
+ "description": "Per-tenant encryption keys"
267
+ },
268
+ "algorithm": {
269
+ "type": "string",
270
+ "default": "AES-256-GCM",
271
+ "description": "Encryption algorithm"
272
+ },
273
+ "keyManagement": {
274
+ "type": "string",
275
+ "enum": [
276
+ "aws_kms",
277
+ "azure_key_vault",
278
+ "gcp_kms",
279
+ "hashicorp_vault",
280
+ "custom"
281
+ ],
282
+ "description": "Key management service"
283
+ }
284
+ },
285
+ "additionalProperties": false,
286
+ "description": "Encryption configuration"
287
+ }
288
+ },
289
+ "required": [
290
+ "strategy"
291
+ ],
292
+ "additionalProperties": false
293
+ }
294
+ ]
295
+ }
296
+ },
297
+ "$schema": "http://json-schema.org/draft-07/schema#"
298
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$ref": "#/definitions/TenantIsolationLevel",
3
+ "definitions": {
4
+ "TenantIsolationLevel": {
5
+ "type": "string",
6
+ "enum": [
7
+ "shared_schema",
8
+ "isolated_schema",
9
+ "isolated_db"
10
+ ]
11
+ }
12
+ },
13
+ "$schema": "http://json-schema.org/draft-07/schema#"
14
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$ref": "#/definitions/TenantQuota",
3
+ "definitions": {
4
+ "TenantQuota": {
5
+ "type": "object",
6
+ "properties": {
7
+ "maxUsers": {
8
+ "type": "integer",
9
+ "exclusiveMinimum": 0,
10
+ "description": "Maximum number of users"
11
+ },
12
+ "maxStorage": {
13
+ "type": "integer",
14
+ "exclusiveMinimum": 0,
15
+ "description": "Maximum storage in bytes"
16
+ },
17
+ "apiRateLimit": {
18
+ "type": "integer",
19
+ "exclusiveMinimum": 0,
20
+ "description": "API requests per minute"
21
+ }
22
+ },
23
+ "additionalProperties": false
24
+ }
25
+ },
26
+ "$schema": "http://json-schema.org/draft-07/schema#"
27
+ }
@@ -0,0 +1,115 @@
1
+ {
2
+ "$ref": "#/definitions/TenantSecurityPolicy",
3
+ "definitions": {
4
+ "TenantSecurityPolicy": {
5
+ "type": "object",
6
+ "properties": {
7
+ "encryption": {
8
+ "type": "object",
9
+ "properties": {
10
+ "atRest": {
11
+ "type": "boolean",
12
+ "default": true,
13
+ "description": "Require encryption at rest"
14
+ },
15
+ "inTransit": {
16
+ "type": "boolean",
17
+ "default": true,
18
+ "description": "Require encryption in transit"
19
+ },
20
+ "fieldLevel": {
21
+ "type": "boolean",
22
+ "default": false,
23
+ "description": "Require field-level encryption"
24
+ }
25
+ },
26
+ "additionalProperties": false,
27
+ "description": "Encryption requirements"
28
+ },
29
+ "accessControl": {
30
+ "type": "object",
31
+ "properties": {
32
+ "requireMFA": {
33
+ "type": "boolean",
34
+ "default": false,
35
+ "description": "Require MFA"
36
+ },
37
+ "requireSSO": {
38
+ "type": "boolean",
39
+ "default": false,
40
+ "description": "Require SSO"
41
+ },
42
+ "ipWhitelist": {
43
+ "type": "array",
44
+ "items": {
45
+ "type": "string"
46
+ },
47
+ "description": "Allowed IP addresses"
48
+ },
49
+ "sessionTimeout": {
50
+ "type": "integer",
51
+ "exclusiveMinimum": 0,
52
+ "default": 3600,
53
+ "description": "Session timeout"
54
+ }
55
+ },
56
+ "additionalProperties": false,
57
+ "description": "Access control requirements"
58
+ },
59
+ "compliance": {
60
+ "type": "object",
61
+ "properties": {
62
+ "standards": {
63
+ "type": "array",
64
+ "items": {
65
+ "type": "string",
66
+ "enum": [
67
+ "sox",
68
+ "hipaa",
69
+ "gdpr",
70
+ "pci_dss",
71
+ "iso_27001",
72
+ "fedramp"
73
+ ]
74
+ },
75
+ "description": "Compliance standards"
76
+ },
77
+ "requireAuditLog": {
78
+ "type": "boolean",
79
+ "default": true,
80
+ "description": "Require audit logging"
81
+ },
82
+ "auditRetentionDays": {
83
+ "type": "integer",
84
+ "exclusiveMinimum": 0,
85
+ "default": 365,
86
+ "description": "Audit retention days"
87
+ },
88
+ "dataResidency": {
89
+ "type": "object",
90
+ "properties": {
91
+ "region": {
92
+ "type": "string",
93
+ "description": "Required region (e.g., US, EU, APAC)"
94
+ },
95
+ "excludeRegions": {
96
+ "type": "array",
97
+ "items": {
98
+ "type": "string"
99
+ },
100
+ "description": "Prohibited regions"
101
+ }
102
+ },
103
+ "additionalProperties": false,
104
+ "description": "Data residency requirements"
105
+ }
106
+ },
107
+ "additionalProperties": false,
108
+ "description": "Compliance requirements"
109
+ }
110
+ },
111
+ "additionalProperties": false
112
+ }
113
+ },
114
+ "$schema": "http://json-schema.org/draft-07/schema#"
115
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$ref": "#/definitions/TransportProtocol",
3
+ "definitions": {
4
+ "TransportProtocol": {
5
+ "type": "string",
6
+ "enum": [
7
+ "websocket",
8
+ "sse",
9
+ "polling"
10
+ ]
11
+ }
12
+ },
13
+ "$schema": "http://json-schema.org/draft-07/schema#"
14
+ }
@@ -93,11 +93,14 @@
93
93
  "summary",
94
94
  "autonumber",
95
95
  "location",
96
+ "geolocation",
96
97
  "address",
97
98
  "code",
98
99
  "color",
99
100
  "rating",
100
- "signature"
101
+ "slider",
102
+ "signature",
103
+ "qrcode"
101
104
  ]
102
105
  },
103
106
  "required": {
@@ -39,11 +39,14 @@
39
39
  "summary",
40
40
  "autonumber",
41
41
  "location",
42
+ "geolocation",
42
43
  "address",
43
44
  "code",
44
45
  "color",
45
46
  "rating",
46
- "signature"
47
+ "slider",
48
+ "signature",
49
+ "qrcode"
47
50
  ]
48
51
  },
49
52
  "required": {
@@ -62,11 +62,14 @@
62
62
  "summary",
63
63
  "autonumber",
64
64
  "location",
65
+ "geolocation",
65
66
  "address",
66
67
  "code",
67
68
  "color",
68
69
  "rating",
69
- "signature"
70
+ "slider",
71
+ "signature",
72
+ "qrcode"
70
73
  ],
71
74
  "description": "Field Data Type"
72
75
  },
@@ -274,6 +277,52 @@
274
277
  },
275
278
  "description": "Preset color options"
276
279
  },
280
+ "step": {
281
+ "type": "number",
282
+ "description": "Step increment for slider (default: 1)"
283
+ },
284
+ "showValue": {
285
+ "type": "boolean",
286
+ "description": "Display current value on slider"
287
+ },
288
+ "marks": {
289
+ "type": "object",
290
+ "additionalProperties": {
291
+ "type": "string"
292
+ },
293
+ "description": "Custom marks/labels at specific values (e.g., {0: \"Low\", 50: \"Medium\", 100: \"High\"})"
294
+ },
295
+ "barcodeFormat": {
296
+ "type": "string",
297
+ "enum": [
298
+ "qr",
299
+ "ean13",
300
+ "ean8",
301
+ "code128",
302
+ "code39",
303
+ "upca",
304
+ "upce"
305
+ ],
306
+ "description": "Barcode format type"
307
+ },
308
+ "qrErrorCorrection": {
309
+ "type": "string",
310
+ "enum": [
311
+ "L",
312
+ "M",
313
+ "Q",
314
+ "H"
315
+ ],
316
+ "description": "QR code error correction level (L=7%, M=15%, Q=25%, H=30%). Only applicable when barcodeFormat is \"qr\""
317
+ },
318
+ "displayValue": {
319
+ "type": "boolean",
320
+ "description": "Display human-readable value below barcode/QR code"
321
+ },
322
+ "allowScanning": {
323
+ "type": "boolean",
324
+ "description": "Enable camera scanning for barcode/QR code input"
325
+ },
277
326
  "hidden": {
278
327
  "type": "boolean",
279
328
  "default": false,
@@ -0,0 +1,61 @@
1
+ {
2
+ "$ref": "#/definitions/FormField",
3
+ "definitions": {
4
+ "FormField": {
5
+ "type": "object",
6
+ "properties": {
7
+ "field": {
8
+ "type": "string",
9
+ "description": "Field name (snake_case)"
10
+ },
11
+ "label": {
12
+ "type": "string",
13
+ "description": "Display label override"
14
+ },
15
+ "placeholder": {
16
+ "type": "string",
17
+ "description": "Placeholder text"
18
+ },
19
+ "helpText": {
20
+ "type": "string",
21
+ "description": "Help/hint text"
22
+ },
23
+ "readonly": {
24
+ "type": "boolean",
25
+ "description": "Read-only override"
26
+ },
27
+ "required": {
28
+ "type": "boolean",
29
+ "description": "Required override"
30
+ },
31
+ "hidden": {
32
+ "type": "boolean",
33
+ "description": "Hidden override"
34
+ },
35
+ "colSpan": {
36
+ "type": "integer",
37
+ "minimum": 1,
38
+ "maximum": 4,
39
+ "description": "Column span in grid layout (1-4)"
40
+ },
41
+ "widget": {
42
+ "type": "string",
43
+ "description": "Custom widget/component name"
44
+ },
45
+ "dependsOn": {
46
+ "type": "string",
47
+ "description": "Parent field name for cascading"
48
+ },
49
+ "visibleOn": {
50
+ "type": "string",
51
+ "description": "Visibility condition expression"
52
+ }
53
+ },
54
+ "required": [
55
+ "field"
56
+ ],
57
+ "additionalProperties": false
58
+ }
59
+ },
60
+ "$schema": "http://json-schema.org/draft-07/schema#"
61
+ }