@objectstack/spec 0.1.0 → 0.1.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 (309) hide show
  1. package/README.md +134 -121
  2. package/dist/ai/agent.zod.d.ts +164 -0
  3. package/dist/ai/agent.zod.d.ts.map +1 -0
  4. package/dist/ai/agent.zod.js +51 -0
  5. package/dist/api/contract.zod.d.ts +1733 -0
  6. package/dist/api/contract.zod.d.ts.map +1 -0
  7. package/dist/api/contract.zod.js +138 -0
  8. package/dist/data/dataset.zod.d.ts +60 -0
  9. package/dist/data/dataset.zod.d.ts.map +1 -0
  10. package/dist/data/dataset.zod.js +54 -0
  11. package/dist/data/field.zod.d.ts +1808 -0
  12. package/dist/data/field.zod.d.ts.map +1 -0
  13. package/dist/data/field.zod.js +222 -0
  14. package/dist/data/flow.zod.d.ts +242 -0
  15. package/dist/data/flow.zod.d.ts.map +1 -0
  16. package/dist/data/flow.zod.js +77 -0
  17. package/dist/data/mapping.zod.d.ts +470 -0
  18. package/dist/data/mapping.zod.d.ts.map +1 -0
  19. package/dist/data/mapping.zod.js +65 -0
  20. package/dist/data/object.zod.d.ts +844 -0
  21. package/dist/data/object.zod.d.ts.map +1 -0
  22. package/dist/data/object.zod.js +81 -0
  23. package/dist/data/permission.zod.d.ts +163 -0
  24. package/dist/data/permission.zod.d.ts.map +1 -0
  25. package/dist/data/permission.zod.js +62 -0
  26. package/dist/data/query.zod.d.ts +438 -0
  27. package/dist/data/query.zod.d.ts.map +1 -0
  28. package/dist/data/query.zod.js +147 -0
  29. package/dist/data/sharing.zod.d.ts +63 -0
  30. package/dist/data/sharing.zod.d.ts.map +1 -0
  31. package/dist/data/sharing.zod.js +57 -0
  32. package/dist/data/trigger.zod.d.ts +354 -0
  33. package/dist/data/trigger.zod.d.ts.map +1 -0
  34. package/dist/data/trigger.zod.js +195 -0
  35. package/dist/data/validation.zod.d.ts +276 -0
  36. package/dist/data/validation.zod.d.ts.map +1 -0
  37. package/dist/data/validation.zod.js +105 -0
  38. package/dist/data/workflow.zod.d.ts +195 -0
  39. package/dist/data/workflow.zod.d.ts.map +1 -0
  40. package/dist/data/workflow.zod.js +64 -0
  41. package/dist/index.d.ts +41 -5
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +62 -5
  44. package/dist/system/api.zod.d.ts +294 -0
  45. package/dist/system/api.zod.d.ts.map +1 -0
  46. package/dist/system/api.zod.js +56 -0
  47. package/dist/system/constants/index.d.ts +11 -0
  48. package/dist/system/constants/index.d.ts.map +1 -0
  49. package/dist/system/constants/index.js +26 -0
  50. package/dist/system/constants/paths.d.ts +71 -0
  51. package/dist/system/constants/paths.d.ts.map +1 -0
  52. package/dist/system/constants/paths.js +65 -0
  53. package/dist/system/datasource.zod.d.ts +210 -0
  54. package/dist/system/datasource.zod.d.ts.map +1 -0
  55. package/dist/system/datasource.zod.js +90 -0
  56. package/dist/system/discovery.zod.d.ts +174 -0
  57. package/dist/system/discovery.zod.d.ts.map +1 -0
  58. package/dist/system/discovery.zod.js +53 -0
  59. package/dist/system/driver.zod.d.ts +1525 -0
  60. package/dist/system/driver.zod.d.ts.map +1 -0
  61. package/dist/system/driver.zod.js +290 -0
  62. package/dist/system/identity.zod.d.ts +204 -0
  63. package/dist/system/identity.zod.d.ts.map +1 -0
  64. package/dist/system/identity.zod.js +68 -0
  65. package/dist/system/license.zod.d.ts +110 -0
  66. package/dist/system/license.zod.d.ts.map +1 -0
  67. package/dist/system/license.zod.js +63 -0
  68. package/dist/system/manifest.zod.d.ts +397 -0
  69. package/dist/system/manifest.zod.d.ts.map +1 -0
  70. package/dist/system/manifest.zod.js +142 -0
  71. package/dist/system/plugin.zod.d.ts +3516 -0
  72. package/dist/system/plugin.zod.d.ts.map +1 -0
  73. package/dist/system/plugin.zod.js +226 -0
  74. package/dist/system/policy.zod.d.ts +209 -0
  75. package/dist/system/policy.zod.d.ts.map +1 -0
  76. package/dist/system/policy.zod.js +54 -0
  77. package/dist/system/role.zod.d.ts +34 -0
  78. package/dist/system/role.zod.d.ts.map +1 -0
  79. package/dist/system/role.zod.js +25 -0
  80. package/dist/system/territory.zod.d.ts +91 -0
  81. package/dist/system/territory.zod.d.ts.map +1 -0
  82. package/dist/system/territory.zod.js +64 -0
  83. package/dist/system/translation.zod.d.ts +171 -0
  84. package/dist/system/translation.zod.d.ts.map +1 -0
  85. package/dist/system/translation.zod.js +34 -0
  86. package/dist/system/types/index.d.ts +7 -0
  87. package/dist/system/types/index.d.ts.map +1 -0
  88. package/dist/system/types/index.js +22 -0
  89. package/dist/system/types/plugin.d.ts +113 -0
  90. package/dist/system/types/plugin.d.ts.map +1 -0
  91. package/dist/system/types/plugin.js +6 -0
  92. package/dist/system/webhook.zod.d.ts +106 -0
  93. package/dist/system/webhook.zod.d.ts.map +1 -0
  94. package/dist/system/webhook.zod.js +56 -0
  95. package/dist/ui/action.zod.d.ts +155 -0
  96. package/dist/ui/action.zod.d.ts.map +1 -0
  97. package/dist/ui/action.zod.js +54 -0
  98. package/dist/ui/app.zod.d.ts +405 -0
  99. package/dist/ui/app.zod.d.ts.map +1 -0
  100. package/dist/ui/app.zod.js +138 -0
  101. package/dist/ui/dashboard.zod.d.ts +213 -0
  102. package/dist/ui/dashboard.zod.d.ts.map +1 -0
  103. package/dist/ui/dashboard.zod.js +72 -0
  104. package/dist/ui/page.zod.d.ts +187 -0
  105. package/dist/ui/page.zod.d.ts.map +1 -0
  106. package/dist/ui/page.zod.js +48 -0
  107. package/dist/ui/report.zod.d.ts +233 -0
  108. package/dist/ui/report.zod.d.ts.map +1 -0
  109. package/dist/ui/report.zod.js +74 -0
  110. package/dist/ui/theme.zod.d.ts +1221 -0
  111. package/dist/ui/theme.zod.d.ts.map +1 -0
  112. package/dist/ui/theme.zod.js +202 -0
  113. package/dist/ui/view.zod.d.ts +887 -0
  114. package/dist/ui/view.zod.d.ts.map +1 -0
  115. package/dist/ui/view.zod.js +83 -0
  116. package/dist/ui/widget.zod.d.ts +350 -0
  117. package/dist/ui/widget.zod.d.ts.map +1 -0
  118. package/dist/ui/widget.zod.js +66 -0
  119. package/json-schema/AIKnowledge.json +30 -0
  120. package/json-schema/AIModelConfig.json +41 -0
  121. package/json-schema/AITool.json +33 -0
  122. package/json-schema/Action.json +162 -0
  123. package/json-schema/ActionParam.json +82 -0
  124. package/json-schema/Address.json +40 -0
  125. package/json-schema/Agent.json +140 -0
  126. package/json-schema/AggregationFunction.json +19 -0
  127. package/json-schema/AggregationNode.json +42 -0
  128. package/json-schema/Animation.json +56 -0
  129. package/json-schema/ApiCapabilities.json +28 -0
  130. package/json-schema/ApiEndpoint.json +162 -0
  131. package/json-schema/ApiError.json +27 -0
  132. package/json-schema/ApiMapping.json +28 -0
  133. package/json-schema/ApiRoutes.json +41 -0
  134. package/json-schema/App.json +297 -0
  135. package/json-schema/AppBranding.json +24 -0
  136. package/json-schema/AsyncValidation.json +70 -0
  137. package/json-schema/AuditPolicy.json +31 -0
  138. package/json-schema/AuthProtocol.json +17 -0
  139. package/json-schema/AuthProvider.json +171 -0
  140. package/json-schema/BaseResponse.json +63 -0
  141. package/json-schema/BorderRadius.json +44 -0
  142. package/json-schema/Breakpoints.json +36 -0
  143. package/json-schema/BulkRequest.json +29 -0
  144. package/json-schema/BulkResponse.json +108 -0
  145. package/json-schema/CalendarConfig.json +28 -0
  146. package/json-schema/ChartType.json +19 -0
  147. package/json-schema/ColorPalette.json +83 -0
  148. package/json-schema/ConditionalValidation.json +793 -0
  149. package/json-schema/CreateRequest.json +20 -0
  150. package/json-schema/CrossFieldValidation.json +56 -0
  151. package/json-schema/CustomValidator.json +57 -0
  152. package/json-schema/Dashboard.json +117 -0
  153. package/json-schema/DashboardNavItem.json +42 -0
  154. package/json-schema/DashboardWidget.json +89 -0
  155. package/json-schema/Dataset.json +63 -0
  156. package/json-schema/DatasetMode.json +16 -0
  157. package/json-schema/Datasource.json +75 -0
  158. package/json-schema/DatasourceCapabilities.json +36 -0
  159. package/json-schema/DeleteResponse.json +68 -0
  160. package/json-schema/Discovery.json +114 -0
  161. package/json-schema/DriverCapabilities.json +39 -0
  162. package/json-schema/DriverDefinition.json +66 -0
  163. package/json-schema/DriverInterface.json +58 -0
  164. package/json-schema/DriverOptions.json +23 -0
  165. package/json-schema/DriverType.json +10 -0
  166. package/json-schema/EmailAlertAction.json +37 -0
  167. package/json-schema/ExportRequest.json +786 -0
  168. package/json-schema/Feature.json +51 -0
  169. package/json-schema/Field.json +290 -0
  170. package/json-schema/FieldMapping.json +83 -0
  171. package/json-schema/FieldNode.json +32 -0
  172. package/json-schema/FieldPermission.json +22 -0
  173. package/json-schema/FieldType.json +42 -0
  174. package/json-schema/FieldUpdateAction.json +32 -0
  175. package/json-schema/FieldWidgetProps.json +327 -0
  176. package/json-schema/FilterNode.json +52 -0
  177. package/json-schema/FilterOperator.json +26 -0
  178. package/json-schema/Flow.json +186 -0
  179. package/json-schema/FlowEdge.json +37 -0
  180. package/json-schema/FlowNode.json +65 -0
  181. package/json-schema/FlowNodeAction.json +24 -0
  182. package/json-schema/FlowVariable.json +34 -0
  183. package/json-schema/FormSection.json +42 -0
  184. package/json-schema/FormView.json +99 -0
  185. package/json-schema/FormatValidation.json +59 -0
  186. package/json-schema/GanttConfig.json +32 -0
  187. package/json-schema/GroupNavItem.json +42 -0
  188. package/json-schema/HttpMethod.json +16 -0
  189. package/json-schema/I18nContext.json +12 -0
  190. package/json-schema/Index.json +30 -0
  191. package/json-schema/JoinNode.json +455 -0
  192. package/json-schema/JoinType.json +15 -0
  193. package/json-schema/KanbanConfig.json +31 -0
  194. package/json-schema/LDAPConfig.json +39 -0
  195. package/json-schema/License.json +57 -0
  196. package/json-schema/ListRecordResponse.json +103 -0
  197. package/json-schema/ListView.json +153 -0
  198. package/json-schema/Locale.json +10 -0
  199. package/json-schema/LocationCoordinates.json +36 -0
  200. package/json-schema/Logger.json +25 -0
  201. package/json-schema/LogicOperator.json +14 -0
  202. package/json-schema/Manifest.json +315 -0
  203. package/json-schema/Mapping.json +598 -0
  204. package/json-schema/MenuItem.json +28 -0
  205. package/json-schema/MetricType.json +14 -0
  206. package/json-schema/ModificationResult.json +46 -0
  207. package/json-schema/NavigationItem.json +214 -0
  208. package/json-schema/NetworkPolicy.json +31 -0
  209. package/json-schema/OIDCConfig.json +46 -0
  210. package/json-schema/OWDModel.json +14 -0
  211. package/json-schema/Object.json +428 -0
  212. package/json-schema/ObjectCapabilities.json +62 -0
  213. package/json-schema/ObjectNavItem.json +46 -0
  214. package/json-schema/ObjectPermission.json +42 -0
  215. package/json-schema/ObjectQLClient.json +12 -0
  216. package/json-schema/Page.json +117 -0
  217. package/json-schema/PageComponent.json +36 -0
  218. package/json-schema/PageNavItem.json +47 -0
  219. package/json-schema/PageRegion.json +63 -0
  220. package/json-schema/PasswordPolicy.json +41 -0
  221. package/json-schema/PermissionSet.json +96 -0
  222. package/json-schema/Plan.json +53 -0
  223. package/json-schema/Plugin.json +20 -0
  224. package/json-schema/PluginContext.json +91 -0
  225. package/json-schema/PluginLifecycle.json +11 -0
  226. package/json-schema/Policy.json +138 -0
  227. package/json-schema/Query.json +456 -0
  228. package/json-schema/RateLimit.json +26 -0
  229. package/json-schema/RecordData.json +11 -0
  230. package/json-schema/Report.json +219 -0
  231. package/json-schema/ReportChart.json +45 -0
  232. package/json-schema/ReportColumn.json +35 -0
  233. package/json-schema/ReportGrouping.json +38 -0
  234. package/json-schema/ReportType.json +15 -0
  235. package/json-schema/Role.json +32 -0
  236. package/json-schema/Router.json +12 -0
  237. package/json-schema/SAMLConfig.json +44 -0
  238. package/json-schema/Scheduler.json +12 -0
  239. package/json-schema/ScopedStorage.json +12 -0
  240. package/json-schema/ScriptValidation.json +48 -0
  241. package/json-schema/SelectOption.json +32 -0
  242. package/json-schema/SessionPolicy.json +27 -0
  243. package/json-schema/Shadow.json +44 -0
  244. package/json-schema/SharingLevel.json +13 -0
  245. package/json-schema/SharingRule.json +58 -0
  246. package/json-schema/SharingRuleType.json +15 -0
  247. package/json-schema/SingleRecordResponse.json +69 -0
  248. package/json-schema/SortNode.json +26 -0
  249. package/json-schema/Spacing.json +64 -0
  250. package/json-schema/StateMachineValidation.json +59 -0
  251. package/json-schema/SystemAPI.json +12 -0
  252. package/json-schema/Territory.json +77 -0
  253. package/json-schema/TerritoryModel.json +34 -0
  254. package/json-schema/TerritoryType.json +15 -0
  255. package/json-schema/Theme.json +543 -0
  256. package/json-schema/ThemeMode.json +14 -0
  257. package/json-schema/TransformType.json +18 -0
  258. package/json-schema/TranslationBundle.json +78 -0
  259. package/json-schema/TranslationData.json +75 -0
  260. package/json-schema/Trigger.json +73 -0
  261. package/json-schema/TriggerAction.json +14 -0
  262. package/json-schema/TriggerContext.json +61 -0
  263. package/json-schema/TriggerTiming.json +13 -0
  264. package/json-schema/Typography.json +142 -0
  265. package/json-schema/UniquenessValidation.json +59 -0
  266. package/json-schema/UpdateRequest.json +20 -0
  267. package/json-schema/UrlNavItem.json +51 -0
  268. package/json-schema/ValidationRule.json +794 -0
  269. package/json-schema/View.json +500 -0
  270. package/json-schema/Webhook.json +88 -0
  271. package/json-schema/WebhookReceiver.json +66 -0
  272. package/json-schema/WebhookTriggerType.json +16 -0
  273. package/json-schema/WindowFunction.json +24 -0
  274. package/json-schema/WindowFunctionNode.json +104 -0
  275. package/json-schema/WindowSpec.json +65 -0
  276. package/json-schema/WorkflowAction.json +84 -0
  277. package/json-schema/WorkflowRule.json +128 -0
  278. package/json-schema/WorkflowTriggerType.json +16 -0
  279. package/json-schema/ZIndex.json +44 -0
  280. package/package.json +34 -20
  281. package/dist/examples.d.ts +0 -28
  282. package/dist/examples.d.ts.map +0 -1
  283. package/dist/examples.js +0 -250
  284. package/dist/types/index.d.ts +0 -9
  285. package/dist/types/index.d.ts.map +0 -1
  286. package/dist/types/index.js +0 -8
  287. package/dist/types/meta/field-type.d.ts +0 -54
  288. package/dist/types/meta/field-type.d.ts.map +0 -1
  289. package/dist/types/meta/field-type.js +0 -42
  290. package/dist/types/meta/index.d.ts +0 -13
  291. package/dist/types/meta/index.d.ts.map +0 -1
  292. package/dist/types/meta/index.js +0 -12
  293. package/dist/types/meta/object-entity.d.ts +0 -246
  294. package/dist/types/meta/object-entity.d.ts.map +0 -1
  295. package/dist/types/meta/object-entity.js +0 -9
  296. package/dist/types/meta/object-field.d.ts +0 -199
  297. package/dist/types/meta/object-field.d.ts.map +0 -1
  298. package/dist/types/meta/object-field.js +0 -9
  299. package/dist/types/meta/object-view.d.ts +0 -430
  300. package/dist/types/meta/object-view.d.ts.map +0 -1
  301. package/dist/types/meta/object-view.js +0 -9
  302. package/src/examples.ts +0 -257
  303. package/src/index.ts +0 -10
  304. package/src/types/index.ts +0 -9
  305. package/src/types/meta/field-type.ts +0 -91
  306. package/src/types/meta/index.ts +0 -13
  307. package/src/types/meta/object-entity.ts +0 -265
  308. package/src/types/meta/object-field.ts +0 -218
  309. package/src/types/meta/object-view.ts +0 -475
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.zod.d.ts","sourceRoot":"","sources":["../../src/api/contract.zod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,cAAc;;;;;;;;;;;;EAIzB,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS7B,CAAC;AAMH,eAAO,MAAM,gBAAgB,oCAA6D,CAAC;AAE3F;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;EAG5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9B,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAErC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQnC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAInC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE/B,CAAC;AAMH;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCxB,CAAC"}
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ApiContracts = exports.DeleteResponseSchema = exports.BulkResponseSchema = exports.ModificationResultSchema = exports.ListRecordResponseSchema = exports.SingleRecordResponseSchema = exports.ExportRequestSchema = exports.BulkRequestSchema = exports.UpdateRequestSchema = exports.CreateRequestSchema = exports.RecordDataSchema = exports.BaseResponseSchema = exports.ApiErrorSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const query_zod_1 = require("../data/query.zod");
6
+ // ==========================================
7
+ // 1. Base Envelopes
8
+ // ==========================================
9
+ exports.ApiErrorSchema = zod_1.z.object({
10
+ code: zod_1.z.string().describe('Error code (e.g. validation_error)'),
11
+ message: zod_1.z.string().describe('Readable error message'),
12
+ details: zod_1.z.any().optional().describe('Additional error context (e.g. field validation errors)'),
13
+ });
14
+ exports.BaseResponseSchema = zod_1.z.object({
15
+ success: zod_1.z.boolean().describe('Operation success status'),
16
+ error: exports.ApiErrorSchema.optional().describe('Error details if success is false'),
17
+ meta: zod_1.z.object({
18
+ timestamp: zod_1.z.string(),
19
+ duration: zod_1.z.number().optional(),
20
+ requestId: zod_1.z.string().optional(),
21
+ traceId: zod_1.z.string().optional(),
22
+ }).optional().describe('Response metadata'),
23
+ });
24
+ // ==========================================
25
+ // 2. Request Payloads (Inputs)
26
+ // ==========================================
27
+ exports.RecordDataSchema = zod_1.z.record(zod_1.z.any()).describe('Key-value map of record data');
28
+ /**
29
+ * Standard Create Request
30
+ */
31
+ exports.CreateRequestSchema = zod_1.z.object({
32
+ data: exports.RecordDataSchema.describe('Record data to insert'),
33
+ });
34
+ /**
35
+ * Standard Update Request
36
+ */
37
+ exports.UpdateRequestSchema = zod_1.z.object({
38
+ data: exports.RecordDataSchema.describe('Partial record data to update'),
39
+ });
40
+ /**
41
+ * Standard Bulk Request
42
+ */
43
+ exports.BulkRequestSchema = zod_1.z.object({
44
+ records: zod_1.z.array(exports.RecordDataSchema).describe('Array of records to process'),
45
+ allOrNone: zod_1.z.boolean().default(true).describe('If true, rollback entire transaction on any failure'),
46
+ });
47
+ /**
48
+ * Export Request
49
+ */
50
+ exports.ExportRequestSchema = query_zod_1.QuerySchema.extend({
51
+ format: zod_1.z.enum(['csv', 'json', 'xlsx']).default('csv'),
52
+ });
53
+ // ==========================================
54
+ // 3. Response Payloads (Outputs)
55
+ // ==========================================
56
+ /**
57
+ * Single Record Response (Get/Create/Update)
58
+ */
59
+ exports.SingleRecordResponseSchema = exports.BaseResponseSchema.extend({
60
+ data: exports.RecordDataSchema.describe('The requested or modified record'),
61
+ });
62
+ /**
63
+ * List/Query Response
64
+ */
65
+ exports.ListRecordResponseSchema = exports.BaseResponseSchema.extend({
66
+ data: zod_1.z.array(exports.RecordDataSchema).describe('Array of matching records'),
67
+ pagination: zod_1.z.object({
68
+ total: zod_1.z.number().describe('Total matching records count'),
69
+ limit: zod_1.z.number().describe('Page size'),
70
+ offset: zod_1.z.number().describe('Page offset'),
71
+ hasMore: zod_1.z.boolean().describe('Are there more pages?'),
72
+ }).describe('Pagination info'),
73
+ });
74
+ /**
75
+ * Modification Result (for Batch/Bulk operations)
76
+ */
77
+ exports.ModificationResultSchema = zod_1.z.object({
78
+ id: zod_1.z.string().optional().describe('Record ID if processed'),
79
+ success: zod_1.z.boolean(),
80
+ errors: zod_1.z.array(exports.ApiErrorSchema).optional(),
81
+ });
82
+ /**
83
+ * Bulk Operation Response
84
+ */
85
+ exports.BulkResponseSchema = exports.BaseResponseSchema.extend({
86
+ data: zod_1.z.array(exports.ModificationResultSchema).describe('Results for each item in the batch'),
87
+ });
88
+ /**
89
+ * Delete Response
90
+ */
91
+ exports.DeleteResponseSchema = exports.BaseResponseSchema.extend({
92
+ id: zod_1.z.string().describe('ID of the deleted record'),
93
+ });
94
+ // ==========================================
95
+ // 4. API Contract Registry
96
+ // ==========================================
97
+ /**
98
+ * Standard API Contracts map
99
+ * Used for generating SDKs and Documentation
100
+ */
101
+ exports.ApiContracts = {
102
+ create: {
103
+ input: exports.CreateRequestSchema,
104
+ output: exports.SingleRecordResponseSchema
105
+ },
106
+ update: {
107
+ input: exports.UpdateRequestSchema,
108
+ output: exports.SingleRecordResponseSchema
109
+ },
110
+ delete: {
111
+ input: zod_1.z.object({}), // usually just ID in URL
112
+ output: exports.DeleteResponseSchema
113
+ },
114
+ get: {
115
+ input: zod_1.z.object({}), // usually just ID in URL
116
+ output: exports.SingleRecordResponseSchema
117
+ },
118
+ list: {
119
+ input: query_zod_1.QuerySchema,
120
+ output: exports.ListRecordResponseSchema
121
+ },
122
+ bulkCreate: {
123
+ input: exports.BulkRequestSchema,
124
+ output: exports.BulkResponseSchema
125
+ },
126
+ bulkUpdate: {
127
+ input: exports.BulkRequestSchema,
128
+ output: exports.BulkResponseSchema
129
+ },
130
+ bulkUpsert: {
131
+ input: exports.BulkRequestSchema,
132
+ output: exports.BulkResponseSchema
133
+ },
134
+ bulkDelete: {
135
+ input: zod_1.z.object({ ids: zod_1.z.array(zod_1.z.string()) }),
136
+ output: exports.BulkResponseSchema
137
+ }
138
+ };
@@ -0,0 +1,60 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Data Import Strategy
4
+ * Defines how the engine handles existing records.
5
+ */
6
+ export declare const DatasetMode: z.ZodEnum<["insert", "update", "upsert", "replace", "ignore"]>;
7
+ /**
8
+ * Dataset Schema (Seed Data / Fixtures)
9
+ *
10
+ * Standardized format for transporting data.
11
+ * Used for:
12
+ * 1. System Bootstrapping (Admin accounts, Standard Roles)
13
+ * 2. Reference Data (Countries, Currencies)
14
+ * 3. Demo/Test Data
15
+ */
16
+ export declare const DatasetSchema: z.ZodObject<{
17
+ /**
18
+ * Target Object
19
+ * The machine name of the object to populate.
20
+ */
21
+ object: z.ZodString;
22
+ /**
23
+ * Idempotency Key (The "Upsert" Key)
24
+ * The field used to check if a record already exists.
25
+ * Best Practice: Use a natural key like 'code', 'slug', 'username' or 'external_id'.
26
+ * Standard: '_id' (internal ID) is rarely used for portable seed data.
27
+ */
28
+ externalId: z.ZodDefault<z.ZodString>;
29
+ /**
30
+ * Import Strategy
31
+ */
32
+ mode: z.ZodDefault<z.ZodEnum<["insert", "update", "upsert", "replace", "ignore"]>>;
33
+ /**
34
+ * Environment Scope
35
+ * - 'all': Always load
36
+ * - 'dev': Only for development/demo
37
+ * - 'test': Only for CI/CD tests
38
+ */
39
+ env: z.ZodDefault<z.ZodArray<z.ZodEnum<["prod", "dev", "test"]>, "many">>;
40
+ /**
41
+ * The Payload
42
+ * Array of raw JSON objects matching the Object Schema.
43
+ */
44
+ records: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">;
45
+ }, "strip", z.ZodTypeAny, {
46
+ object: string;
47
+ externalId: string;
48
+ mode: "update" | "upsert" | "insert" | "replace" | "ignore";
49
+ env: ("prod" | "dev" | "test")[];
50
+ records: Record<string, any>[];
51
+ }, {
52
+ object: string;
53
+ records: Record<string, any>[];
54
+ externalId?: string | undefined;
55
+ mode?: "update" | "upsert" | "insert" | "replace" | "ignore" | undefined;
56
+ env?: ("prod" | "dev" | "test")[] | undefined;
57
+ }>;
58
+ export type Dataset = z.infer<typeof DatasetSchema>;
59
+ export type DatasetImportMode = z.infer<typeof DatasetMode>;
60
+ //# sourceMappingURL=dataset.zod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataset.zod.d.ts","sourceRoot":"","sources":["../../src/data/dataset.zod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,WAAW,gEAMtB,CAAC;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa;IACxB;;;OAGG;;IAGH;;;;;OAKG;;IAGH;;OAEG;;IAGH;;;;;OAKG;;IAGH;;;OAGG;;;;;;;;;;;;;;EAEH,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DatasetSchema = exports.DatasetMode = void 0;
4
+ const zod_1 = require("zod");
5
+ /**
6
+ * Data Import Strategy
7
+ * Defines how the engine handles existing records.
8
+ */
9
+ exports.DatasetMode = zod_1.z.enum([
10
+ 'insert', // Try to insert, fail on duplicate
11
+ 'update', // Only update found records, ignore new
12
+ 'upsert', // Create new or Update existing (Standard)
13
+ 'replace', // Delete ALL records in object then insert (Dangerous - use for cache tables)
14
+ 'ignore' // Try to insert, silently skip duplicates
15
+ ]);
16
+ /**
17
+ * Dataset Schema (Seed Data / Fixtures)
18
+ *
19
+ * Standardized format for transporting data.
20
+ * Used for:
21
+ * 1. System Bootstrapping (Admin accounts, Standard Roles)
22
+ * 2. Reference Data (Countries, Currencies)
23
+ * 3. Demo/Test Data
24
+ */
25
+ exports.DatasetSchema = zod_1.z.object({
26
+ /**
27
+ * Target Object
28
+ * The machine name of the object to populate.
29
+ */
30
+ object: zod_1.z.string().regex(/^[a-z_][a-z0-9_]*$/).describe('Target Object Name'),
31
+ /**
32
+ * Idempotency Key (The "Upsert" Key)
33
+ * The field used to check if a record already exists.
34
+ * Best Practice: Use a natural key like 'code', 'slug', 'username' or 'external_id'.
35
+ * Standard: '_id' (internal ID) is rarely used for portable seed data.
36
+ */
37
+ externalId: zod_1.z.string().default('name').describe('Field match for uniqueness check'),
38
+ /**
39
+ * Import Strategy
40
+ */
41
+ mode: exports.DatasetMode.default('upsert').describe('Conflict resolution strategy'),
42
+ /**
43
+ * Environment Scope
44
+ * - 'all': Always load
45
+ * - 'dev': Only for development/demo
46
+ * - 'test': Only for CI/CD tests
47
+ */
48
+ env: zod_1.z.array(zod_1.z.enum(['prod', 'dev', 'test'])).default(['prod', 'dev', 'test']).describe('Applicable environments'),
49
+ /**
50
+ * The Payload
51
+ * Array of raw JSON objects matching the Object Schema.
52
+ */
53
+ records: zod_1.z.array(zod_1.z.record(zod_1.z.any())).describe('Data records'),
54
+ });