@objectstack/spec 0.1.0 → 0.1.1

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 (231) hide show
  1. package/README.md +66 -125
  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/data/dataset.zod.d.ts +60 -0
  6. package/dist/data/dataset.zod.d.ts.map +1 -0
  7. package/dist/data/dataset.zod.js +54 -0
  8. package/dist/data/field.zod.d.ts +170 -0
  9. package/dist/data/field.zod.d.ts.map +1 -0
  10. package/dist/data/field.zod.js +81 -0
  11. package/dist/data/flow.zod.d.ts +242 -0
  12. package/dist/data/flow.zod.d.ts.map +1 -0
  13. package/dist/data/flow.zod.js +77 -0
  14. package/dist/data/mapping.zod.d.ts +257 -0
  15. package/dist/data/mapping.zod.d.ts.map +1 -0
  16. package/dist/data/mapping.zod.js +65 -0
  17. package/dist/data/object.zod.d.ts +364 -0
  18. package/dist/data/object.zod.d.ts.map +1 -0
  19. package/dist/data/object.zod.js +54 -0
  20. package/dist/data/permission.zod.d.ts +163 -0
  21. package/dist/data/permission.zod.d.ts.map +1 -0
  22. package/dist/data/permission.zod.js +62 -0
  23. package/dist/data/query.zod.d.ts +89 -0
  24. package/dist/data/query.zod.d.ts.map +1 -0
  25. package/dist/data/query.zod.js +71 -0
  26. package/dist/data/sharing.zod.d.ts +63 -0
  27. package/dist/data/sharing.zod.d.ts.map +1 -0
  28. package/dist/data/sharing.zod.js +57 -0
  29. package/dist/data/validation.zod.d.ts +236 -0
  30. package/dist/data/validation.zod.d.ts.map +1 -0
  31. package/dist/data/validation.zod.js +59 -0
  32. package/dist/data/workflow.zod.d.ts +195 -0
  33. package/dist/data/workflow.zod.d.ts.map +1 -0
  34. package/dist/data/workflow.zod.js +64 -0
  35. package/dist/index.d.ts +33 -5
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +53 -5
  38. package/dist/system/api.zod.d.ts +168 -0
  39. package/dist/system/api.zod.d.ts.map +1 -0
  40. package/dist/system/api.zod.js +53 -0
  41. package/dist/system/constants/index.d.ts +11 -0
  42. package/dist/system/constants/index.d.ts.map +1 -0
  43. package/dist/system/constants/index.js +26 -0
  44. package/dist/system/constants/paths.d.ts +71 -0
  45. package/dist/system/constants/paths.d.ts.map +1 -0
  46. package/dist/system/constants/paths.js +65 -0
  47. package/dist/system/datasource.zod.d.ts +127 -0
  48. package/dist/system/datasource.zod.d.ts.map +1 -0
  49. package/dist/system/datasource.zod.js +62 -0
  50. package/dist/system/identity.zod.d.ts +204 -0
  51. package/dist/system/identity.zod.d.ts.map +1 -0
  52. package/dist/system/identity.zod.js +68 -0
  53. package/dist/system/license.zod.d.ts +110 -0
  54. package/dist/system/license.zod.d.ts.map +1 -0
  55. package/dist/system/license.zod.js +63 -0
  56. package/dist/system/manifest.zod.d.ts +126 -0
  57. package/dist/system/manifest.zod.d.ts.map +1 -0
  58. package/dist/system/manifest.zod.js +68 -0
  59. package/dist/system/policy.zod.d.ts +209 -0
  60. package/dist/system/policy.zod.d.ts.map +1 -0
  61. package/dist/system/policy.zod.js +54 -0
  62. package/dist/system/role.zod.d.ts +34 -0
  63. package/dist/system/role.zod.d.ts.map +1 -0
  64. package/dist/system/role.zod.js +25 -0
  65. package/dist/system/territory.zod.d.ts +91 -0
  66. package/dist/system/territory.zod.d.ts.map +1 -0
  67. package/dist/system/territory.zod.js +64 -0
  68. package/dist/system/translation.zod.d.ts +171 -0
  69. package/dist/system/translation.zod.d.ts.map +1 -0
  70. package/dist/system/translation.zod.js +34 -0
  71. package/dist/system/types/index.d.ts +7 -0
  72. package/dist/system/types/index.d.ts.map +1 -0
  73. package/dist/system/types/index.js +22 -0
  74. package/dist/system/types/plugin.d.ts +113 -0
  75. package/dist/system/types/plugin.d.ts.map +1 -0
  76. package/dist/system/types/plugin.js +6 -0
  77. package/dist/system/webhook.zod.d.ts +106 -0
  78. package/dist/system/webhook.zod.d.ts.map +1 -0
  79. package/dist/system/webhook.zod.js +56 -0
  80. package/dist/ui/action.zod.d.ts +148 -0
  81. package/dist/ui/action.zod.d.ts.map +1 -0
  82. package/dist/ui/action.zod.js +48 -0
  83. package/dist/ui/app.zod.d.ts +299 -0
  84. package/dist/ui/app.zod.d.ts.map +1 -0
  85. package/dist/ui/app.zod.js +127 -0
  86. package/dist/ui/dashboard.zod.d.ts +207 -0
  87. package/dist/ui/dashboard.zod.d.ts.map +1 -0
  88. package/dist/ui/dashboard.zod.js +66 -0
  89. package/dist/ui/page.zod.d.ts +187 -0
  90. package/dist/ui/page.zod.d.ts.map +1 -0
  91. package/dist/ui/page.zod.js +48 -0
  92. package/dist/ui/report.zod.d.ts +224 -0
  93. package/dist/ui/report.zod.d.ts.map +1 -0
  94. package/dist/ui/report.zod.js +68 -0
  95. package/dist/ui/view.zod.d.ts +887 -0
  96. package/dist/ui/view.zod.d.ts.map +1 -0
  97. package/dist/ui/view.zod.js +83 -0
  98. package/json-schema/AIKnowledge.json +30 -0
  99. package/json-schema/AIModelConfig.json +41 -0
  100. package/json-schema/AITool.json +33 -0
  101. package/json-schema/Action.json +156 -0
  102. package/json-schema/ActionParam.json +76 -0
  103. package/json-schema/Agent.json +140 -0
  104. package/json-schema/ApiEndpoint.json +162 -0
  105. package/json-schema/ApiMapping.json +28 -0
  106. package/json-schema/App.json +286 -0
  107. package/json-schema/AppBranding.json +24 -0
  108. package/json-schema/AuditPolicy.json +31 -0
  109. package/json-schema/AuthProtocol.json +17 -0
  110. package/json-schema/AuthProvider.json +171 -0
  111. package/json-schema/CalendarConfig.json +28 -0
  112. package/json-schema/ChartType.json +19 -0
  113. package/json-schema/Dashboard.json +117 -0
  114. package/json-schema/DashboardNavItem.json +42 -0
  115. package/json-schema/DashboardWidget.json +89 -0
  116. package/json-schema/Dataset.json +63 -0
  117. package/json-schema/DatasetMode.json +16 -0
  118. package/json-schema/Datasource.json +93 -0
  119. package/json-schema/DatasourceCapabilities.json +36 -0
  120. package/json-schema/DriverType.json +27 -0
  121. package/json-schema/EmailAlertAction.json +37 -0
  122. package/json-schema/Feature.json +51 -0
  123. package/json-schema/Field.json +219 -0
  124. package/json-schema/FieldMapping.json +83 -0
  125. package/json-schema/FieldNode.json +32 -0
  126. package/json-schema/FieldPermission.json +22 -0
  127. package/json-schema/FieldType.json +36 -0
  128. package/json-schema/FieldUpdateAction.json +32 -0
  129. package/json-schema/FilterNode.json +52 -0
  130. package/json-schema/FilterOperator.json +26 -0
  131. package/json-schema/Flow.json +186 -0
  132. package/json-schema/FlowEdge.json +37 -0
  133. package/json-schema/FlowNode.json +65 -0
  134. package/json-schema/FlowNodeAction.json +24 -0
  135. package/json-schema/FlowVariable.json +34 -0
  136. package/json-schema/FormSection.json +42 -0
  137. package/json-schema/FormView.json +99 -0
  138. package/json-schema/FormatValidation.json +59 -0
  139. package/json-schema/GanttConfig.json +32 -0
  140. package/json-schema/GroupNavItem.json +42 -0
  141. package/json-schema/HttpMethod.json +16 -0
  142. package/json-schema/Index.json +30 -0
  143. package/json-schema/KanbanConfig.json +31 -0
  144. package/json-schema/LDAPConfig.json +39 -0
  145. package/json-schema/License.json +57 -0
  146. package/json-schema/ListView.json +153 -0
  147. package/json-schema/Locale.json +10 -0
  148. package/json-schema/LogicOperator.json +14 -0
  149. package/json-schema/Manifest.json +90 -0
  150. package/json-schema/Mapping.json +270 -0
  151. package/json-schema/MenuItem.json +28 -0
  152. package/json-schema/MetricType.json +14 -0
  153. package/json-schema/NavigationItem.json +214 -0
  154. package/json-schema/NetworkPolicy.json +31 -0
  155. package/json-schema/OIDCConfig.json +46 -0
  156. package/json-schema/OWDModel.json +14 -0
  157. package/json-schema/Object.json +331 -0
  158. package/json-schema/ObjectCapabilities.json +36 -0
  159. package/json-schema/ObjectNavItem.json +46 -0
  160. package/json-schema/ObjectPermission.json +42 -0
  161. package/json-schema/Page.json +117 -0
  162. package/json-schema/PageComponent.json +36 -0
  163. package/json-schema/PageNavItem.json +47 -0
  164. package/json-schema/PageRegion.json +63 -0
  165. package/json-schema/PasswordPolicy.json +41 -0
  166. package/json-schema/PermissionSet.json +96 -0
  167. package/json-schema/Plan.json +53 -0
  168. package/json-schema/Policy.json +138 -0
  169. package/json-schema/Query.json +128 -0
  170. package/json-schema/RateLimit.json +26 -0
  171. package/json-schema/Report.json +219 -0
  172. package/json-schema/ReportChart.json +45 -0
  173. package/json-schema/ReportColumn.json +35 -0
  174. package/json-schema/ReportGrouping.json +38 -0
  175. package/json-schema/ReportType.json +15 -0
  176. package/json-schema/Role.json +32 -0
  177. package/json-schema/SAMLConfig.json +44 -0
  178. package/json-schema/ScriptValidation.json +48 -0
  179. package/json-schema/SelectOption.json +32 -0
  180. package/json-schema/SessionPolicy.json +27 -0
  181. package/json-schema/SharingLevel.json +13 -0
  182. package/json-schema/SharingRule.json +58 -0
  183. package/json-schema/SharingRuleType.json +15 -0
  184. package/json-schema/SortNode.json +26 -0
  185. package/json-schema/StateMachineValidation.json +59 -0
  186. package/json-schema/Territory.json +77 -0
  187. package/json-schema/TerritoryModel.json +34 -0
  188. package/json-schema/TerritoryType.json +15 -0
  189. package/json-schema/TransformType.json +18 -0
  190. package/json-schema/TranslationBundle.json +78 -0
  191. package/json-schema/TranslationData.json +75 -0
  192. package/json-schema/UniquenessValidation.json +59 -0
  193. package/json-schema/UrlNavItem.json +51 -0
  194. package/json-schema/ValidationRule.json +211 -0
  195. package/json-schema/View.json +500 -0
  196. package/json-schema/Webhook.json +88 -0
  197. package/json-schema/WebhookReceiver.json +66 -0
  198. package/json-schema/WebhookTriggerType.json +16 -0
  199. package/json-schema/WorkflowAction.json +84 -0
  200. package/json-schema/WorkflowRule.json +128 -0
  201. package/json-schema/WorkflowTriggerType.json +16 -0
  202. package/package.json +28 -19
  203. package/dist/examples.d.ts +0 -28
  204. package/dist/examples.d.ts.map +0 -1
  205. package/dist/examples.js +0 -250
  206. package/dist/types/index.d.ts +0 -9
  207. package/dist/types/index.d.ts.map +0 -1
  208. package/dist/types/index.js +0 -8
  209. package/dist/types/meta/field-type.d.ts +0 -54
  210. package/dist/types/meta/field-type.d.ts.map +0 -1
  211. package/dist/types/meta/field-type.js +0 -42
  212. package/dist/types/meta/index.d.ts +0 -13
  213. package/dist/types/meta/index.d.ts.map +0 -1
  214. package/dist/types/meta/index.js +0 -12
  215. package/dist/types/meta/object-entity.d.ts +0 -246
  216. package/dist/types/meta/object-entity.d.ts.map +0 -1
  217. package/dist/types/meta/object-entity.js +0 -9
  218. package/dist/types/meta/object-field.d.ts +0 -199
  219. package/dist/types/meta/object-field.d.ts.map +0 -1
  220. package/dist/types/meta/object-field.js +0 -9
  221. package/dist/types/meta/object-view.d.ts +0 -430
  222. package/dist/types/meta/object-view.d.ts.map +0 -1
  223. package/dist/types/meta/object-view.js +0 -9
  224. package/src/examples.ts +0 -257
  225. package/src/index.ts +0 -10
  226. package/src/types/index.ts +0 -9
  227. package/src/types/meta/field-type.ts +0 -91
  228. package/src/types/meta/index.ts +0 -13
  229. package/src/types/meta/object-entity.ts +0 -265
  230. package/src/types/meta/object-field.ts +0 -218
  231. package/src/types/meta/object-view.ts +0 -475
@@ -0,0 +1,257 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Transformation Logic
4
+ * Built-in helpers for converting data during import.
5
+ */
6
+ export declare const TransformType: z.ZodEnum<["none", "constant", "lookup", "split", "join", "javascript", "map"]>;
7
+ /**
8
+ * Field Mapping Item
9
+ */
10
+ export declare const FieldMappingSchema: z.ZodObject<{
11
+ /** Source Column */
12
+ source: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
13
+ /** Target Field */
14
+ target: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
15
+ /** Transformation */
16
+ transform: z.ZodDefault<z.ZodEnum<["none", "constant", "lookup", "split", "join", "javascript", "map"]>>;
17
+ /** Configuration for transform */
18
+ params: z.ZodOptional<z.ZodObject<{
19
+ value: z.ZodOptional<z.ZodAny>;
20
+ object: z.ZodOptional<z.ZodString>;
21
+ fromField: z.ZodOptional<z.ZodString>;
22
+ toField: z.ZodOptional<z.ZodString>;
23
+ autoCreate: z.ZodOptional<z.ZodBoolean>;
24
+ valueMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
25
+ separator: z.ZodOptional<z.ZodString>;
26
+ }, "strip", z.ZodTypeAny, {
27
+ object?: string | undefined;
28
+ value?: any;
29
+ fromField?: string | undefined;
30
+ toField?: string | undefined;
31
+ autoCreate?: boolean | undefined;
32
+ valueMap?: Record<string, any> | undefined;
33
+ separator?: string | undefined;
34
+ }, {
35
+ object?: string | undefined;
36
+ value?: any;
37
+ fromField?: string | undefined;
38
+ toField?: string | undefined;
39
+ autoCreate?: boolean | undefined;
40
+ valueMap?: Record<string, any> | undefined;
41
+ separator?: string | undefined;
42
+ }>>;
43
+ }, "strip", z.ZodTypeAny, {
44
+ source: string | string[];
45
+ target: string | string[];
46
+ transform: "lookup" | "join" | "map" | "none" | "constant" | "split" | "javascript";
47
+ params?: {
48
+ object?: string | undefined;
49
+ value?: any;
50
+ fromField?: string | undefined;
51
+ toField?: string | undefined;
52
+ autoCreate?: boolean | undefined;
53
+ valueMap?: Record<string, any> | undefined;
54
+ separator?: string | undefined;
55
+ } | undefined;
56
+ }, {
57
+ source: string | string[];
58
+ target: string | string[];
59
+ params?: {
60
+ object?: string | undefined;
61
+ value?: any;
62
+ fromField?: string | undefined;
63
+ toField?: string | undefined;
64
+ autoCreate?: boolean | undefined;
65
+ valueMap?: Record<string, any> | undefined;
66
+ separator?: string | undefined;
67
+ } | undefined;
68
+ transform?: "lookup" | "join" | "map" | "none" | "constant" | "split" | "javascript" | undefined;
69
+ }>;
70
+ /**
71
+ * ETL Mapping Schema
72
+ * Definition for importing/exporting data defined in `integration-etl.mdx`.
73
+ */
74
+ export declare const MappingSchema: z.ZodObject<{
75
+ /** Identity */
76
+ name: z.ZodString;
77
+ label: z.ZodOptional<z.ZodString>;
78
+ /** Scope */
79
+ sourceFormat: z.ZodDefault<z.ZodEnum<["csv", "json", "xml", "sql"]>>;
80
+ targetObject: z.ZodString;
81
+ /** Column Mappings */
82
+ fieldMapping: z.ZodArray<z.ZodObject<{
83
+ /** Source Column */
84
+ source: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
85
+ /** Target Field */
86
+ target: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
87
+ /** Transformation */
88
+ transform: z.ZodDefault<z.ZodEnum<["none", "constant", "lookup", "split", "join", "javascript", "map"]>>;
89
+ /** Configuration for transform */
90
+ params: z.ZodOptional<z.ZodObject<{
91
+ value: z.ZodOptional<z.ZodAny>;
92
+ object: z.ZodOptional<z.ZodString>;
93
+ fromField: z.ZodOptional<z.ZodString>;
94
+ toField: z.ZodOptional<z.ZodString>;
95
+ autoCreate: z.ZodOptional<z.ZodBoolean>;
96
+ valueMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
97
+ separator: z.ZodOptional<z.ZodString>;
98
+ }, "strip", z.ZodTypeAny, {
99
+ object?: string | undefined;
100
+ value?: any;
101
+ fromField?: string | undefined;
102
+ toField?: string | undefined;
103
+ autoCreate?: boolean | undefined;
104
+ valueMap?: Record<string, any> | undefined;
105
+ separator?: string | undefined;
106
+ }, {
107
+ object?: string | undefined;
108
+ value?: any;
109
+ fromField?: string | undefined;
110
+ toField?: string | undefined;
111
+ autoCreate?: boolean | undefined;
112
+ valueMap?: Record<string, any> | undefined;
113
+ separator?: string | undefined;
114
+ }>>;
115
+ }, "strip", z.ZodTypeAny, {
116
+ source: string | string[];
117
+ target: string | string[];
118
+ transform: "lookup" | "join" | "map" | "none" | "constant" | "split" | "javascript";
119
+ params?: {
120
+ object?: string | undefined;
121
+ value?: any;
122
+ fromField?: string | undefined;
123
+ toField?: string | undefined;
124
+ autoCreate?: boolean | undefined;
125
+ valueMap?: Record<string, any> | undefined;
126
+ separator?: string | undefined;
127
+ } | undefined;
128
+ }, {
129
+ source: string | string[];
130
+ target: string | string[];
131
+ params?: {
132
+ object?: string | undefined;
133
+ value?: any;
134
+ fromField?: string | undefined;
135
+ toField?: string | undefined;
136
+ autoCreate?: boolean | undefined;
137
+ valueMap?: Record<string, any> | undefined;
138
+ separator?: string | undefined;
139
+ } | undefined;
140
+ transform?: "lookup" | "join" | "map" | "none" | "constant" | "split" | "javascript" | undefined;
141
+ }>, "many">;
142
+ /** Upsert Logic */
143
+ mode: z.ZodDefault<z.ZodEnum<["insert", "update", "upsert"]>>;
144
+ upsertKey: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
145
+ /** Extract Logic (For Export) */
146
+ extractQuery: z.ZodOptional<z.ZodObject<{
147
+ object: z.ZodString;
148
+ fields: z.ZodOptional<z.ZodArray<z.ZodType<any, z.ZodTypeDef, any>, "many">>;
149
+ filters: z.ZodOptional<z.ZodType<any, z.ZodTypeDef, any>>;
150
+ sort: z.ZodOptional<z.ZodArray<z.ZodObject<{
151
+ field: z.ZodString;
152
+ order: z.ZodDefault<z.ZodEnum<["asc", "desc"]>>;
153
+ }, "strip", z.ZodTypeAny, {
154
+ field: string;
155
+ order: "asc" | "desc";
156
+ }, {
157
+ field: string;
158
+ order?: "asc" | "desc" | undefined;
159
+ }>, "many">>;
160
+ top: z.ZodOptional<z.ZodNumber>;
161
+ skip: z.ZodOptional<z.ZodNumber>;
162
+ }, "strip", z.ZodTypeAny, {
163
+ object: string;
164
+ sort?: {
165
+ field: string;
166
+ order: "asc" | "desc";
167
+ }[] | undefined;
168
+ fields?: any[] | undefined;
169
+ filters?: any;
170
+ top?: number | undefined;
171
+ skip?: number | undefined;
172
+ }, {
173
+ object: string;
174
+ sort?: {
175
+ field: string;
176
+ order?: "asc" | "desc" | undefined;
177
+ }[] | undefined;
178
+ fields?: any[] | undefined;
179
+ filters?: any;
180
+ top?: number | undefined;
181
+ skip?: number | undefined;
182
+ }>>;
183
+ /** Error Handling */
184
+ errorPolicy: z.ZodDefault<z.ZodEnum<["skip", "abort", "retry"]>>;
185
+ batchSize: z.ZodDefault<z.ZodNumber>;
186
+ }, "strip", z.ZodTypeAny, {
187
+ name: string;
188
+ mode: "insert" | "update" | "upsert";
189
+ sourceFormat: "json" | "csv" | "xml" | "sql";
190
+ targetObject: string;
191
+ fieldMapping: {
192
+ source: string | string[];
193
+ target: string | string[];
194
+ transform: "lookup" | "join" | "map" | "none" | "constant" | "split" | "javascript";
195
+ params?: {
196
+ object?: string | undefined;
197
+ value?: any;
198
+ fromField?: string | undefined;
199
+ toField?: string | undefined;
200
+ autoCreate?: boolean | undefined;
201
+ valueMap?: Record<string, any> | undefined;
202
+ separator?: string | undefined;
203
+ } | undefined;
204
+ }[];
205
+ errorPolicy: "skip" | "abort" | "retry";
206
+ batchSize: number;
207
+ label?: string | undefined;
208
+ upsertKey?: string[] | undefined;
209
+ extractQuery?: {
210
+ object: string;
211
+ sort?: {
212
+ field: string;
213
+ order: "asc" | "desc";
214
+ }[] | undefined;
215
+ fields?: any[] | undefined;
216
+ filters?: any;
217
+ top?: number | undefined;
218
+ skip?: number | undefined;
219
+ } | undefined;
220
+ }, {
221
+ name: string;
222
+ targetObject: string;
223
+ fieldMapping: {
224
+ source: string | string[];
225
+ target: string | string[];
226
+ params?: {
227
+ object?: string | undefined;
228
+ value?: any;
229
+ fromField?: string | undefined;
230
+ toField?: string | undefined;
231
+ autoCreate?: boolean | undefined;
232
+ valueMap?: Record<string, any> | undefined;
233
+ separator?: string | undefined;
234
+ } | undefined;
235
+ transform?: "lookup" | "join" | "map" | "none" | "constant" | "split" | "javascript" | undefined;
236
+ }[];
237
+ label?: string | undefined;
238
+ mode?: "insert" | "update" | "upsert" | undefined;
239
+ sourceFormat?: "json" | "csv" | "xml" | "sql" | undefined;
240
+ upsertKey?: string[] | undefined;
241
+ extractQuery?: {
242
+ object: string;
243
+ sort?: {
244
+ field: string;
245
+ order?: "asc" | "desc" | undefined;
246
+ }[] | undefined;
247
+ fields?: any[] | undefined;
248
+ filters?: any;
249
+ top?: number | undefined;
250
+ skip?: number | undefined;
251
+ } | undefined;
252
+ errorPolicy?: "skip" | "abort" | "retry" | undefined;
253
+ batchSize?: number | undefined;
254
+ }>;
255
+ export type Mapping = z.infer<typeof MappingSchema>;
256
+ export type FieldMapping = z.infer<typeof FieldMappingSchema>;
257
+ //# sourceMappingURL=mapping.zod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapping.zod.d.ts","sourceRoot":"","sources":["../../src/data/mapping.zod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;GAGG;AACH,eAAO,MAAM,aAAa,iFAQxB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;IAC7B,oBAAoB;;IAGpB,mBAAmB;;IAGnB,qBAAqB;;IAGrB,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBlC,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,aAAa;IACxB,eAAe;;;IAIf,YAAY;;;IAIZ,sBAAsB;;QAzCtB,oBAAoB;;QAGpB,mBAAmB;;QAGnB,qBAAqB;;QAGrB,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmClC,mBAAmB;;;IAInB,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGjC,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGrB,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MappingSchema = exports.FieldMappingSchema = exports.TransformType = void 0;
4
+ const zod_1 = require("zod");
5
+ const query_zod_1 = require("./query.zod");
6
+ /**
7
+ * Transformation Logic
8
+ * Built-in helpers for converting data during import.
9
+ */
10
+ exports.TransformType = zod_1.z.enum([
11
+ 'none', // Direct copy
12
+ 'constant', // Use a hardcoded value
13
+ 'lookup', // Resolve FK (Name -> ID)
14
+ 'split', // "John Doe" -> ["John", "Doe"]
15
+ 'join', // ["John", "Doe"] -> "John Doe"
16
+ 'javascript', // Custom script (Review security!)
17
+ 'map' // Value mapping (e.g. "Active" -> "active")
18
+ ]);
19
+ /**
20
+ * Field Mapping Item
21
+ */
22
+ exports.FieldMappingSchema = zod_1.z.object({
23
+ /** Source Column */
24
+ source: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).describe('Source column header(s)'),
25
+ /** Target Field */
26
+ target: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).describe('Target object field(s)'),
27
+ /** Transformation */
28
+ transform: exports.TransformType.default('none'),
29
+ /** Configuration for transform */
30
+ params: zod_1.z.object({
31
+ // Constant
32
+ value: zod_1.z.any().optional(),
33
+ // Lookup
34
+ object: zod_1.z.string().optional(), // Lookup Object
35
+ fromField: zod_1.z.string().optional(), // Match on (e.g. "name")
36
+ toField: zod_1.z.string().optional(), // Value to take (e.g. "_id")
37
+ autoCreate: zod_1.z.boolean().optional(), // Create if missing
38
+ // Map
39
+ valueMap: zod_1.z.record(zod_1.z.any()).optional(), // { "Open": "draft" }
40
+ // Split/Join
41
+ separator: zod_1.z.string().optional()
42
+ }).optional()
43
+ });
44
+ /**
45
+ * ETL Mapping Schema
46
+ * Definition for importing/exporting data defined in `integration-etl.mdx`.
47
+ */
48
+ exports.MappingSchema = zod_1.z.object({
49
+ /** Identity */
50
+ name: zod_1.z.string().regex(/^[a-z_][a-z0-9_]*$/),
51
+ label: zod_1.z.string().optional(),
52
+ /** Scope */
53
+ sourceFormat: zod_1.z.enum(['csv', 'json', 'xml', 'sql']).default('csv'),
54
+ targetObject: zod_1.z.string().describe('Target Object Name'),
55
+ /** Column Mappings */
56
+ fieldMapping: zod_1.z.array(exports.FieldMappingSchema),
57
+ /** Upsert Logic */
58
+ mode: zod_1.z.enum(['insert', 'update', 'upsert']).default('insert'),
59
+ upsertKey: zod_1.z.array(zod_1.z.string()).optional().describe('Fields to match for upsert (e.g. email)'),
60
+ /** Extract Logic (For Export) */
61
+ extractQuery: query_zod_1.QuerySchema.optional().describe('Query to run for export only'),
62
+ /** Error Handling */
63
+ errorPolicy: zod_1.z.enum(['skip', 'abort', 'retry']).default('skip'),
64
+ batchSize: zod_1.z.number().default(1000)
65
+ });
@@ -0,0 +1,364 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Capability Flags
4
+ * Defines what system features are enabled for this object.
5
+ */
6
+ export declare const ObjectCapabilities: z.ZodObject<{
7
+ /** Enable history tracking (Audit Trail) */
8
+ trackHistory: z.ZodDefault<z.ZodBoolean>;
9
+ /** Enable global search indexing */
10
+ searchable: z.ZodDefault<z.ZodBoolean>;
11
+ /** Enable REST/GraphQL API access */
12
+ apiEnabled: z.ZodDefault<z.ZodBoolean>;
13
+ /** Enable attachments/files */
14
+ files: z.ZodDefault<z.ZodBoolean>;
15
+ /** Enable discussions/chatter */
16
+ feedEnabled: z.ZodDefault<z.ZodBoolean>;
17
+ /** Enable Recycle Bin mechanics */
18
+ trash: z.ZodDefault<z.ZodBoolean>;
19
+ }, "strip", z.ZodTypeAny, {
20
+ trackHistory: boolean;
21
+ searchable: boolean;
22
+ apiEnabled: boolean;
23
+ files: boolean;
24
+ feedEnabled: boolean;
25
+ trash: boolean;
26
+ }, {
27
+ trackHistory?: boolean | undefined;
28
+ searchable?: boolean | undefined;
29
+ apiEnabled?: boolean | undefined;
30
+ files?: boolean | undefined;
31
+ feedEnabled?: boolean | undefined;
32
+ trash?: boolean | undefined;
33
+ }>;
34
+ /**
35
+ * Schema for database indexes.
36
+ */
37
+ export declare const IndexSchema: z.ZodObject<{
38
+ name: z.ZodOptional<z.ZodString>;
39
+ fields: z.ZodArray<z.ZodString, "many">;
40
+ unique: z.ZodOptional<z.ZodBoolean>;
41
+ }, "strip", z.ZodTypeAny, {
42
+ fields: string[];
43
+ name?: string | undefined;
44
+ unique?: boolean | undefined;
45
+ }, {
46
+ fields: string[];
47
+ name?: string | undefined;
48
+ unique?: boolean | undefined;
49
+ }>;
50
+ /**
51
+ * Object Schema - Enterprise Data Model
52
+ */
53
+ export declare const ObjectSchema: z.ZodObject<{
54
+ /** Identify */
55
+ name: z.ZodString;
56
+ label: z.ZodOptional<z.ZodString>;
57
+ pluralLabel: z.ZodOptional<z.ZodString>;
58
+ description: z.ZodOptional<z.ZodString>;
59
+ icon: z.ZodOptional<z.ZodString>;
60
+ /** Storage Config */
61
+ datasource: z.ZodDefault<z.ZodString>;
62
+ tableName: z.ZodOptional<z.ZodString>;
63
+ isSystem: z.ZodDefault<z.ZodBoolean>;
64
+ /** Fields Definition */
65
+ fields: z.ZodRecord<z.ZodString, z.ZodObject<{
66
+ name: z.ZodString;
67
+ label: z.ZodString;
68
+ type: z.ZodEnum<["text", "textarea", "email", "url", "phone", "password", "markdown", "html", "number", "currency", "percent", "date", "datetime", "time", "boolean", "select", "multiselect", "lookup", "master_detail", "image", "file", "avatar", "formula", "summary", "autonumber"]>;
69
+ description: z.ZodOptional<z.ZodString>;
70
+ required: z.ZodDefault<z.ZodBoolean>;
71
+ multiple: z.ZodDefault<z.ZodBoolean>;
72
+ unique: z.ZodDefault<z.ZodBoolean>;
73
+ defaultValue: z.ZodOptional<z.ZodAny>;
74
+ maxLength: z.ZodOptional<z.ZodNumber>;
75
+ minLength: z.ZodOptional<z.ZodNumber>;
76
+ precision: z.ZodOptional<z.ZodNumber>;
77
+ scale: z.ZodOptional<z.ZodNumber>;
78
+ min: z.ZodOptional<z.ZodNumber>;
79
+ max: z.ZodOptional<z.ZodNumber>;
80
+ options: z.ZodOptional<z.ZodArray<z.ZodObject<{
81
+ label: z.ZodString;
82
+ value: z.ZodString;
83
+ color: z.ZodOptional<z.ZodString>;
84
+ default: z.ZodOptional<z.ZodBoolean>;
85
+ }, "strip", z.ZodTypeAny, {
86
+ value: string;
87
+ label: string;
88
+ color?: string | undefined;
89
+ default?: boolean | undefined;
90
+ }, {
91
+ value: string;
92
+ label: string;
93
+ color?: string | undefined;
94
+ default?: boolean | undefined;
95
+ }>, "many">>;
96
+ reference: z.ZodOptional<z.ZodString>;
97
+ referenceFilters: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
98
+ writeRequiresMasterRead: z.ZodOptional<z.ZodBoolean>;
99
+ deleteBehavior: z.ZodDefault<z.ZodOptional<z.ZodEnum<["set_null", "cascade", "restrict"]>>>;
100
+ expression: z.ZodOptional<z.ZodString>;
101
+ formula: z.ZodOptional<z.ZodString>;
102
+ summaryOperations: z.ZodOptional<z.ZodObject<{
103
+ object: z.ZodString;
104
+ field: z.ZodString;
105
+ function: z.ZodEnum<["count", "sum", "min", "max", "avg"]>;
106
+ }, "strip", z.ZodTypeAny, {
107
+ object: string;
108
+ function: "min" | "max" | "count" | "sum" | "avg";
109
+ field: string;
110
+ }, {
111
+ object: string;
112
+ function: "min" | "max" | "count" | "sum" | "avg";
113
+ field: string;
114
+ }>>;
115
+ hidden: z.ZodDefault<z.ZodBoolean>;
116
+ readonly: z.ZodDefault<z.ZodBoolean>;
117
+ encryption: z.ZodDefault<z.ZodBoolean>;
118
+ index: z.ZodDefault<z.ZodBoolean>;
119
+ externalId: z.ZodDefault<z.ZodBoolean>;
120
+ }, "strip", z.ZodTypeAny, {
121
+ type: "number" | "boolean" | "text" | "textarea" | "email" | "url" | "phone" | "password" | "markdown" | "html" | "currency" | "percent" | "date" | "datetime" | "time" | "select" | "multiselect" | "lookup" | "master_detail" | "image" | "file" | "avatar" | "formula" | "summary" | "autonumber";
122
+ label: string;
123
+ name: string;
124
+ required: boolean;
125
+ multiple: boolean;
126
+ unique: boolean;
127
+ deleteBehavior: "set_null" | "cascade" | "restrict";
128
+ hidden: boolean;
129
+ readonly: boolean;
130
+ encryption: boolean;
131
+ index: boolean;
132
+ externalId: boolean;
133
+ formula?: string | undefined;
134
+ options?: {
135
+ value: string;
136
+ label: string;
137
+ color?: string | undefined;
138
+ default?: boolean | undefined;
139
+ }[] | undefined;
140
+ description?: string | undefined;
141
+ defaultValue?: any;
142
+ maxLength?: number | undefined;
143
+ minLength?: number | undefined;
144
+ precision?: number | undefined;
145
+ scale?: number | undefined;
146
+ min?: number | undefined;
147
+ max?: number | undefined;
148
+ reference?: string | undefined;
149
+ referenceFilters?: string[] | undefined;
150
+ writeRequiresMasterRead?: boolean | undefined;
151
+ expression?: string | undefined;
152
+ summaryOperations?: {
153
+ object: string;
154
+ function: "min" | "max" | "count" | "sum" | "avg";
155
+ field: string;
156
+ } | undefined;
157
+ }, {
158
+ type: "number" | "boolean" | "text" | "textarea" | "email" | "url" | "phone" | "password" | "markdown" | "html" | "currency" | "percent" | "date" | "datetime" | "time" | "select" | "multiselect" | "lookup" | "master_detail" | "image" | "file" | "avatar" | "formula" | "summary" | "autonumber";
159
+ label: string;
160
+ name: string;
161
+ formula?: string | undefined;
162
+ options?: {
163
+ value: string;
164
+ label: string;
165
+ color?: string | undefined;
166
+ default?: boolean | undefined;
167
+ }[] | undefined;
168
+ description?: string | undefined;
169
+ required?: boolean | undefined;
170
+ multiple?: boolean | undefined;
171
+ unique?: boolean | undefined;
172
+ defaultValue?: any;
173
+ maxLength?: number | undefined;
174
+ minLength?: number | undefined;
175
+ precision?: number | undefined;
176
+ scale?: number | undefined;
177
+ min?: number | undefined;
178
+ max?: number | undefined;
179
+ reference?: string | undefined;
180
+ referenceFilters?: string[] | undefined;
181
+ writeRequiresMasterRead?: boolean | undefined;
182
+ deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
183
+ expression?: string | undefined;
184
+ summaryOperations?: {
185
+ object: string;
186
+ function: "min" | "max" | "count" | "sum" | "avg";
187
+ field: string;
188
+ } | undefined;
189
+ hidden?: boolean | undefined;
190
+ readonly?: boolean | undefined;
191
+ encryption?: boolean | undefined;
192
+ index?: boolean | undefined;
193
+ externalId?: boolean | undefined;
194
+ }>>;
195
+ /** Indexes */
196
+ indexes: z.ZodOptional<z.ZodArray<z.ZodObject<{
197
+ name: z.ZodOptional<z.ZodString>;
198
+ fields: z.ZodArray<z.ZodString, "many">;
199
+ unique: z.ZodOptional<z.ZodBoolean>;
200
+ }, "strip", z.ZodTypeAny, {
201
+ fields: string[];
202
+ name?: string | undefined;
203
+ unique?: boolean | undefined;
204
+ }, {
205
+ fields: string[];
206
+ name?: string | undefined;
207
+ unique?: boolean | undefined;
208
+ }>, "many">>;
209
+ /** Key Fields */
210
+ nameField: z.ZodOptional<z.ZodString>;
211
+ /** Features & Capabilities */
212
+ enable: z.ZodOptional<z.ZodObject<{
213
+ /** Enable history tracking (Audit Trail) */
214
+ trackHistory: z.ZodDefault<z.ZodBoolean>;
215
+ /** Enable global search indexing */
216
+ searchable: z.ZodDefault<z.ZodBoolean>;
217
+ /** Enable REST/GraphQL API access */
218
+ apiEnabled: z.ZodDefault<z.ZodBoolean>;
219
+ /** Enable attachments/files */
220
+ files: z.ZodDefault<z.ZodBoolean>;
221
+ /** Enable discussions/chatter */
222
+ feedEnabled: z.ZodDefault<z.ZodBoolean>;
223
+ /** Enable Recycle Bin mechanics */
224
+ trash: z.ZodDefault<z.ZodBoolean>;
225
+ }, "strip", z.ZodTypeAny, {
226
+ trackHistory: boolean;
227
+ searchable: boolean;
228
+ apiEnabled: boolean;
229
+ files: boolean;
230
+ feedEnabled: boolean;
231
+ trash: boolean;
232
+ }, {
233
+ trackHistory?: boolean | undefined;
234
+ searchable?: boolean | undefined;
235
+ apiEnabled?: boolean | undefined;
236
+ files?: boolean | undefined;
237
+ feedEnabled?: boolean | undefined;
238
+ trash?: boolean | undefined;
239
+ }>>;
240
+ }, "strip", z.ZodTypeAny, {
241
+ name: string;
242
+ fields: Record<string, {
243
+ type: "number" | "boolean" | "text" | "textarea" | "email" | "url" | "phone" | "password" | "markdown" | "html" | "currency" | "percent" | "date" | "datetime" | "time" | "select" | "multiselect" | "lookup" | "master_detail" | "image" | "file" | "avatar" | "formula" | "summary" | "autonumber";
244
+ label: string;
245
+ name: string;
246
+ required: boolean;
247
+ multiple: boolean;
248
+ unique: boolean;
249
+ deleteBehavior: "set_null" | "cascade" | "restrict";
250
+ hidden: boolean;
251
+ readonly: boolean;
252
+ encryption: boolean;
253
+ index: boolean;
254
+ externalId: boolean;
255
+ formula?: string | undefined;
256
+ options?: {
257
+ value: string;
258
+ label: string;
259
+ color?: string | undefined;
260
+ default?: boolean | undefined;
261
+ }[] | undefined;
262
+ description?: string | undefined;
263
+ defaultValue?: any;
264
+ maxLength?: number | undefined;
265
+ minLength?: number | undefined;
266
+ precision?: number | undefined;
267
+ scale?: number | undefined;
268
+ min?: number | undefined;
269
+ max?: number | undefined;
270
+ reference?: string | undefined;
271
+ referenceFilters?: string[] | undefined;
272
+ writeRequiresMasterRead?: boolean | undefined;
273
+ expression?: string | undefined;
274
+ summaryOperations?: {
275
+ object: string;
276
+ function: "min" | "max" | "count" | "sum" | "avg";
277
+ field: string;
278
+ } | undefined;
279
+ }>;
280
+ datasource: string;
281
+ isSystem: boolean;
282
+ label?: string | undefined;
283
+ description?: string | undefined;
284
+ pluralLabel?: string | undefined;
285
+ icon?: string | undefined;
286
+ tableName?: string | undefined;
287
+ indexes?: {
288
+ fields: string[];
289
+ name?: string | undefined;
290
+ unique?: boolean | undefined;
291
+ }[] | undefined;
292
+ nameField?: string | undefined;
293
+ enable?: {
294
+ trackHistory: boolean;
295
+ searchable: boolean;
296
+ apiEnabled: boolean;
297
+ files: boolean;
298
+ feedEnabled: boolean;
299
+ trash: boolean;
300
+ } | undefined;
301
+ }, {
302
+ name: string;
303
+ fields: Record<string, {
304
+ type: "number" | "boolean" | "text" | "textarea" | "email" | "url" | "phone" | "password" | "markdown" | "html" | "currency" | "percent" | "date" | "datetime" | "time" | "select" | "multiselect" | "lookup" | "master_detail" | "image" | "file" | "avatar" | "formula" | "summary" | "autonumber";
305
+ label: string;
306
+ name: string;
307
+ formula?: string | undefined;
308
+ options?: {
309
+ value: string;
310
+ label: string;
311
+ color?: string | undefined;
312
+ default?: boolean | undefined;
313
+ }[] | undefined;
314
+ description?: string | undefined;
315
+ required?: boolean | undefined;
316
+ multiple?: boolean | undefined;
317
+ unique?: boolean | undefined;
318
+ defaultValue?: any;
319
+ maxLength?: number | undefined;
320
+ minLength?: number | undefined;
321
+ precision?: number | undefined;
322
+ scale?: number | undefined;
323
+ min?: number | undefined;
324
+ max?: number | undefined;
325
+ reference?: string | undefined;
326
+ referenceFilters?: string[] | undefined;
327
+ writeRequiresMasterRead?: boolean | undefined;
328
+ deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
329
+ expression?: string | undefined;
330
+ summaryOperations?: {
331
+ object: string;
332
+ function: "min" | "max" | "count" | "sum" | "avg";
333
+ field: string;
334
+ } | undefined;
335
+ hidden?: boolean | undefined;
336
+ readonly?: boolean | undefined;
337
+ encryption?: boolean | undefined;
338
+ index?: boolean | undefined;
339
+ externalId?: boolean | undefined;
340
+ }>;
341
+ label?: string | undefined;
342
+ description?: string | undefined;
343
+ pluralLabel?: string | undefined;
344
+ icon?: string | undefined;
345
+ datasource?: string | undefined;
346
+ tableName?: string | undefined;
347
+ isSystem?: boolean | undefined;
348
+ indexes?: {
349
+ fields: string[];
350
+ name?: string | undefined;
351
+ unique?: boolean | undefined;
352
+ }[] | undefined;
353
+ nameField?: string | undefined;
354
+ enable?: {
355
+ trackHistory?: boolean | undefined;
356
+ searchable?: boolean | undefined;
357
+ apiEnabled?: boolean | undefined;
358
+ files?: boolean | undefined;
359
+ feedEnabled?: boolean | undefined;
360
+ trash?: boolean | undefined;
361
+ } | undefined;
362
+ }>;
363
+ export type ServiceObject = z.infer<typeof ObjectSchema>;
364
+ //# sourceMappingURL=object.zod.d.ts.map