@objectstack/spec 0.3.1 → 0.3.3

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 (409) hide show
  1. package/README.md +32 -10
  2. package/dist/ai/agent.zod.d.ts +12 -12
  3. package/dist/ai/conversation.zod.d.ts +65 -65
  4. package/dist/ai/cost.zod.d.ts +125 -125
  5. package/dist/ai/index.d.ts +1 -1
  6. package/dist/ai/index.d.ts.map +1 -1
  7. package/dist/ai/index.js +1 -1
  8. package/dist/ai/model-registry.zod.d.ts +94 -94
  9. package/dist/ai/nlq.zod.d.ts +70 -70
  10. package/dist/ai/{workflow-automation.zod.d.ts → orchestration.zod.d.ts} +50 -49
  11. package/dist/ai/orchestration.zod.d.ts.map +1 -0
  12. package/dist/ai/{workflow-automation.zod.js → orchestration.zod.js} +26 -25
  13. package/dist/ai/predictive.zod.d.ts +31 -31
  14. package/dist/ai/rag-pipeline.zod.d.ts +86 -86
  15. package/dist/api/contract.zod.d.ts +125 -109
  16. package/dist/api/contract.zod.d.ts.map +1 -1
  17. package/dist/{system → api}/discovery.zod.d.ts +26 -26
  18. package/dist/api/discovery.zod.d.ts.map +1 -0
  19. package/dist/{system → api}/discovery.zod.js +9 -9
  20. package/dist/{system/api.zod.d.ts → api/endpoint.zod.d.ts} +53 -57
  21. package/dist/api/endpoint.zod.d.ts.map +1 -0
  22. package/dist/{system/api.zod.js → api/endpoint.zod.js} +3 -6
  23. package/dist/api/index.d.ts +4 -0
  24. package/dist/api/index.d.ts.map +1 -1
  25. package/dist/api/index.js +4 -0
  26. package/dist/{system → api}/realtime.zod.d.ts +4 -4
  27. package/dist/api/realtime.zod.d.ts.map +1 -0
  28. package/dist/api/router.zod.d.ts +182 -0
  29. package/dist/api/router.zod.d.ts.map +1 -0
  30. package/dist/api/router.zod.js +103 -0
  31. package/dist/{system/auth.zod.d.ts → auth/config.zod.d.ts} +191 -191
  32. package/dist/auth/config.zod.d.ts.map +1 -0
  33. package/dist/{system → auth}/identity.zod.d.ts +8 -8
  34. package/dist/auth/identity.zod.d.ts.map +1 -0
  35. package/dist/auth/index.d.ts +7 -0
  36. package/dist/auth/index.d.ts.map +1 -0
  37. package/dist/auth/index.js +22 -0
  38. package/dist/{system → auth}/organization.zod.d.ts +5 -5
  39. package/dist/auth/organization.zod.d.ts.map +1 -0
  40. package/dist/{system → auth}/policy.zod.d.ts +3 -3
  41. package/dist/auth/policy.zod.d.ts.map +1 -0
  42. package/dist/{system/auth-protocol.d.ts → auth/protocol.d.ts} +1 -1
  43. package/dist/auth/protocol.d.ts.map +1 -0
  44. package/dist/auth/role.zod.d.ts.map +1 -0
  45. package/dist/{data → automation}/flow.zod.d.ts +34 -16
  46. package/dist/automation/flow.zod.d.ts.map +1 -0
  47. package/dist/{data → automation}/flow.zod.js +6 -1
  48. package/dist/automation/index.d.ts +4 -0
  49. package/dist/automation/index.d.ts.map +1 -0
  50. package/dist/automation/index.js +19 -0
  51. package/dist/{system → automation}/webhook.zod.d.ts +2 -2
  52. package/dist/automation/webhook.zod.d.ts.map +1 -0
  53. package/dist/automation/workflow.zod.d.ts +2045 -0
  54. package/dist/automation/workflow.zod.d.ts.map +1 -0
  55. package/dist/{data → automation}/workflow.zod.js +24 -1
  56. package/dist/data/dataset.zod.d.ts +2 -2
  57. package/dist/data/field.zod.d.ts +443 -213
  58. package/dist/data/field.zod.d.ts.map +1 -1
  59. package/dist/data/field.zod.js +29 -1
  60. package/dist/data/filter.zod.d.ts +167 -30
  61. package/dist/data/filter.zod.d.ts.map +1 -1
  62. package/dist/data/filter.zod.js +25 -13
  63. package/dist/data/hook.zod.d.ts +191 -0
  64. package/dist/data/hook.zod.d.ts.map +1 -0
  65. package/dist/data/hook.zod.js +144 -0
  66. package/dist/data/index.d.ts +4 -17
  67. package/dist/data/index.d.ts.map +1 -1
  68. package/dist/data/index.js +4 -17
  69. package/dist/data/mapping.zod.d.ts +103 -91
  70. package/dist/data/mapping.zod.d.ts.map +1 -1
  71. package/dist/data/object.zod.d.ts +387 -127
  72. package/dist/data/object.zod.d.ts.map +1 -1
  73. package/dist/data/object.zod.js +87 -42
  74. package/dist/data/query.zod.d.ts +98 -169
  75. package/dist/data/query.zod.d.ts.map +1 -1
  76. package/dist/data/query.zod.js +42 -130
  77. package/dist/data/validation.zod.d.ts +166 -26
  78. package/dist/data/validation.zod.d.ts.map +1 -1
  79. package/dist/data/validation.zod.js +38 -16
  80. package/dist/{system → driver}/datasource.zod.d.ts +42 -8
  81. package/dist/driver/datasource.zod.d.ts.map +1 -0
  82. package/dist/{system → driver}/datasource.zod.js +17 -13
  83. package/dist/driver/driver.zod.d.ts +3392 -0
  84. package/dist/driver/driver.zod.d.ts.map +1 -0
  85. package/dist/{system → driver}/driver.zod.js +99 -0
  86. package/dist/driver/index.d.ts +5 -0
  87. package/dist/driver/index.d.ts.map +1 -0
  88. package/dist/driver/index.js +20 -0
  89. package/dist/driver/mongo.zod.d.ts +107 -0
  90. package/dist/driver/mongo.zod.d.ts.map +1 -0
  91. package/dist/driver/mongo.zod.js +80 -0
  92. package/dist/driver/postgres.zod.d.ts +134 -0
  93. package/dist/driver/postgres.zod.d.ts.map +1 -0
  94. package/dist/driver/postgres.zod.js +88 -0
  95. package/dist/hub/composer.zod.d.ts +2768 -0
  96. package/dist/hub/composer.zod.d.ts.map +1 -0
  97. package/dist/hub/composer.zod.js +111 -0
  98. package/dist/hub/index.d.ts +6 -0
  99. package/dist/hub/index.d.ts.map +1 -0
  100. package/dist/hub/index.js +22 -0
  101. package/dist/{system → hub}/license.zod.d.ts +11 -7
  102. package/dist/hub/license.zod.d.ts.map +1 -0
  103. package/dist/{system → hub}/license.zod.js +5 -3
  104. package/dist/hub/marketplace.zod.d.ts +191 -0
  105. package/dist/hub/marketplace.zod.d.ts.map +1 -0
  106. package/dist/hub/marketplace.zod.js +85 -0
  107. package/dist/hub/space.zod.d.ts +383 -0
  108. package/dist/hub/space.zod.d.ts.map +1 -0
  109. package/dist/hub/space.zod.js +103 -0
  110. package/dist/{system → hub}/tenant.zod.d.ts +73 -47
  111. package/dist/hub/tenant.zod.d.ts.map +1 -0
  112. package/dist/{system → hub}/tenant.zod.js +36 -10
  113. package/dist/index.d.ts +11 -4
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +12 -5
  116. package/dist/kernel/context.zod.d.ts +56 -0
  117. package/dist/kernel/context.zod.d.ts.map +1 -0
  118. package/dist/kernel/context.zod.js +43 -0
  119. package/dist/kernel/index.d.ts +12 -0
  120. package/dist/kernel/index.d.ts.map +1 -0
  121. package/dist/kernel/index.js +27 -0
  122. package/dist/kernel/logger.zod.d.ts +111 -0
  123. package/dist/kernel/logger.zod.d.ts.map +1 -0
  124. package/dist/kernel/logger.zod.js +75 -0
  125. package/dist/kernel/manifest.zod.d.ts +2153 -0
  126. package/dist/kernel/manifest.zod.d.ts.map +1 -0
  127. package/dist/{system → kernel}/manifest.zod.js +40 -0
  128. package/dist/{system → kernel}/plugin.zod.d.ts +598 -318
  129. package/dist/kernel/plugin.zod.d.ts.map +1 -0
  130. package/dist/{system → kernel}/plugin.zod.js +13 -0
  131. package/dist/kernel/scoped-storage.zod.d.ts +81 -0
  132. package/dist/kernel/scoped-storage.zod.d.ts.map +1 -0
  133. package/dist/kernel/scoped-storage.zod.js +66 -0
  134. package/dist/permission/index.d.ts +12 -0
  135. package/dist/permission/index.d.ts.map +1 -0
  136. package/dist/permission/index.js +27 -0
  137. package/dist/{data → permission}/permission.zod.d.ts +34 -3
  138. package/dist/permission/permission.zod.d.ts.map +1 -0
  139. package/dist/{data → permission}/permission.zod.js +10 -1
  140. package/dist/permission/sharing.zod.d.ts +146 -0
  141. package/dist/permission/sharing.zod.d.ts.map +1 -0
  142. package/dist/permission/sharing.zod.js +88 -0
  143. package/dist/permission/territory.zod.d.ts.map +1 -0
  144. package/dist/system/audit.zod.d.ts +52 -52
  145. package/dist/system/events.zod.d.ts +17 -17
  146. package/dist/system/index.d.ts +1 -20
  147. package/dist/system/index.d.ts.map +1 -1
  148. package/dist/system/index.js +3 -20
  149. package/dist/system/job.zod.d.ts +13 -13
  150. package/dist/ui/action.zod.d.ts +13 -13
  151. package/dist/ui/app.zod.d.ts +11 -11
  152. package/dist/ui/dashboard.zod.d.ts +12 -12
  153. package/dist/ui/page.zod.d.ts +2 -2
  154. package/dist/ui/report.zod.d.ts +7 -7
  155. package/dist/ui/theme.zod.d.ts +42 -42
  156. package/dist/ui/view.zod.d.ts +2320 -59
  157. package/dist/ui/view.zod.d.ts.map +1 -1
  158. package/dist/ui/view.zod.js +102 -3
  159. package/dist/ui/widget.zod.d.ts +61 -28
  160. package/dist/ui/widget.zod.d.ts.map +1 -1
  161. package/json-schema/ai/{AIWorkflowAutomation.json → AIOrchestration.json} +5 -5
  162. package/json-schema/ai/{AIWorkflowExecutionResult.json → AIOrchestrationExecutionResult.json} +2 -2
  163. package/json-schema/ai/{AIWorkflowTrigger.json → AIOrchestrationTrigger.json} +2 -2
  164. package/json-schema/ai/{BatchAIWorkflowExecution.json → BatchAIOrchestrationExecution.json} +3 -3
  165. package/json-schema/{system → api}/ApiEndpoint.json +3 -1
  166. package/json-schema/{system → api}/ApiRoutes.json +7 -7
  167. package/json-schema/{system → api}/Discovery.json +7 -7
  168. package/json-schema/api/ExportRequest.json +402 -438
  169. package/json-schema/api/HttpMethod.json +18 -0
  170. package/json-schema/api/RouteCategory.json +17 -0
  171. package/json-schema/api/RouteDefinition.json +77 -0
  172. package/json-schema/api/RouterConfig.json +117 -0
  173. package/json-schema/{data → automation}/Flow.json +31 -1
  174. package/json-schema/{data → automation}/FlowEdge.json +9 -0
  175. package/json-schema/{data/WorkflowRule.json → automation/TimeTrigger.json} +35 -25
  176. package/json-schema/automation/WorkflowRule.json +1031 -0
  177. package/json-schema/data/AggregationNode.json +23 -0
  178. package/json-schema/data/AsyncValidation.json +49 -2
  179. package/json-schema/data/ComparisonOperator.json +52 -0
  180. package/json-schema/data/ConditionalValidation.json +693 -46
  181. package/json-schema/data/CrossFieldValidation.json +33 -2
  182. package/json-schema/data/CurrencyConfig.json +35 -0
  183. package/json-schema/data/CurrencyValue.json +26 -0
  184. package/json-schema/data/CustomValidator.json +37 -10
  185. package/json-schema/data/Field.json +30 -0
  186. package/json-schema/data/FieldOperators.json +78 -0
  187. package/json-schema/data/FieldReference.json +19 -0
  188. package/json-schema/data/FormatValidation.json +33 -2
  189. package/json-schema/data/Hook.json +95 -0
  190. package/json-schema/data/HookContext.json +88 -0
  191. package/json-schema/data/HookEvent.json +29 -0
  192. package/json-schema/data/Index.json +10 -0
  193. package/json-schema/data/JSONValidation.json +85 -0
  194. package/json-schema/data/JoinNode.json +197 -213
  195. package/json-schema/data/{TriggerAction.json → JoinStrategy.json} +6 -5
  196. package/json-schema/data/NormalizedFilter.json +234 -0
  197. package/json-schema/data/Object.json +1580 -28
  198. package/json-schema/data/ObjectCapabilities.json +30 -12
  199. package/json-schema/data/Query.json +246 -262
  200. package/json-schema/data/RangeOperator.json +26 -0
  201. package/json-schema/data/ScriptValidation.json +33 -2
  202. package/json-schema/data/SearchConfig.json +36 -0
  203. package/json-schema/data/StateMachineValidation.json +33 -2
  204. package/json-schema/data/UniquenessValidation.json +33 -2
  205. package/json-schema/data/ValidationRule.json +693 -46
  206. package/json-schema/{system → driver}/Datasource.json +35 -0
  207. package/json-schema/{system → driver}/DriverCapabilities.json +10 -0
  208. package/json-schema/{system → driver}/DriverInterface.json +10 -0
  209. package/json-schema/{system → driver}/DriverOptions.json +11 -0
  210. package/json-schema/driver/MongoConfig.json +82 -0
  211. package/json-schema/driver/PostgresConfig.json +98 -0
  212. package/json-schema/hub/BillOfMaterials.json +70 -0
  213. package/json-schema/hub/ComposerRequest.json +86 -0
  214. package/json-schema/hub/ComposerResponse.json +2645 -0
  215. package/json-schema/hub/ConflictReport.json +53 -0
  216. package/json-schema/hub/DependencyRequirement.json +36 -0
  217. package/json-schema/hub/DeploymentTarget.json +38 -0
  218. package/json-schema/hub/HubSpace.json +279 -0
  219. package/json-schema/{system → hub}/License.json +11 -3
  220. package/json-schema/hub/MarketplacePlugin.json +141 -0
  221. package/json-schema/hub/PluginAuthor.json +26 -0
  222. package/json-schema/hub/PluginPricing.json +43 -0
  223. package/json-schema/hub/SpaceSubscription.json +77 -0
  224. package/json-schema/hub/SubscriptionStatus.json +16 -0
  225. package/json-schema/{system → hub}/Tenant.json +3 -5
  226. package/json-schema/kernel/FileMetadata.json +43 -0
  227. package/json-schema/kernel/KernelContext.json +62 -0
  228. package/json-schema/kernel/LogEntry.json +63 -0
  229. package/json-schema/kernel/LogFormat.json +15 -0
  230. package/json-schema/kernel/LogLevel.json +17 -0
  231. package/json-schema/kernel/LoggerConfig.json +70 -0
  232. package/json-schema/kernel/Manifest.json +2557 -0
  233. package/json-schema/{system → kernel}/PluginContext.json +8 -1
  234. package/json-schema/kernel/RuntimeMode.json +16 -0
  235. package/json-schema/kernel/ScopedStorageConfig.json +54 -0
  236. package/json-schema/kernel/StorageAdapterType.json +17 -0
  237. package/json-schema/kernel/StorageScope.json +18 -0
  238. package/json-schema/permission/CriteriaSharingRule.json +82 -0
  239. package/json-schema/{data → permission}/OWDModel.json +2 -1
  240. package/json-schema/{data → permission}/ObjectPermission.json +15 -0
  241. package/json-schema/permission/OwnerSharingRule.json +102 -0
  242. package/json-schema/{data → permission}/PermissionSet.json +15 -0
  243. package/json-schema/permission/ShareRecipientType.json +16 -0
  244. package/json-schema/{data → permission}/SharingLevel.json +2 -1
  245. package/json-schema/permission/SharingRule.json +182 -0
  246. package/json-schema/{data → permission}/SharingRuleType.json +1 -3
  247. package/json-schema/ui/FieldWidgetProps.json +30 -0
  248. package/json-schema/ui/FormField.json +61 -0
  249. package/json-schema/ui/FormSection.json +60 -1
  250. package/json-schema/ui/FormView.json +257 -2
  251. package/json-schema/{system → ui}/HttpMethod.json +2 -2
  252. package/json-schema/ui/HttpRequest.json +46 -0
  253. package/json-schema/ui/ListColumn.json +57 -0
  254. package/json-schema/ui/ListView.json +249 -4
  255. package/json-schema/ui/PaginationConfig.json +26 -0
  256. package/json-schema/ui/SelectionConfig.json +22 -0
  257. package/json-schema/ui/View.json +1012 -12
  258. package/json-schema/ui/ViewData.json +142 -0
  259. package/llms.txt +182 -0
  260. package/package.json +38 -16
  261. package/prompts/README.md +18 -0
  262. package/prompts/architecture.md +81 -0
  263. package/prompts/implement-objectai.md +39 -0
  264. package/prompts/implement-objectos.md +48 -0
  265. package/prompts/implement-objectql.md +39 -0
  266. package/prompts/implement-objectui.md +46 -0
  267. package/prompts/instructions.md +91 -0
  268. package/dist/ai/workflow-automation.zod.d.ts.map +0 -1
  269. package/dist/data/flow.zod.d.ts.map +0 -1
  270. package/dist/data/permission.zod.d.ts.map +0 -1
  271. package/dist/data/sharing.zod.d.ts +0 -63
  272. package/dist/data/sharing.zod.d.ts.map +0 -1
  273. package/dist/data/sharing.zod.js +0 -57
  274. package/dist/data/trigger.zod.d.ts +0 -354
  275. package/dist/data/trigger.zod.d.ts.map +0 -1
  276. package/dist/data/trigger.zod.js +0 -195
  277. package/dist/data/workflow.zod.d.ts +0 -986
  278. package/dist/data/workflow.zod.d.ts.map +0 -1
  279. package/dist/system/api.zod.d.ts.map +0 -1
  280. package/dist/system/auth-protocol.d.ts.map +0 -1
  281. package/dist/system/auth.zod.d.ts.map +0 -1
  282. package/dist/system/datasource.zod.d.ts.map +0 -1
  283. package/dist/system/discovery.zod.d.ts.map +0 -1
  284. package/dist/system/driver.zod.d.ts +0 -1631
  285. package/dist/system/driver.zod.d.ts.map +0 -1
  286. package/dist/system/identity.zod.d.ts.map +0 -1
  287. package/dist/system/license.zod.d.ts.map +0 -1
  288. package/dist/system/manifest.zod.d.ts +0 -397
  289. package/dist/system/manifest.zod.d.ts.map +0 -1
  290. package/dist/system/organization.zod.d.ts.map +0 -1
  291. package/dist/system/plugin.zod.d.ts.map +0 -1
  292. package/dist/system/policy.zod.d.ts.map +0 -1
  293. package/dist/system/realtime.zod.d.ts.map +0 -1
  294. package/dist/system/role.zod.d.ts.map +0 -1
  295. package/dist/system/tenant.zod.d.ts.map +0 -1
  296. package/dist/system/territory.zod.d.ts.map +0 -1
  297. package/dist/system/webhook.zod.d.ts.map +0 -1
  298. package/json-schema/README.md +0 -127
  299. package/json-schema/data/FieldMapping.json +0 -83
  300. package/json-schema/data/FilterNode.json +0 -52
  301. package/json-schema/data/FilterOperator.json +0 -26
  302. package/json-schema/data/LogicOperator.json +0 -14
  303. package/json-schema/data/Mapping.json +0 -598
  304. package/json-schema/data/SharingRule.json +0 -58
  305. package/json-schema/data/TransformType.json +0 -18
  306. package/json-schema/data/Trigger.json +0 -73
  307. package/json-schema/data/TriggerContext.json +0 -61
  308. package/json-schema/data/TriggerTiming.json +0 -13
  309. package/json-schema/system/Manifest.json +0 -315
  310. /package/dist/{system → api}/realtime.zod.js +0 -0
  311. /package/dist/{system/auth.zod.js → auth/config.zod.js} +0 -0
  312. /package/dist/{system → auth}/identity.zod.js +0 -0
  313. /package/dist/{system → auth}/organization.zod.js +0 -0
  314. /package/dist/{system → auth}/policy.zod.js +0 -0
  315. /package/dist/{system/auth-protocol.js → auth/protocol.js} +0 -0
  316. /package/dist/{system → auth}/role.zod.d.ts +0 -0
  317. /package/dist/{system → auth}/role.zod.js +0 -0
  318. /package/dist/{system → automation}/webhook.zod.js +0 -0
  319. /package/dist/{system → permission}/territory.zod.d.ts +0 -0
  320. /package/dist/{system → permission}/territory.zod.js +0 -0
  321. /package/json-schema/{system → api}/ApiCapabilities.json +0 -0
  322. /package/json-schema/{system → api}/ApiMapping.json +0 -0
  323. /package/json-schema/{system → api}/Presence.json +0 -0
  324. /package/json-schema/{system → api}/PresenceStatus.json +0 -0
  325. /package/json-schema/{system → api}/RateLimit.json +0 -0
  326. /package/json-schema/{system → api}/RealtimeAction.json +0 -0
  327. /package/json-schema/{system → api}/RealtimeEvent.json +0 -0
  328. /package/json-schema/{system → api}/RealtimeEventType.json +0 -0
  329. /package/json-schema/{system → api}/Subscription.json +0 -0
  330. /package/json-schema/{system → api}/SubscriptionEvent.json +0 -0
  331. /package/json-schema/{system → api}/TransportProtocol.json +0 -0
  332. /package/json-schema/{system → auth}/Account.json +0 -0
  333. /package/json-schema/{system → auth}/AccountLinkingConfig.json +0 -0
  334. /package/json-schema/{system → auth}/AuditPolicy.json +0 -0
  335. /package/json-schema/{system → auth}/AuthConfig.json +0 -0
  336. /package/json-schema/{system → auth}/AuthPluginConfig.json +0 -0
  337. /package/json-schema/{system → auth}/AuthStrategy.json +0 -0
  338. /package/json-schema/{system → auth}/CSRFConfig.json +0 -0
  339. /package/json-schema/{system → auth}/DatabaseAdapter.json +0 -0
  340. /package/json-schema/{system → auth}/DatabaseMapping.json +0 -0
  341. /package/json-schema/{system → auth}/EmailPasswordConfig.json +0 -0
  342. /package/json-schema/{system → auth}/EnterpriseAuthConfig.json +0 -0
  343. /package/json-schema/{system → auth}/Invitation.json +0 -0
  344. /package/json-schema/{system → auth}/InvitationStatus.json +0 -0
  345. /package/json-schema/{system → auth}/LDAPConfig.json +0 -0
  346. /package/json-schema/{system → auth}/MagicLinkConfig.json +0 -0
  347. /package/json-schema/{system → auth}/Member.json +0 -0
  348. /package/json-schema/{system → auth}/NetworkPolicy.json +0 -0
  349. /package/json-schema/{system → auth}/OAuthProvider.json +0 -0
  350. /package/json-schema/{system → auth}/OIDCConfig.json +0 -0
  351. /package/json-schema/{system → auth}/Organization.json +0 -0
  352. /package/json-schema/{system → auth}/PasskeyConfig.json +0 -0
  353. /package/json-schema/{system → auth}/PasswordPolicy.json +0 -0
  354. /package/json-schema/{system → auth}/Policy.json +0 -0
  355. /package/json-schema/{system → auth}/RateLimitConfig.json +0 -0
  356. /package/json-schema/{system → auth}/Role.json +0 -0
  357. /package/json-schema/{system → auth}/SAMLConfig.json +0 -0
  358. /package/json-schema/{system → auth}/Session.json +0 -0
  359. /package/json-schema/{system → auth}/SessionConfig.json +0 -0
  360. /package/json-schema/{system → auth}/SessionPolicy.json +0 -0
  361. /package/json-schema/{system → auth}/StandardAuthProvider.json +0 -0
  362. /package/json-schema/{system → auth}/TwoFactorConfig.json +0 -0
  363. /package/json-schema/{system → auth}/User.json +0 -0
  364. /package/json-schema/{system → auth}/UserFieldMapping.json +0 -0
  365. /package/json-schema/{system → auth}/VerificationToken.json +0 -0
  366. /package/json-schema/{data → automation}/CustomScriptAction.json +0 -0
  367. /package/json-schema/{data → automation}/EmailAlertAction.json +0 -0
  368. /package/json-schema/{data → automation}/FieldUpdateAction.json +0 -0
  369. /package/json-schema/{data → automation}/FlowNode.json +0 -0
  370. /package/json-schema/{data → automation}/FlowNodeAction.json +0 -0
  371. /package/json-schema/{data → automation}/FlowVariable.json +0 -0
  372. /package/json-schema/{data → automation}/HttpCallAction.json +0 -0
  373. /package/json-schema/{data → automation}/PushNotificationAction.json +0 -0
  374. /package/json-schema/{data → automation}/SlackMessageAction.json +0 -0
  375. /package/json-schema/{data → automation}/SmsNotificationAction.json +0 -0
  376. /package/json-schema/{data → automation}/TaskCreationAction.json +0 -0
  377. /package/json-schema/{data → automation}/TeamsMessageAction.json +0 -0
  378. /package/json-schema/{system → automation}/Webhook.json +0 -0
  379. /package/json-schema/{system → automation}/WebhookReceiver.json +0 -0
  380. /package/json-schema/{data → automation}/WebhookTriggerAction.json +0 -0
  381. /package/json-schema/{system → automation}/WebhookTriggerType.json +0 -0
  382. /package/json-schema/{data → automation}/WorkflowAction.json +0 -0
  383. /package/json-schema/{data → automation}/WorkflowTriggerType.json +0 -0
  384. /package/json-schema/{system → driver}/DatasourceCapabilities.json +0 -0
  385. /package/json-schema/{system → driver}/DriverDefinition.json +0 -0
  386. /package/json-schema/{system → driver}/DriverType.json +0 -0
  387. /package/json-schema/{system → hub}/DatabaseLevelIsolationStrategy.json +0 -0
  388. /package/json-schema/{system → hub}/Feature.json +0 -0
  389. /package/json-schema/{system → hub}/LevelIsolationStrategySchema.json +0 -0
  390. /package/json-schema/{system → hub}/MetricType.json +0 -0
  391. /package/json-schema/{system → hub}/Plan.json +0 -0
  392. /package/json-schema/{system → hub}/RowLevelIsolationStrategy.json +0 -0
  393. /package/json-schema/{system → hub}/TenantIsolationConfig.json +0 -0
  394. /package/json-schema/{system → hub}/TenantIsolationLevel.json +0 -0
  395. /package/json-schema/{system → hub}/TenantQuota.json +0 -0
  396. /package/json-schema/{system → hub}/TenantSecurityPolicy.json +0 -0
  397. /package/json-schema/{system → kernel}/I18nContext.json +0 -0
  398. /package/json-schema/{system → kernel}/Logger.json +0 -0
  399. /package/json-schema/{system → kernel}/ObjectQLClient.json +0 -0
  400. /package/json-schema/{system → kernel}/Plugin.json +0 -0
  401. /package/json-schema/{system → kernel}/PluginLifecycle.json +0 -0
  402. /package/json-schema/{system → kernel}/Router.json +0 -0
  403. /package/json-schema/{system → kernel}/Scheduler.json +0 -0
  404. /package/json-schema/{system → kernel}/ScopedStorage.json +0 -0
  405. /package/json-schema/{system → kernel}/SystemAPI.json +0 -0
  406. /package/json-schema/{data → permission}/FieldPermission.json +0 -0
  407. /package/json-schema/{system → permission}/Territory.json +0 -0
  408. /package/json-schema/{system → permission}/TerritoryModel.json +0 -0
  409. /package/json-schema/{system → permission}/TerritoryType.json +0 -0
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConditionalValidationSchema = exports.ValidationRuleSchema = exports.CustomValidatorSchema = exports.AsyncValidationSchema = exports.CrossFieldValidationSchema = exports.FormatValidationSchema = exports.StateMachineValidationSchema = exports.UniquenessValidationSchema = exports.ScriptValidationSchema = void 0;
3
+ exports.ConditionalValidationSchema = exports.ValidationRuleSchema = exports.CustomValidatorSchema = exports.AsyncValidationSchema = exports.JSONValidationSchema = exports.CrossFieldValidationSchema = exports.FormatValidationSchema = exports.StateMachineValidationSchema = exports.UniquenessValidationSchema = exports.ScriptValidationSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  /**
6
6
  * # ObjectStack Validation Protocol
@@ -50,12 +50,25 @@ const zod_1 = require("zod");
50
50
  * Base Validation Rule
51
51
  *
52
52
  * All validation rules extend from this base schema with common properties.
53
+ *
54
+ * ## Industry Standard Enhancements
55
+ * - **Label/Description**: Essential for governance in large systems with thousands of rules.
56
+ * - **Events**: granular control over validation timing (Context-aware validation).
57
+ * - **Tags**: categorization for reporting and management.
53
58
  */
54
59
  const BaseValidationSchema = zod_1.z.object({
55
- name: zod_1.z.string().regex(/^[a-z_][a-z0-9_]*$/).describe('Unique rule name'),
60
+ // Identification
61
+ name: zod_1.z.string().regex(/^[a-z_][a-z0-9_]*$/).describe('Unique rule name (snake_case)'),
62
+ label: zod_1.z.string().optional().describe('Human-readable label for the rule listing'),
63
+ description: zod_1.z.string().optional().describe('Administrative notes explaining the business reason'),
64
+ // Execution Control
56
65
  active: zod_1.z.boolean().default(true),
66
+ events: zod_1.z.array(zod_1.z.enum(['insert', 'update', 'delete'])).default(['insert', 'update']).describe('Validation contexts'),
67
+ // Classification
68
+ tags: zod_1.z.array(zod_1.z.string()).optional().describe('Categorization tags (e.g., "compliance", "billing")'),
69
+ // Feedback
57
70
  severity: zod_1.z.enum(['error', 'warning', 'info']).default('error'),
58
- message: zod_1.z.string().describe('Error message to display'),
71
+ message: zod_1.z.string().describe('Error message to display to the user'),
59
72
  });
60
73
  /**
61
74
  * 1. Script/Expression Validation
@@ -163,7 +176,21 @@ exports.CrossFieldValidationSchema = BaseValidationSchema.extend({
163
176
  fields: zod_1.z.array(zod_1.z.string()).describe('Fields involved in the validation'),
164
177
  });
165
178
  /**
166
- * 6. Async Validation
179
+ * 6. JSON Structure Validation
180
+ * Validates JSON fields against a JSON Schema.
181
+ *
182
+ * ## Use Cases
183
+ * - Validating configuration objects stored in JSON fields
184
+ * - Enforcing API payload structures
185
+ * - Complex nested data validation
186
+ */
187
+ exports.JSONValidationSchema = BaseValidationSchema.extend({
188
+ type: zod_1.z.literal('json_schema'),
189
+ field: zod_1.z.string().describe('JSON field to validate'),
190
+ schema: zod_1.z.record(zod_1.z.any()).describe('JSON Schema object definition'),
191
+ });
192
+ /**
193
+ * 7. Async Validation
167
194
  * Remote validation via API call or database query.
168
195
  *
169
196
  * ## Use Cases
@@ -276,35 +303,29 @@ exports.CrossFieldValidationSchema = BaseValidationSchema.extend({
276
303
  * }
277
304
  * }
278
305
  * ```
279
- *
280
- * ## Best Practices
281
- * - Always set a reasonable `timeout` (default is 5000ms)
282
- * - Use `debounce` for fields that are typed (300-500ms recommended)
283
- * - Implement proper error handling on the server side
284
- * - Cache validation results when appropriate
285
- * - Consider rate limiting for external API calls
286
306
  */
287
307
  exports.AsyncValidationSchema = BaseValidationSchema.extend({
288
308
  type: zod_1.z.literal('async'),
289
309
  field: zod_1.z.string().describe('Field to validate'),
290
310
  validatorUrl: zod_1.z.string().optional().describe('External API endpoint for validation'),
311
+ method: zod_1.z.enum(['GET', 'POST']).default('GET').describe('HTTP method for external call'),
312
+ headers: zod_1.z.record(zod_1.z.string()).optional().describe('Custom headers for the request'),
291
313
  validatorFunction: zod_1.z.string().optional().describe('Reference to custom validator function'),
292
314
  timeout: zod_1.z.number().optional().default(5000).describe('Timeout in milliseconds'),
293
315
  debounce: zod_1.z.number().optional().describe('Debounce delay in milliseconds'),
294
316
  params: zod_1.z.record(zod_1.z.any()).optional().describe('Additional parameters to pass to validator'),
295
317
  });
296
318
  /**
297
- * 7. Custom Validator Function
319
+ * 8. Custom Validator Function
298
320
  * User-defined validation logic with code reference.
299
321
  */
300
322
  exports.CustomValidatorSchema = BaseValidationSchema.extend({
301
323
  type: zod_1.z.literal('custom'),
302
- field: zod_1.z.string().optional().describe('Field to validate (optional for record-level validation)'),
303
- validatorFunction: zod_1.z.string().describe('Function name or reference to custom validator'),
304
- params: zod_1.z.record(zod_1.z.any()).optional().describe('Additional parameters for the validator'),
324
+ handler: zod_1.z.string().describe('Name of the custom validation function registered in the system'),
325
+ params: zod_1.z.record(zod_1.z.any()).optional().describe('Parameters passed to the custom handler'),
305
326
  });
306
327
  /**
307
- * Master Validation Rule Schema (forward declared for circular reference)
328
+ * 9. Master Validation Rule Schema
308
329
  */
309
330
  exports.ValidationRuleSchema = zod_1.z.lazy(() => zod_1.z.discriminatedUnion('type', [
310
331
  exports.ScriptValidationSchema,
@@ -312,6 +333,7 @@ exports.ValidationRuleSchema = zod_1.z.lazy(() => zod_1.z.discriminatedUnion('ty
312
333
  exports.StateMachineValidationSchema,
313
334
  exports.FormatValidationSchema,
314
335
  exports.CrossFieldValidationSchema,
336
+ exports.JSONValidationSchema,
315
337
  exports.AsyncValidationSchema,
316
338
  exports.CustomValidatorSchema,
317
339
  exports.ConditionalValidationSchema,
@@ -1,10 +1,4 @@
1
1
  import { z } from 'zod';
2
- /**
3
- * Driver Type Enum (Built-in)
4
- * Standard drivers supported by the core platform.
5
- * Plugins can register additional drivers using different identifiers.
6
- */
7
- export declare const BuiltInDrivers: readonly ["postgres", "mysql", "sqlserver", "oracle", "sqlite", "mongo", "redis", "excel", "csv", "airtable", "rest_api", "graphql", "odata", "salesforce", "sap", "workday"];
8
2
  /**
9
3
  * Driver Identifier
10
4
  * Can be a built-in driver or a plugin-contributed driver (e.g., "com.vendor.snowflake").
@@ -188,6 +182,32 @@ export declare const DatasourceSchema: z.ZodObject<{
188
182
  * Stored securely (passwords usually interpolated from ENV).
189
183
  */
190
184
  config: z.ZodRecord<z.ZodString, z.ZodAny>;
185
+ /**
186
+ * Connection Pool Configuration
187
+ * Standard connection pooling settings.
188
+ */
189
+ pool: z.ZodOptional<z.ZodObject<{
190
+ min: z.ZodDefault<z.ZodNumber>;
191
+ max: z.ZodDefault<z.ZodNumber>;
192
+ idleTimeoutMillis: z.ZodDefault<z.ZodNumber>;
193
+ connectionTimeoutMillis: z.ZodDefault<z.ZodNumber>;
194
+ }, "strip", z.ZodTypeAny, {
195
+ min: number;
196
+ max: number;
197
+ idleTimeoutMillis: number;
198
+ connectionTimeoutMillis: number;
199
+ }, {
200
+ min?: number | undefined;
201
+ max?: number | undefined;
202
+ idleTimeoutMillis?: number | undefined;
203
+ connectionTimeoutMillis?: number | undefined;
204
+ }>>;
205
+ /**
206
+ * Read Replicas
207
+ * Optional list of duplicate configurations for read-only operations.
208
+ * Useful for scaling read throughput.
209
+ */
210
+ readReplicas: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">>;
191
211
  /**
192
212
  * Capability Overrides
193
213
  * Manually override what the driver claims to support.
@@ -247,8 +267,8 @@ export declare const DatasourceSchema: z.ZodObject<{
247
267
  }, "strip", z.ZodTypeAny, {
248
268
  name: string;
249
269
  active: boolean;
250
- config: Record<string, any>;
251
270
  driver: string;
271
+ config: Record<string, any>;
252
272
  label?: string | undefined;
253
273
  description?: string | undefined;
254
274
  capabilities?: {
@@ -264,10 +284,17 @@ export declare const DatasourceSchema: z.ZodObject<{
264
284
  readOnly: boolean;
265
285
  dynamicSchema: boolean;
266
286
  } | undefined;
287
+ pool?: {
288
+ min: number;
289
+ max: number;
290
+ idleTimeoutMillis: number;
291
+ connectionTimeoutMillis: number;
292
+ } | undefined;
293
+ readReplicas?: Record<string, any>[] | undefined;
267
294
  }, {
268
295
  name: string;
269
- config: Record<string, any>;
270
296
  driver: string;
297
+ config: Record<string, any>;
271
298
  label?: string | undefined;
272
299
  description?: string | undefined;
273
300
  active?: boolean | undefined;
@@ -284,6 +311,13 @@ export declare const DatasourceSchema: z.ZodObject<{
284
311
  readOnly?: boolean | undefined;
285
312
  dynamicSchema?: boolean | undefined;
286
313
  } | undefined;
314
+ pool?: {
315
+ min?: number | undefined;
316
+ max?: number | undefined;
317
+ idleTimeoutMillis?: number | undefined;
318
+ connectionTimeoutMillis?: number | undefined;
319
+ } | undefined;
320
+ readReplicas?: Record<string, any>[] | undefined;
287
321
  }>;
288
322
  export type Datasource = z.infer<typeof DatasourceSchema>;
289
323
  export type DatasourceConfig = z.infer<typeof DatasourceCapabilities>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasource.zod.d.ts","sourceRoot":"","sources":["../../src/driver/datasource.zod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;GAGG;AACH,eAAO,MAAM,UAAU,aAAsD,CAAC;AAE9E;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;IAMjC;;;;OAIG;;IAGH;;;OAGG;;QAeH,oCAAoC;;QAOpC,iDAAiD;;QAGjD,oDAAoD;;QAGpD,oCAAoC;;QAGpC,2CAA2C;;QAG3C,oCAAoC;;QAGpC,8BAA8B;;QAG9B,2CAA2C;;QAO3C,oCAAoC;;QAGpC,oBAAoB;;QAGpB,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAnD/C,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;IAKjC,oCAAoC;;IAOpC,iDAAiD;;IAGjD,oDAAoD;;IAGpD,oCAAoC;;IAGpC,2CAA2C;;IAG3C,oCAAoC;;IAGpC,8BAA8B;;IAG9B,2CAA2C;;IAO3C,oCAAoC;;IAGpC,oBAAoB;;IAGpB,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;EAE/C,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,gBAAgB;IAC3B,mBAAmB;;IAGnB,kBAAkB;;IAGlB,aAAa;;IAGb;;;;OAIG;;IAGH;;;OAGG;;;;;;;;;;;;;;;;;IAQH;;;;OAIG;;IAGH;;;OAGG;;QApFH,oCAAoC;;QAOpC,iDAAiD;;QAGjD,oDAAoD;;QAGpD,oCAAoC;;QAGpC,2CAA2C;;QAG3C,oCAAoC;;QAGpC,8BAA8B;;QAG9B,2CAA2C;;QAO3C,oCAAoC;;QAGpC,oBAAoB;;QAGpB,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiD/C,kBAAkB;;IAGlB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAElB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -1,19 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DatasourceSchema = exports.DatasourceCapabilities = exports.DriverDefinitionSchema = exports.DriverType = exports.BuiltInDrivers = void 0;
3
+ exports.DatasourceSchema = exports.DatasourceCapabilities = exports.DriverDefinitionSchema = exports.DriverType = void 0;
4
4
  const zod_1 = require("zod");
5
- /**
6
- * Driver Type Enum (Built-in)
7
- * Standard drivers supported by the core platform.
8
- * Plugins can register additional drivers using different identifiers.
9
- */
10
- exports.BuiltInDrivers = [
11
- 'postgres', 'mysql', 'sqlserver', 'oracle', 'sqlite', // SQL
12
- 'mongo', 'redis', // NoSQL
13
- 'excel', 'csv', 'airtable', // Spreadsheet / Low-code
14
- 'rest_api', 'graphql', 'odata', // Web Services
15
- 'salesforce', 'sap', 'workday' // Enterprise SaaS
16
- ];
17
5
  /**
18
6
  * Driver Identifier
19
7
  * Can be a built-in driver or a plugin-contributed driver (e.g., "com.vendor.snowflake").
@@ -97,6 +85,22 @@ exports.DatasourceSchema = zod_1.z.object({
97
85
  * Stored securely (passwords usually interpolated from ENV).
98
86
  */
99
87
  config: zod_1.z.record(zod_1.z.any()).describe('Driver specific configuration'),
88
+ /**
89
+ * Connection Pool Configuration
90
+ * Standard connection pooling settings.
91
+ */
92
+ pool: zod_1.z.object({
93
+ min: zod_1.z.number().default(0).describe('Minimum connections'),
94
+ max: zod_1.z.number().default(10).describe('Maximum connections'),
95
+ idleTimeoutMillis: zod_1.z.number().default(30000).describe('Idle timeout'),
96
+ connectionTimeoutMillis: zod_1.z.number().default(3000).describe('Connection establishment timeout'),
97
+ }).optional().describe('Connection pool settings'),
98
+ /**
99
+ * Read Replicas
100
+ * Optional list of duplicate configurations for read-only operations.
101
+ * Useful for scaling read throughput.
102
+ */
103
+ readReplicas: zod_1.z.array(zod_1.z.record(zod_1.z.any())).optional().describe('Read-only replica configurations'),
100
104
  /**
101
105
  * Capability Overrides
102
106
  * Manually override what the driver claims to support.