@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,1500 @@
1
+ {
2
+ "$ref": "#/definitions/View",
3
+ "definitions": {
4
+ "View": {
5
+ "type": "object",
6
+ "properties": {
7
+ "list": {
8
+ "type": "object",
9
+ "properties": {
10
+ "name": {
11
+ "type": "string"
12
+ },
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "type": {
17
+ "type": "string",
18
+ "enum": [
19
+ "grid",
20
+ "kanban",
21
+ "calendar",
22
+ "gantt",
23
+ "map"
24
+ ],
25
+ "default": "grid"
26
+ },
27
+ "data": {
28
+ "anyOf": [
29
+ {
30
+ "type": "object",
31
+ "properties": {
32
+ "provider": {
33
+ "type": "string",
34
+ "const": "object"
35
+ },
36
+ "object": {
37
+ "type": "string",
38
+ "description": "Target object name"
39
+ }
40
+ },
41
+ "required": [
42
+ "provider",
43
+ "object"
44
+ ],
45
+ "additionalProperties": false
46
+ },
47
+ {
48
+ "type": "object",
49
+ "properties": {
50
+ "provider": {
51
+ "type": "string",
52
+ "const": "api"
53
+ },
54
+ "read": {
55
+ "type": "object",
56
+ "properties": {
57
+ "url": {
58
+ "type": "string",
59
+ "description": "API endpoint URL"
60
+ },
61
+ "method": {
62
+ "type": "string",
63
+ "enum": [
64
+ "GET",
65
+ "POST",
66
+ "PUT",
67
+ "PATCH",
68
+ "DELETE"
69
+ ],
70
+ "default": "GET",
71
+ "description": "HTTP method"
72
+ },
73
+ "headers": {
74
+ "type": "object",
75
+ "additionalProperties": {
76
+ "type": "string"
77
+ },
78
+ "description": "Custom HTTP headers"
79
+ },
80
+ "params": {
81
+ "type": "object",
82
+ "additionalProperties": {},
83
+ "description": "Query parameters"
84
+ },
85
+ "body": {
86
+ "description": "Request body for POST/PUT/PATCH"
87
+ }
88
+ },
89
+ "required": [
90
+ "url"
91
+ ],
92
+ "additionalProperties": false,
93
+ "description": "Configuration for fetching data"
94
+ },
95
+ "write": {
96
+ "type": "object",
97
+ "properties": {
98
+ "url": {
99
+ "type": "string",
100
+ "description": "API endpoint URL"
101
+ },
102
+ "method": {
103
+ "type": "string",
104
+ "enum": [
105
+ "GET",
106
+ "POST",
107
+ "PUT",
108
+ "PATCH",
109
+ "DELETE"
110
+ ],
111
+ "default": "GET",
112
+ "description": "HTTP method"
113
+ },
114
+ "headers": {
115
+ "type": "object",
116
+ "additionalProperties": {
117
+ "type": "string"
118
+ },
119
+ "description": "Custom HTTP headers"
120
+ },
121
+ "params": {
122
+ "type": "object",
123
+ "additionalProperties": {},
124
+ "description": "Query parameters"
125
+ },
126
+ "body": {
127
+ "description": "Request body for POST/PUT/PATCH"
128
+ }
129
+ },
130
+ "required": [
131
+ "url"
132
+ ],
133
+ "additionalProperties": false,
134
+ "description": "Configuration for submitting data (for forms/editable tables)"
135
+ }
136
+ },
137
+ "required": [
138
+ "provider"
139
+ ],
140
+ "additionalProperties": false
141
+ },
142
+ {
143
+ "type": "object",
144
+ "properties": {
145
+ "provider": {
146
+ "type": "string",
147
+ "const": "value"
148
+ },
149
+ "items": {
150
+ "type": "array",
151
+ "items": {},
152
+ "description": "Static data array"
153
+ }
154
+ },
155
+ "required": [
156
+ "provider",
157
+ "items"
158
+ ],
159
+ "additionalProperties": false
160
+ }
161
+ ],
162
+ "description": "Data source configuration (defaults to \"object\" provider)"
163
+ },
164
+ "columns": {
165
+ "anyOf": [
166
+ {
167
+ "type": "array",
168
+ "items": {
169
+ "type": "string"
170
+ }
171
+ },
172
+ {
173
+ "type": "array",
174
+ "items": {
175
+ "type": "object",
176
+ "properties": {
177
+ "field": {
178
+ "type": "string",
179
+ "description": "Field name (snake_case)"
180
+ },
181
+ "label": {
182
+ "type": "string",
183
+ "description": "Display label override"
184
+ },
185
+ "width": {
186
+ "type": "number",
187
+ "exclusiveMinimum": 0,
188
+ "description": "Column width in pixels"
189
+ },
190
+ "align": {
191
+ "type": "string",
192
+ "enum": [
193
+ "left",
194
+ "center",
195
+ "right"
196
+ ],
197
+ "description": "Text alignment"
198
+ },
199
+ "hidden": {
200
+ "type": "boolean",
201
+ "description": "Hide column by default"
202
+ },
203
+ "sortable": {
204
+ "type": "boolean",
205
+ "description": "Allow sorting by this column"
206
+ },
207
+ "resizable": {
208
+ "type": "boolean",
209
+ "description": "Allow resizing this column"
210
+ },
211
+ "wrap": {
212
+ "type": "boolean",
213
+ "description": "Allow text wrapping"
214
+ },
215
+ "type": {
216
+ "type": "string",
217
+ "description": "Renderer type override (e.g., \"currency\", \"date\")"
218
+ }
219
+ },
220
+ "required": [
221
+ "field"
222
+ ],
223
+ "additionalProperties": false
224
+ }
225
+ }
226
+ ],
227
+ "description": "Fields to display as columns"
228
+ },
229
+ "filter": {
230
+ "type": "array",
231
+ "description": "Filter criteria (JSON Rules)"
232
+ },
233
+ "sort": {
234
+ "anyOf": [
235
+ {
236
+ "type": "string"
237
+ },
238
+ {
239
+ "type": "array",
240
+ "items": {
241
+ "type": "object",
242
+ "properties": {
243
+ "field": {
244
+ "type": "string"
245
+ },
246
+ "order": {
247
+ "type": "string",
248
+ "enum": [
249
+ "asc",
250
+ "desc"
251
+ ]
252
+ }
253
+ },
254
+ "required": [
255
+ "field",
256
+ "order"
257
+ ],
258
+ "additionalProperties": false
259
+ }
260
+ }
261
+ ]
262
+ },
263
+ "searchableFields": {
264
+ "type": "array",
265
+ "items": {
266
+ "type": "string"
267
+ },
268
+ "description": "Fields enabled for search"
269
+ },
270
+ "resizable": {
271
+ "type": "boolean",
272
+ "description": "Enable column resizing"
273
+ },
274
+ "striped": {
275
+ "type": "boolean",
276
+ "description": "Striped row styling"
277
+ },
278
+ "bordered": {
279
+ "type": "boolean",
280
+ "description": "Show borders"
281
+ },
282
+ "selection": {
283
+ "type": "object",
284
+ "properties": {
285
+ "type": {
286
+ "type": "string",
287
+ "enum": [
288
+ "none",
289
+ "single",
290
+ "multiple"
291
+ ],
292
+ "default": "none",
293
+ "description": "Selection mode"
294
+ }
295
+ },
296
+ "additionalProperties": false,
297
+ "description": "Row selection configuration"
298
+ },
299
+ "pagination": {
300
+ "type": "object",
301
+ "properties": {
302
+ "pageSize": {
303
+ "type": "integer",
304
+ "exclusiveMinimum": 0,
305
+ "default": 25,
306
+ "description": "Number of records per page"
307
+ },
308
+ "pageSizeOptions": {
309
+ "type": "array",
310
+ "items": {
311
+ "type": "integer",
312
+ "exclusiveMinimum": 0
313
+ },
314
+ "description": "Available page size options"
315
+ }
316
+ },
317
+ "additionalProperties": false,
318
+ "description": "Pagination configuration"
319
+ },
320
+ "kanban": {
321
+ "type": "object",
322
+ "properties": {
323
+ "groupByField": {
324
+ "type": "string",
325
+ "description": "Field to group columns by (usually status/select)"
326
+ },
327
+ "summarizeField": {
328
+ "type": "string",
329
+ "description": "Field to sum at top of column (e.g. amount)"
330
+ },
331
+ "columns": {
332
+ "type": "array",
333
+ "items": {
334
+ "type": "string"
335
+ },
336
+ "description": "Fields to show on cards"
337
+ }
338
+ },
339
+ "required": [
340
+ "groupByField",
341
+ "columns"
342
+ ],
343
+ "additionalProperties": false
344
+ },
345
+ "calendar": {
346
+ "type": "object",
347
+ "properties": {
348
+ "startDateField": {
349
+ "type": "string"
350
+ },
351
+ "endDateField": {
352
+ "type": "string"
353
+ },
354
+ "titleField": {
355
+ "type": "string"
356
+ },
357
+ "colorField": {
358
+ "type": "string"
359
+ }
360
+ },
361
+ "required": [
362
+ "startDateField",
363
+ "titleField"
364
+ ],
365
+ "additionalProperties": false
366
+ },
367
+ "gantt": {
368
+ "type": "object",
369
+ "properties": {
370
+ "startDateField": {
371
+ "type": "string"
372
+ },
373
+ "endDateField": {
374
+ "type": "string"
375
+ },
376
+ "titleField": {
377
+ "type": "string"
378
+ },
379
+ "progressField": {
380
+ "type": "string"
381
+ },
382
+ "dependenciesField": {
383
+ "type": "string"
384
+ }
385
+ },
386
+ "required": [
387
+ "startDateField",
388
+ "endDateField",
389
+ "titleField"
390
+ ],
391
+ "additionalProperties": false
392
+ }
393
+ },
394
+ "required": [
395
+ "columns"
396
+ ],
397
+ "additionalProperties": false
398
+ },
399
+ "form": {
400
+ "type": "object",
401
+ "properties": {
402
+ "type": {
403
+ "type": "string",
404
+ "enum": [
405
+ "simple",
406
+ "tabbed",
407
+ "wizard"
408
+ ],
409
+ "default": "simple"
410
+ },
411
+ "data": {
412
+ "anyOf": [
413
+ {
414
+ "type": "object",
415
+ "properties": {
416
+ "provider": {
417
+ "type": "string",
418
+ "const": "object"
419
+ },
420
+ "object": {
421
+ "type": "string",
422
+ "description": "Target object name"
423
+ }
424
+ },
425
+ "required": [
426
+ "provider",
427
+ "object"
428
+ ],
429
+ "additionalProperties": false
430
+ },
431
+ {
432
+ "type": "object",
433
+ "properties": {
434
+ "provider": {
435
+ "type": "string",
436
+ "const": "api"
437
+ },
438
+ "read": {
439
+ "type": "object",
440
+ "properties": {
441
+ "url": {
442
+ "type": "string",
443
+ "description": "API endpoint URL"
444
+ },
445
+ "method": {
446
+ "type": "string",
447
+ "enum": [
448
+ "GET",
449
+ "POST",
450
+ "PUT",
451
+ "PATCH",
452
+ "DELETE"
453
+ ],
454
+ "default": "GET",
455
+ "description": "HTTP method"
456
+ },
457
+ "headers": {
458
+ "type": "object",
459
+ "additionalProperties": {
460
+ "type": "string"
461
+ },
462
+ "description": "Custom HTTP headers"
463
+ },
464
+ "params": {
465
+ "type": "object",
466
+ "additionalProperties": {},
467
+ "description": "Query parameters"
468
+ },
469
+ "body": {
470
+ "description": "Request body for POST/PUT/PATCH"
471
+ }
472
+ },
473
+ "required": [
474
+ "url"
475
+ ],
476
+ "additionalProperties": false,
477
+ "description": "Configuration for fetching data"
478
+ },
479
+ "write": {
480
+ "type": "object",
481
+ "properties": {
482
+ "url": {
483
+ "type": "string",
484
+ "description": "API endpoint URL"
485
+ },
486
+ "method": {
487
+ "type": "string",
488
+ "enum": [
489
+ "GET",
490
+ "POST",
491
+ "PUT",
492
+ "PATCH",
493
+ "DELETE"
494
+ ],
495
+ "default": "GET",
496
+ "description": "HTTP method"
497
+ },
498
+ "headers": {
499
+ "type": "object",
500
+ "additionalProperties": {
501
+ "type": "string"
502
+ },
503
+ "description": "Custom HTTP headers"
504
+ },
505
+ "params": {
506
+ "type": "object",
507
+ "additionalProperties": {},
508
+ "description": "Query parameters"
509
+ },
510
+ "body": {
511
+ "description": "Request body for POST/PUT/PATCH"
512
+ }
513
+ },
514
+ "required": [
515
+ "url"
516
+ ],
517
+ "additionalProperties": false,
518
+ "description": "Configuration for submitting data (for forms/editable tables)"
519
+ }
520
+ },
521
+ "required": [
522
+ "provider"
523
+ ],
524
+ "additionalProperties": false
525
+ },
526
+ {
527
+ "type": "object",
528
+ "properties": {
529
+ "provider": {
530
+ "type": "string",
531
+ "const": "value"
532
+ },
533
+ "items": {
534
+ "type": "array",
535
+ "items": {},
536
+ "description": "Static data array"
537
+ }
538
+ },
539
+ "required": [
540
+ "provider",
541
+ "items"
542
+ ],
543
+ "additionalProperties": false
544
+ }
545
+ ],
546
+ "description": "Data source configuration (defaults to \"object\" provider)"
547
+ },
548
+ "sections": {
549
+ "type": "array",
550
+ "items": {
551
+ "type": "object",
552
+ "properties": {
553
+ "label": {
554
+ "type": "string"
555
+ },
556
+ "collapsible": {
557
+ "type": "boolean",
558
+ "default": false
559
+ },
560
+ "collapsed": {
561
+ "type": "boolean",
562
+ "default": false
563
+ },
564
+ "columns": {
565
+ "type": "string",
566
+ "enum": [
567
+ "1",
568
+ "2",
569
+ "3",
570
+ "4"
571
+ ],
572
+ "default": "2"
573
+ },
574
+ "fields": {
575
+ "type": "array",
576
+ "items": {
577
+ "anyOf": [
578
+ {
579
+ "type": "string"
580
+ },
581
+ {
582
+ "type": "object",
583
+ "properties": {
584
+ "field": {
585
+ "type": "string",
586
+ "description": "Field name (snake_case)"
587
+ },
588
+ "label": {
589
+ "type": "string",
590
+ "description": "Display label override"
591
+ },
592
+ "placeholder": {
593
+ "type": "string",
594
+ "description": "Placeholder text"
595
+ },
596
+ "helpText": {
597
+ "type": "string",
598
+ "description": "Help/hint text"
599
+ },
600
+ "readonly": {
601
+ "type": "boolean",
602
+ "description": "Read-only override"
603
+ },
604
+ "required": {
605
+ "type": "boolean",
606
+ "description": "Required override"
607
+ },
608
+ "hidden": {
609
+ "type": "boolean",
610
+ "description": "Hidden override"
611
+ },
612
+ "colSpan": {
613
+ "type": "integer",
614
+ "minimum": 1,
615
+ "maximum": 4,
616
+ "description": "Column span in grid layout (1-4)"
617
+ },
618
+ "widget": {
619
+ "type": "string",
620
+ "description": "Custom widget/component name"
621
+ },
622
+ "dependsOn": {
623
+ "type": "string",
624
+ "description": "Parent field name for cascading"
625
+ },
626
+ "visibleOn": {
627
+ "type": "string",
628
+ "description": "Visibility condition expression"
629
+ }
630
+ },
631
+ "required": [
632
+ "field"
633
+ ],
634
+ "additionalProperties": false
635
+ }
636
+ ]
637
+ }
638
+ }
639
+ },
640
+ "required": [
641
+ "fields"
642
+ ],
643
+ "additionalProperties": false
644
+ }
645
+ },
646
+ "groups": {
647
+ "type": "array",
648
+ "items": {
649
+ "type": "object",
650
+ "properties": {
651
+ "label": {
652
+ "type": "string"
653
+ },
654
+ "collapsible": {
655
+ "type": "boolean",
656
+ "default": false
657
+ },
658
+ "collapsed": {
659
+ "type": "boolean",
660
+ "default": false
661
+ },
662
+ "columns": {
663
+ "type": "string",
664
+ "enum": [
665
+ "1",
666
+ "2",
667
+ "3",
668
+ "4"
669
+ ],
670
+ "default": "2"
671
+ },
672
+ "fields": {
673
+ "type": "array",
674
+ "items": {
675
+ "anyOf": [
676
+ {
677
+ "type": "string"
678
+ },
679
+ {
680
+ "type": "object",
681
+ "properties": {
682
+ "field": {
683
+ "type": "string",
684
+ "description": "Field name (snake_case)"
685
+ },
686
+ "label": {
687
+ "type": "string",
688
+ "description": "Display label override"
689
+ },
690
+ "placeholder": {
691
+ "type": "string",
692
+ "description": "Placeholder text"
693
+ },
694
+ "helpText": {
695
+ "type": "string",
696
+ "description": "Help/hint text"
697
+ },
698
+ "readonly": {
699
+ "type": "boolean",
700
+ "description": "Read-only override"
701
+ },
702
+ "required": {
703
+ "type": "boolean",
704
+ "description": "Required override"
705
+ },
706
+ "hidden": {
707
+ "type": "boolean",
708
+ "description": "Hidden override"
709
+ },
710
+ "colSpan": {
711
+ "type": "integer",
712
+ "minimum": 1,
713
+ "maximum": 4,
714
+ "description": "Column span in grid layout (1-4)"
715
+ },
716
+ "widget": {
717
+ "type": "string",
718
+ "description": "Custom widget/component name"
719
+ },
720
+ "dependsOn": {
721
+ "type": "string",
722
+ "description": "Parent field name for cascading"
723
+ },
724
+ "visibleOn": {
725
+ "type": "string",
726
+ "description": "Visibility condition expression"
727
+ }
728
+ },
729
+ "required": [
730
+ "field"
731
+ ],
732
+ "additionalProperties": false
733
+ }
734
+ ]
735
+ }
736
+ }
737
+ },
738
+ "required": [
739
+ "fields"
740
+ ],
741
+ "additionalProperties": false
742
+ }
743
+ }
744
+ },
745
+ "additionalProperties": false
746
+ },
747
+ "listViews": {
748
+ "type": "object",
749
+ "additionalProperties": {
750
+ "type": "object",
751
+ "properties": {
752
+ "name": {
753
+ "type": "string"
754
+ },
755
+ "label": {
756
+ "type": "string"
757
+ },
758
+ "type": {
759
+ "type": "string",
760
+ "enum": [
761
+ "grid",
762
+ "kanban",
763
+ "calendar",
764
+ "gantt",
765
+ "map"
766
+ ],
767
+ "default": "grid"
768
+ },
769
+ "data": {
770
+ "anyOf": [
771
+ {
772
+ "type": "object",
773
+ "properties": {
774
+ "provider": {
775
+ "type": "string",
776
+ "const": "object"
777
+ },
778
+ "object": {
779
+ "type": "string",
780
+ "description": "Target object name"
781
+ }
782
+ },
783
+ "required": [
784
+ "provider",
785
+ "object"
786
+ ],
787
+ "additionalProperties": false
788
+ },
789
+ {
790
+ "type": "object",
791
+ "properties": {
792
+ "provider": {
793
+ "type": "string",
794
+ "const": "api"
795
+ },
796
+ "read": {
797
+ "type": "object",
798
+ "properties": {
799
+ "url": {
800
+ "type": "string",
801
+ "description": "API endpoint URL"
802
+ },
803
+ "method": {
804
+ "type": "string",
805
+ "enum": [
806
+ "GET",
807
+ "POST",
808
+ "PUT",
809
+ "PATCH",
810
+ "DELETE"
811
+ ],
812
+ "default": "GET",
813
+ "description": "HTTP method"
814
+ },
815
+ "headers": {
816
+ "type": "object",
817
+ "additionalProperties": {
818
+ "type": "string"
819
+ },
820
+ "description": "Custom HTTP headers"
821
+ },
822
+ "params": {
823
+ "type": "object",
824
+ "additionalProperties": {},
825
+ "description": "Query parameters"
826
+ },
827
+ "body": {
828
+ "description": "Request body for POST/PUT/PATCH"
829
+ }
830
+ },
831
+ "required": [
832
+ "url"
833
+ ],
834
+ "additionalProperties": false,
835
+ "description": "Configuration for fetching data"
836
+ },
837
+ "write": {
838
+ "type": "object",
839
+ "properties": {
840
+ "url": {
841
+ "type": "string",
842
+ "description": "API endpoint URL"
843
+ },
844
+ "method": {
845
+ "type": "string",
846
+ "enum": [
847
+ "GET",
848
+ "POST",
849
+ "PUT",
850
+ "PATCH",
851
+ "DELETE"
852
+ ],
853
+ "default": "GET",
854
+ "description": "HTTP method"
855
+ },
856
+ "headers": {
857
+ "type": "object",
858
+ "additionalProperties": {
859
+ "type": "string"
860
+ },
861
+ "description": "Custom HTTP headers"
862
+ },
863
+ "params": {
864
+ "type": "object",
865
+ "additionalProperties": {},
866
+ "description": "Query parameters"
867
+ },
868
+ "body": {
869
+ "description": "Request body for POST/PUT/PATCH"
870
+ }
871
+ },
872
+ "required": [
873
+ "url"
874
+ ],
875
+ "additionalProperties": false,
876
+ "description": "Configuration for submitting data (for forms/editable tables)"
877
+ }
878
+ },
879
+ "required": [
880
+ "provider"
881
+ ],
882
+ "additionalProperties": false
883
+ },
884
+ {
885
+ "type": "object",
886
+ "properties": {
887
+ "provider": {
888
+ "type": "string",
889
+ "const": "value"
890
+ },
891
+ "items": {
892
+ "type": "array",
893
+ "items": {},
894
+ "description": "Static data array"
895
+ }
896
+ },
897
+ "required": [
898
+ "provider",
899
+ "items"
900
+ ],
901
+ "additionalProperties": false
902
+ }
903
+ ],
904
+ "description": "Data source configuration (defaults to \"object\" provider)"
905
+ },
906
+ "columns": {
907
+ "anyOf": [
908
+ {
909
+ "type": "array",
910
+ "items": {
911
+ "type": "string"
912
+ }
913
+ },
914
+ {
915
+ "type": "array",
916
+ "items": {
917
+ "type": "object",
918
+ "properties": {
919
+ "field": {
920
+ "type": "string",
921
+ "description": "Field name (snake_case)"
922
+ },
923
+ "label": {
924
+ "type": "string",
925
+ "description": "Display label override"
926
+ },
927
+ "width": {
928
+ "type": "number",
929
+ "exclusiveMinimum": 0,
930
+ "description": "Column width in pixels"
931
+ },
932
+ "align": {
933
+ "type": "string",
934
+ "enum": [
935
+ "left",
936
+ "center",
937
+ "right"
938
+ ],
939
+ "description": "Text alignment"
940
+ },
941
+ "hidden": {
942
+ "type": "boolean",
943
+ "description": "Hide column by default"
944
+ },
945
+ "sortable": {
946
+ "type": "boolean",
947
+ "description": "Allow sorting by this column"
948
+ },
949
+ "resizable": {
950
+ "type": "boolean",
951
+ "description": "Allow resizing this column"
952
+ },
953
+ "wrap": {
954
+ "type": "boolean",
955
+ "description": "Allow text wrapping"
956
+ },
957
+ "type": {
958
+ "type": "string",
959
+ "description": "Renderer type override (e.g., \"currency\", \"date\")"
960
+ }
961
+ },
962
+ "required": [
963
+ "field"
964
+ ],
965
+ "additionalProperties": false
966
+ }
967
+ }
968
+ ],
969
+ "description": "Fields to display as columns"
970
+ },
971
+ "filter": {
972
+ "type": "array",
973
+ "description": "Filter criteria (JSON Rules)"
974
+ },
975
+ "sort": {
976
+ "anyOf": [
977
+ {
978
+ "type": "string"
979
+ },
980
+ {
981
+ "type": "array",
982
+ "items": {
983
+ "type": "object",
984
+ "properties": {
985
+ "field": {
986
+ "type": "string"
987
+ },
988
+ "order": {
989
+ "type": "string",
990
+ "enum": [
991
+ "asc",
992
+ "desc"
993
+ ]
994
+ }
995
+ },
996
+ "required": [
997
+ "field",
998
+ "order"
999
+ ],
1000
+ "additionalProperties": false
1001
+ }
1002
+ }
1003
+ ]
1004
+ },
1005
+ "searchableFields": {
1006
+ "type": "array",
1007
+ "items": {
1008
+ "type": "string"
1009
+ },
1010
+ "description": "Fields enabled for search"
1011
+ },
1012
+ "resizable": {
1013
+ "type": "boolean",
1014
+ "description": "Enable column resizing"
1015
+ },
1016
+ "striped": {
1017
+ "type": "boolean",
1018
+ "description": "Striped row styling"
1019
+ },
1020
+ "bordered": {
1021
+ "type": "boolean",
1022
+ "description": "Show borders"
1023
+ },
1024
+ "selection": {
1025
+ "type": "object",
1026
+ "properties": {
1027
+ "type": {
1028
+ "type": "string",
1029
+ "enum": [
1030
+ "none",
1031
+ "single",
1032
+ "multiple"
1033
+ ],
1034
+ "default": "none",
1035
+ "description": "Selection mode"
1036
+ }
1037
+ },
1038
+ "additionalProperties": false,
1039
+ "description": "Row selection configuration"
1040
+ },
1041
+ "pagination": {
1042
+ "type": "object",
1043
+ "properties": {
1044
+ "pageSize": {
1045
+ "type": "integer",
1046
+ "exclusiveMinimum": 0,
1047
+ "default": 25,
1048
+ "description": "Number of records per page"
1049
+ },
1050
+ "pageSizeOptions": {
1051
+ "type": "array",
1052
+ "items": {
1053
+ "type": "integer",
1054
+ "exclusiveMinimum": 0
1055
+ },
1056
+ "description": "Available page size options"
1057
+ }
1058
+ },
1059
+ "additionalProperties": false,
1060
+ "description": "Pagination configuration"
1061
+ },
1062
+ "kanban": {
1063
+ "type": "object",
1064
+ "properties": {
1065
+ "groupByField": {
1066
+ "type": "string",
1067
+ "description": "Field to group columns by (usually status/select)"
1068
+ },
1069
+ "summarizeField": {
1070
+ "type": "string",
1071
+ "description": "Field to sum at top of column (e.g. amount)"
1072
+ },
1073
+ "columns": {
1074
+ "type": "array",
1075
+ "items": {
1076
+ "type": "string"
1077
+ },
1078
+ "description": "Fields to show on cards"
1079
+ }
1080
+ },
1081
+ "required": [
1082
+ "groupByField",
1083
+ "columns"
1084
+ ],
1085
+ "additionalProperties": false
1086
+ },
1087
+ "calendar": {
1088
+ "type": "object",
1089
+ "properties": {
1090
+ "startDateField": {
1091
+ "type": "string"
1092
+ },
1093
+ "endDateField": {
1094
+ "type": "string"
1095
+ },
1096
+ "titleField": {
1097
+ "type": "string"
1098
+ },
1099
+ "colorField": {
1100
+ "type": "string"
1101
+ }
1102
+ },
1103
+ "required": [
1104
+ "startDateField",
1105
+ "titleField"
1106
+ ],
1107
+ "additionalProperties": false
1108
+ },
1109
+ "gantt": {
1110
+ "type": "object",
1111
+ "properties": {
1112
+ "startDateField": {
1113
+ "type": "string"
1114
+ },
1115
+ "endDateField": {
1116
+ "type": "string"
1117
+ },
1118
+ "titleField": {
1119
+ "type": "string"
1120
+ },
1121
+ "progressField": {
1122
+ "type": "string"
1123
+ },
1124
+ "dependenciesField": {
1125
+ "type": "string"
1126
+ }
1127
+ },
1128
+ "required": [
1129
+ "startDateField",
1130
+ "endDateField",
1131
+ "titleField"
1132
+ ],
1133
+ "additionalProperties": false
1134
+ }
1135
+ },
1136
+ "required": [
1137
+ "columns"
1138
+ ],
1139
+ "additionalProperties": false
1140
+ },
1141
+ "description": "Additional named list views"
1142
+ },
1143
+ "formViews": {
1144
+ "type": "object",
1145
+ "additionalProperties": {
1146
+ "type": "object",
1147
+ "properties": {
1148
+ "type": {
1149
+ "type": "string",
1150
+ "enum": [
1151
+ "simple",
1152
+ "tabbed",
1153
+ "wizard"
1154
+ ],
1155
+ "default": "simple"
1156
+ },
1157
+ "data": {
1158
+ "anyOf": [
1159
+ {
1160
+ "type": "object",
1161
+ "properties": {
1162
+ "provider": {
1163
+ "type": "string",
1164
+ "const": "object"
1165
+ },
1166
+ "object": {
1167
+ "type": "string",
1168
+ "description": "Target object name"
1169
+ }
1170
+ },
1171
+ "required": [
1172
+ "provider",
1173
+ "object"
1174
+ ],
1175
+ "additionalProperties": false
1176
+ },
1177
+ {
1178
+ "type": "object",
1179
+ "properties": {
1180
+ "provider": {
1181
+ "type": "string",
1182
+ "const": "api"
1183
+ },
1184
+ "read": {
1185
+ "type": "object",
1186
+ "properties": {
1187
+ "url": {
1188
+ "type": "string",
1189
+ "description": "API endpoint URL"
1190
+ },
1191
+ "method": {
1192
+ "type": "string",
1193
+ "enum": [
1194
+ "GET",
1195
+ "POST",
1196
+ "PUT",
1197
+ "PATCH",
1198
+ "DELETE"
1199
+ ],
1200
+ "default": "GET",
1201
+ "description": "HTTP method"
1202
+ },
1203
+ "headers": {
1204
+ "type": "object",
1205
+ "additionalProperties": {
1206
+ "type": "string"
1207
+ },
1208
+ "description": "Custom HTTP headers"
1209
+ },
1210
+ "params": {
1211
+ "type": "object",
1212
+ "additionalProperties": {},
1213
+ "description": "Query parameters"
1214
+ },
1215
+ "body": {
1216
+ "description": "Request body for POST/PUT/PATCH"
1217
+ }
1218
+ },
1219
+ "required": [
1220
+ "url"
1221
+ ],
1222
+ "additionalProperties": false,
1223
+ "description": "Configuration for fetching data"
1224
+ },
1225
+ "write": {
1226
+ "type": "object",
1227
+ "properties": {
1228
+ "url": {
1229
+ "type": "string",
1230
+ "description": "API endpoint URL"
1231
+ },
1232
+ "method": {
1233
+ "type": "string",
1234
+ "enum": [
1235
+ "GET",
1236
+ "POST",
1237
+ "PUT",
1238
+ "PATCH",
1239
+ "DELETE"
1240
+ ],
1241
+ "default": "GET",
1242
+ "description": "HTTP method"
1243
+ },
1244
+ "headers": {
1245
+ "type": "object",
1246
+ "additionalProperties": {
1247
+ "type": "string"
1248
+ },
1249
+ "description": "Custom HTTP headers"
1250
+ },
1251
+ "params": {
1252
+ "type": "object",
1253
+ "additionalProperties": {},
1254
+ "description": "Query parameters"
1255
+ },
1256
+ "body": {
1257
+ "description": "Request body for POST/PUT/PATCH"
1258
+ }
1259
+ },
1260
+ "required": [
1261
+ "url"
1262
+ ],
1263
+ "additionalProperties": false,
1264
+ "description": "Configuration for submitting data (for forms/editable tables)"
1265
+ }
1266
+ },
1267
+ "required": [
1268
+ "provider"
1269
+ ],
1270
+ "additionalProperties": false
1271
+ },
1272
+ {
1273
+ "type": "object",
1274
+ "properties": {
1275
+ "provider": {
1276
+ "type": "string",
1277
+ "const": "value"
1278
+ },
1279
+ "items": {
1280
+ "type": "array",
1281
+ "items": {},
1282
+ "description": "Static data array"
1283
+ }
1284
+ },
1285
+ "required": [
1286
+ "provider",
1287
+ "items"
1288
+ ],
1289
+ "additionalProperties": false
1290
+ }
1291
+ ],
1292
+ "description": "Data source configuration (defaults to \"object\" provider)"
1293
+ },
1294
+ "sections": {
1295
+ "type": "array",
1296
+ "items": {
1297
+ "type": "object",
1298
+ "properties": {
1299
+ "label": {
1300
+ "type": "string"
1301
+ },
1302
+ "collapsible": {
1303
+ "type": "boolean",
1304
+ "default": false
1305
+ },
1306
+ "collapsed": {
1307
+ "type": "boolean",
1308
+ "default": false
1309
+ },
1310
+ "columns": {
1311
+ "type": "string",
1312
+ "enum": [
1313
+ "1",
1314
+ "2",
1315
+ "3",
1316
+ "4"
1317
+ ],
1318
+ "default": "2"
1319
+ },
1320
+ "fields": {
1321
+ "type": "array",
1322
+ "items": {
1323
+ "anyOf": [
1324
+ {
1325
+ "type": "string"
1326
+ },
1327
+ {
1328
+ "type": "object",
1329
+ "properties": {
1330
+ "field": {
1331
+ "type": "string",
1332
+ "description": "Field name (snake_case)"
1333
+ },
1334
+ "label": {
1335
+ "type": "string",
1336
+ "description": "Display label override"
1337
+ },
1338
+ "placeholder": {
1339
+ "type": "string",
1340
+ "description": "Placeholder text"
1341
+ },
1342
+ "helpText": {
1343
+ "type": "string",
1344
+ "description": "Help/hint text"
1345
+ },
1346
+ "readonly": {
1347
+ "type": "boolean",
1348
+ "description": "Read-only override"
1349
+ },
1350
+ "required": {
1351
+ "type": "boolean",
1352
+ "description": "Required override"
1353
+ },
1354
+ "hidden": {
1355
+ "type": "boolean",
1356
+ "description": "Hidden override"
1357
+ },
1358
+ "colSpan": {
1359
+ "type": "integer",
1360
+ "minimum": 1,
1361
+ "maximum": 4,
1362
+ "description": "Column span in grid layout (1-4)"
1363
+ },
1364
+ "widget": {
1365
+ "type": "string",
1366
+ "description": "Custom widget/component name"
1367
+ },
1368
+ "dependsOn": {
1369
+ "type": "string",
1370
+ "description": "Parent field name for cascading"
1371
+ },
1372
+ "visibleOn": {
1373
+ "type": "string",
1374
+ "description": "Visibility condition expression"
1375
+ }
1376
+ },
1377
+ "required": [
1378
+ "field"
1379
+ ],
1380
+ "additionalProperties": false
1381
+ }
1382
+ ]
1383
+ }
1384
+ }
1385
+ },
1386
+ "required": [
1387
+ "fields"
1388
+ ],
1389
+ "additionalProperties": false
1390
+ }
1391
+ },
1392
+ "groups": {
1393
+ "type": "array",
1394
+ "items": {
1395
+ "type": "object",
1396
+ "properties": {
1397
+ "label": {
1398
+ "type": "string"
1399
+ },
1400
+ "collapsible": {
1401
+ "type": "boolean",
1402
+ "default": false
1403
+ },
1404
+ "collapsed": {
1405
+ "type": "boolean",
1406
+ "default": false
1407
+ },
1408
+ "columns": {
1409
+ "type": "string",
1410
+ "enum": [
1411
+ "1",
1412
+ "2",
1413
+ "3",
1414
+ "4"
1415
+ ],
1416
+ "default": "2"
1417
+ },
1418
+ "fields": {
1419
+ "type": "array",
1420
+ "items": {
1421
+ "anyOf": [
1422
+ {
1423
+ "type": "string"
1424
+ },
1425
+ {
1426
+ "type": "object",
1427
+ "properties": {
1428
+ "field": {
1429
+ "type": "string",
1430
+ "description": "Field name (snake_case)"
1431
+ },
1432
+ "label": {
1433
+ "type": "string",
1434
+ "description": "Display label override"
1435
+ },
1436
+ "placeholder": {
1437
+ "type": "string",
1438
+ "description": "Placeholder text"
1439
+ },
1440
+ "helpText": {
1441
+ "type": "string",
1442
+ "description": "Help/hint text"
1443
+ },
1444
+ "readonly": {
1445
+ "type": "boolean",
1446
+ "description": "Read-only override"
1447
+ },
1448
+ "required": {
1449
+ "type": "boolean",
1450
+ "description": "Required override"
1451
+ },
1452
+ "hidden": {
1453
+ "type": "boolean",
1454
+ "description": "Hidden override"
1455
+ },
1456
+ "colSpan": {
1457
+ "type": "integer",
1458
+ "minimum": 1,
1459
+ "maximum": 4,
1460
+ "description": "Column span in grid layout (1-4)"
1461
+ },
1462
+ "widget": {
1463
+ "type": "string",
1464
+ "description": "Custom widget/component name"
1465
+ },
1466
+ "dependsOn": {
1467
+ "type": "string",
1468
+ "description": "Parent field name for cascading"
1469
+ },
1470
+ "visibleOn": {
1471
+ "type": "string",
1472
+ "description": "Visibility condition expression"
1473
+ }
1474
+ },
1475
+ "required": [
1476
+ "field"
1477
+ ],
1478
+ "additionalProperties": false
1479
+ }
1480
+ ]
1481
+ }
1482
+ }
1483
+ },
1484
+ "required": [
1485
+ "fields"
1486
+ ],
1487
+ "additionalProperties": false
1488
+ }
1489
+ }
1490
+ },
1491
+ "additionalProperties": false
1492
+ },
1493
+ "description": "Additional named form views"
1494
+ }
1495
+ },
1496
+ "additionalProperties": false
1497
+ }
1498
+ },
1499
+ "$schema": "http://json-schema.org/draft-07/schema#"
1500
+ }