@object-ui/types 0.5.0 → 3.0.0
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.
- package/README.md +1 -1
- package/dist/ai.d.ts +376 -0
- package/dist/ai.d.ts.map +1 -0
- package/dist/ai.js +8 -0
- package/dist/app.d.ts +2 -2
- package/dist/complex.d.ts +2 -0
- package/dist/complex.d.ts.map +1 -1
- package/dist/crud.d.ts +3 -0
- package/dist/crud.d.ts.map +1 -1
- package/dist/data-display.d.ts +40 -0
- package/dist/data-display.d.ts.map +1 -1
- package/dist/data-protocol.d.ts +19 -19
- package/dist/data.d.ts +77 -0
- package/dist/data.d.ts.map +1 -1
- package/dist/designer.d.ts +473 -0
- package/dist/designer.d.ts.map +1 -0
- package/dist/designer.js +8 -0
- package/dist/form.d.ts +35 -1
- package/dist/form.d.ts.map +1 -1
- package/dist/index.d.ts +46 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -0
- package/dist/layout.d.ts +63 -8
- package/dist/layout.d.ts.map +1 -1
- package/dist/mobile.d.ts +186 -0
- package/dist/mobile.d.ts.map +1 -0
- package/dist/mobile.js +8 -0
- package/dist/objectql.d.ts +341 -88
- package/dist/objectql.d.ts.map +1 -1
- package/dist/permissions.d.ts +150 -0
- package/dist/permissions.d.ts.map +1 -0
- package/dist/permissions.js +8 -0
- package/dist/tenant.d.ts +138 -0
- package/dist/tenant.d.ts.map +1 -0
- package/dist/tenant.js +8 -0
- package/dist/theme.d.ts +115 -224
- package/dist/theme.d.ts.map +1 -1
- package/dist/ui-action.d.ts +126 -11
- package/dist/ui-action.d.ts.map +1 -1
- package/dist/views.d.ts +20 -0
- package/dist/views.d.ts.map +1 -1
- package/dist/widget.d.ts +181 -0
- package/dist/widget.d.ts.map +1 -0
- package/dist/widget.js +8 -0
- package/dist/workflow.d.ts +340 -0
- package/dist/workflow.d.ts.map +1 -0
- package/dist/workflow.js +8 -0
- package/dist/zod/blocks.zod.d.ts +2 -2
- package/dist/zod/blocks.zod.d.ts.map +1 -1
- package/dist/zod/blocks.zod.js +1 -1
- package/dist/zod/complex.zod.d.ts +6 -6
- package/dist/zod/complex.zod.d.ts.map +1 -1
- package/dist/zod/complex.zod.js +1 -1
- package/dist/zod/crud.zod.d.ts +5 -5
- package/dist/zod/data-display.zod.d.ts +2 -2
- package/dist/zod/data-display.zod.d.ts.map +1 -1
- package/dist/zod/data-display.zod.js +1 -1
- package/dist/zod/disclosure.zod.d.ts +2 -2
- package/dist/zod/disclosure.zod.d.ts.map +1 -1
- package/dist/zod/disclosure.zod.js +1 -1
- package/dist/zod/feedback.zod.d.ts +12 -12
- package/dist/zod/feedback.zod.d.ts.map +1 -1
- package/dist/zod/feedback.zod.js +1 -1
- package/dist/zod/form.zod.d.ts +6 -6
- package/dist/zod/form.zod.d.ts.map +1 -1
- package/dist/zod/form.zod.js +1 -1
- package/dist/zod/index.zod.d.ts +337 -146
- package/dist/zod/index.zod.d.ts.map +1 -1
- package/dist/zod/index.zod.js +4 -4
- package/dist/zod/layout.zod.d.ts +134 -2
- package/dist/zod/layout.zod.d.ts.map +1 -1
- package/dist/zod/layout.zod.js +35 -1
- package/dist/zod/navigation.zod.d.ts +2 -2
- package/dist/zod/navigation.zod.d.ts.map +1 -1
- package/dist/zod/navigation.zod.js +1 -1
- package/dist/zod/objectql.zod.d.ts +32 -16
- package/dist/zod/objectql.zod.d.ts.map +1 -1
- package/dist/zod/objectql.zod.js +8 -0
- package/dist/zod/overlay.zod.d.ts +2 -2
- package/dist/zod/overlay.zod.d.ts.map +1 -1
- package/dist/zod/overlay.zod.js +1 -1
- package/dist/zod/reports.zod.d.ts +19 -19
- package/dist/zod/reports.zod.d.ts.map +1 -1
- package/dist/zod/reports.zod.js +1 -1
- package/dist/zod/theme.zod.d.ts +948 -267
- package/dist/zod/theme.zod.d.ts.map +1 -1
- package/dist/zod/theme.zod.js +175 -45
- package/dist/zod/views.zod.d.ts +22 -22
- package/dist/zod/views.zod.d.ts.map +1 -1
- package/dist/zod/views.zod.js +1 -1
- package/package.json +3 -2
- package/src/__tests__/namespace-exports.test.ts +23 -68
- package/src/__tests__/phase2-schemas.test.ts +8 -13
- package/src/ai.ts +454 -0
- package/src/app.ts +2 -2
- package/src/complex.ts +2 -0
- package/src/crud.ts +3 -0
- package/src/data-display.ts +36 -0
- package/src/data-protocol.ts +19 -19
- package/src/data.ts +91 -0
- package/src/designer.ts +509 -0
- package/src/form.ts +35 -1
- package/src/index.ts +397 -8
- package/src/layout.ts +66 -8
- package/src/mobile.ts +205 -0
- package/src/objectql.ts +419 -93
- package/src/permissions.ts +166 -0
- package/src/tenant.ts +153 -0
- package/src/theme.ts +147 -260
- package/src/ui-action.ts +166 -27
- package/src/views.ts +17 -0
- package/src/widget.ts +197 -0
- package/src/workflow.ts +409 -0
- package/src/zod/blocks.zod.ts +1 -1
- package/src/zod/complex.zod.ts +1 -1
- package/src/zod/data-display.zod.ts +1 -1
- package/src/zod/disclosure.zod.ts +1 -1
- package/src/zod/feedback.zod.ts +1 -1
- package/src/zod/form.zod.ts +1 -1
- package/src/zod/index.zod.ts +14 -3
- package/src/zod/layout.zod.ts +39 -1
- package/src/zod/navigation.zod.ts +1 -1
- package/src/zod/objectql.zod.ts +8 -0
- package/src/zod/overlay.zod.ts +1 -1
- package/src/zod/reports.zod.ts +1 -1
- package/src/zod/theme.zod.ts +189 -48
- package/src/zod/views.zod.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.zod.d.ts","sourceRoot":"","sources":["../../src/zod/theme.zod.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB
|
|
1
|
+
{"version":3,"file":"theme.zod.d.ts","sourceRoot":"","sources":["../../src/zod/theme.zod.ts"],"names":[],"mappings":"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"}
|
package/dist/zod/theme.zod.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @object-ui/types/zod - Theme Schema Zod Validators
|
|
10
10
|
*
|
|
11
11
|
* Zod validation schemas for theme configuration.
|
|
12
|
-
*
|
|
12
|
+
* Aligned with @objectstack/spec UI specification.
|
|
13
13
|
*
|
|
14
14
|
* @module zod/theme
|
|
15
15
|
* @packageDocumentation
|
|
@@ -18,78 +18,198 @@ import { z } from 'zod';
|
|
|
18
18
|
import { BaseSchema } from './base.zod.js';
|
|
19
19
|
/**
|
|
20
20
|
* Color Palette Schema
|
|
21
|
+
* Mirrors @objectstack/spec/ui ColorPaletteSchema.
|
|
21
22
|
*/
|
|
22
23
|
export const ColorPaletteSchema = z.object({
|
|
23
|
-
primary: z.string().
|
|
24
|
+
primary: z.string().describe('Primary brand color'),
|
|
24
25
|
secondary: z.string().optional().describe('Secondary color'),
|
|
25
26
|
accent: z.string().optional().describe('Accent color'),
|
|
26
|
-
background: z.string().optional().describe('Background color'),
|
|
27
|
-
foreground: z.string().optional().describe('Foreground/text color'),
|
|
28
|
-
muted: z.string().optional().describe('Muted color'),
|
|
29
|
-
mutedForeground: z.string().optional().describe('Muted foreground color'),
|
|
30
|
-
border: z.string().optional().describe('Border color'),
|
|
31
|
-
input: z.string().optional().describe('Input border color'),
|
|
32
|
-
ring: z.string().optional().describe('Ring/focus color'),
|
|
33
27
|
success: z.string().optional().describe('Success color'),
|
|
34
28
|
warning: z.string().optional().describe('Warning color'),
|
|
35
|
-
|
|
36
|
-
info: z.string().optional().describe('
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
29
|
+
error: z.string().optional().describe('Error color'),
|
|
30
|
+
info: z.string().optional().describe('Informational color'),
|
|
31
|
+
background: z.string().optional().describe('Background color'),
|
|
32
|
+
surface: z.string().optional().describe('Surface/card background color'),
|
|
33
|
+
text: z.string().optional().describe('Primary text color'),
|
|
34
|
+
textSecondary: z.string().optional().describe('Secondary text color'),
|
|
35
|
+
border: z.string().optional().describe('Border color'),
|
|
36
|
+
disabled: z.string().optional().describe('Disabled state color'),
|
|
37
|
+
primaryLight: z.string().optional().describe('Lighter primary variant'),
|
|
38
|
+
primaryDark: z.string().optional().describe('Darker primary variant'),
|
|
39
|
+
secondaryLight: z.string().optional().describe('Lighter secondary variant'),
|
|
40
|
+
secondaryDark: z.string().optional().describe('Darker secondary variant'),
|
|
41
41
|
});
|
|
42
42
|
/**
|
|
43
43
|
* Typography Schema
|
|
44
|
+
* Mirrors @objectstack/spec/ui TypographySchema.
|
|
44
45
|
*/
|
|
45
46
|
export const TypographySchema = z.object({
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
47
|
+
fontFamily: z.object({
|
|
48
|
+
base: z.string().optional().describe('Base body font family'),
|
|
49
|
+
heading: z.string().optional().describe('Heading font family'),
|
|
50
|
+
mono: z.string().optional().describe('Monospace font family'),
|
|
51
|
+
}).optional().describe('Font family definitions'),
|
|
52
|
+
fontSize: z.object({
|
|
53
|
+
xs: z.string().optional(),
|
|
54
|
+
sm: z.string().optional(),
|
|
55
|
+
base: z.string().optional(),
|
|
56
|
+
lg: z.string().optional(),
|
|
57
|
+
xl: z.string().optional(),
|
|
58
|
+
'2xl': z.string().optional(),
|
|
59
|
+
'3xl': z.string().optional(),
|
|
60
|
+
'4xl': z.string().optional(),
|
|
61
|
+
}).optional().describe('Font size scale'),
|
|
62
|
+
fontWeight: z.object({
|
|
63
|
+
light: z.number().optional(),
|
|
64
|
+
normal: z.number().optional(),
|
|
65
|
+
medium: z.number().optional(),
|
|
66
|
+
semibold: z.number().optional(),
|
|
67
|
+
bold: z.number().optional(),
|
|
68
|
+
}).optional().describe('Font weight scale'),
|
|
69
|
+
lineHeight: z.object({
|
|
70
|
+
tight: z.string().optional(),
|
|
71
|
+
normal: z.string().optional(),
|
|
72
|
+
relaxed: z.string().optional(),
|
|
73
|
+
loose: z.string().optional(),
|
|
74
|
+
}).optional().describe('Line height scale'),
|
|
75
|
+
letterSpacing: z.object({
|
|
76
|
+
tighter: z.string().optional(),
|
|
77
|
+
tight: z.string().optional(),
|
|
78
|
+
normal: z.string().optional(),
|
|
79
|
+
wide: z.string().optional(),
|
|
80
|
+
wider: z.string().optional(),
|
|
81
|
+
}).optional().describe('Letter spacing scale'),
|
|
53
82
|
});
|
|
54
83
|
/**
|
|
55
84
|
* Spacing Scale Schema
|
|
85
|
+
* Mirrors @objectstack/spec/ui SpacingSchema.
|
|
56
86
|
*/
|
|
57
|
-
export const
|
|
58
|
-
|
|
59
|
-
|
|
87
|
+
export const SpacingSchema = z.object({
|
|
88
|
+
'0': z.string().optional(),
|
|
89
|
+
'1': z.string().optional(),
|
|
90
|
+
'2': z.string().optional(),
|
|
91
|
+
'3': z.string().optional(),
|
|
92
|
+
'4': z.string().optional(),
|
|
93
|
+
'5': z.string().optional(),
|
|
94
|
+
'6': z.string().optional(),
|
|
95
|
+
'8': z.string().optional(),
|
|
96
|
+
'10': z.string().optional(),
|
|
97
|
+
'12': z.string().optional(),
|
|
98
|
+
'16': z.string().optional(),
|
|
99
|
+
'20': z.string().optional(),
|
|
100
|
+
'24': z.string().optional(),
|
|
60
101
|
});
|
|
61
102
|
/**
|
|
62
103
|
* Border Radius Schema
|
|
104
|
+
* Mirrors @objectstack/spec/ui BorderRadiusSchema.
|
|
63
105
|
*/
|
|
64
106
|
export const BorderRadiusSchema = z.object({
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
107
|
+
none: z.string().optional(),
|
|
108
|
+
sm: z.string().optional(),
|
|
109
|
+
base: z.string().optional(),
|
|
110
|
+
md: z.string().optional(),
|
|
111
|
+
lg: z.string().optional(),
|
|
112
|
+
xl: z.string().optional(),
|
|
113
|
+
'2xl': z.string().optional(),
|
|
114
|
+
full: z.string().optional(),
|
|
115
|
+
});
|
|
116
|
+
/**
|
|
117
|
+
* Shadow Schema
|
|
118
|
+
* Mirrors @objectstack/spec/ui ShadowSchema.
|
|
119
|
+
*/
|
|
120
|
+
export const ShadowSchema = z.object({
|
|
121
|
+
none: z.string().optional(),
|
|
122
|
+
sm: z.string().optional(),
|
|
123
|
+
base: z.string().optional(),
|
|
124
|
+
md: z.string().optional(),
|
|
125
|
+
lg: z.string().optional(),
|
|
126
|
+
xl: z.string().optional(),
|
|
127
|
+
'2xl': z.string().optional(),
|
|
128
|
+
inner: z.string().optional(),
|
|
129
|
+
});
|
|
130
|
+
/**
|
|
131
|
+
* Breakpoints Schema
|
|
132
|
+
* Mirrors @objectstack/spec/ui BreakpointsSchema.
|
|
133
|
+
*/
|
|
134
|
+
export const BreakpointsSchema = z.object({
|
|
135
|
+
xs: z.string().optional(),
|
|
136
|
+
sm: z.string().optional(),
|
|
137
|
+
md: z.string().optional(),
|
|
138
|
+
lg: z.string().optional(),
|
|
139
|
+
xl: z.string().optional(),
|
|
140
|
+
'2xl': z.string().optional(),
|
|
141
|
+
});
|
|
142
|
+
/**
|
|
143
|
+
* Animation Schema
|
|
144
|
+
* Mirrors @objectstack/spec/ui AnimationSchema.
|
|
145
|
+
*/
|
|
146
|
+
export const AnimationSchema = z.object({
|
|
147
|
+
duration: z.object({
|
|
148
|
+
fast: z.string().optional(),
|
|
149
|
+
base: z.string().optional(),
|
|
150
|
+
slow: z.string().optional(),
|
|
151
|
+
}).optional().describe('Duration presets'),
|
|
152
|
+
timing: z.object({
|
|
153
|
+
linear: z.string().optional(),
|
|
154
|
+
ease: z.string().optional(),
|
|
155
|
+
easeIn: z.string().optional(),
|
|
156
|
+
easeOut: z.string().optional(),
|
|
157
|
+
easeInOut: z.string().optional(),
|
|
158
|
+
}).optional().describe('Timing function presets'),
|
|
159
|
+
});
|
|
160
|
+
/**
|
|
161
|
+
* Z-Index Schema
|
|
162
|
+
* Mirrors @objectstack/spec/ui ZIndexSchema.
|
|
163
|
+
*/
|
|
164
|
+
export const ZIndexSchema = z.object({
|
|
165
|
+
base: z.number().optional(),
|
|
166
|
+
dropdown: z.number().optional(),
|
|
167
|
+
sticky: z.number().optional(),
|
|
168
|
+
fixed: z.number().optional(),
|
|
169
|
+
modalBackdrop: z.number().optional(),
|
|
170
|
+
modal: z.number().optional(),
|
|
171
|
+
popover: z.number().optional(),
|
|
172
|
+
tooltip: z.number().optional(),
|
|
70
173
|
});
|
|
71
174
|
/**
|
|
72
175
|
* Theme Mode Schema
|
|
176
|
+
* Mirrors @objectstack/spec/ui ThemeMode.
|
|
73
177
|
*/
|
|
74
|
-
export const ThemeModeSchema = z.enum(['light', 'dark', '
|
|
178
|
+
export const ThemeModeSchema = z.enum(['light', 'dark', 'auto']).describe('Theme mode');
|
|
179
|
+
/**
|
|
180
|
+
* Theme Logo Schema
|
|
181
|
+
* Mirrors the inline logo object in @objectstack/spec ThemeSchema.
|
|
182
|
+
*/
|
|
183
|
+
export const ThemeLogoSchema = z.object({
|
|
184
|
+
light: z.string().optional().describe('Logo URL for light mode'),
|
|
185
|
+
dark: z.string().optional().describe('Logo URL for dark mode'),
|
|
186
|
+
favicon: z.string().optional().describe('Favicon URL'),
|
|
187
|
+
});
|
|
75
188
|
/**
|
|
76
189
|
* Theme Definition Schema
|
|
190
|
+
* Mirrors @objectstack/spec/ui ThemeSchema.
|
|
77
191
|
*/
|
|
78
192
|
export const ThemeDefinitionSchema = z.object({
|
|
79
|
-
name: z.string().describe('Theme
|
|
80
|
-
label: z.string().
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
193
|
+
name: z.string().describe('Theme identifier'),
|
|
194
|
+
label: z.string().describe('Display label'),
|
|
195
|
+
description: z.string().optional().describe('Human-readable description'),
|
|
196
|
+
mode: ThemeModeSchema.default('auto').describe('Theme mode'),
|
|
197
|
+
colors: ColorPaletteSchema.describe('Semantic color palette'),
|
|
198
|
+
typography: TypographySchema.optional().describe('Typography design tokens'),
|
|
199
|
+
spacing: SpacingSchema.optional().describe('Spacing scale'),
|
|
200
|
+
borderRadius: BorderRadiusSchema.optional().describe('Border radius scale'),
|
|
201
|
+
shadows: ShadowSchema.optional().describe('Shadow scale'),
|
|
202
|
+
breakpoints: BreakpointsSchema.optional().describe('Responsive breakpoints'),
|
|
203
|
+
animation: AnimationSchema.optional().describe('Animation presets'),
|
|
204
|
+
zIndex: ZIndexSchema.optional().describe('Z-index layering'),
|
|
205
|
+
customVars: z.record(z.string(), z.string()).optional().describe('Custom CSS variables'),
|
|
206
|
+
logo: ThemeLogoSchema.optional().describe('Logo/branding assets'),
|
|
207
|
+
extends: z.string().optional().describe('Extend another theme by name'),
|
|
88
208
|
});
|
|
89
209
|
/**
|
|
90
|
-
* Theme Schema
|
|
210
|
+
* Theme Component Schema (ObjectUI rendering)
|
|
91
211
|
*/
|
|
92
|
-
export const
|
|
212
|
+
export const ThemeComponentSchema = BaseSchema.extend({
|
|
93
213
|
type: z.literal('theme'),
|
|
94
214
|
mode: ThemeModeSchema.optional().describe('Current theme mode'),
|
|
95
215
|
themes: z.array(ThemeDefinitionSchema).optional().describe('Available themes'),
|
|
@@ -121,10 +241,20 @@ export const ThemePreviewSchema = BaseSchema.extend({
|
|
|
121
241
|
showComponents: z.boolean().optional().describe('Show component samples'),
|
|
122
242
|
});
|
|
123
243
|
/**
|
|
124
|
-
*
|
|
244
|
+
* Legacy alias — use ThemeComponentSchema
|
|
245
|
+
* @deprecated
|
|
246
|
+
*/
|
|
247
|
+
export const ThemeSchema = ThemeComponentSchema;
|
|
248
|
+
/**
|
|
249
|
+
* Union of all theme component schemas (for AnyComponentSchema union).
|
|
125
250
|
*/
|
|
126
|
-
export const
|
|
127
|
-
|
|
251
|
+
export const ThemeUnionSchema = z.discriminatedUnion('type', [
|
|
252
|
+
ThemeComponentSchema,
|
|
128
253
|
ThemeSwitcherSchema,
|
|
129
254
|
ThemePreviewSchema,
|
|
130
255
|
]);
|
|
256
|
+
/**
|
|
257
|
+
* Legacy alias — use SpacingSchema
|
|
258
|
+
* @deprecated
|
|
259
|
+
*/
|
|
260
|
+
export const SpacingScaleSchema = SpacingSchema;
|
package/dist/zod/views.zod.d.ts
CHANGED
|
@@ -19,11 +19,11 @@ import { z } from 'zod';
|
|
|
19
19
|
* View Type Schema
|
|
20
20
|
*/
|
|
21
21
|
export declare const ViewTypeSchema: z.ZodEnum<{
|
|
22
|
+
list: "list";
|
|
23
|
+
grid: "grid";
|
|
22
24
|
kanban: "kanban";
|
|
23
25
|
calendar: "calendar";
|
|
24
|
-
list: "list";
|
|
25
26
|
timeline: "timeline";
|
|
26
|
-
grid: "grid";
|
|
27
27
|
detail: "detail";
|
|
28
28
|
map: "map";
|
|
29
29
|
}>;
|
|
@@ -125,9 +125,9 @@ export declare const DetailViewSchema: z.ZodObject<{
|
|
|
125
125
|
objectName: z.ZodOptional<z.ZodString>;
|
|
126
126
|
data: z.ZodOptional<z.ZodAny>;
|
|
127
127
|
layout: z.ZodOptional<z.ZodEnum<{
|
|
128
|
+
grid: "grid";
|
|
128
129
|
horizontal: "horizontal";
|
|
129
130
|
vertical: "vertical";
|
|
130
|
-
grid: "grid";
|
|
131
131
|
}>>;
|
|
132
132
|
columns: z.ZodOptional<z.ZodNumber>;
|
|
133
133
|
sections: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
@@ -206,8 +206,8 @@ export declare const DetailViewSchema: z.ZodObject<{
|
|
|
206
206
|
title: z.ZodString;
|
|
207
207
|
type: z.ZodEnum<{
|
|
208
208
|
list: "list";
|
|
209
|
-
table: "table";
|
|
210
209
|
grid: "grid";
|
|
210
|
+
table: "table";
|
|
211
211
|
}>;
|
|
212
212
|
api: z.ZodOptional<z.ZodString>;
|
|
213
213
|
data: z.ZodOptional<z.ZodArray<z.ZodAny>>;
|
|
@@ -240,11 +240,11 @@ export declare const ViewSwitcherSchema: z.ZodObject<{
|
|
|
240
240
|
type: z.ZodLiteral<"view-switcher">;
|
|
241
241
|
views: z.ZodArray<z.ZodObject<{
|
|
242
242
|
type: z.ZodEnum<{
|
|
243
|
+
list: "list";
|
|
244
|
+
grid: "grid";
|
|
243
245
|
kanban: "kanban";
|
|
244
246
|
calendar: "calendar";
|
|
245
|
-
list: "list";
|
|
246
247
|
timeline: "timeline";
|
|
247
|
-
grid: "grid";
|
|
248
248
|
detail: "detail";
|
|
249
249
|
map: "map";
|
|
250
250
|
}>;
|
|
@@ -253,20 +253,20 @@ export declare const ViewSwitcherSchema: z.ZodObject<{
|
|
|
253
253
|
schema: z.ZodOptional<z.ZodType<any, unknown, z.core.$ZodTypeInternals<any, unknown>>>;
|
|
254
254
|
}, z.core.$strip>>;
|
|
255
255
|
defaultView: z.ZodOptional<z.ZodEnum<{
|
|
256
|
+
list: "list";
|
|
257
|
+
grid: "grid";
|
|
256
258
|
kanban: "kanban";
|
|
257
259
|
calendar: "calendar";
|
|
258
|
-
list: "list";
|
|
259
260
|
timeline: "timeline";
|
|
260
|
-
grid: "grid";
|
|
261
261
|
detail: "detail";
|
|
262
262
|
map: "map";
|
|
263
263
|
}>>;
|
|
264
264
|
activeView: z.ZodOptional<z.ZodEnum<{
|
|
265
|
+
list: "list";
|
|
266
|
+
grid: "grid";
|
|
265
267
|
kanban: "kanban";
|
|
266
268
|
calendar: "calendar";
|
|
267
|
-
list: "list";
|
|
268
269
|
timeline: "timeline";
|
|
269
|
-
grid: "grid";
|
|
270
270
|
detail: "detail";
|
|
271
271
|
map: "map";
|
|
272
272
|
}>>;
|
|
@@ -339,8 +339,8 @@ export declare const FilterUISchema: z.ZodObject<{
|
|
|
339
339
|
showClear: z.ZodOptional<z.ZodBoolean>;
|
|
340
340
|
showApply: z.ZodOptional<z.ZodBoolean>;
|
|
341
341
|
layout: z.ZodOptional<z.ZodEnum<{
|
|
342
|
-
inline: "inline";
|
|
343
342
|
drawer: "drawer";
|
|
343
|
+
inline: "inline";
|
|
344
344
|
popover: "popover";
|
|
345
345
|
}>>;
|
|
346
346
|
}, z.core.$loose>;
|
|
@@ -388,7 +388,7 @@ export declare const SortUISchema: z.ZodObject<{
|
|
|
388
388
|
/**
|
|
389
389
|
* Union of all view schemas
|
|
390
390
|
*/
|
|
391
|
-
export declare const ViewComponentSchema: z.
|
|
391
|
+
export declare const ViewComponentSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
392
392
|
id: z.ZodOptional<z.ZodString>;
|
|
393
393
|
name: z.ZodOptional<z.ZodString>;
|
|
394
394
|
label: z.ZodOptional<z.ZodString>;
|
|
@@ -413,9 +413,9 @@ export declare const ViewComponentSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
413
413
|
objectName: z.ZodOptional<z.ZodString>;
|
|
414
414
|
data: z.ZodOptional<z.ZodAny>;
|
|
415
415
|
layout: z.ZodOptional<z.ZodEnum<{
|
|
416
|
+
grid: "grid";
|
|
416
417
|
horizontal: "horizontal";
|
|
417
418
|
vertical: "vertical";
|
|
418
|
-
grid: "grid";
|
|
419
419
|
}>>;
|
|
420
420
|
columns: z.ZodOptional<z.ZodNumber>;
|
|
421
421
|
sections: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
@@ -494,8 +494,8 @@ export declare const ViewComponentSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
494
494
|
title: z.ZodString;
|
|
495
495
|
type: z.ZodEnum<{
|
|
496
496
|
list: "list";
|
|
497
|
-
table: "table";
|
|
498
497
|
grid: "grid";
|
|
498
|
+
table: "table";
|
|
499
499
|
}>;
|
|
500
500
|
api: z.ZodOptional<z.ZodString>;
|
|
501
501
|
data: z.ZodOptional<z.ZodArray<z.ZodAny>>;
|
|
@@ -524,11 +524,11 @@ export declare const ViewComponentSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
524
524
|
type: z.ZodLiteral<"view-switcher">;
|
|
525
525
|
views: z.ZodArray<z.ZodObject<{
|
|
526
526
|
type: z.ZodEnum<{
|
|
527
|
+
list: "list";
|
|
528
|
+
grid: "grid";
|
|
527
529
|
kanban: "kanban";
|
|
528
530
|
calendar: "calendar";
|
|
529
|
-
list: "list";
|
|
530
531
|
timeline: "timeline";
|
|
531
|
-
grid: "grid";
|
|
532
532
|
detail: "detail";
|
|
533
533
|
map: "map";
|
|
534
534
|
}>;
|
|
@@ -537,20 +537,20 @@ export declare const ViewComponentSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
537
537
|
schema: z.ZodOptional<z.ZodType<any, unknown, z.core.$ZodTypeInternals<any, unknown>>>;
|
|
538
538
|
}, z.core.$strip>>;
|
|
539
539
|
defaultView: z.ZodOptional<z.ZodEnum<{
|
|
540
|
+
list: "list";
|
|
541
|
+
grid: "grid";
|
|
540
542
|
kanban: "kanban";
|
|
541
543
|
calendar: "calendar";
|
|
542
|
-
list: "list";
|
|
543
544
|
timeline: "timeline";
|
|
544
|
-
grid: "grid";
|
|
545
545
|
detail: "detail";
|
|
546
546
|
map: "map";
|
|
547
547
|
}>>;
|
|
548
548
|
activeView: z.ZodOptional<z.ZodEnum<{
|
|
549
|
+
list: "list";
|
|
550
|
+
grid: "grid";
|
|
549
551
|
kanban: "kanban";
|
|
550
552
|
calendar: "calendar";
|
|
551
|
-
list: "list";
|
|
552
553
|
timeline: "timeline";
|
|
553
|
-
grid: "grid";
|
|
554
554
|
detail: "detail";
|
|
555
555
|
map: "map";
|
|
556
556
|
}>>;
|
|
@@ -619,8 +619,8 @@ export declare const ViewComponentSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
619
619
|
showClear: z.ZodOptional<z.ZodBoolean>;
|
|
620
620
|
showApply: z.ZodOptional<z.ZodBoolean>;
|
|
621
621
|
layout: z.ZodOptional<z.ZodEnum<{
|
|
622
|
-
inline: "inline";
|
|
623
622
|
drawer: "drawer";
|
|
623
|
+
inline: "inline";
|
|
624
624
|
popover: "popover";
|
|
625
625
|
}>>;
|
|
626
626
|
}, z.core.$loose>, z.ZodObject<{
|
|
@@ -660,7 +660,7 @@ export declare const ViewComponentSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
660
660
|
dropdown: "dropdown";
|
|
661
661
|
buttons: "buttons";
|
|
662
662
|
}>>;
|
|
663
|
-
}, z.core.$loose>]>;
|
|
663
|
+
}, z.core.$loose>], "type">;
|
|
664
664
|
/**
|
|
665
665
|
* Export type inference helpers
|
|
666
666
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"views.zod.d.ts","sourceRoot":"","sources":["../../src/zod/views.zod.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;EAAoG,CAAC;AAEhI;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;iBAUhC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBASlC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;iBAO9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+B3B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAe7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAezB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAavB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"views.zod.d.ts","sourceRoot":"","sources":["../../src/zod/views.zod.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;EAAoG,CAAC;AAEhI;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;iBAUhC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBASlC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;iBAO9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+B3B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAe7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAezB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAavB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAK9B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAChE,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC9E,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAClF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAC1E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACpE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACxE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
|
package/dist/zod/views.zod.js
CHANGED
|
@@ -151,7 +151,7 @@ export const SortUISchema = BaseSchema.extend({
|
|
|
151
151
|
/**
|
|
152
152
|
* Union of all view schemas
|
|
153
153
|
*/
|
|
154
|
-
export const ViewComponentSchema = z.
|
|
154
|
+
export const ViewComponentSchema = z.discriminatedUnion('type', [
|
|
155
155
|
DetailViewSchema,
|
|
156
156
|
ViewSwitcherSchema,
|
|
157
157
|
FilterUISchema,
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@object-ui/types",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "Pure TypeScript type definitions for Object UI - The Protocol Layer",
|
|
5
5
|
"type": "module",
|
|
6
|
+
"sideEffects": false,
|
|
6
7
|
"main": "./dist/index.js",
|
|
7
8
|
"module": "./dist/index.js",
|
|
8
9
|
"types": "./dist/index.d.ts",
|
|
@@ -75,7 +76,7 @@
|
|
|
75
76
|
"directory": "packages/types"
|
|
76
77
|
},
|
|
77
78
|
"dependencies": {
|
|
78
|
-
"@objectstack/spec": "^0.
|
|
79
|
+
"@objectstack/spec": "^3.0.2",
|
|
79
80
|
"zod": "^4.3.6"
|
|
80
81
|
},
|
|
81
82
|
"devDependencies": {
|
|
@@ -1,80 +1,35 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Test to verify ObjectStack Spec
|
|
2
|
+
* Test to verify ObjectStack Spec v3.0.0 namespace exports
|
|
3
3
|
*/
|
|
4
4
|
import { describe, it, expect } from 'vitest';
|
|
5
|
-
import type { Data, UI, System, AI, API, Auth, Hub, Automation, Permission, Shared } from '../index';
|
|
6
5
|
|
|
7
|
-
describe('ObjectStack Spec
|
|
8
|
-
it('should export Data namespace', () => {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
type: 'text',
|
|
13
|
-
label: 'Test Field',
|
|
14
|
-
};
|
|
15
|
-
expect(field.name).toBe('test');
|
|
6
|
+
describe('ObjectStack Spec v3.0.0 Namespace Exports', () => {
|
|
7
|
+
it('should export Data namespace', async () => {
|
|
8
|
+
const types = await import('../index');
|
|
9
|
+
// Data namespace should exist and have content
|
|
10
|
+
expect(types).toHaveProperty('defineStack');
|
|
16
11
|
});
|
|
17
12
|
|
|
18
|
-
it('should export UI
|
|
19
|
-
//
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
expect(
|
|
13
|
+
it('should export UI types via spec', async () => {
|
|
14
|
+
// Verify that types can be imported from @object-ui/types
|
|
15
|
+
const types = await import('../index');
|
|
16
|
+
// defineStack should be exported
|
|
17
|
+
expect(typeof types.defineStack).toBe('function');
|
|
23
18
|
});
|
|
24
19
|
|
|
25
|
-
it('should export
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
expect(
|
|
20
|
+
it('should export ObjectStack schemas', async () => {
|
|
21
|
+
const types = await import('../index');
|
|
22
|
+
// ObjectStack capability schemas should be exported
|
|
23
|
+
expect(types.ObjectStackSchema).toBeDefined();
|
|
24
|
+
expect(types.ObjectStackDefinitionSchema).toBeDefined();
|
|
25
|
+
expect(types.ObjectStackCapabilitiesSchema).toBeDefined();
|
|
26
|
+
expect(types.ObjectOSCapabilitiesSchema).toBeDefined();
|
|
27
|
+
expect(types.ObjectQLCapabilitiesSchema).toBeDefined();
|
|
28
|
+
expect(types.ObjectUICapabilitiesSchema).toBeDefined();
|
|
30
29
|
});
|
|
31
30
|
|
|
32
|
-
it('should export
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
const aiModel: AITest = undefined;
|
|
36
|
-
expect(aiModel).toBeUndefined();
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
it('should export API namespace', () => {
|
|
40
|
-
// Type check only - verify API namespace exists
|
|
41
|
-
type APITest = API.Endpoint | undefined;
|
|
42
|
-
const apiEndpoint: APITest = undefined;
|
|
43
|
-
expect(apiEndpoint).toBeUndefined();
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
it('should export Auth namespace', () => {
|
|
47
|
-
// Type check only - verify Auth namespace exists
|
|
48
|
-
type AuthTest = Auth.User | undefined;
|
|
49
|
-
const authUser: AuthTest = undefined;
|
|
50
|
-
expect(authUser).toBeUndefined();
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
it('should export Hub namespace', () => {
|
|
54
|
-
// Type check only - verify Hub namespace exists
|
|
55
|
-
type HubTest = Hub.Tenant | undefined;
|
|
56
|
-
const hubTenant: HubTest = undefined;
|
|
57
|
-
expect(hubTenant).toBeUndefined();
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
it('should export Automation namespace', () => {
|
|
61
|
-
// Type check only - verify Automation namespace exists
|
|
62
|
-
type AutomationTest = Automation.Workflow | undefined;
|
|
63
|
-
const workflow: AutomationTest = undefined;
|
|
64
|
-
expect(workflow).toBeUndefined();
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
it('should export Permission namespace', () => {
|
|
68
|
-
// Type check only - verify Permission namespace exists
|
|
69
|
-
type PermissionTest = Permission.PermissionSet | undefined;
|
|
70
|
-
const permissionSet: PermissionTest = undefined;
|
|
71
|
-
expect(permissionSet).toBeUndefined();
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
it('should export Shared namespace', () => {
|
|
75
|
-
// Type check only - verify Shared namespace exists
|
|
76
|
-
type SharedTest = Shared.ObjectId | undefined;
|
|
77
|
-
const objectId: SharedTest = undefined;
|
|
78
|
-
expect(objectId).toBeUndefined();
|
|
31
|
+
it('should export VERSION constant', async () => {
|
|
32
|
+
const types = await import('../index');
|
|
33
|
+
expect(types.VERSION).toBeDefined();
|
|
79
34
|
});
|
|
80
35
|
});
|
|
@@ -120,25 +120,20 @@ describe('Phase 2: ThemeSchema Zod Validation', () => {
|
|
|
120
120
|
{
|
|
121
121
|
name: 'professional',
|
|
122
122
|
label: 'Professional',
|
|
123
|
-
|
|
123
|
+
mode: 'auto',
|
|
124
|
+
colors: {
|
|
124
125
|
primary: '#3b82f6',
|
|
125
126
|
secondary: '#64748b',
|
|
126
127
|
background: '#ffffff',
|
|
127
|
-
|
|
128
|
-
},
|
|
129
|
-
dark: {
|
|
130
|
-
primary: '#60a5fa',
|
|
131
|
-
secondary: '#94a3b8',
|
|
132
|
-
background: '#0f172a',
|
|
133
|
-
foreground: '#f1f5f9',
|
|
128
|
+
text: '#0f172a',
|
|
134
129
|
},
|
|
135
130
|
typography: {
|
|
136
|
-
|
|
137
|
-
fontSize:
|
|
138
|
-
lineHeight: 1.5,
|
|
131
|
+
fontFamily: { base: 'Inter, sans-serif' },
|
|
132
|
+
fontSize: { base: '1rem' },
|
|
133
|
+
lineHeight: { normal: '1.5' },
|
|
139
134
|
},
|
|
140
|
-
|
|
141
|
-
|
|
135
|
+
borderRadius: {
|
|
136
|
+
base: '0.5rem',
|
|
142
137
|
lg: '1rem',
|
|
143
138
|
},
|
|
144
139
|
},
|